Design
There is nothing spectacular in design.
id="site-top"
width="100%"
class="portal-logo"<%= link_to image_tag("/assets/logo.png", :border => 0), '/' %>
class="portal-title" Intranet
class="portal-login"<%= dc_render(:portal, method: 'login') %>
Site top holds three elements. Logo, title and PortalRenderer::login method which displays current logged on user or login link.
Below is the main menu.
Since menu name is defined in DcSite document this is all that is required to draw the menu.
At the bottom we have application menu renderer.
id="app-menu"<%= dc_render(@options['renderer']) %>
Application menu is provided by calling render which is defined by @options['renderer']. @options var is collected from parameters fields in DcSite and DcPage documents. In our example for notes application we have defined NotesRenderer class. Therefor we define:
in DcPage parameters field. As result NotesRenderer::default method will be used to render data. In most cases this method will render default application menu. If we want more control over render method we might add method parameter to caller
Lets look at how application menu is rendered in following page.