The upcoming dotCMS 1.9 update is still at least about a couple months away from release (give or take), but the current SVN trunk code is already starting to shape up with a lot of the upcoming enhancements. After testing out some of the new code, I thought it’d be worthwhile to share some screenshots and descriptions of what to expect, because it’s not a little change by any means. The current release of dotCMS is 1.7a, with a 1.7b maintenance patch currently on the roadmap sometime soon. 1.8 is not being skipped, but instead, because of the number of changes that were slated for 1.8 and how they tied to 1.9, they’ve just rolled the whole series of updates into one big 1.9 upgrade rather than have two important updates come close together. 1.9 is likely to be the final big update before 2.0 (at least according to JIRA currently). So, the future currently looks like 1.7a -> 1.7b -> 1.9 -> 2.0.
If you want to try out what I’m describing below, the code is available in SVN (linked above, username and password both dotCMSUser). I recommend using it with a PostgreSQL database, as that’s what they develop on, and other databases might not be fully tested yet. I want to serve up an initial warning too, that this code is absolutely not ready for a live environment. I don’t mean that from a casual, you might hit an esoteric bug here and there way – I mean it in a you can’t run a web site on this code yet way. There are a number of features coming that I couldn’t preview yet (like binary content fields in structures and some permissions options), because they flat out aren’t working yet. I hit a number of areas with those kinds of problems, so keep that in mind if you want to try it out; still very alpha and still very under construction. But, it doesn’t hurt to familiarize yourself with upcoming changes, since if you’re like me and running a huge site in it, it can be helpful for planning your upgrade path.
…holy crap it’s different! Indeed, the whole admin interface has been redesigned and also made i18n compliant (that should make you international folks really happy). This is similar to the change that took place when the page preview area was redesigned for 1.6.5. Navigation wise, everything is still very much the same, so you don’t have to anticipate relearning everything luckily. Basically it’s just got a new skin over the top to make everything look nicer and navigate better. But, if you have a lot of lower level users, you’ll certainly want to brace them for the change, since just looking different might confuse them, even if stuff is relatively in the same place.
The content search page is a good example of the updated look, but it’s still very much familiar when compared to the old layout. Same search boxes, same basic results table. Some things like the “Show Query” button have moved to a more useful location.
So, you can add content the same old way, and the familiar TinyMCE interface is there. But gone are the Text and WYSIWYG tabs at the bottom edge of the field, replaced by a WYSIWYG toggle button. Click it. Do it. I DARE you. Yes, that is just what you think it is, the old, plain “text” mode has been updated to include a syntax highlighter and line numbers. I think I’m crying right now, I’m so happy. This definitely ramps up the usefulness of the text editor several degrees, and will make editing VTL files so much nicer. Hopefully this is implemented everywhere you have code editing fields.
One of the most substantial changes was to the permissions system. Gone are groups. Instead, roles now control everything, and they are hierarchical. The role manager has been completely updated to reflect the changes, and allows you to list users by role (yes!). You’ll also see improvements to how permissions work related to different parts of the system. The 3 factor (view/modify/publish) permissions have been dropped in favor of task specific permissions, and also user specific permissions as well. One thing that I’ll be interested to see is how the upgrade process handles converting groups into roles and maintaining things coming from 1.7a sites, especially large, complex ones. I envision this being an opportunity though to redo permissions in a much more efficient way. It’ll be a lot of work I expect, but well worth it. Be sure you keep this change in mind when upgrading, since it will have probably the most profound and widespread impacts to how you work in the CMS (Content Management System).
One of the other big changes is the addition of a form manager. Instead of the complicated, inflexible form submission process used currently, a new structure type has been added that combines with front end content submission. That makes three different structure types (content, widgets, forms) to choose from now, and greatly enhances the collection of data from users to repurpose elsewhere. Now you also can leverage all the power of structures for data collection. Like permissions, converting to the new system will involve a lot of work, especially if you have a lot of forms, but it will likely be well worth it, since it makes nearly every process of form use easier and more powerful.
That’s your initial look at the system. I’ll do a more thorough review once the code gets closer to a beta release and is more functional. For now though, I think it’s clear that this coming update is one of the biggest, if not the biggest update that we’ve seen for dotCMS to date.