diff --git a/modules/log/commerce_log.post_update.php b/modules/log/commerce_log.post_update.php
index 54a05afe89..42190a7600 100644
--- a/modules/log/commerce_log.post_update.php
+++ b/modules/log/commerce_log.post_update.php
@@ -50,8 +50,41 @@ function commerce_log_post_update_2() {
$success_results = $result->getSucceeded();
$failure_results = $result->getFailed();
+ $message = '';
if ($success_results) {
- $message = t('Succeeded:') . '
';
+ $message .= t('Succeeded:') . '
';
+ foreach ($success_results as $success_message) {
+ $message .= $success_message . '
';
+ }
+ $message .= '
';
+ }
+ if ($failure_results) {
+ $message .= t('Failed:') . '
';
+ foreach ($failure_results as $failure_message) {
+ $message .= $failure_message . '
';
+ }
+ }
+
+ return $message;
+}
+
+/**
+ * Revert the Activity view to empty 'No results behavior'.
+ */
+function commerce_log_post_update_3() {
+ /** @var \Drupal\commerce\Config\ConfigUpdaterInterface $config_updater */
+ $config_updater = \Drupal::service('commerce.config_updater');
+
+ $views = [
+ 'views.view.commerce_activity',
+ ];
+ $result = $config_updater->revert($views, FALSE);
+
+ $success_results = $result->getSucceeded();
+ $failure_results = $result->getFailed();
+ $message = '';
+ if ($success_results) {
+ $message .= t('Succeeded:') . '
';
foreach ($success_results as $success_message) {
$message .= $success_message . '
';
}
diff --git a/modules/log/config/install/views.view.commerce_activity.yml b/modules/log/config/install/views.view.commerce_activity.yml
index 05014113a5..8633328bbc 100644
--- a/modules/log/config/install/views.view.commerce_activity.yml
+++ b/modules/log/config/install/views.view.commerce_activity.yml
@@ -291,18 +291,7 @@ display:
title: 'Order logs'
header: { }
footer: { }
- empty:
- area_text_custom:
- id: area_text_custom
- table: views
- field: area_text_custom
- relationship: none
- group_type: group
- admin_label: ''
- empty: true
- tokenize: false
- content: 'No log entries.'
- plugin_id: text_custom
+ empty: { }
relationships: { }
arguments:
source_entity_id:
diff --git a/modules/log/tests/src/Functional/OrderAdminActivityTest.php b/modules/log/tests/src/Functional/OrderAdminActivityTest.php
new file mode 100644
index 0000000000..b941d49450
--- /dev/null
+++ b/modules/log/tests/src/Functional/OrderAdminActivityTest.php
@@ -0,0 +1,70 @@
+order = $this->createEntity('commerce_order', [
+ 'type' => 'default',
+ 'mail' => $this->loggedInUser->getEmail(),
+ 'uid' => $this->loggedInUser->id(),
+ 'store_id' => $this->store,
+ ]);
+ }
+
+ /**
+ * Tests order activity on Order admin view.
+ */
+ public function testOrderAdminActivity() {
+ $this->drupalGet($this->order->toUrl());
+ $this->assertSession()->statusCodeEquals(200);
+ $this->assertSession()->pageTextNotContains(t('Order activity'));
+ $transition = $this->order->getState()->getTransitions();
+ $this->order->getState()->applyTransition($transition['cancel']);
+ $this->order->save();
+ $this->drupalGet($this->order->toUrl());
+ $this->assertSession()->pageTextContains(t('Order activity'));
+ $this->assertSession()->pageTextContains(t('The order was canceled.'));
+ }
+
+}
diff --git a/modules/order/commerce_order.post_update.php b/modules/order/commerce_order.post_update.php
index f03caf6935..48a99222b8 100644
--- a/modules/order/commerce_order.post_update.php
+++ b/modules/order/commerce_order.post_update.php
@@ -181,7 +181,7 @@ function commerce_order_post_update_7() {
$views = [
'views.view.commerce_order_item_table',
];
- $result = $config_updater->revert($views);
+ $result = $config_updater->revert($views, FALSE);
$success_results = $result->getSucceeded();
$failure_results = $result->getFailed();
diff --git a/modules/order/src/Plugin/Field/FieldFormatter/OrderTotalSummary.php b/modules/order/src/Plugin/Field/FieldFormatter/OrderTotalSummary.php
index 97759e0df8..c299f33d71 100644
--- a/modules/order/src/Plugin/Field/FieldFormatter/OrderTotalSummary.php
+++ b/modules/order/src/Plugin/Field/FieldFormatter/OrderTotalSummary.php
@@ -71,6 +71,17 @@ public static function create(ContainerInterface $container, array $configuratio
);
}
+ /**
+ * {@inheritdoc}
+ */
+ public function view(FieldItemListInterface $items, $langcode = NULL) {
+ // Check first if the total price is not empty.
+ if ($items->isEmpty()) {
+ return [];
+ }
+ return parent::view($items, $langcode);
+ }
+
/**
* {@inheritdoc}
*/
diff --git a/modules/order/templates/commerce-order--admin.html.twig b/modules/order/templates/commerce-order--admin.html.twig
index f1b1c4a623..66e796f788 100644
--- a/modules/order/templates/commerce-order--admin.html.twig
+++ b/modules/order/templates/commerce-order--admin.html.twig
@@ -26,7 +26,7 @@
{{ order.order_items }}
{{ order.total_price }}
- {% if order.activity %}
+ {% if order.activity|render|striptags|trim is not empty %}