Exemple #1
0
 public function htmlify(NavigationPage $page)
 {
     // get label and title for translating
     $label = $page->getLabel();
     $title = $page->getTitle();
     // get attribs for element
     $attribs = array('id' => $page->getId(), 'title' => $title);
     if (false === $this->getAddPageClassToLi()) {
         $attribs['class'] = $page->getClass();
     }
     // does page have a href?
     if ($href = $page->getHref()) {
         $element = 'a';
         $attribs['href'] = $href;
         $attribs['target'] = $page->getTarget();
         $attribs['accesskey'] = $page->getAccessKey();
     } else {
         $element = 'span';
     }
     // Add custom HTML attributes
     $attribs = array_merge($attribs, $page->getCustomHtmlAttribs());
     return '<' . $element . $this->_htmlAttribs($attribs) . '>' . $this->view->escape($label) . '</' . $element . '>';
 }
 protected function _acceptAcl(NavigationPage $page)
 {
     if (!($acl = $this->getAcl())) {
         // no acl registered means don't use acl
         return true;
     }
     $role = $this->getRole();
     $resource = $page->getResource();
     $privilege = $page->getPrivilege();
     if ($resource || $privilege) {
         // determine using helper role and page resource/privilege
         return $acl->isAllowed($role, $resource, $privilege);
     }
     return true;
 }