function _cacheflush_clear_preset in CacheFlush 7.3
Same name and namespace in other branches
- 7 cacheflush.inc \_cacheflush_clear_preset()
- 7.2 cacheflush.inc \_cacheflush_clear_preset()
Based on settings decide witch clear cache function to be called.
Parameters
int $preset_id: Preset id to do clear cache for.
4 calls to _cacheflush_clear_preset()
- CacheFlushRulesEvents::testEvents in modules/
cacheflush_rules/ cacheflush_rules.test - Test the events.
- cacheflush_clear_preset_menu_callback in ./
cacheflush.api.inc - Call clear cache and send back.
- cacheflush_rules_clear in modules/
cacheflush_rules/ cacheflush_rules.rules.inc - Rules action function.
- drush_cacheflush_drush_cacheflush in modules/
cacheflush_drush/ cacheflush_drush.drush.inc - Callback function for drush cacheflush.
1 string reference to '_cacheflush_clear_preset'
- cacheflush_cron_cronapi in modules/
cacheflush_cron/ cacheflush_cron.module - Implements hook_cronapi().
File
- ./
cacheflush.api.inc, line 36 - Cacheflusher module inc file with dinamic clear cache functions.
Code
function _cacheflush_clear_preset($preset_id) {
$entity = cacheflush_load($preset_id);
if (!$entity) {
drupal_set_message(t('Invalid ID'), 'error');
return;
}
if ($entity->status == 0) {
drupal_set_message(t('This entity is disabled.'), 'error');
drupal_access_denied();
return;
}
// Call: hook_cacheflush_before_clear().
module_invoke_all('cacheflush_before_clear', $entity);
$presets = unserialize($entity->data);
if ($presets) {
foreach ($presets as $cache) {
foreach ($cache['functions'] as $value) {
call_user_func_array($value['#name'], $value['#params']);
}
}
}
drupal_set_message(t("All predefined cache options at @name was cleared.", array(
'@name' => $entity->title,
)));
// Call: hook_cacheflush_after_clear().
module_invoke_all('cacheflush_after_clear', $entity);
}