public static function forgetSecurableItem(SecurableItem $securableItem, $forgetDbLevelCache = true) { if ($securableItem->getClassId('SecurableItem') == 0) { return; } $securableItemModelIdentifer = $securableItem->getModelIdentifier(); if (PHP_CACHING_ON) { self::$securableItemToPermitableToCombinedPermissions[$securableItemModelIdentifer] = array(); } if (MEMCACHE_ON && Yii::app()->cache !== null) { $prefix = self::getCachePrefix($securableItemModelIdentifer, self::$cacheType); Yii::app()->cache->delete($prefix . $securableItemModelIdentifer); } if (SECURITY_OPTIMIZED && DB_CACHING_ON && $forgetDbLevelCache) { $securableItemId = $securableItem->getClassID('SecurableItem'); ZurmoDatabaseCompatibilityUtil::callProcedureWithoutOuts("clear_cache_securableitem_actual_permissions({$securableItemId})"); } }
public static function forgetSecurableItem(SecurableItem $securableItem, $forgetDbLevelCache = true) { if ($securableItem->getClassId('SecurableItem') == 0) { return; } $securableItemModelIdentifer = $securableItem->getModelIdentifier(); if (static::supportsAndAllowsPhpCaching()) { static::$securableItemToPermitableToCombinedPermissions[$securableItemModelIdentifer] = array(); } if (static::supportsAndAllowsMemcache()) { $prefix = static::getCachePrefix($securableItemModelIdentifer); Yii::app()->cache->delete($prefix . $securableItemModelIdentifer); } if (SECURITY_OPTIMIZED && static::supportsAndAllowsDatabaseCaching() && $forgetDbLevelCache) { $securableItemId = $securableItem->getClassID('SecurableItem'); ZurmoDatabaseCompatibilityUtil::callProcedureWithoutOuts("clear_cache_securableitem_actual_permissions({$securableItemId})"); } }