Scalr_Account_User::isInTeam PHP Method

isInTeam() public method

Check if user is included in team
public isInTeam ( integer $teamId ) : boolean
$teamId integer
return boolean
    public function isInTeam($teamId)
    {
        return !!$this->db->getOne("\n            SELECT 1 FROM account_team_users WHERE user_id = ? AND team_id = ?\n        ", [$this->id, $teamId]);
    }

Usage Example

Esempio n. 1
0
 /**
  * @param   DBFarm $dbFarm
  * @param   string $permissionId
  * @return  bool
  */
 protected function isFarmAllowed(DBFarm $dbFarm = null, $permissionId = null)
 {
     $acl = \Scalr::getContainer()->acl;
     if (is_null($dbFarm)) {
         return $acl->isUserAllowedByEnvironment($this->user, $this->Environment, \Scalr\Acl\Acl::RESOURCE_FARMS, $permissionId) || $acl->isUserAllowedByEnvironment($this->user, $this->Environment, \Scalr\Acl\Acl::RESOURCE_TEAM_FARMS, $permissionId) || $acl->isUserAllowedByEnvironment($this->user, $this->Environment, \Scalr\Acl\Acl::RESOURCE_OWN_FARMS, $permissionId);
     } else {
         if (!$dbFarm instanceof DBFarm) {
             throw new \InvalidArgumentException(sprintf('First argument should be instance of DBFarm or null'));
         }
         $result = $acl->isUserAllowedByEnvironment($this->user, $this->Environment, \Scalr\Acl\Acl::RESOURCE_FARMS, $permissionId);
         if (!$result && $dbFarm->teamId && $this->user->isInTeam($dbFarm->teamId)) {
             $result = $acl->isUserAllowedByEnvironment($this->user, $this->Environment, \Scalr\Acl\Acl::RESOURCE_TEAM_FARMS, $permissionId);
         }
         if (!$result && $dbFarm->createdByUserId && $this->user->id == $dbFarm->createdByUserId) {
             $result = $acl->isUserAllowedByEnvironment($this->user, $this->Environment, \Scalr\Acl\Acl::RESOURCE_OWN_FARMS, $permissionId);
         }
         return $result;
     }
 }