function commerce_product_urls_commerce_cart_add_to_cart_form_submit in Commerce Product URLs 7
Extra form submit handler: replaces commerce_cart's form redirect to go back to the same product variation that was just added to the cart.
1 string reference to 'commerce_product_urls_commerce_cart_add_to_cart_form_submit'
- commerce_product_urls_form_alter in ./
commerce_product_urls.module - Implements hook_form_alter().
File
- ./
commerce_product_urls.module, line 118 - Implements unique URLs for particular products on product displays. See d.o. issue #1082596: http://drupal.org/node/1082596
Code
function commerce_product_urls_commerce_cart_add_to_cart_form_submit($form, &$form_state) {
// Only if we are on node (product display) page.
if (!empty(menu_get_object()->nid)) {
// Only if there is more that 1 product assigned to current product display.
$product_ids = _commerce_product_urls_get_product_ids_from_line_item($form_state['line_item']);
if (count($product_ids) > 1) {
// Default product data does not exist after form is built.
// @see commerce_cart_add_to_cart_form_after_build.
$form_state['default_product'] = commerce_product_load($form_state['values']['product_id']);
$form_state['redirect'] = array(
current_path(),
array(
'query' => _commerce_product_urls_build_query_string($form_state, TRUE),
),
);
}
}
}