コード例 #1
0
 /**
  * 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());
 }
コード例 #2
0
 /**
  * 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;
 }