function commerce_bulk_form_views_form_commerce_bulk_variations_tab_commerce_bulk_alter in Commerce Bulk 8
Implements hook_form_BASE_FORM_ID_alter().
File
- ./
commerce_bulk.module, line 88 - Contains commerce_bulk.module.
Code
function commerce_bulk_form_views_form_commerce_bulk_variations_tab_commerce_bulk_alter(&$form, FormStateInterface $form_state, $form_id) {
if (!($product = \Drupal::request()->attributes
->get('commerce_product'))) {
return;
}
$creator = \Drupal::service('commerce_bulk.variations_creator');
$messenger = \Drupal::messenger();
$variations = $product
->getVariations();
$created = count($variations);
$variations = $product
->getVariations() ?: [
$creator
->getProductVariation($product),
];
$all = $creator
->getNotUsedAttributesCombination($variations);
extract($all);
$form['#markup'] = new TranslatableMarkup('<div><h3>Variations:</h3><ul><li>Maximum: @count</li><li>Created: <span style="font-weight:bolder;color:red;">@created</span></li><li>Not used: @not_used</li></ul></div>', [
'@count' => $count,
'@created' => $created,
'@not_used' => $count - $created,
]);
if ($duplicated) {
$placeholders = [
'@variations' => $duplicated > 1 ? new TranslatableMarkup('variations') : new TranslatableMarkup('variation'),
'@duplicated' => $duplicated,
'@labels' => $all['duplications_list'],
];
$warning = new TranslatableMarkup('You have @duplicated @variations duplicated: @labels', $placeholders);
$messenger
->addMessage($warning, 'warning');
}
}