From b4edc5912a40cc9a039a32a16bb688e960bb113f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Jakes=CC=8C?= Date: Thu, 2 May 2019 15:16:44 +0200 Subject: [PATCH] Add WooCommerce revenue to displayed stats [MAILPOET-1853] --- assets/js/src/newsletters/listings/mixins.jsx | 14 ++++++++++++++ views/newsletters.html | 1 + 2 files changed, 15 insertions(+) diff --git a/assets/js/src/newsletters/listings/mixins.jsx b/assets/js/src/newsletters/listings/mixins.jsx index e5912f142b..2a1f7b1ec9 100644 --- a/assets/js/src/newsletters/listings/mixins.jsx +++ b/assets/js/src/newsletters/listings/mixins.jsx @@ -9,6 +9,7 @@ import jQuery from 'jquery'; import _ from 'underscore'; import Hooks from 'wp-js-hooks'; import StatsBadge from 'newsletters/badges/stats.jsx'; +import HelpTooltip from 'help-tooltip.jsx'; const QueueMixin = { pauseSending: function pauseSending(newsletter) { @@ -216,11 +217,13 @@ const StatisticsMixin = { let percentageClicked = 0; let percentageOpened = 0; let percentageUnsubscribed = 0; + let revenue = null; if (totalSent > 0) { percentageClicked = (newsletter.statistics.clicked * 100) / totalSent; percentageOpened = (newsletter.statistics.opened * 100) / totalSent; percentageUnsubscribed = (newsletter.statistics.unsubscribed * 100) / totalSent; + revenue = newsletter.statistics.revenue; } // format to 1 decimal place @@ -324,6 +327,17 @@ const StatisticsMixin = { const content = ( <> { wrapContentInLink(openedAndClickedStats, 'opened-and-clicked') } + { revenue !== null && revenue.value > 0 && ( +
+ { wrapContentInLink(revenue.formatted, 'revenue') } + {' '} + +
+ ) } { tooEarlyForStats && wrapContentInLink( (
diff --git a/views/newsletters.html b/views/newsletters.html index 7cb2a37672..841ca44b7c 100644 --- a/views/newsletters.html +++ b/views/newsletters.html @@ -125,6 +125,7 @@ 'openedStatTooltip': __('Above 30% is excellent.\\nBetween 10 and 30% is good.\\nUnder 10% is bad.'), 'clickedStatTooltip': __('Above 3% is excellent.\\nBetween 1 and 3% is good.\\nUnder 1% is bad.'), 'unsubscribedStatTooltip': __('Under 1% is excellent.\\nBetween 1 and 3% is good.\\nOver 3% is bad.'), + 'revenueStatsTooltip': __('Revenues generated by customers who clicked on this email in the last two weeks. This is the sum of the order totals including shipping and taxes.'), 'checkBackInHours': __('Nice job! Check back in %$1d hour(s) for more stats.'), 'improveThisLinkText': __('What can I do to improve this?'),