function uc_product_kit_add_to_cart_form_validate in Ubercart 8.4
Same name and namespace in other branches
- 7.3 uc_product_kit/uc_product_kit.module \uc_product_kit_add_to_cart_form_validate()
Form validation handler for adding a product kit to the cart.
See also
\Drupal\uc_product\Form\AddToCartForm
1 string reference to 'uc_product_kit_add_to_cart_form_validate'
- uc_product_kit_uc_form_alter in uc_product_kit/
uc_product_kit.module - Implements hook_uc_form_alter().
File
- uc_product_kit/
uc_product_kit.module, line 718 - The product kit module for Ubercart.
Code
function uc_product_kit_add_to_cart_form_validate($form, FormStateInterface $form_state) {
$data = \Drupal::moduleHandler()
->invokeAll('uc_add_to_cart_data', [
$form_state
->getValues(),
]);
$form_state
->set('variant', uc_product_load_variant($form_state
->getValue('nid'), $data));
foreach ($form_state
->get('variant')->products as &$product) {
$data = \Drupal::moduleHandler()
->invokeAll('uc_add_to_cart_data', [
$form_state
->getValue([
'products',
$product
->id(),
]),
]);
$data += $product->data;
$qty = $product->qty;
$product = uc_product_load_variant($product
->id(), $data);
$product->qty = $qty;
}
}