The left sidebar provides me access to all of my work: the content I have access to, my personal messages and settings as well as Magnolia configuration settings and tools.
These three areas have separate menus, each offering menu and sub menu items for accessing various data sets and functions. Only one of these menus is visible at once. I can however switch freely between areas and menu items without loosing context. If I e.g. work on assets, then switch to my personal work area to moderate a number of new forum entries, then switch back to the asset browser again, I'm returned to the exact same point where I left of.
Description of desired behavior
The three work areas each have their own top-level tab and menu structure. This brings some structure to the list of menu items and improves orientation: content is separated from personal elements - the profile, personal messages and settings - and instance-level configuration and tools.
If a menu item contains sub menu items, these are hidden at first. If you select the parent item, the sub menu items slide open while possibly already visible sub menu items of another menu item slide close - only one menu item may show its sub menu items at any point in time.
The menu of a single work area is further sub-divided into groups where useful. Access to actual content such as pages, assets, documents and structured data is visual separated from access to content-related functionality such as A-B testing and statistics. Likewise, server and module configuration, templates and security settings are separated from tools and apps such as the Magnolia Store. Groups could actually be labelled to improve understanding and clarity.
Note that the above rule that only a single menu item may show its sub menu items is applicable across groups. If e.g. Configuration->Server,Modules is open and you switch to Security, the Configuration menu closes.
Preservation of context
If you switch between menu items and sub menu items of the same or of different work areas, the state of the connected workspace is preserved. This allows to work on the site structure of one site, then change a template, then go back to the site structure and continue to work.
In order to guarantee the consistency of a workspace, the following set of rules must always hold true (please refer to the conceptual overview of AdminCentral to help understanding the following):
- a workspace is updated with changes made in another workspace, even if it currently not visible. Alternatively, a workspace is updated, before becoming visible again.
- all settings of a workspace such as the state of its controls (asset type tabs, view selection, sorting and grouping options) is preserved and re-applied if a workspace is updated
- likewise, the currently focused item and all selected items must remain focused and selected.
- the set of items shown in the central view area of a workspace must be current and should reflect all changes made in a different workspace.
In case a change applied in another workspace causes a conflict with the preserved state of another workspace, these rules are used to resolve it:
- if the focus has become invalid, it is either removed or moved to the default item of a view
- if the selection of an object has become invalid, it is removed. Additional selected elements stay selected.
- if the set of items shown in the central view area of a workspace is large and only an excerpt of it is shown, the relative position of the scrollbar in regards to the total number of items should remain the same before and after an update. If this doesn't make sense, the excerpt should at least show the first selected item. If no item is selected, it show the item, which currently has the focus. If no item has the focus, the view may jump back to the top of the set of items.
It doesn't make sense, is actually not desirable and a waste of resources to preserve context forever. The following limits are therefore imposed: