public function OrderAddForm::submitForm in Commerce Core 8.2
Form submission handler.
Parameters
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Overrides FormInterface::submitForm
File
- modules/
order/ src/ Form/ OrderAddForm.php, line 121
Class
- OrderAddForm
- Provides the order add form.
Namespace
Drupal\commerce_order\FormCode
public function submitForm(array &$form, FormStateInterface $form_state) {
$this
->submitCustomerForm($form, $form_state);
$values = $form_state
->getValues();
$order_data = [
'type' => $values['type'],
'mail' => $values['mail'],
'uid' => [
$values['uid'],
],
'store_id' => [
$values['store_id'],
],
];
if (!empty($values['custom_placed_date']) && !empty($values['placed'])) {
$order_data['placed'] = $values['placed']
->getTimestamp();
}
$order = $this->orderStorage
->create($order_data);
$order
->save();
$values['order_id'] = $order
->id();
$form_state
->setValues($values);
// Redirect to the edit form to complete the order.
$form_state
->setRedirect('entity.commerce_order.edit_form', [
'commerce_order' => $order
->id(),
]);
}