Skip to content

2.0 Roadmap #69

@neokoenig

Description

@neokoenig

Doing a complete rewrite for 2.x which will break backwards compatibility. This may take some time.
Aiming to support Lucee 4/5 and hopefully ACF11+

Testing and Continous Integration

  • Full TDD From the start
  • Add Travis CI for lucee 4.5x and lucee 5.1.x + mySQL/postrgres possibly via Commandbox

RESTFul API

  • Add Full JSON API with /api/v1/ api root: this will enable people to build their own front ends if required. Use JWT?
  • Need Definitive list of endpoints

User Accounts / Permissions / Settings

  • Move User password hashing to bCrypt
  • Per User Time Zone Support
  • Per User Language/Locale Support
  • Add Better authentication system for 3rd party integration
  • Look into AD/LDAP integration
  • Add OAuth - sign up with Facebook etc
  • Add Public Registration options
  • Soft Delete users should be fully delete-able/recoverable.
  • More Restrictions; limit ability to edit events made by other users; maximum number of bookings per day etc
  • Protected Properties: roleid in particular.

Calendars

  • Rather than one calendar, allow multiple calendars with different configurations. Buildings/Rooms should be able to be tied to multiple calendars. bookings should be tied to the Building/Room.
  • Add Icon/Title support for calendars
  • Add an "owner" for each calendar
  • Better Calendar Filtering for Locations
  • Add FullCalendar 3.0
  • Add FullCalendar Scheduler addon - double check licencing
  • Add "Year" based calendar (think booking a rental cottage
  • Add Ability to restrict each calendar viewing/editing/booking by role + user

Locations

  • Per Location Time Zone Support, so you could list rooms in buildings in multiple countries
  • Add Location floorplans/attachments/images/capacity/type
  • Can now have a grouping field (currently called "floor" but might just change to group
  • Add an "owner" for each room/building
  • Add Icon support

Events/Bookings

  • Create some sort of "slot based" js widget
  • Add Full Repeating Rules Logic via iCalendar spec
  • Add Full Repeating Rules Logic JS widget selector
  • Improve contact details/notification system: maybe some sort of trigger/action workflow like drupal
  • Ensure created events are owned by a user
  • Add Search for "Next Available Slot / Find me a room with ...x "
  • Full Text search for titles/descriptions (filter by past/future)
  • Print friendly PDF Agendas
  • Improve/Simplify Pending/Approved/Denied workflow
  • Multiple Rooms per booking?
  • Make Allow Event Overlap..better.
  • Add permission to show only users events
  • Create an event on behalf of any user of the system (only available to the administrator)
  • Look into booking rooms for nights a-la b&b/hotel/motel etc. Might be do-able. Maybe different "room modes": i.e,
  • "Hotel Room" where rooms are booked from only from a check in/out time. "Resources" might be breakfast, spa access. I guess this would need to be pretty dynamic to be flexible enough.
  • "Rehearsal Room" where there are specific 'x' hour long bookable slots, "Resources" might be PA/Drums etc, or lab equipment etc
  • "Meeting Room", where you could book from 5 mins to a predefined max length "Resources" might be laptop/projector etc
  • "Generic Room" where there are no restrictions.

Resources

  • Keep Resource booking concept? Or spin out further?
  • Give resources their own calendars maybe, so you can see all activity for a specific piece of equipment
  • Allow resources to be attached to calendars/buildings/rooms;

General

  • Better Localisation/i8n
  • Generally improve translations
  • Store all logging/createdAt etc timestamps as UTC : this is now a wheels default
  • New/Better Install Process
  • Upgrade FullCalendar JS -> 3.x
  • New Theme via AdminLTE
  • Add Digital Signage as a standalone self contained front end using an API key
  • Improve iCal/RSS etc
  • Add SMTP server defaults in options maybe?
  • Data import -> Export would be nice, maybe via CSV if Lucee vs ACF isn't too bad

Breaking Changes

  • /public/ is now the webroot (to help with docker images etc)
  • Drop List View (Full Calendar 3.0x has it)
  • Drops CF10 Compatibility: CFWheels 2.x
  • Drop Custom Form fields (too complex, underused)
  • Possibly drop MSSQL compatibility
  • Different DB structure will mean probably no easy upgrade path from 1.x

Framework

  • Move to CFWheels 2.x alpha
  • Move to CFWheels 2.x beta
  • Move to CFWheels 2.x
  • Change to resource based routing
  • Add Database Migrations
  • Created new iCal4J plugin to properly do repeat rules
  • Created new bCrypt plugin for hashing

Progress

  • Create 2.x branch
  • Setup CI Test Environment
  • Alpha Release
  • Beta Release
  • Document
  • 2.0 Release

Metadata

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions