public function VariationDelete::submitConfigurationForm in Commerce Bulk 8
Form submission handler.
Parameters
array $form: An associative array containing the structure of the plugin form as built by static::buildConfigurationForm().
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form. Calling code should pass on a subform state created through \Drupal\Core\Form\SubformState::createForSubform().
Overrides PluginFormInterface::submitConfigurationForm
File
- src/
Plugin/ Action/ VariationDelete.php, line 78
Class
- VariationDelete
- Delete variations.
Namespace
Drupal\commerce_bulk\Plugin\ActionCode
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
if ($form_state
->getTriggeringElement()['#id'] != 'edit-cancel') {
if ($seleted_variations = $form_state
->get('variations')) {
$product = $form_state
->get('product');
$variations = $product
->getVariations();
foreach ($variations as $index => $variation) {
if (in_array($variation, $seleted_variations)) {
unset($variations[$index]);
$variation
->delete();
}
}
$product
->setVariations(array_values($variations))
->save();
}
}
}