function getPermissionsForProjectUser(ProjectUser $project_user)
 {
     $permissions = array();
     $pups = ProjectUserPermissions::findAll(array('conditions' => '`project_id` = ' . $project_user->getProjectId() . ' and `user_id` = ' . $project_user->getUserId()));
     if (is_array($pups)) {
         foreach ($pups as $pup) {
             $permissions[] = Permissions::getPermissionString($pup->getPermissionId());
         }
     }
     //if
     return $permissions;
 }
 static function removeUserPermissions($permission)
 {
     $user_permissions = ProjectUserPermissions::findAll(array('conditions' => "`permission_id` = '" . $permission->getId() . "'"));
     foreach ($user_permissions as $user_permission) {
         $user_permission->delete();
     }
 }
 static function removeSource($source)
 {
     $permissions = Permissions::findAll(array('conditions' => "`source` = '" . $source . "'"));
     if (is_array($permissions)) {
         foreach ($permissions as $permission) {
             $userpermissions = ProjectUserPermissions::findAll(array('conditions' => "`permission_id` = '" . $permission->getId() . "'"));
             foreach ($userpermissions as $userpermission) {
                 $userpermission->delete();
             }
             $permission->delete();
         }
         return true;
         // permission already exists
     }
     return false;
     // permission source does not exist
 }