Advertisement
Guest User

Untitled

a guest
Jul 26th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.85 KB | None | 0 0
  1. <?php
  2. namespace app\components;
  3.  
  4. use Yii;
  5. use yii\rbac\Rule;
  6. use app\models\Users;
  7.  
  8. /**
  9.  * Checks if user group matches
  10.  */
  11. class UserGroupRule extends Rule
  12. {
  13.     public $name = 'userGroup';
  14.  
  15.     public function execute($user, $item, $params)
  16.     {
  17.         if (!Yii::$app->user->isGuest) {
  18.             $role = Yii::$app->user->identity->getRole();
  19.             if ($item->name === 'administrator') {
  20.                 return $role == Users::ROLE_ADMINISTRATOR;
  21.             } elseif ($item->name === 'manager') {
  22.                 return $role == Users::ROLE_ADMINISTRATOR || $role == Users::ROLE_MODERATOR;
  23.             }
  24.             elseif ($item->name === 'user') {
  25.                 return $role == Users::ROLE_ADMINISTRATOR || $role == Users::ROLE_MODERATOR || $role == Users::ROLE_USER;
  26.             }
  27.         }
  28.         return false;
  29.     }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement