function fasttoggle_menu_contextual_links_alter in Fasttoggle 6
File
- ./
fasttoggle.module, line 507 - Enables fast toggling of binary or not so binary settings.
Code
function fasttoggle_menu_contextual_links_alter(&$links, $router_item, $root_path) {
if ($root_path == 'node/%') {
if (isset($router_item['map'][0]) && $router_item['map'][0] == 'node') {
if (isset($router_item['map'][1]) && is_object($router_item['map'][1])) {
$node = $router_item['map'][1];
$options = fasttoggle_get_options('node', $node);
$link_list = variable_get('fasttoggle_add_to_node_links_' . $node->type, array());
$options = array_intersect_key($options, array_flip($link_list));
foreach ($options as $group => $flags) {
foreach ($flags as $key => $data) {
$link = fasttoggle($data['label'][intval($node->{$key})], 'node/' . $node->nid . '/toggle/status/' . $key, FASTTOGGLE_FORMAT_LINK_ARRAY, $group . '_' . $key . '_' . $node->nid, 'fasttoggle-status-node-' . $node->nid . '-' . $group . '-' . $key, 'fasttoggle-status-node-' . $group . '-' . $key . '-' . $node->{$key});
// massage to $link so it fits the expected format.
$link['localized_options']['query'] = $link['query'];
unset($link['query']);
$link['localized_options']['attributes'] = $link['attributes'];
unset($link['attributes']);
$links['fasttoggle_' . $group . '_' . $key] = $link;
}
}
}
}
}
}