function block_titlelink_preprocess_block in Block Title Link 7
Same name and namespace in other branches
- 8 block_titlelink.module \block_titlelink_preprocess_block()
- 6.2 block_titlelink.module \block_titlelink_preprocess_block()
- 6 block_titlelink.module \block_titlelink_preprocess_block()
Implements hook_preprocess_block().
File
- ./
block_titlelink.module, line 124 - module for adding a link to a block title
Code
function block_titlelink_preprocess_block(&$vars) {
global $user;
$data = _block_titlelink_get_data($vars['block']);
if ($data) {
$vars['block']->title_link = isset($data['url']) ? trim($data['url']) : NULL;
$vars['block']->title_link_title = isset($data['title']) ? check_plain($data['title']) : NULL;
$vars['block']->title_link_target = isset($data['target']) ? $data['target'] : NULL;
// Add Tokens
if (function_exists('token_replace')) {
$token_params = array(
'user' => $user,
);
$vars['block']->title_link = token_replace($vars['block']->title_link, $token_params);
$vars['block']->title_link_title = token_replace($vars['block']->title_link_title, $token_params);
}
// PHP Eval
if (module_exists('php')) {
$vars['block']->title_link = php_eval($vars['block']->title_link);
}
$display = isset($data['display']) ? $data['display'] : TRUE;
if (!empty($vars['block']->title_link) && $display) {
$attributes = array(
'attributes' => array(
'class' => array(
'block-title-link',
),
),
'html' => TRUE,
);
if (!empty($vars['block']->title_link_title)) {
$attributes['attributes']['title'] = $vars['block']->title_link_title;
}
if (!empty($vars['block']->title_link_target)) {
$attributes['attributes']['target'] = $vars['block']->title_link_target;
}
// Allow Drupal to parse the URL and provide us with a keyed array
// that we can hand off to l()
$parsed_url = drupal_parse_url($vars['block']->title_link);
// Add in the query string if one exists.
if (!empty($parsed_url['query'])) {
$attributes['query'] = $parsed_url['query'];
}
// Build the fragment onto the end if it is present.
if (!empty($parsed_url['fragment'])) {
$attributes['fragment'] = $parsed_url['fragment'];
}
$vars['block']->subject = l(t($vars['block']->subject), $parsed_url['path'], $attributes);
}
}
}