Wish List for 2014
(Updated Dec 26th) As we prepare to enter 2014, Exponent CMS is growing stronger than ever. 2013 has seen the code migrating past the old 1.0 underpinnings and also added many new features! So what will 2014 hold in store for this mighty CMS?
(The following is a preview of several features already at various stages of development...however, there is no guarantee these features might not change or ever become part of the main distribution)
New Optional WYSIWYG Editor (TinyMCE)
CKEditor is a very powerful online WYSIWYG editing solution, BUT it doesn't work on Android devices. However another popular online WYSIWYG editor, TinyMCE is available. While not quite as powerful/flexible as CKEditor, it would offer an option for those sites needing Android management support. This will likely be shipped with the v2.2.4 release in early 2014.
New Optional File Manager (elFinder) - UPDATED!
While the existing File Manager accomplishes the task, it's not intuitive to new users and is limited in some areas (especially when it comes to having MANY files on a site). A new file manager option might be a valuable addition. elFinder has been around a while and is easily integrated into WYSIWYG editors, etc... In fact we have already gotten this to be a pretty robust feature and have added it to the pre-release code. There is a good chance this will be included in the v2.2.4 release.
Bootstrap 3 Support
Bootstrap v3 fixes many issues with the Bootstrap v2 framework which has been integrated into Exponent for some time now. HOWEVER, a big change is required to move from v2 to v3, so much that simply moving to v3 will break any existing Bootstrap v2 themed sites. We are working on several variations as to how to implement v3 without breaking existing v2 sites. Additionally, we would like to move the entire 'admin' interface away from YUI2 to Bootstrap/jQuery which will also bring some cosmetic changes.
Revisions and Approval
Back in v0.9x, Exponent had a robust Workflow feature which partially worked some of the time, but was pretty complex to use. Our goal is to implement a 'working' workflow feature (what a novel concept!). Our main goals would be to implement a revision feature which would allow you to 'roll back' to a previous revision of a module item (an undo feature if you will), and a simple 'approval' feature which would allow basic editor users to enter/update content, but require the new/updated content be 'approved' by an administrator (or a user with approval permission) prior to being visible on the site.
Multi-Day Events on the Calendar
Though we've already developed a custom implementation using the jQuery FullCalendar widget, it is not yet integrated into the main code since it would replace existing calendars with a new interface, etc... which is unacceptable on most sites. This feature would allow multi-day events (as opposed to a daily recurring event) which would then be displayed as a 'band' on the month view. This feature would also allow us to include optional caching of external pulled events from Google XML or iCalendar sources which will greatly speed display of those calendars.
Improved Multi-Page Table Implementation - UPDATED!
Some of the tables of data used in Exponent such as the user and user group lists don't work well, especially if you have more than one page of items. There is a jQuery widget called 'DataTables' which allows easy conversion of existing tables into dynamic multi-page items which would contain integrated filtering (searching) in addition to some other nice features. There is also a 'responsive' feature which allows tables to 'shrink' with a pop-open display of the 'hidden' fields.
Strengthened Mobile Device Support
Though we have already implemented several mobile friendly end-user features such as mobile theme variations and a responsive framework such as Twitter Bootstrap, Exponent is not the easiest application to 'manage' while using a smartphone or small handheld device. There are some things we could do to improve this limitation. Adding the TinyMCE WYSIWYG option will give us a leg up, but we'd also want to do things like dynamically resize/shorten the WYSIWYG editor toolbar buttons when on a smaller device.
Additional 'AJAX' Usage
'AJAX' allows us to update a small portion of a web page without reloading the entire page. While this can greatly speed updates, it sometimes interferes with making the site 'Search Engine' friendly. We already have optional AJAX Pagination available in most modules, but would like to add AJAX Pagination which is SEO friendly, and perhaps even an 'infinite scroll' feature which would automatically add the next page of items when you reach the bottom of a page.
WOW, that's a big wish list even for Santa to fill...but several of this new features may even appear in the next release (v2.2.4) in early 2014. In fact, since many of these features seem to be working as of Christmas and change the look & feel of Exponent, we may tag the next release as v2.3.0.
Want even more? If you are in to using our github repository, some of these features are available for TESTING.
- The 'develop' branch contains the TinyMCE and elFinder features which can be activated within the Site Configuration by choosing them as the WYSIWYG Editor and File Manager respectively.
- The Bootstrap v3 initial test is in the 'bootstrapv3dave' branch with both a v2 and v3 theme.
- And the revisions feature (the approval feature has been implemented) is found in the 'revisions' branch. The revisions features requires you to perform an upgrade or at least update the database tables and is ONLY active within the Text module using the Showall action Default view at this point.