function ccl_local_actions_ccl_cache_update in Custom Contextual Links 7
Same name and namespace in other branches
- 8 ccl_local_actions/ccl_local_actions.module \ccl_local_actions_ccl_cache_update()
Hook function triggered by the chache update routine of the main module.
File
- ccl_local_actions/
ccl_local_actions.module, line 197 - Adds the ability to create local tasks with CCL.
Code
function ccl_local_actions_ccl_cache_update() {
$actions = db_query("SELECT * FROM {ccl} WHERE type = :type", array(
':type' => 'local_actions',
));
$la_cache = array();
foreach ($actions as $action) {
$action->options = unserialize($action->options);
$advanced = array();
if (isset($action->options['advanced_css'])) {
$advanced['class'] = $action->options['advanced_css'];
}
if (isset($action->options['advanced_query'])) {
$advanced['query'] = $action->options['advanced_query'];
}
if (isset($action->options['advanced_anchor'])) {
$advanced['anchor'] = $action->options['advanced_anchor'];
}
if (isset($action->options['advanced_target']) && $action->options['advanced_target'] != "default") {
$advanced['target'] = $action->options['advanced_target'];
}
if (isset($action->options['advanced_destination'])) {
$advanced['destination'] = $action->options['advanced_destination'];
}
$la_cache[] = array(
'title' => $action->title,
'href' => $action->link,
'advanced' => $advanced,
'visibility' => array(
'path' => $action->options['la_visibility'],
'pages' => $action->options['la_pages'],
'types' => $action->options['la_types'],
'roles' => $action->options['la_roles'],
),
);
}
cache_set('ccl_local_actions', $la_cache);
}