/** * Test Set And Get Links * * @return void * @covers \RcmDynamicNavigation\Model\NavLink::setLinks * @covers \RcmDynamicNavigation\Model\NavLink::getLinks */ public function testSetAndGetLinks() { $linkOne = new NavLink(); $linkOne->setDisplay('Display 1'); $linkTwo = new NavLink(); $linkTwo->setDisplay('Display 2'); $linkThree = new NavLink(); $linkThree->setDisplay('Display 3'); $linkArray = array($linkOne, $linkTwo, $linkThree); $this->link->setLinks($linkArray); $result = $this->link->getLinks(); $this->assertEquals($linkArray, $result); }
/** * Get the li and link html for a link * * @param \RcmDynamicNavigation\Model\NavLink $link Link to render * @param boolean $admin Render in admin mode * * @return string */ protected function getLi(NavLink $link, $admin) { $target = $link->getTarget(); $objectClass = $link->getClass(); $systemClass = $link->getSystemClass(); if ($link->hasLinks()) { $objectClass .= ' dropdown'; } $permissionsArray = $link->getPermissions(); $html = '<li'; if (!empty($objectClass) || !empty($systemClass)) { $html .= ' class="' . $objectClass . ' ' . $systemClass . '"'; } if ($admin) { $html .= ' data-permissions="' . implode(',', $permissionsArray) . '"'; } $html .= '>' . "\n"; $html .= '<a href="' . $link->getHref() . '"'; if ($link->hasLinks()) { $html .= 'class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"'; } if (!empty($target)) { $html .= ' target="' . $target . '"'; } $html .= '>'; $html .= '<span class="linkText">' . $link->getDisplay() . '</span>'; if ($link->hasLinks()) { $html .= '<span class="caret"></span>'; } $html .= '</a>' . "\n"; if ($link->hasLinks()) { $html .= $this->getUl($link->getLinks(), $admin); } $html .= '</li>' . "\n"; return $html; }