Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
By GBurg on
Hi all,
I have installed ubercart with the module cart links enabled, and want to add a product, and then empty the cart, without the notification message if there is already something in the cart. therefore we have this hook in uc_cart_links:
/**
* Preprocesses a Cart Link and confirm with the user if a destructive action
* is included.
*
* @see uc_cart_links_form_submit()
*/
function uc_cart_links_form($form, &$form_state, $arg1) {
// Fail if the link is restricted.
$data = variable_get('uc_cart_links_restrictions', '');
if (!empty($data)) {
$restrictions = explode("\n", variable_get('uc_cart_links_restrictions', ''));
$restrictions = array_map('trim', $restrictions);
if (!empty($restrictions) && !in_array($arg1, $restrictions)) {
$url = variable_get('uc_cart_links_invalid_page', '');
if (empty($url)) {
$url = '<front>';
}
unset($_GET['destination']);
drupal_goto($url);
}
}
// Confirm with the user if the form contains a destructive action.
$items = uc_cart_get_contents();
if (variable_get('uc_cart_links_empty', TRUE) && !empty($items)) {
$actions = explode('-', urldecode($arg1));
foreach ($actions as $action) {
$action = drupal_substr($action, 0, 1);
if ($action == 'e' || $action == 'E') {
return confirm_form(array(), t('The current contents of your shopping cart will be lost. Are you sure you want to continue?'), variable_get('uc_cart_links_invalid_page', ''));
}
}
}
// No destructive actions, so process the link immediately.
uc_cart_links_process($arg1);
}
and now I want to alter, or overwrite it all together. I need to comment out the part
$items = uc_cart_get_contents();
if (variable_get('uc_cart_links_empty', TRUE) && !empty($items)) {
$actions = explode('-', urldecode($arg1));
foreach ($actions as $action) {
$action = drupal_substr($action, 0, 1);
if ($action == 'e' || $action == 'E') {
return confirm_form(array(), t('The current contents of your shopping cart will be lost. Are you sure you want to continue?'), variable_get('uc_cart_links_invalid_page', ''));
}
}
}
But don't want to hack into the code?
This seems to be easy to do, but can someone help me, because I am not so good in modules. I only need the proper hook function and the right implementation of that hook function