function emailpanels_contactemail_menu_alter in Panels Extras 6
Callback defined by emailpanels_contactemail_page_manager_tasks().
Alter the cck email generated contact form page so that the contact form page comes to us rather than the normal cck email contact form process.
1 string reference to 'emailpanels_contactemail_menu_alter'
- emailpanels_contactemail_page_manager_tasks in emailpanels/
plugins/ tasks/ contactemail.inc - Specialized implementation of hook_page_manager_task_tasks(). See api-task.html for more information.
File
- emailpanels/
plugins/ tasks/ contactemail.inc, line 45 - Provides additional page manager tasks CCK Email Contact form for panels use
Code
function emailpanels_contactemail_menu_alter(&$items, $task) {
if (variable_get('emailpanels_contactemail_disabled', TRUE)) {
return;
}
$callback = $items['email/%/%']['page callback'];
// Override the node edit handler for our purpose.
if ($callback == 'email_mail_page' || variable_get('page_manager_override_anyway', FALSE)) {
$items['email/%/%']['page callback'] = 'emailpanels_contactemail';
$items['email/%/%']['file path'] = $task['path'];
$items['email/%/%']['file'] = $task['file'];
}
else {
variable_set('emailpanels_contactemail_disabled', TRUE);
if (!empty($GLOBALS['emailpanels_enabling_contactemail'])) {
drupal_set_message(t('Page manager module is unable to enable email/%node/%field_name because some other module already has overridden with %callback.', array(
'%callback' => $callback,
)), 'warning');
}
return;
}
}