My project in the Google Summer of Code is to create an accessible Administrator template for Joomla! 1.6. In this period before the official start on May 23rd, I'm working on refining my project scope and specifications. Here are some of the areas in particular that I am concentrating on right now.

MVC status of the backend

One of the reasons that there is so much flexibility with templates on the frontend is that in Joomla the HTML is split out separately from the processing PHP files. These layout files can then be overridden by template overrides. This is known as a Model-View-Controller method (MVC).

One of the changes for 1.6 is to refactor the backend so that it is MVC as well. The basic restructuring has been done but there's still work that needs to be finished. The MVC project is scheduled for the beta release, not the alpha, so it's not going to be completed soon. Since template overrides depend having appropriate layout files to override, I will need to add some of the MVC work to my project.

All but one (com_trash) of the components have the basic refactoring done. This results in 132 /tmpl layout files with 77 php view files. 31 of those php view files, along with their associated layout files, need work to properly separate the layout from the php view file. 14 of the php view files are view.php rather than view.html.php.

Menu structure

I'm looking at three different options for dealing with the menu. One is to take the dropdown menu as it currently exists and fix it so that it will be accessible without changing the way it works. The advantage is that this is a quick menu and people are familiar with it. The disadvantage is that while you can make these types of menus accessible, they are cumbersome.

A second method would be to use a "mega" dropdown rather than using multiple levels. By displaying a block

as the first dropdown level you have immediate access to all the levels. This has the advantage that you don't need fine mouse control.


The third method would be to move the secondary & tertiary levels to a vertical menu in a sidebar. Clicking on the main menu item would bring you to the most commonly used screen (i.e. clicking on Content would bring you to the Article Manager).

Template style

The third thing I'm working on is a comp for what the template will actually look like. I am using the following criteria:

Web App. As a backend, this site will function more as a web application than a regular web site. Function is more important than what it looks like. Don't waste functional space on purely decorative elements. There will be a high proportion of repeat users and trained users so when possible have shortcuts that can be taken advantage of.

Familiarity with 1.5. There are many books and tutorials on 1.5 (as well as trained users). Leverage that by keeping a similar visual structure in 1.6. Make tweaks for usability but don't make major changes.

Existing library of extensions in 1.5. Many of the extensions written for the backend use the same visual structure as the current core layouts. Make sure that those will fit in with little or minimal need for change.

Template vs. layout. Keep the parts of the pages supplied by the template separate from those supplied by the core layout files.

Clean and uncluttered. Aesthetic preference which has usability advantages. A real challenge with all the information that needs to be displayed.

I will be preparing a couple different designs over the next two weeks before choosing one to use. My first rough comp is based on the new look of the Joomla! website. You can see it at