/** * get the permissions for this tracker * * @return array */ public function getPermissions() { if (!$this->cache_permissions) { $this->cache_permissions = array(); $perm_dao = new Tracker_PermDao(); if ($dar = $perm_dao->searchAccessPermissionsByTrackerId($this->getId())) { while ($row = $dar->getRow()) { $this->cache_permissions[$row['ugroup_id']][] = $row['permission_type']; } } } return $this->cache_permissions; }
/** * Retreives the permissions set on a given tracker * E.g. * array( * Tracker::PERMISSION_ADMIN => array($ugroup_id_1, $ugroup_id_2) * Tracker::PERMISSION_NONE => array($ugroup_id_1, $ugroup_id_2) * ); * * @return array */ public function getAuthorizedUgroupsByPermissionType() { if (!$this->cached_permission_authorized_ugroups || empty($this->cached_permission_authorized_ugroups)) { $this->cached_permission_authorized_ugroups = array(); $perm_dao = new Tracker_PermDao(); if ($dar = $perm_dao->searchAccessPermissionsByTrackerId($this->getId())) { while ($row = $dar->getRow()) { $this->cached_permission_authorized_ugroups[$row['permission_type']][] = $row['ugroup_id']; } } } return $this->cached_permission_authorized_ugroups; }