Primary Navigation

Creates a menu which can load pages dynamically from the content management system.


#designTopNavigation li
{
font-family: verdana, tahoma, arial, sans-serif;
background: #000000;
color: #ffffff;
font-size: 10pt;
text-align: center;
}

#designTopNavigation li ul li
{
font-family: verdana, tahoma, arial, sans-serif;
background: #000000;
color: #ffffff;
font-size: 10pt;
text-align: center;
}


Code for a popout menu:

<ss:navigation:primary orientation="horizontal" id="designTopNavigation">
<li>
<a href="/">Home</a>
</li>
<li>
<a href="/about-us/">About Us</a>
<ul>
<li><a href="/about-us/services/">Services</li>
</ul>
</li>
<li>
<a href="/contact-us/">Contact Us</a>
</li>
</ss:navigation:primary>

Tag Attributes

<ss:navigation:primary />

IncludeStyles=""
Whether or not to include JavaScript and CSS to add drop down functionality

BootStrap=""
Set to true if you want compatibility with bootstrap framework
Adds class="dropdown" on

  • s with dropdowns Adds class="dropdown-toggle" data-toggle="dropdown" on s with dropdowns Adds class="dropdown-menu" to
      s with dropdowns

      Orientation=""
      The orientation of the pop out menu

      AutoPopulateLevel=""
      Sets the level of recursion for sub menus.
      Eg: - 0 = no auto populate - 1 = populate first level from RootPage - 2 = populate two levels (drop down) - 3 = populate two three (drop down, plus third level)

      RootPage=""
      The root page to populate navigation items from

      IncludeParentPageLevel=""
      Whether or not to include the root page in the navigation
      Sets the nesting level for how many levels to include the parent page for

      ClassLiOpen=""
      Applied to list items when hovered / opened

      ClassLiCurrent=""
      Applied to list items when the the current page is a child page of the inner href

      Width=""
      Sets the width of the element

      Height=""
      Sets the height of the element

      Id=""
      Sets id of the object - used for the html id attribute and referencing in the parser's
      document object model

      AttributeSet=""
      Calls setAttribute() for each key value pair in $arrAttributes

      AjaxModified=""
      Sets whether or not this object is modified by ajax requests

      AjaxEventParameter=""
      Sets a parameter which can be passed to the ajax event
      Be careful with security on this parameter as it is passed through javascript in the clients browser.

      ChildNodes=""
      Sets the children of this node in the DOM

      InnerText=""
      Adds a new TextNode child at the end of the children

      Class Methods

      The following methods can be invoked on instances of this class.

      getNodeName()

      getNodeDisplayType()

      getRequiresId()

      addItem(\Controls\Navigation\Item pItem)

      Adds a list item defined by <ss:navigation:item>

      initialize()

      renderTagOpen(mixed arrAttributes)

      renderTagContents()

      renderTagClose()

      __sleep()

      getTagNameHTML()

      Returns the base tag name

      getTagNameClosedInline()

      Returns whether the tag is closed inline

      setWidth(mixed strWidth)

      Sets the width of the element

      getWidth()

      Returns the width of the element

      setHeight(mixed strHeight)

      Sets the height of the element

      getHeight()

      Returns the height of the element

      getJSAttributes()

      Returns a set of JavaScript attributes that differ from the default JS implementation
      Default values on properties can be specified by @js_attribute and @js_default

      onDOMReady()

      getAttributesString(mixed arrOverrides, mixed bId, bool bSize)

      Returns the attributes of the elment as a renderable properties string

      generateId()

      Generates an id for the node if one isnt already set

      getRequiresContainerDiv()

      Returns whether or not this control will be wrapped in a container span

      RestoreControlFromState(string strId)

      Restores a control from its element state

      setId(string strId)

      Sets id of the object - used for the html id attribute and referencing in the parser's
      document object model

      getId()

      Returns the id of the object

      __get(string strName)

      Overload for returning an attribute

      __set(mixed strName, string strValue)

      Overload for setting an attribute

      __isset(string strName)

      Returns whether an attribute exists

      __unset(string strName)

      Removes an attribute

      __destruct()

      setAttribute(mixed strAttribute, string strValue, mixed bDecode)

      Sets an attribute
      Returns true when handled Returns false when set as standard a HTML attribute

      setAttributes(array arrAttributes)

      Calls setAttribute() for each key value pair in $arrAttributes

      setAttributesHTML(array arrAttributes)

      Sets generic HTML attributes not specified by attributes of this control

      getAttributesHTML(array arrAttributes)

      Returns the current attributes set that aren't defined attributes of this control

      setAttributeHTML(mixed strAttribute, mixed strValue)

      Sets a single attribute

      getAttributeHTML(mixed strAttribute)

      Returns a single attribute

      setAttributeJSAdd(mixed strAttrib, mixed strValue)

      Adds a javascript handler attribute
      If a handlers already exist, the new handler added to the end

      getAttribute(mixed strAttribute)

      Returns the value of the given attribute

      removeAttribute(string strAttrib)

      Removes an attribute

      getAttributes()

      Returns the objects attributes as an associative array

      requireAttribute(mixed strAttribute, mixed strValue)

      setAttributesParsedInit(mixed arrAttributes)

      getAttributesParsedInit()

      setAttributesParsedRender(mixed arrAttributes)

      getAttributesParsedRender()

      mergeAttributes(mixed arr1, array arr2)

      Merges two sets of attributes

      getStyles()

      setStyle(mixed strStyle, mixed strValue)

      setStyles(mixed arrStyles)

      setAjaxModified(bool bAjaxModified)

      Sets whether or not this object is modified by ajax requests

      getAjaxModified()

      Returns whether or not this object is modified by ajax requests

      stateGetSavableProperties()

      Returns a list of properties which will be saved to session state

      stateGetSavablePropertiesAllAttributes()

      Returns a list of all attributes to save to session state

      stateSave()

      Serializes the state of the object to session

      stateSaveAdditional(mixed strKey, string strValue)

      Sets a key value pair for saving additional state data
      This data is handled manually by each inheriting control

      stateIsSetAdditional(string strKey)

      Returns whether an additional state key has been set

      stateGetAdditional(string strKey)

      Returns the value of a key in the additional state set
      Note: This function returns a reference

      stateUnsetAdditional(string strKey)

      Deletes additional saved data

      stateSaveAdditionalArray(mixed strKey, mixed strKey2, mixed strValue)

      Sets an inner array key value pair for saving additional state data

      stateIsSetAdditionalArray(mixed strKey, string strKey2)

      Returns whether an additional state key has been set

      stateGetAdditionalArray(mixed strKey, string strKey2)

      Returns an inner array key value pair for additional state data

      stateGetPrevious()

      Returns the state data for the current object

      stateRenderJSGetContents()

      stateRenderJS()

      stateRestore(mixed arrAttributes)

      Restores the saved state of this object from the users session

      addEventHandler(mixed strEventName, mixed strCode)

      Adds an event handler
      If $strCode is an array, call_user_func_array will be called directly call_user_func_array($strFunc[0], $strFunc[1]);

      removeEventHandler(mixed strEventName)

      triggerEvent(string strEventName)

      Triggers a server side event
      Calls all event handlers set by addEventHandler

      setEventHandlersAjax(array arrHandlers)

      Sets the ajax event handlers

      addEventHandlerAjax(mixed strEventName, mixed strAjaxEventId)

      Adds an AJAX event handler

      getEventHandlersAjax()

      Sets the ajax event handlers

      setAjaxEventParameter(string strParameter)

      Sets a parameter which can be passed to the ajax event
      Be careful with security on this parameter as it is passed through javascript in the clients browser.

      getAjaxEventParameter()

      Returns the current ajax event parameter

      getIsAjax()

      callDelegate(string strFunc)

      Trigger an event by evaluating the script in $strFunc

      onDOMReadySetParsedAttributes()

      onDOMReadySetParsedAttributesAJAX()

      render()

      Renders the element

      renderAJAXTree(mixed bInside)

      __sleepExport()

      Magic function for a better var_export() of nodes

      __wakeup()

      Wake up

      __clone()

      Clone

      __toString()

      Renders the element to a string

      getTrimContents()

      Returns whether the control should trim its contents for optimisation purposes

      setParentNode(\Framework\DOM\Nodes\NodeABC pNode)

      Sets the elements parent node in the DOM

      getParentNode()

      Returns the elements parent node in the DOM

      getAscendant(string strAscendantClass)

      Returns the first ascendant node of a specific class

      getDocument()

      Returns the elements top most / document element

      setChildNodesFromTemplate(array arrChildNodes)

      Sets the child nodes from the template
      This method may be overridden if the innerHTML from the original source acts as a template, rather than being the nodes themselves. For example, a data repeater uses the child nodes from the template to construct the child nodes dynamically.

      setChildNodes(array arrChildNodes)

      Sets the children of this node in the DOM

      getChildNodes()

      Returns the children of this node

      insertBefore(mixed pNewNode, mixed pNode)

      insertAfter(mixed pNewNode, mixed pNode)

      appendChild(\Framework\DOM\Nodes\NodeABC pNode)

      Adds new child at the end of the children

      appendChildText(mixed strText)

      Adds a new TextNode child at the end of the children

      removeChild(\Framework\DOM\Nodes\NodeABC pNode)

      Removes the specified node from the list of children

      debugRenderChildren(mixed iDepth)

      resetDOMStates()

      Resets the indicators for dom states so that reinitialisation / rendering can occur

      uiStateGetParentVars()

      Returns an array containing the states of parent controls
      such as DialogBox and TabList

      __call(mixed strName, array arrArguments)

      Magic function to trap calls to undefined functions and throw an exception rather than
      a fatal error.

      __callStatic(mixed strName, array arrArguments)

      Magic function to trap static calls to undefined functions and throw an exception rather
      than a fatal error.

      classGetFolder()

      Returns the folder where the class exists

      __set_state(mixed arrValues)

      classGetFolderResources()

      Returns the folder where the class's resources exist

      classGetSrcFile()

      Returns the folder where the class exists

      classGetSrcHash()

      Returns the folder where the class exists

      classGetReflection()

      Returns the reflection data for the current class

      classGetReflectionAnnotation(string strField)

      Returns a specific class annotation for the current class