Пример #1
0
 private function authorize(\Nethgui\Controller\RequestInterface $request)
 {
     foreach ($this->getChildren() as $child) {
         if ($request->isMutation()) {
             $auth = $this->getPolicyDecisionPoint()->authorize($request->getUser(), $child, self::ACTION_MUTATE);
         } else {
             $auth = $this->getPolicyDecisionPoint()->authorize($request->getUser(), $child, self::ACTION_QUERY);
         }
         if ($auth->isDenied()) {
             throw $auth->asException(1327499272);
         }
     }
 }
 public function bind(\Nethgui\Controller\RequestInterface $request)
 {
     if (!$request->getUser()->getCredential('username') === 'root') {
         throw new \Nethgui\Exception\HttpException('Not found', 404, 1417136236);
     }
     $this->setUserName('root');
     parent::bind($request);
 }
Пример #3
0
 public function bind(\Nethgui\Controller\RequestInterface $request)
 {
     $user = $request->getUser();
     $isAdmin = $user->hasCredential('username') && in_array($user->getCredential('username'), array('admin', 'root')) || $user->hasCredential('groups') && in_array('adm', $user->getCredential('groups'));
     $this->loadChildrenDirectory($this, $isAdmin ? 'Dashboard' : 'UserDashboard');
     $this->sortChildren(array($this, "sortPlugin"));
     parent::bind($request);
 }
Пример #4
0
 public function bind(\Nethgui\Controller\RequestInterface $request)
 {
     $userName = $request->getUser()->getCredential('username');
     if ($userName === 'admin' && $this->getPlatform()->getDatabase('accounts')->getType('admin') !== 'user') {
         # Fake admin user, fallback to root.
         $userName = '******';
     }
     // The root user needs a different data source:
     if ($userName === 'root') {
         $this->adapter = $this->getPlatform()->getTableAdapter('configuration', 'configuration');
     } else {
         $this->adapter = $this->getPlatform()->getTableAdapter('accounts', 'user');
     }
     // Inject username-dependent datasource into the record adapter
     $this->recordAdapter->setTableData($this->adapter)->setKeyValue($userName);
     parent::bind($request);
 }