Пример #1
0
 /**
  * Get the Admin Menu Bar
  *
  * @return mixed
  */
 public function getAdminWrapperAction()
 {
     $allowed = $this->cmsPermissionChecks->siteAdminCheck($this->currentSite);
     if (!$allowed) {
         return null;
     }
     /** @var RouteMatch $routeMatch */
     $routeMatch = $this->getEvent()->getRouteMatch();
     $siteId = $this->currentSite->getSiteId();
     $sourcePageName = $routeMatch->getParam('page', 'index');
     if ($sourcePageName instanceof Page) {
         $sourcePageName = $sourcePageName->getName();
     }
     $pageType = $routeMatch->getParam('pageType', 'n');
     $view = new ViewModel();
     $view->setVariable('restrictions', false);
     if ($this->cmsPermissionChecks->isPageRestricted($siteId, $pageType, $sourcePageName, 'read') == true) {
         $view->setVariable('restrictions', true);
     }
     $view->setVariable('adminMenu', $this->adminPanelConfig);
     $view->setTemplate('rcm-admin/admin/admin');
     return $view;
 }
 /**
  * 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;
 }
Пример #3
0
 /**
  * isAdmin
  *
  * @param Site $site Site to check
  *
  * @return \Zend\Http\Response
  */
 public function __invoke(Site $site)
 {
     return $this->checker->siteAdminCheck($site);
 }