Beispiel #1
0
 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})");
     }
 }