function _cacheflush_clear_preset in CacheFlush 7.2
Same name and namespace in other branches
- 7.3 cacheflush.api.inc \_cacheflush_clear_preset()
- 7 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.
2 calls to _cacheflush_clear_preset()
- cacheflush_clear_preset_menu_callback in ./
cacheflush.inc - Call clear cache and send back.
- cacheflush_rules_clear_cache in cacheflush_rules/
cacheflush_rules.module - Cacheflush rules action for clearing cache.
2 string references to '_cacheflush_clear_preset'
- cacheflush_combine_preset_form_submit in cacheflush_combination/
cacheflush_combination.inc - Implements hook_formID_submit().
- cacheflush_cron_cronapi in cacheflush_cron/
cacheflush_cron.module - Implements hook_cronapi().
File
- ./
cacheflush.inc, line 36 - Cacheflusher module inc file with dinamic clear cache functions.
Code
function _cacheflush_clear_preset($preset_id) {
// Get presets.
$cache_presets = variable_get('cacheflush_preset_list', array());
// Declare hook before cache cleared.
module_invoke_all('cacheflush_clear_before', array(
'preset_id' => $preset_id,
'presets_list' => $cache_presets,
));
// Decide if is table or function and call specifed function to clear cache.
foreach ($cache_presets[$preset_id]['#cacheflush_preset_values'] as $key => $value) {
if ($value['is_table']) {
_cacheflush_clear_preset_clear_table($key, $value);
}
else {
_cacheflush_clear_preset_clear_call_functions($value);
}
}
drupal_set_message(t("@name preset caches cleared.", array(
'@name' => $cache_presets[$preset_id]['#name'],
)));
// Declare hook after cache cleared.
module_invoke_all('cacheflush_clear_after', array(
'preset_id' => $preset_id,
'presets_list' => $cache_presets,
));
}