Skip to content

Commit 4e84a63

Browse files
bojanzivkovbojanz
authored andcommitted
Issue #2862287 by Bojan Živkov, niko-, bojanz: Use a twig template for the CompletionMessage pane
1 parent 2deb1ad commit 4e84a63

File tree

5 files changed

+22
-52
lines changed

5 files changed

+22
-52
lines changed

modules/checkout/commerce_checkout.module

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,11 @@ function commerce_checkout_theme() {
2121
'steps' => [],
2222
],
2323
],
24+
'commerce_checkout_completion_message' => [
25+
'variables' => [
26+
'order_entity' => NULL,
27+
],
28+
],
2429
'commerce_checkout_form' => [
2530
'render element' => 'form',
2631
],

modules/checkout/config/install/commerce_checkout.commerce_checkout_flow.default.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,5 @@ configuration:
2424
step: review
2525
weight: 3
2626
completion_message:
27-
message: 'Your order number is %order_number. You can view your order on your account page when logged in.'
2827
step: complete
2928
weight: 4

modules/checkout/config/schema/commerce_checkout.schema.yml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,6 @@ commerce_checkout_flow_with_panes_configuration:
5353
commerce_checkout.commerce_checkout_pane.*:
5454
type: commerce_checkout_pane_configuration
5555

56-
commerce_checkout.commerce_checkout_pane.completion_message:
57-
type: commerce_checkout_pane_configuration
58-
mapping:
59-
message:
60-
type: text
61-
label: 'Message'
62-
6356
commerce_checkout.commerce_checkout_pane.contact_information:
6457
type: commerce_checkout_pane_configuration
6558
mapping:

modules/checkout/src/Plugin/Commerce/CheckoutPane/CompletionMessage.php

Lines changed: 2 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -15,55 +15,13 @@
1515
*/
1616
class CompletionMessage extends CheckoutPaneBase {
1717

18-
/**
19-
* {@inheritdoc}
20-
*/
21-
public function defaultConfiguration() {
22-
// @todo Add token, HTML support.
23-
$default_message = 'Your order number is %order_number. ';
24-
$default_message .= 'You can view your order on your account page when logged in.';
25-
26-
return [
27-
'message' => $default_message,
28-
] + parent::defaultConfiguration();
29-
}
30-
31-
/**
32-
* {@inheritdoc}
33-
*/
34-
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
35-
$form = parent::buildConfigurationForm($form, $form_state);
36-
$form['message'] = [
37-
'#type' => 'textarea',
38-
'#title' => $this->t('Message'),
39-
'#default_value' => $this->configuration['message'],
40-
];
41-
42-
return $form;
43-
}
44-
45-
/**
46-
* {@inheritdoc}
47-
*/
48-
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
49-
parent::submitConfigurationForm($form, $form_state);
50-
51-
if (!$form_state->getErrors()) {
52-
$values = $form_state->getValue($form['#parents']);
53-
$this->configuration['message'] = $values['message'];
54-
}
55-
}
56-
5718
/**
5819
* {@inheritdoc}
5920
*/
6021
public function buildPaneForm(array $pane_form, FormStateInterface $form_state, array &$complete_form) {
61-
$message = $this->configuration['message'];
62-
$message = str_replace('%order_number', $this->order->getOrderNumber(), $message);
22+
$pane_form['#theme'] = 'commerce_checkout_completion_message';
23+
$pane_form['#order_entity'] = $this->order;
6324

64-
$pane_form['message'] = [
65-
'#markup' => $message,
66-
];
6725
return $pane_form;
6826
}
6927

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{#
2+
/**
3+
* @file
4+
* Default theme implementation for the completion message.
5+
*
6+
* Available variables:
7+
* - order_entity: The order entity.
8+
*
9+
* @ingroup themeable
10+
*/
11+
#}
12+
<p>
13+
{{ 'Your order number is @number.'|t({'@number': order_entity.getOrderNumber}) }} <br>
14+
{{ 'You can view your order on your account page when logged in.'|t }}
15+
</p>

0 commit comments

Comments
 (0)