コード例 #1
0
 public static function getPermissionsByGroup($db = null, $group_id)
 {
     $peer_object = new DinklyGroupPermission();
     if ($db == null) {
         $db = self::fetchDB();
     }
     $query = $peer_object->getSelectQuery() . " where dinkly_group_id = " . $db->quote($group_id);
     $group_perm_joins = self::getCollection($peer_object, $query, $db);
     if ($group_perm_joins != array()) {
         $perm_ids = array();
         foreach ($group_perm_joins as $perm_join) {
             $perm_ids[] = $perm_join->getDinklyPermissionId();
         }
         $perms = DinklyPermissionCollection::getByArrayOfIds($perm_ids, $db);
         if ($perms != array()) {
             return $perms;
         }
     }
     return false;
 }
コード例 #2
0
ファイル: DinklyGroup.php プロジェクト: bigSiebs/poetry_vote
 public function addPermissions($permission_ids)
 {
     if ($permission_ids != array()) {
         foreach ($permission_ids as $id) {
             $permission = new DinklyPermission();
             $permission->init($id);
             //If the permission isn't new, that means it exists, which is a good thing
             if (!$permission->isNew()) {
                 //Make sure this join record doesn't already exist first
                 $permission_join = new DinklyGroupPermission();
                 $permission_join->initWithGroupAndPermission($this->getId(), $id);
                 if ($permission_join->isNew()) {
                     $permission_join->setDinklyGroupId($this->getId());
                     $permission_join->setDinklyPermissionId($id);
                     $permission_join->save();
                 }
             }
         }
         return true;
     }
     return false;
 }