Dashboards and control panels are commonly used to organize relevant information for the specific user in a format that is easy for the specific user to digest. We recently designed and created a set of visitor, citizen, and employee dashboards for the Pueblo County web site. This project has been one of our favorites.
The dashboards were created using the Panels module for Drupal. The Panels module is a drag and drop interface to create just about any site layout you can imagine. Panels makes use of contexts and permissions to control access to each page. In the case of these dashboards, the Panels page permissions are set by role. Based on the user role, a different dashboard with unique content to that role can be displayed.
Creating a Set of Dashboards Based Upon Role
To create the dashboards you will need to install and enable the ctools, panels, and ctools page manager modules. To start creating the dashboards, navigate to Site Building -> Pages in Drupal 6, or Structure -> Pages in Drupal 7. Enable the page with the title of "User profile template". Click on Edit next to User profile template and the admin page for setting up user dashboards will be loaded.
The above image shows the overall setup of the dashboards for the Pueblo County web site. Each of the visitor, citizen, and employee sections were added as a separate variant. To create your own dashboard, select the add variant link at the top of the page. Once you have one variant, you can clone and add a new one. When adding a new varient, start by reviewing the selection rules.
The selection rules determine what users can see each dashboard. In the case above, we setup rules by user role and to make sure the dashboard can only be viewed if the current dashboard page being viewed is the same user as who is logged in. Next, take a look at the layouts section.
A category of layouts can be selected from the category drop down menu, such as one column, two column, or three column layout. Custom layouts can also be created and added to any of the available categories. The last step is adding content to each dashboard.
Content can be added to each section by selecting the add content link from the gear in the upper left of each section. The drag and drop interface makes it easy to move content within the same section, or between sections. Just about any available content can be added using this interface, including node, blocks, and views content.
The above image is the current version of the citizen dashboard for the Pueblo County web site. There is a variety of content displayed, such as GIS blocks, views for events search and display, weather, announcements, and a control panel. The display is dependent on which user is viewing the dashboard and which dashboard they are viewing.