Elgg\Database\EntityTable::disableEntities PHP Method

disableEntities() public method

Disables all entities owned and contained by a user (or another entity)
public disableEntities ( integer $owner_guid ) : boolean
$owner_guid integer The owner GUID
return boolean
    public function disableEntities($owner_guid)
    {
        $entity = get_entity($owner_guid);
        if (!$entity || !$entity->canEdit()) {
            return false;
        }
        if (!$this->events->trigger('disable', $entity->type, $entity)) {
            return false;
        }
        $query = "\n\t\t\tUPDATE {$this->table}entities\n\t\t\tSET enabled='no'\n\t\t\tWHERE owner_guid = :owner_guid\n\t\t\tOR container_guid = :owner_guid";
        $params = [':owner_guid' => (int) $owner_guid];
        _elgg_invalidate_cache_for_entity($entity->guid);
        _elgg_invalidate_memcache_for_entity($entity->guid);
        if ($this->db->updateData($query, true, $params)) {
            return true;
        }
        return false;
    }

Usage Example

コード例 #1
0
ファイル: UsersTable.php プロジェクト: elgg/elgg
 /**
  * Disables all of a user's entities
  *
  * @param int $owner_guid The owner GUID
  * @return bool Depending on success
  * @deprecated 2.3
  */
 public function disableEntities($owner_guid)
 {
     return $this->entities->disableEntities($owner_guid);
 }