/** * Test Add And Get System Class * * @return void * @covers \RcmDynamicNavigation\Model\NavLink::addSystemClass * @covers \RcmDynamicNavigation\Model\NavLink::getSystemClass */ public function testAddAndGetSystemClass() { $class = 'SomeClass'; $this->link->addSystemClass($class); $this->assertEquals($class, $this->link->getSystemClass()); }
/** * Check an individual link * * @param NavLink $link Link to check * * @return bool */ public function checkLink(NavLink $link) { $siteAdmin = $this->permissionChecks->siteAdminCheck($this->currentSite); $userHasPermissions = $this->usersRoleHasPermissions($link->getPermissions()); if ($link->isLoginLink() && $this->permissionChecks->isCurrentUserLoggedIn()) { $link->addSystemClass('HiddenLink'); } elseif ($link->isLogoutLink() && !$this->permissionChecks->isCurrentUserLoggedIn()) { $link->addSystemClass('HiddenLink'); } elseif ($siteAdmin && !$userHasPermissions) { $link->addSystemClass('HiddenLink'); } if ($siteAdmin || $userHasPermissions) { return true; } return false; }