diff options
author | dizzy <diosmosis@users.noreply.github.com> | 2022-07-26 17:41:19 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-26 17:41:19 +0300 |
commit | c5bf1502705734bb2cfda10f366a83250e56d0bd (patch) | |
tree | cafff1238caf259b9ce24800c4c9c2762546dc9d | |
parent | 3bc19a6a78733a4f7edde34e4a2474f372094ded (diff) |
[Vue] remove use of angularjs from MultiSites (#19407)
* remove use of angularjs from MultiSites
* built vue files
* remove unneeded html_attr twig filter use
Co-authored-by: sgiehl <stefan@matomo.org>
10 files changed, 283 insertions, 640 deletions
diff --git a/plugins/MultiSites/Dashboard.php b/plugins/MultiSites/Dashboard.php index 79bc4b29f2..f759383ef3 100644 --- a/plugins/MultiSites/Dashboard.php +++ b/plugins/MultiSites/Dashboard.php @@ -19,7 +19,7 @@ use Piwik\DataTable\Row\DataTableSummaryRow; use Piwik\Site; /** - * Fetches and formats the response of `MultiSites.getAll` in a way that it can be used by the All Websites AngularJS + * Fetches and formats the response of `MultiSites.getAll` in a way that it can be used by the All Websites * widget. Eg sites are moved into groups if one is assigned, stats are calculated for groups, etc. */ class Dashboard diff --git a/plugins/MultiSites/angularjs/dashboard/dashboard.controller.js b/plugins/MultiSites/angularjs/dashboard/dashboard.controller.js deleted file mode 100644 index 3dd832826a..0000000000 --- a/plugins/MultiSites/angularjs/dashboard/dashboard.controller.js +++ /dev/null @@ -1,29 +0,0 @@ -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ -(function () { - angular.module('piwikApp').controller('MultiSitesDashboardController', MultiSitesDashboardController); - - MultiSitesDashboardController.$inject = ['$scope', 'piwik', 'multisitesDashboardModel']; - - function MultiSitesDashboardController($scope, piwik, multisitesDashboardModel){ - - $scope.model = multisitesDashboardModel; - - $scope.evolutionSelector = 'visits_evolution'; - $scope.hasSuperUserAccess = piwik.hasSuperUserAccess; - $scope.date = piwik.broadcast.getValueFromUrl('date'); - $scope.idSite = piwik.broadcast.getValueFromUrl('idSite'); - $scope.url = piwik.piwik_url; - $scope.period = piwik.period; - $scope.areAdsForProfessionalServicesEnabled = piwik.config && piwik.config.are_ads_enabled; - - this.refresh = function (interval) { - multisitesDashboardModel.refreshInterval = interval; - multisitesDashboardModel.fetchAllSites(); - }; - } -})(); diff --git a/plugins/MultiSites/angularjs/dashboard/dashboard.directive.html b/plugins/MultiSites/angularjs/dashboard/dashboard.directive.html deleted file mode 100644 index 4a0820eeeb..0000000000 --- a/plugins/MultiSites/angularjs/dashboard/dashboard.directive.html +++ /dev/null @@ -1,132 +0,0 @@ -<div> - <h2 piwik-enriched-headline - class="card-title" - help-url="https://matomo.org/faq/new-to-piwik/all-websites-dashboard/" - feature-name="{{ 'General_AllWebsitesDashboard'|translate }}"> - {{ 'General_AllWebsitesDashboard'|translate }} - <span class='smallTitle' - title="{{ 'General_EvolutionSummaryGeneric'|translate:('General_NVisits'|translate:model.totalVisits):date:model.lastVisits:model.lastVisitsDate:(model.totalVisits|evolution:model.lastVisits)}}" - ng-bind-html="'General_TotalVisitsPageviewsActionsRevenue' | translate:('<strong>'+model.totalVisits+'</strong>'):('<strong>'+model.totalPageviews+'</strong>'):('<strong>'+model.totalActions+'</strong>'):('<strong>' + model.totalRevenue + '</strong>')"> - </span> - </h2> - - <table id="mt" class="dataTable card-table" cellspacing="0"> - <thead> - <tr> - <th id="names" class="label" ng-click="model.sortBy('label')" ng-class="{columnSorted: 'label' == model.sortColumn}"> - <span class="heading">{{ 'General_Website'|translate }}</span> - <span ng-class="{multisites_asc: !model.reverse && 'label' == model.sortColumn, multisites_desc: model.reverse && 'label' == model.sortColumn}" class="arrow"></span> - </th> - <th id="visits" class="multisites-column" ng-click="model.sortBy('nb_visits')" ng-class="{columnSorted: 'nb_visits' == model.sortColumn}"> - <span ng-class="{multisites_asc: !model.reverse && 'nb_visits' == model.sortColumn, multisites_desc: model.reverse && 'nb_visits' == model.sortColumn}" class="arrow"></span> - <span class="heading">{{ 'General_ColumnNbVisits'|translate }}</span> - </th> - <th id="pageviews" class="multisites-column" ng-click="model.sortBy('nb_pageviews')" ng-class="{columnSorted: 'nb_pageviews' == model.sortColumn}"> - <span ng-class="{multisites_asc: !model.reverse && 'nb_pageviews' == model.sortColumn, multisites_desc: model.reverse && 'nb_pageviews' == model.sortColumn}" class="arrow"></span> - <span class="heading">{{ 'General_ColumnPageviews'|translate }}</span> - </th> - - <th ng-if="displayRevenueColumn" id="revenue" class="multisites-column" ng-click="model.sortBy('revenue')" ng-class="{columnSorted: 'revenue' == model.sortColumn}"> - <span ng-class="{multisites_asc: !model.reverse && 'revenue' == model.sortColumn, multisites_desc: model.reverse && 'revenue' == model.sortColumn}" class="arrow"></span> - <span class="heading">{{ 'General_ColumnRevenue'|translate }}</span> - </th> - - <th id="evolution" colspan="{{ showSparklines ? 2 : 1 }}" ng-class="{columnSorted: evolutionSelector == model.sortColumn}"> - <span class="arrow" ng-class="{multisites_asc: !model.reverse && evolutionSelector == model.sortColumn, multisites_desc: model.reverse && evolutionSelector == model.sortColumn}"></span> - <span class="evolution" - ng-click="model.sortBy(evolutionSelector)"> {{ 'MultiSites_Evolution'|translate }}</span> - <select class="selector browser-default" id="evolution_selector" ng-model="evolutionSelector" - ng-change="model.sortBy(evolutionSelector)"> - <option value="visits_evolution">{{ 'General_ColumnNbVisits'|translate }}</option> - <option value="pageviews_evolution">{{ 'General_ColumnPageviews'|translate }}</option> - <option ng-if="displayRevenueColumn" value="revenue_evolution">{{ 'General_ColumnRevenue'|translate }}</option> - </select> - </th> - </tr> - </thead> - - <tbody id="tb" ng-if="model.isLoading"> - <tr> - <td colspan="7" class="allWebsitesLoading"> - <div piwik-activity-indicator loading-message="model.loadingMessage" loading="model.isLoading"></div> - </td> - </tr> - </tbody> - - <tbody id="tb" ng-if="!model.isLoading"> - - <tr ng-if="model.errorLoadingSites"> - <td colspan="7"> - <div class="notification system notification-error"> - {{ 'General_ErrorRequest'|translate:(''):('') }} - - <br /><br /> - {{ 'General_NeedMoreHelp'|translate }} - - <a rel="noreferrer noopener" target="_blank" href="https://matomo.org/faq/troubleshooting/faq_19489/">{{ 'General_Faq'|translate }}</a> - – - <a rel="noreferrer noopener" target="_blank" href="https://forum.matomo.org/">{{ 'Feedback_CommunityHelp'|translate }}</a> - <span ng-show="areAdsForProfessionalServicesEnabled"> – </span> - <a ng-show="areAdsForProfessionalServicesEnabled" rel="noreferrer noopener" target="_blank" href="https://matomo.org/support-plans/?pk_campaign=Help&pk_medium=AjaxError&pk_content=MultiSites&pk_source=Matomo_App">{{ 'Feedback_ProfessionalHelp'|translate }}</a>. - </div> - </td> - </tr> - - <tr website="website" - evolution-metric="evolutionSelector" - piwik-multisites-site - date-sparkline="dateSparkline" - show-sparklines="showSparklines" - metric="model.sortColumn" - display-revenue-column="displayRevenueColumn" - ng-repeat="website in model.sites"> - </tr> - </tbody> - - <tfoot> - - <tr> - <td colspan="8" class="paging" ng-hide="model.numberOfPages() <= 1"> - <div class="row"> - <div class="col s3 add_new_site"> - <a ng-if="hasSuperUserAccess" href="index.php?module=SitesManager&action=index&showaddsite=1&period={{ period }}&date={{ date }}&idSite={{ idSite }}"> - <span class="icon-add"></span> {{ 'SitesManager_AddSite'|translate }} - </a> - </div> - <div class="col s6"> - <span id="prev" class="previous dataTablePrevious" ng-hide="model.currentPage == 0" ng-click="model.previousPage()"> - <span style="cursor:pointer;">« {{ 'General_Previous'|translate }}</span> - </span> - <span class="dataTablePages"> - <span id="counter"> - {{ 'General_Pagination'|translate:model.getPaginationLowerBound():model.getPaginationUpperBound():model.getNumberOfFilteredSites() }} - </span> - </span> - <span id="next" class="next dataTableNext" ng-hide="model.currentPage >= model.getNumberOfPages()" ng-click="model.nextPage()"> - <span style="cursor:pointer;" class="pointer">{{ 'General_Next'|translate }} »</span> - </span> - </div> - <div class="col s3"> </div> - </div> - </td> - </tr> - <tr row_id="last"> - <td colspan="8" class="site_search"> - <div class="row"> - <div class="input-field col s12"> - <input type="text" - ng-model="searchTerm" - piwik-onenter="model.searchSite(searchTerm)" - placeholder="{{ 'Actions_SubmenuSitesearch' | translate }}"> - <span title="{{ 'General_ClickToSearch' | translate }}" - ng-click="model.searchSite(searchTerm)" - class="icon-search search_ico"></span> - </div> - </div> - </td> - </tr> - - </tfoot> - </table> - -</div> diff --git a/plugins/MultiSites/angularjs/dashboard/dashboard.directive.js b/plugins/MultiSites/angularjs/dashboard/dashboard.directive.js deleted file mode 100644 index b45f19890b..0000000000 --- a/plugins/MultiSites/angularjs/dashboard/dashboard.directive.js +++ /dev/null @@ -1,46 +0,0 @@ -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ - -/** - * Renders the multisites dashboard - * Example usage: - * - * <div piwik-multisites-dashboard - * display-revenue-column="true" - * show-sparklines="true" - * date-sparkline="true" - * page-size="50" - * auto-refresh-today-report="500" // or 0 to disable - * ></div> - */ -(function () { - angular.module('piwikApp').directive('piwikMultisitesDashboard', piwikMultisitesDashboard); - - piwikMultisitesDashboard.$inject = ['piwik']; - - function piwikMultisitesDashboard(piwik){ - - return { - restrict: 'A', - scope: { - displayRevenueColumn: '@', - showSparklines: '@', - dateSparkline: '@' - }, - templateUrl: 'plugins/MultiSites/angularjs/dashboard/dashboard.directive.html?cb=' + piwik.cacheBuster, - controller: 'MultiSitesDashboardController', - link: function (scope, element, attrs, controller) { - - if (attrs.pageSize) { - scope.model.pageSize = attrs.pageSize; - } - - controller.refresh(attrs.autoRefreshTodayReport); - } - }; - } -})();
\ No newline at end of file diff --git a/plugins/MultiSites/templates/getSitesInfo.twig b/plugins/MultiSites/templates/getSitesInfo.twig index 3086376c9e..e98dacfcaf 100644 --- a/plugins/MultiSites/templates/getSitesInfo.twig +++ b/plugins/MultiSites/templates/getSitesInfo.twig @@ -16,13 +16,14 @@ <div id="main" class="card"> <div class="card-content"> {% endif %} - <div piwik-multisites-dashboard - display-revenue-column="{% if displayRevenueColumn %}true{% else %}false{%endif%}" - page-size="{{ limit }}" - show-sparklines="{% if show_sparklines %}true{% else %}false{%endif%}" - date-sparkline="{{ dateSparkline }}" - auto-refresh-today-report="{{ autoRefreshTodayReport }}"> - </div> + <div + vue-entry="MultiSites.Dashboard" + display-revenue-column="{% if displayRevenueColumn %}true{% else %}false{%endif%}" + page-size="{{ limit|json_encode }}" + show-sparklines="{% if show_sparklines %}true{% else %}false{%endif%}" + date-sparkline="{{ dateSparkline|json_encode }}" + auto-refresh-today-report="{{ autoRefreshTodayReport|json_encode }}" + ></div> {% if isWidgetized %} </div> {% else %} diff --git a/plugins/MultiSites/vue/dist/MultiSites.umd.js b/plugins/MultiSites/vue/dist/MultiSites.umd.js index 77d1197b22..12aff63a5a 100644 --- a/plugins/MultiSites/vue/dist/MultiSites.umd.js +++ b/plugins/MultiSites/vue/dist/MultiSites.umd.js @@ -138,9 +138,6 @@ if (typeof window !== 'undefined') { // Indicate to webpack that this file can be concatenated /* harmony default export */ var setPublicPath = (null); -// EXTERNAL MODULE: external "CoreHome" -var external_CoreHome_ = __webpack_require__("19dc"); - // EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"} var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__("8bbf"); @@ -279,6 +276,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) { } // CONCATENATED MODULE: ./plugins/MultiSites/vue/src/MultisitesSite/MultisitesSite.vue?vue&type=template&id=72fd34d8 +// EXTERNAL MODULE: external "CoreHome" +var external_CoreHome_ = __webpack_require__("19dc"); + // CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--14-0!./node_modules/babel-loader/lib!./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader??ref--14-2!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--0-1!./plugins/MultiSites/vue/src/MultisitesSite/MultisitesSite.vue?vue&type=script&lang=ts @@ -359,7 +359,15 @@ function render(_ctx, _cache, $props, $setup, $data, $options) { MultisitesSitevue_type_script_lang_ts.render = render /* harmony default export */ var MultisitesSite = (MultisitesSitevue_type_script_lang_ts); -// CONCATENATED MODULE: ./plugins/MultiSites/vue/src/MultisitesSite/MultisitesSite.adapter.ts +// CONCATENATED MODULE: ./plugins/MultiSites/vue/src/Dashboard/Dashboard.store.ts +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + /*! * Matomo - free/libre analytics platform * @@ -368,30 +376,266 @@ MultisitesSitevue_type_script_lang_ts.render = render */ -/* harmony default export */ var MultisitesSite_adapter = (Object(external_CoreHome_["createAngularJsAdapter"])({ - component: MultisitesSite, - scope: { - website: { - angularJsBind: '=' - }, - evolutionMetric: { - angularJsBind: '=' - }, - showSparklines: { - angularJsBind: '=' - }, - dateSparkline: { - angularJsBind: '=' - }, - displayRevenueColumn: { - angularJsBind: '=' - }, - metric: { - angularJsBind: '=' +var _window = window, + NumberFormatter = _window.NumberFormatter; + +var Dashboard_store_DashboardStore = /*#__PURE__*/function () { + function DashboardStore() { + var _this = this; + + _classCallCheck(this, DashboardStore); + + _defineProperty(this, "privateState", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])({ + sites: [], + isLoading: false, + pageSize: 25, + currentPage: 0, + totalVisits: '?', + totalPageviews: '?', + totalActions: '?', + totalRevenue: '?', + searchTerm: '', + lastVisits: '?', + lastVisitsDate: '?', + numberOfSites: 0, + loadingMessage: Object(external_CoreHome_["translate"])('MultiSites_LoadingWebsites'), + reverse: true, + sortColumn: 'nb_visits', + refreshInterval: 0, + errorLoadingSites: false + })); + + _defineProperty(this, "refreshTimeout", null); + + _defineProperty(this, "fetchAbort", null); + + _defineProperty(this, "state", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { + return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["readonly"])(_this.privateState); + })); + + _defineProperty(this, "numberOfFilteredSites", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { + return _this.state.value.numberOfSites; + })); + + _defineProperty(this, "numberOfPages", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { + return Math.ceil(_this.numberOfFilteredSites.value / _this.state.value.pageSize - 1); + })); + + _defineProperty(this, "currentPagingOffset", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { + return Math.ceil(_this.state.value.currentPage * _this.state.value.pageSize); + })); + + _defineProperty(this, "paginationLowerBound", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { + return _this.currentPagingOffset.value + 1; + })); + + _defineProperty(this, "paginationUpperBound", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { + var end = _this.currentPagingOffset.value + _this.state.value.pageSize; + var max = _this.numberOfFilteredSites.value; + + if (end > max) { + end = max; + } + + return end; + })); + } + + _createClass(DashboardStore, [{ + key: "cancelRefereshInterval", + value: function cancelRefereshInterval() { + if (this.refreshTimeout) { + clearTimeout(this.refreshTimeout); + this.refreshTimeout = null; + } } - }, - directiveName: 'piwikMultisitesSite' -})); + }, { + key: "updateWebsitesList", + value: function updateWebsitesList(report) { + var _this2 = this; + + if (!report) { + this.onError(); + return; + } + + var allSites = report.sites; + allSites.forEach(function (site) { + if (site.ratio !== 1 && site.ratio !== '1') { + var percent = NumberFormatter.formatPercent(Math.round(parseInt(site.ratio, 10) * 100)); + var metricName = null; + var previousTotal = '0'; + var currentTotal = '0'; + var evolution = '0'; + var previousTotalAdjusted = '0'; + + if (_this2.state.value.sortColumn === 'nb_visits' || _this2.state.value.sortColumn === 'visits_evolution') { + previousTotal = NumberFormatter.formatNumber(site.previous_nb_visits); + currentTotal = NumberFormatter.formatNumber(site.nb_visits); + evolution = NumberFormatter.formatPercent(site.visits_evolution); + metricName = Object(external_CoreHome_["translate"])('General_ColumnNbVisits'); + previousTotalAdjusted = NumberFormatter.formatNumber(Math.round(parseInt(site.previous_nb_visits, 10) * parseInt(site.ratio, 10))); + } + + if (_this2.state.value.sortColumn === 'pageviews_evolution') { + previousTotal = "".concat(site.previous_Actions_nb_pageviews); + currentTotal = "".concat(site.nb_pageviews); + evolution = NumberFormatter.formatPercent(site.pageviews_evolution); + metricName = Object(external_CoreHome_["translate"])('General_ColumnPageviews'); + previousTotalAdjusted = NumberFormatter.formatNumber(Math.round(parseInt(site.previous_Actions_nb_pageviews, 10) * parseInt(site.ratio, 10))); + } + + if (_this2.state.value.sortColumn === 'revenue_evolution') { + previousTotal = NumberFormatter.formatCurrency(site.previous_Goal_revenue, site.currencySymbol); + currentTotal = NumberFormatter.formatCurrency(site.revenue, site.currencySymbol); + evolution = NumberFormatter.formatPercent(site.revenue_evolution); + metricName = Object(external_CoreHome_["translate"])('General_ColumnRevenue'); + previousTotalAdjusted = NumberFormatter.formatCurrency(Math.round(parseInt(site.previous_Goal_revenue, 10) * parseInt(site.ratio, 10)), site.currencySymbol); + } + + if (metricName) { + site.tooltip = "".concat(Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonIncomplete', [percent]), "\n"); + site.tooltip += "".concat(Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonProportional', [percent, "".concat(previousTotalAdjusted), metricName, "".concat(previousTotal)]), "\n"); + + switch (site.periodName) { + case 'day': + site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonDay', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); + break; + + case 'week': + site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonWeek', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); + break; + + case 'month': + site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonMonth', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); + break; + + case 'year': + site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonYear', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); + break; + + default: + break; + } + } + } + }); + this.privateState.totalVisits = report.totals.nb_visits; + this.privateState.totalPageviews = report.totals.nb_pageviews; + this.privateState.totalActions = report.totals.nb_actions; + this.privateState.totalRevenue = report.totals.revenue; + this.privateState.lastVisits = report.totals.nb_visits_lastdate; + this.privateState.sites = allSites; + this.privateState.numberOfSites = report.numSites; + this.privateState.lastVisitsDate = report.lastDate; + } + }, { + key: "sortBy", + value: function sortBy(metric) { + if (this.state.value.sortColumn === metric) { + this.privateState.reverse = !this.state.value.reverse; + } + + this.privateState.sortColumn = metric; + this.fetchAllSites(); + } + }, { + key: "previousPage", + value: function previousPage() { + this.privateState.currentPage = this.state.value.currentPage - 1; + this.fetchAllSites(); + } + }, { + key: "nextPage", + value: function nextPage() { + this.privateState.currentPage = this.state.value.currentPage + 1; + this.fetchAllSites(); + } + }, { + key: "searchSite", + value: function searchSite(term) { + this.privateState.searchTerm = term; + this.privateState.currentPage = 0; + this.fetchAllSites(); + } + }, { + key: "fetchAllSites", + value: function fetchAllSites() { + var _this3 = this; + + if (this.fetchAbort) { + this.fetchAbort.abort(); + this.fetchAbort = null; + this.cancelRefereshInterval(); + } + + this.privateState.isLoading = true; + this.privateState.errorLoadingSites = false; + var params = { + method: 'MultiSites.getAllWithGroups', + hideMetricsDoc: '1', + filter_sort_order: 'asc', + filter_limit: this.state.value.pageSize, + filter_offset: this.currentPagingOffset.value, + showColumns: ['label', 'nb_visits', 'nb_pageviews', 'visits_evolution', 'visits_evolution_trend', 'pageviews_evolution', 'pageviews_evolution_trend', 'revenue_evolution', 'revenue_evolution_trend', 'nb_actions,revenue'].join(',') + }; + + if (this.privateState.searchTerm) { + params.pattern = this.privateState.searchTerm; + } + + if (this.privateState.sortColumn) { + params.filter_sort_column = this.privateState.sortColumn; + } + + if (this.privateState.reverse) { + params.filter_sort_order = 'desc'; + } + + this.fetchAbort = new AbortController(); + return external_CoreHome_["AjaxHelper"].fetch(params, { + abortController: this.fetchAbort + }).then(function (response) { + _this3.updateWebsitesList(response); + }).catch(function () { + _this3.onError(); + }).finally(function () { + _this3.privateState.isLoading = false; + _this3.fetchAbort = null; + + if (_this3.state.value.refreshInterval && _this3.state.value.refreshInterval > 0) { + _this3.cancelRefereshInterval(); + + _this3.refreshTimeout = setTimeout(function () { + _this3.refreshTimeout = null; + + _this3.fetchAllSites(); + }, _this3.state.value.refreshInterval * 1000); + } + }); + } + }, { + key: "onError", + value: function onError() { + this.privateState.errorLoadingSites = true; + this.privateState.sites = []; + } + }, { + key: "setRefreshInterval", + value: function setRefreshInterval(interval) { + this.privateState.refreshInterval = interval; + } + }, { + key: "setPageSize", + value: function setPageSize(pageSize) { + this.privateState.pageSize = pageSize; + } + }]); + + return DashboardStore; +}(); + +/* harmony default export */ var Dashboard_store = (new Dashboard_store_DashboardStore()); // CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/templateLoader.js??ref--6!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--0-1!./plugins/MultiSites/vue/src/Dashboard/Dashboard.vue?vue&type=template&id=31690b13 var Dashboardvue_type_template_id_31690b13_hoisted_1 = { @@ -695,283 +939,6 @@ function Dashboardvue_type_template_id_31690b13_render(_ctx, _cache, $props, $se } // CONCATENATED MODULE: ./plugins/MultiSites/vue/src/Dashboard/Dashboard.vue?vue&type=template&id=31690b13 -// CONCATENATED MODULE: ./plugins/MultiSites/vue/src/Dashboard/Dashboard.store.ts -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ - - -var _window = window, - NumberFormatter = _window.NumberFormatter; - -var Dashboard_store_DashboardStore = /*#__PURE__*/function () { - function DashboardStore() { - var _this = this; - - _classCallCheck(this, DashboardStore); - - _defineProperty(this, "privateState", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])({ - sites: [], - isLoading: false, - pageSize: 25, - currentPage: 0, - totalVisits: '?', - totalPageviews: '?', - totalActions: '?', - totalRevenue: '?', - searchTerm: '', - lastVisits: '?', - lastVisitsDate: '?', - numberOfSites: 0, - loadingMessage: Object(external_CoreHome_["translate"])('MultiSites_LoadingWebsites'), - reverse: true, - sortColumn: 'nb_visits', - refreshInterval: 0, - errorLoadingSites: false - })); - - _defineProperty(this, "refreshTimeout", null); - - _defineProperty(this, "fetchAbort", null); - - _defineProperty(this, "state", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { - return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["readonly"])(_this.privateState); - })); - - _defineProperty(this, "numberOfFilteredSites", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { - return _this.state.value.numberOfSites; - })); - - _defineProperty(this, "numberOfPages", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { - return Math.ceil(_this.numberOfFilteredSites.value / _this.state.value.pageSize - 1); - })); - - _defineProperty(this, "currentPagingOffset", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { - return Math.ceil(_this.state.value.currentPage * _this.state.value.pageSize); - })); - - _defineProperty(this, "paginationLowerBound", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { - return _this.currentPagingOffset.value + 1; - })); - - _defineProperty(this, "paginationUpperBound", Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () { - var end = _this.currentPagingOffset.value + _this.state.value.pageSize; - var max = _this.numberOfFilteredSites.value; - - if (end > max) { - end = max; - } - - return end; - })); - } - - _createClass(DashboardStore, [{ - key: "cancelRefereshInterval", - value: function cancelRefereshInterval() { - if (this.refreshTimeout) { - clearTimeout(this.refreshTimeout); - this.refreshTimeout = null; - } - } - }, { - key: "updateWebsitesList", - value: function updateWebsitesList(report) { - var _this2 = this; - - if (!report) { - this.onError(); - return; - } - - var allSites = report.sites; - allSites.forEach(function (site) { - if (site.ratio !== 1 && site.ratio !== '1') { - var percent = NumberFormatter.formatPercent(Math.round(parseInt(site.ratio, 10) * 100)); - var metricName = null; - var previousTotal = '0'; - var currentTotal = '0'; - var evolution = '0'; - var previousTotalAdjusted = '0'; - - if (_this2.state.value.sortColumn === 'nb_visits' || _this2.state.value.sortColumn === 'visits_evolution') { - previousTotal = NumberFormatter.formatNumber(site.previous_nb_visits); - currentTotal = NumberFormatter.formatNumber(site.nb_visits); - evolution = NumberFormatter.formatPercent(site.visits_evolution); - metricName = Object(external_CoreHome_["translate"])('General_ColumnNbVisits'); - previousTotalAdjusted = NumberFormatter.formatNumber(Math.round(parseInt(site.previous_nb_visits, 10) * parseInt(site.ratio, 10))); - } - - if (_this2.state.value.sortColumn === 'pageviews_evolution') { - previousTotal = "".concat(site.previous_Actions_nb_pageviews); - currentTotal = "".concat(site.nb_pageviews); - evolution = NumberFormatter.formatPercent(site.pageviews_evolution); - metricName = Object(external_CoreHome_["translate"])('General_ColumnPageviews'); - previousTotalAdjusted = NumberFormatter.formatNumber(Math.round(parseInt(site.previous_Actions_nb_pageviews, 10) * parseInt(site.ratio, 10))); - } - - if (_this2.state.value.sortColumn === 'revenue_evolution') { - previousTotal = NumberFormatter.formatCurrency(site.previous_Goal_revenue, site.currencySymbol); - currentTotal = NumberFormatter.formatCurrency(site.revenue, site.currencySymbol); - evolution = NumberFormatter.formatPercent(site.revenue_evolution); - metricName = Object(external_CoreHome_["translate"])('General_ColumnRevenue'); - previousTotalAdjusted = NumberFormatter.formatCurrency(Math.round(parseInt(site.previous_Goal_revenue, 10) * parseInt(site.ratio, 10)), site.currencySymbol); - } - - if (metricName) { - site.tooltip = "".concat(Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonIncomplete', [percent]), "\n"); - site.tooltip += "".concat(Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonProportional', [percent, "".concat(previousTotalAdjusted), metricName, "".concat(previousTotal)]), "\n"); - - switch (site.periodName) { - case 'day': - site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonDay', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); - break; - - case 'week': - site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonWeek', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); - break; - - case 'month': - site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonMonth', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); - break; - - case 'year': - site.tooltip += Object(external_CoreHome_["translate"])('MultiSites_EvolutionComparisonYear', ["".concat(currentTotal), metricName, "".concat(previousTotalAdjusted), site.previousRange, "".concat(evolution)]); - break; - - default: - break; - } - } - } - }); - this.privateState.totalVisits = report.totals.nb_visits; - this.privateState.totalPageviews = report.totals.nb_pageviews; - this.privateState.totalActions = report.totals.nb_actions; - this.privateState.totalRevenue = report.totals.revenue; - this.privateState.lastVisits = report.totals.nb_visits_lastdate; - this.privateState.sites = allSites; - this.privateState.numberOfSites = report.numSites; - this.privateState.lastVisitsDate = report.lastDate; - } - }, { - key: "sortBy", - value: function sortBy(metric) { - if (this.state.value.sortColumn === metric) { - this.privateState.reverse = !this.state.value.reverse; - } - - this.privateState.sortColumn = metric; - this.fetchAllSites(); - } - }, { - key: "previousPage", - value: function previousPage() { - this.privateState.currentPage = this.state.value.currentPage - 1; - this.fetchAllSites(); - } - }, { - key: "nextPage", - value: function nextPage() { - this.privateState.currentPage = this.state.value.currentPage + 1; - this.fetchAllSites(); - } - }, { - key: "searchSite", - value: function searchSite(term) { - this.privateState.searchTerm = term; - this.privateState.currentPage = 0; - this.fetchAllSites(); - } - }, { - key: "fetchAllSites", - value: function fetchAllSites() { - var _this3 = this; - - if (this.fetchAbort) { - this.fetchAbort.abort(); - this.fetchAbort = null; - this.cancelRefereshInterval(); - } - - this.privateState.isLoading = true; - this.privateState.errorLoadingSites = false; - var params = { - method: 'MultiSites.getAllWithGroups', - hideMetricsDoc: '1', - filter_sort_order: 'asc', - filter_limit: this.state.value.pageSize, - filter_offset: this.currentPagingOffset.value, - showColumns: ['label', 'nb_visits', 'nb_pageviews', 'visits_evolution', 'visits_evolution_trend', 'pageviews_evolution', 'pageviews_evolution_trend', 'revenue_evolution', 'revenue_evolution_trend', 'nb_actions,revenue'].join(',') - }; - - if (this.privateState.searchTerm) { - params.pattern = this.privateState.searchTerm; - } - - if (this.privateState.sortColumn) { - params.filter_sort_column = this.privateState.sortColumn; - } - - if (this.privateState.reverse) { - params.filter_sort_order = 'desc'; - } - - this.fetchAbort = new AbortController(); - return external_CoreHome_["AjaxHelper"].fetch(params, { - abortController: this.fetchAbort - }).then(function (response) { - _this3.updateWebsitesList(response); - }).catch(function () { - _this3.onError(); - }).finally(function () { - _this3.privateState.isLoading = false; - _this3.fetchAbort = null; - - if (_this3.state.value.refreshInterval && _this3.state.value.refreshInterval > 0) { - _this3.cancelRefereshInterval(); - - _this3.refreshTimeout = setTimeout(function () { - _this3.refreshTimeout = null; - - _this3.fetchAllSites(); - }, _this3.state.value.refreshInterval * 1000); - } - }); - } - }, { - key: "onError", - value: function onError() { - this.privateState.errorLoadingSites = true; - this.privateState.sites = []; - } - }, { - key: "setRefreshInterval", - value: function setRefreshInterval(interval) { - this.privateState.refreshInterval = interval; - } - }, { - key: "setPageSize", - value: function setPageSize(pageSize) { - this.privateState.pageSize = pageSize; - } - }]); - - return DashboardStore; -}(); - -/* harmony default export */ var Dashboard_store = (new Dashboard_store_DashboardStore()); // CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--14-0!./node_modules/babel-loader/lib!./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader??ref--14-2!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--0-1!./plugins/MultiSites/vue/src/Dashboard/Dashboard.vue?vue&type=script&lang=ts @@ -1098,40 +1065,6 @@ var Dashboard_store_DashboardStore = /*#__PURE__*/function () { Dashboardvue_type_script_lang_ts.render = Dashboardvue_type_template_id_31690b13_render /* harmony default export */ var Dashboard = (Dashboardvue_type_script_lang_ts); -// CONCATENATED MODULE: ./plugins/MultiSites/vue/src/Dashboard/Dashboard.adapter.ts -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ - - -/* harmony default export */ var Dashboard_adapter = (Object(external_CoreHome_["createAngularJsAdapter"])({ - component: Dashboard, - scope: { - displayRevenueColumn: { - angularJsBind: '@', - transform: external_CoreHome_["transformAngularJsBoolAttr"] - }, - showSparklines: { - angularJsBind: '@', - transform: external_CoreHome_["transformAngularJsBoolAttr"] - }, - dateSparkline: { - angularJsBind: '@' - }, - pageSize: { - angularJsBind: '@', - transform: external_CoreHome_["transformAngularJsIntAttr"] - }, - autoRefreshTodayReport: { - angularJsBind: '@', - transform: external_CoreHome_["transformAngularJsIntAttr"] - } - }, - directiveName: 'piwikMultisitesDashboard' -})); // CONCATENATED MODULE: ./plugins/MultiSites/vue/src/index.ts /*! * Matomo - free/libre analytics platform @@ -1142,8 +1075,6 @@ Dashboardvue_type_script_lang_ts.render = Dashboardvue_type_template_id_31690b13 - - // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js diff --git a/plugins/MultiSites/vue/dist/MultiSites.umd.min.js b/plugins/MultiSites/vue/dist/MultiSites.umd.min.js index f31c71e8be..82d4baab65 100644 --- a/plugins/MultiSites/vue/dist/MultiSites.umd.min.js +++ b/plugins/MultiSites/vue/dist/MultiSites.umd.min.js @@ -1,20 +1,14 @@ -(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("CoreHome"),require("vue")):"function"===typeof define&&define.amd?define(["CoreHome"],t):"object"===typeof exports?exports["MultiSites"]=t(require("CoreHome"),require("vue")):e["MultiSites"]=t(e["CoreHome"],e["Vue"])})("undefined"!==typeof self?self:this,(function(e,t){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(r,a,function(t){return e[t]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="plugins/MultiSites/vue/dist/",n(n.s="fae3")}({"19dc":function(t,n){t.exports=e},"8bbf":function(e,n){e.exports=t},fae3:function(e,t,n){"use strict";if(n.r(t),n.d(t,"MultisitesSite",(function(){return G})),n.d(t,"DashboadStore",(function(){return De})),n.d(t,"Dashboard",(function(){return Ge})),"undefined"!==typeof window){var r=window.document.currentScript,a=r&&r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);a&&(n.p=a[1])}var o=n("19dc"),i=n("8bbf"),s={key:0,class:"multisites-label label"},l=["href"],c={key:0},u=["href","title"],d=Object(i["createElementVNode"])("span",{class:"icon icon-outlink"},null,-1),m=[d],b={key:1,class:"multisites-label label"},p={class:"value"},v={class:"multisites-column"},f={class:"value"},h={class:"multisites-column"},g={class:"value"},O={key:2,class:"multisites-column"},j={class:"value"},S=["title"],_={key:0,class:"visits value"},y=Object(i["createElementVNode"])("img",{class:"multisites_icon",src:"plugins/MultiSites/images/arrow_up.png",alt:""},null,-1),w=Object(i["createTextVNode"])(),k={style:{color:"green"}},V=Object(i["createElementVNode"])("img",{class:"multisites_icon",src:"plugins/MultiSites/images/stop.png",alt:""},null,-1),N=Object(i["createTextVNode"])(),E=Object(i["createElementVNode"])("img",{class:"multisites_icon",src:"plugins/MultiSites/images/arrow_down.png",alt:""},null,-1),C=Object(i["createTextVNode"])(),M={style:{color:"red"}},B={key:4,style:{width:"180px"}},P={key:0,class:"sparkline",style:{width:"100px",margin:"auto"}},T=["href","title"],A=["src"];function D(e,t,n,r,a,o){return Object(i["openBlock"])(),Object(i["createElementBlock"])("tr",{class:Object(i["normalizeClass"])({groupedWebsite:e.website.group,website:!e.website.group,group:e.website.isGroup}),ref:"root"},[e.website.isGroup?Object(i["createCommentVNode"])("",!0):(Object(i["openBlock"])(),Object(i["createElementBlock"])("td",s,[Object(i["createElementVNode"])("a",{title:"View reports",class:"value truncated-text-line",href:e.dashboardUrl(e.website)},Object(i["toDisplayString"])(e.websiteLabel),9,l),e.website.main_url?(Object(i["openBlock"])(),Object(i["createElementBlock"])("span",c,[Object(i["createElementVNode"])("a",{rel:"noreferrer noopener",target:"_blank",href:e.website.main_url,title:e.translate("General_GoTo",e.website.main_url)},m,8,u)])):Object(i["createCommentVNode"])("",!0)])),e.website.isGroup?(Object(i["openBlock"])(),Object(i["createElementBlock"])("td",b,[Object(i["createElementVNode"])("span",p,Object(i["toDisplayString"])(e.websiteLabel),1)])):Object(i["createCommentVNode"])("",!0),Object(i["createElementVNode"])("td",v,[Object(i["createElementVNode"])("span",f,Object(i["toDisplayString"])(e.website.nb_visits),1)]),Object(i["createElementVNode"])("td",h,[Object(i["createElementVNode"])("span",g,Object(i["toDisplayString"])(e.website.nb_pageviews),1)]),e.displayRevenueColumn?(Object(i["openBlock"])(),Object(i["createElementBlock"])("td",O,[Object(i["createElementVNode"])("span",j,Object(i["toDisplayString"])(e.website.revenue),1)])):Object(i["createCommentVNode"])("",!0),"range"!==e.period?(Object(i["openBlock"])(),Object(i["createElementBlock"])("td",{key:3,class:"multisites-evolution",title:e.website.tooltip},[e.website.isGroup?Object(i["createCommentVNode"])("",!0):(Object(i["openBlock"])(),Object(i["createElementBlock"])("div",_,[Object(i["withDirectives"])(Object(i["createElementVNode"])("span",null,[y,w,Object(i["createElementVNode"])("span",k,Object(i["toDisplayString"])(e.website[e.evolutionMetric]),1)],512),[[i["vShow"],1===e.website["".concat(e.evolutionMetric,"_trend")]]]),Object(i["withDirectives"])(Object(i["createElementVNode"])("span",null,[V,N,Object(i["createElementVNode"])("span",null,Object(i["toDisplayString"])(e.website[e.evolutionMetric]),1)],512),[[i["vShow"],0===e.website["".concat(e.evolutionMetric,"_trend")]]]),Object(i["withDirectives"])(Object(i["createElementVNode"])("span",null,[E,C,Object(i["createElementVNode"])("span",M,Object(i["toDisplayString"])(e.website[e.evolutionMetric]),1)],512),[[i["vShow"],-1===e.website["".concat(e.evolutionMetric,"_trend")]]])]))],8,S)):Object(i["createCommentVNode"])("",!0),e.showSparklines?(Object(i["openBlock"])(),Object(i["createElementBlock"])("td",B,[e.website.isGroup?Object(i["createCommentVNode"])("",!0):(Object(i["openBlock"])(),Object(i["createElementBlock"])("div",P,[Object(i["createElementVNode"])("a",{rel:"noreferrer noopener",target:"_blank",href:e.dashboardUrl(e.website),title:e.translate("General_GoTo",e.translate("Dashboard_DashboardOf",e.websiteLabel))},[Object(i["createElementVNode"])("img",{alt:"",width:"100",height:"25",src:e.sparklineImage(e.website)},null,8,A)],8,T)]))])):Object(i["createCommentVNode"])("",!0)],2)}var x=Object(i["defineComponent"])({props:{website:{type:Object,required:!0},evolutionMetric:{type:String,required:!0},showSparklines:Boolean,dateSparkline:String,displayRevenueColumn:Boolean,metric:String},mounted:function(){o["Matomo"].postEvent("MultiSites.MultiSitesSite.mounted",{element:this.$refs.root})},unmounted:function(){o["Matomo"].postEvent("MultiSites.MultiSitesSite.unmounted",{element:this.$refs.root})},methods:{dashboardUrl:function(e){return"index.php?module=CoreHome&action=index&date=".concat(this.date,"&period=").concat(this.period)+"&idSite=".concat(e.idsite).concat(this.tokenParam)},sparklineImage:function(e){var t=this.metric;switch(this.evolutionMetric){case"visits_evolution":t="nb_visits";break;case"pageviews_evolution":t="nb_pageviews";break;case"revenue_evolution":t="revenue";break;default:break}return"index.php?module=MultiSites&action=getEvolutionGraph&period=".concat(this.period,"&date=")+"".concat(this.dateSparkline,"&evolutionBy=").concat(t,"&columns=").concat(t,"&idSite=").concat(e.idsite)+"&idsite=".concat(e.idsite,"&viewDataTable=sparkline").concat(this.tokenParam,"&colors=")+"".concat(encodeURIComponent(JSON.stringify(o["Matomo"].getSparklineColors())))}},computed:{tokenParam:function(){var e=o["MatomoUrl"].urlParsed.value.token_auth;return e?"&token_auth=".concat(e):""},period:function(){return o["Matomo"].period},date:function(){return o["MatomoUrl"].urlParsed.value.date},websiteLabel:function(){return o["Matomo"].helper.htmlDecode(this.website.label)}}});x.render=D;var G=x,R=(Object(o["createAngularJsAdapter"])({component:G,scope:{website:{angularJsBind:"="},evolutionMetric:{angularJsBind:"="},showSparklines:{angularJsBind:"="},dateSparkline:{angularJsBind:"="},displayRevenueColumn:{angularJsBind:"="},metric:{angularJsBind:"="}},directiveName:"piwikMultisitesSite"}),{ref:"root"}),L={class:"card-title"},I=["innerHTML","title"],z={id:"mt",class:"dataTable card-table",cellspacing:"0"},U={class:"heading"},J={class:"heading"},H={class:"heading"},F={class:"heading"},q=["colspan"],W=["value"],$={value:"visits_evolution"},K={value:"pageviews_evolution"},Y={key:0,value:"revenue_evolution"},Q={key:0},X={colspan:"7",class:"allWebsitesLoading"},Z={key:1},ee={key:0},te={colspan:"7"},ne={class:"notification system notification-error"},re=Object(i["createElementVNode"])("br",null,null,-1),ae=Object(i["createElementVNode"])("br",null,null,-1),oe={rel:"noreferrer noopener",target:"_blank",href:"https://matomo.org/faq/troubleshooting/faq_19489/"},ie=Object(i["createTextVNode"])(" – "),se={rel:"noreferrer noopener",target:"_blank",href:"https://forum.matomo.org/"},le=["href"],ce=Object(i["createTextVNode"])(". "),ue={colspan:"8",class:"paging"},de={class:"row"},me={class:"col s3 add_new_site"},be=["href"],pe=Object(i["createElementVNode"])("span",{class:"icon-add"},null,-1),ve={class:"col s6"},fe={style:{cursor:"pointer"}},he={class:"dataTablePages"},ge={id:"counter"},Oe={style:{cursor:"pointer"},class:"pointer"},je=Object(i["createElementVNode"])("div",{class:"col s3"}," ",-1),Se={row_id:"last"},_e={colspan:"8",class:"site_search"},ye={class:"row"},we={class:"input-field col s12"},ke=["placeholder"],Ve=["title"]; +(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("CoreHome"),require("vue")):"function"===typeof define&&define.amd?define(["CoreHome"],t):"object"===typeof exports?exports["MultiSites"]=t(require("CoreHome"),require("vue")):e["MultiSites"]=t(e["CoreHome"],e["Vue"])})("undefined"!==typeof self?self:this,(function(e,t){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="plugins/MultiSites/vue/dist/",n(n.s="fae3")}({"19dc":function(t,n){t.exports=e},"8bbf":function(e,n){e.exports=t},fae3:function(e,t,n){"use strict";if(n.r(t),n.d(t,"MultisitesSite",(function(){return G})),n.d(t,"DashboadStore",(function(){return q})),n.d(t,"Dashboard",(function(){return Ge})),"undefined"!==typeof window){var r=window.document.currentScript,o=r&&r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);o&&(n.p=o[1])}var a=n("8bbf"),i={key:0,class:"multisites-label label"},s=["href"],l={key:0},c=["href","title"],u=Object(a["createElementVNode"])("span",{class:"icon icon-outlink"},null,-1),b=[u],d={key:1,class:"multisites-label label"},m={class:"value"},p={class:"multisites-column"},v={class:"value"},f={class:"multisites-column"},h={class:"value"},O={key:2,class:"multisites-column"},j={class:"value"},g=["title"],S={key:0,class:"visits value"},_=Object(a["createElementVNode"])("img",{class:"multisites_icon",src:"plugins/MultiSites/images/arrow_up.png",alt:""},null,-1),y=Object(a["createTextVNode"])(),w={style:{color:"green"}},k=Object(a["createElementVNode"])("img",{class:"multisites_icon",src:"plugins/MultiSites/images/stop.png",alt:""},null,-1),V=Object(a["createTextVNode"])(),E=Object(a["createElementVNode"])("img",{class:"multisites_icon",src:"plugins/MultiSites/images/arrow_down.png",alt:""},null,-1),N=Object(a["createTextVNode"])(),C={style:{color:"red"}},M={key:4,style:{width:"180px"}},P={key:0,class:"sparkline",style:{width:"100px",margin:"auto"}},B=["href","title"],T=["src"];function D(e,t,n,r,o,u){return Object(a["openBlock"])(),Object(a["createElementBlock"])("tr",{class:Object(a["normalizeClass"])({groupedWebsite:e.website.group,website:!e.website.group,group:e.website.isGroup}),ref:"root"},[e.website.isGroup?Object(a["createCommentVNode"])("",!0):(Object(a["openBlock"])(),Object(a["createElementBlock"])("td",i,[Object(a["createElementVNode"])("a",{title:"View reports",class:"value truncated-text-line",href:e.dashboardUrl(e.website)},Object(a["toDisplayString"])(e.websiteLabel),9,s),e.website.main_url?(Object(a["openBlock"])(),Object(a["createElementBlock"])("span",l,[Object(a["createElementVNode"])("a",{rel:"noreferrer noopener",target:"_blank",href:e.website.main_url,title:e.translate("General_GoTo",e.website.main_url)},b,8,c)])):Object(a["createCommentVNode"])("",!0)])),e.website.isGroup?(Object(a["openBlock"])(),Object(a["createElementBlock"])("td",d,[Object(a["createElementVNode"])("span",m,Object(a["toDisplayString"])(e.websiteLabel),1)])):Object(a["createCommentVNode"])("",!0),Object(a["createElementVNode"])("td",p,[Object(a["createElementVNode"])("span",v,Object(a["toDisplayString"])(e.website.nb_visits),1)]),Object(a["createElementVNode"])("td",f,[Object(a["createElementVNode"])("span",h,Object(a["toDisplayString"])(e.website.nb_pageviews),1)]),e.displayRevenueColumn?(Object(a["openBlock"])(),Object(a["createElementBlock"])("td",O,[Object(a["createElementVNode"])("span",j,Object(a["toDisplayString"])(e.website.revenue),1)])):Object(a["createCommentVNode"])("",!0),"range"!==e.period?(Object(a["openBlock"])(),Object(a["createElementBlock"])("td",{key:3,class:"multisites-evolution",title:e.website.tooltip},[e.website.isGroup?Object(a["createCommentVNode"])("",!0):(Object(a["openBlock"])(),Object(a["createElementBlock"])("div",S,[Object(a["withDirectives"])(Object(a["createElementVNode"])("span",null,[_,y,Object(a["createElementVNode"])("span",w,Object(a["toDisplayString"])(e.website[e.evolutionMetric]),1)],512),[[a["vShow"],1===e.website["".concat(e.evolutionMetric,"_trend")]]]),Object(a["withDirectives"])(Object(a["createElementVNode"])("span",null,[k,V,Object(a["createElementVNode"])("span",null,Object(a["toDisplayString"])(e.website[e.evolutionMetric]),1)],512),[[a["vShow"],0===e.website["".concat(e.evolutionMetric,"_trend")]]]),Object(a["withDirectives"])(Object(a["createElementVNode"])("span",null,[E,N,Object(a["createElementVNode"])("span",C,Object(a["toDisplayString"])(e.website[e.evolutionMetric]),1)],512),[[a["vShow"],-1===e.website["".concat(e.evolutionMetric,"_trend")]]])]))],8,g)):Object(a["createCommentVNode"])("",!0),e.showSparklines?(Object(a["openBlock"])(),Object(a["createElementBlock"])("td",M,[e.website.isGroup?Object(a["createCommentVNode"])("",!0):(Object(a["openBlock"])(),Object(a["createElementBlock"])("div",P,[Object(a["createElementVNode"])("a",{rel:"noreferrer noopener",target:"_blank",href:e.dashboardUrl(e.website),title:e.translate("General_GoTo",e.translate("Dashboard_DashboardOf",e.websiteLabel))},[Object(a["createElementVNode"])("img",{alt:"",width:"100",height:"25",src:e.sparklineImage(e.website)},null,8,T)],8,B)]))])):Object(a["createCommentVNode"])("",!0)],2)}var x=n("19dc"),A=Object(a["defineComponent"])({props:{website:{type:Object,required:!0},evolutionMetric:{type:String,required:!0},showSparklines:Boolean,dateSparkline:String,displayRevenueColumn:Boolean,metric:String},mounted:function(){x["Matomo"].postEvent("MultiSites.MultiSitesSite.mounted",{element:this.$refs.root})},unmounted:function(){x["Matomo"].postEvent("MultiSites.MultiSitesSite.unmounted",{element:this.$refs.root})},methods:{dashboardUrl:function(e){return"index.php?module=CoreHome&action=index&date=".concat(this.date,"&period=").concat(this.period)+"&idSite=".concat(e.idsite).concat(this.tokenParam)},sparklineImage:function(e){var t=this.metric;switch(this.evolutionMetric){case"visits_evolution":t="nb_visits";break;case"pageviews_evolution":t="nb_pageviews";break;case"revenue_evolution":t="revenue";break;default:break}return"index.php?module=MultiSites&action=getEvolutionGraph&period=".concat(this.period,"&date=")+"".concat(this.dateSparkline,"&evolutionBy=").concat(t,"&columns=").concat(t,"&idSite=").concat(e.idsite)+"&idsite=".concat(e.idsite,"&viewDataTable=sparkline").concat(this.tokenParam,"&colors=")+"".concat(encodeURIComponent(JSON.stringify(x["Matomo"].getSparklineColors())))}},computed:{tokenParam:function(){var e=x["MatomoUrl"].urlParsed.value.token_auth;return e?"&token_auth=".concat(e):""},period:function(){return x["Matomo"].period},date:function(){return x["MatomoUrl"].urlParsed.value.date},websiteLabel:function(){return x["Matomo"].helper.htmlDecode(this.website.label)}}});A.render=D;var G=A;function L(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function R(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function I(e,t,n){return t&&R(e.prototype,t),n&&R(e,n),e}function z(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e} /*! * Matomo - free/libre analytics platform * * @link https://matomo.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */function Ne(e,t,n,r,a,o){var s=this,l=Object(i["resolveComponent"])("EnrichedHeadline"),c=Object(i["resolveComponent"])("ActivityIndicator"),u=Object(i["resolveComponent"])("MultisitesSite");return Object(i["openBlock"])(),Object(i["createElementBlock"])("div",R,[Object(i["createElementVNode"])("h2",L,[Object(i["createVNode"])(l,{"help-url":"https://matomo.org/faq/new-to-piwik/all-websites-dashboard/","feature-name":e.translate("General_AllWebsitesDashboard")},{default:Object(i["withCtx"])((function(){return[Object(i["createTextVNode"])(Object(i["toDisplayString"])(e.translate("General_AllWebsitesDashboard"))+" ",1),Object(i["createElementVNode"])("span",{class:"smallTitle",innerHTML:e.$sanitize(s.smallTitleContent),title:e.smallTitleTooltip},null,8,I)]})),_:1},8,["feature-name"])]),Object(i["createElementVNode"])("table",z,[Object(i["createElementVNode"])("thead",null,[Object(i["createElementVNode"])("tr",null,[Object(i["createElementVNode"])("th",{id:"names",class:Object(i["normalizeClass"])(["label",{columnSorted:"label"===e.sortColumn}]),onClick:t[0]||(t[0]=function(t){return e.sortBy("label")})},[Object(i["createElementVNode"])("span",U,Object(i["toDisplayString"])(e.translate("General_Website")),1),Object(i["createElementVNode"])("span",{class:Object(i["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"label"===e.sortColumn,multisites_desc:e.reverse&&"label"===e.sortColumn}]),style:{"margin-left":"3.5px"}},null,2)],2),Object(i["createElementVNode"])("th",{id:"visits",class:Object(i["normalizeClass"])(["multisites-column",{columnSorted:"nb_visits"===e.sortColumn}]),onClick:t[1]||(t[1]=function(t){return e.sortBy("nb_visits")})},[Object(i["createElementVNode"])("span",{class:Object(i["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"nb_visits"===e.sortColumn,multisites_desc:e.reverse&&"nb_visits"===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(i["createElementVNode"])("span",J,Object(i["toDisplayString"])(e.translate("General_ColumnNbVisits")),1)],2),Object(i["createElementVNode"])("th",{id:"pageviews",class:Object(i["normalizeClass"])(["multisites-column",{columnSorted:"nb_pageviews"===e.sortColumn}]),onClick:t[2]||(t[2]=function(t){return e.sortBy("nb_pageviews")})},[Object(i["createElementVNode"])("span",{class:Object(i["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"nb_pageviews"===e.sortColumn,multisites_desc:e.reverse&&"nb_pageviews"===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(i["createElementVNode"])("span",H,Object(i["toDisplayString"])(e.translate("General_ColumnPageviews")),1)],2),e.displayRevenueColumn?(Object(i["openBlock"])(),Object(i["createElementBlock"])("th",{key:0,id:"revenue",class:Object(i["normalizeClass"])(["multisites-column",{columnSorted:"revenue"===e.sortColumn}]),onClick:t[3]||(t[3]=function(t){return e.sortBy("revenue")})},[Object(i["createElementVNode"])("span",{class:Object(i["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"revenue"===e.sortColumn,multisites_desc:e.reverse&&"revenue"===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(i["createElementVNode"])("span",F,Object(i["toDisplayString"])(e.translate("General_ColumnRevenue")),1)],2)):Object(i["createCommentVNode"])("",!0),Object(i["createElementVNode"])("th",{id:"evolution",class:Object(i["normalizeClass"])({columnSorted:e.evolutionSelector===e.sortColumn}),colspan:e.showSparklines?2:1},[Object(i["createElementVNode"])("span",{class:Object(i["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&e.evolutionSelector===e.sortColumn,multisites_desc:e.reverse&&e.evolutionSelector===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(i["createElementVNode"])("span",{class:"evolution",onClick:t[4]||(t[4]=function(t){return e.sortBy(e.evolutionSelector)}),style:{"margin-right":"3.5px"}},Object(i["toDisplayString"])(e.translate("MultiSites_Evolution")),1),Object(i["createElementVNode"])("select",{class:"selector browser-default",id:"evolution_selector",value:e.evolutionSelector,onChange:t[5]||(t[5]=function(t){e.evolutionSelector=t.target.value,e.sortBy(e.evolutionSelector)})},[Object(i["createElementVNode"])("option",$,Object(i["toDisplayString"])(e.translate("General_ColumnNbVisits")),1),Object(i["createElementVNode"])("option",K,Object(i["toDisplayString"])(e.translate("General_ColumnPageviews")),1),e.displayRevenueColumn?(Object(i["openBlock"])(),Object(i["createElementBlock"])("option",Y,Object(i["toDisplayString"])(e.translate("General_ColumnRevenue")),1)):Object(i["createCommentVNode"])("",!0)],40,W)],10,q)])]),e.isLoading?(Object(i["openBlock"])(),Object(i["createElementBlock"])("tbody",Q,[Object(i["createElementVNode"])("tr",null,[Object(i["createElementVNode"])("td",X,[Object(i["createVNode"])(c,{"loading-message":e.loadingMessage,loading:e.isLoading},null,8,["loading-message","loading"])])])])):Object(i["createCommentVNode"])("",!0),e.isLoading?Object(i["createCommentVNode"])("",!0):(Object(i["openBlock"])(),Object(i["createElementBlock"])("tbody",Z,[e.errorLoadingSites?(Object(i["openBlock"])(),Object(i["createElementBlock"])("tr",ee,[Object(i["createElementVNode"])("td",te,[Object(i["createElementVNode"])("div",ne,[Object(i["createTextVNode"])(Object(i["toDisplayString"])(e.translate("General_ErrorRequest","",""))+" ",1),re,ae,Object(i["createTextVNode"])(" "+Object(i["toDisplayString"])(e.translate("General_NeedMoreHelp"))+" ",1),Object(i["createElementVNode"])("a",oe,Object(i["toDisplayString"])(e.translate("General_Faq")),1),ie,Object(i["createElementVNode"])("a",se,Object(i["toDisplayString"])(e.translate("Feedback_CommunityHelp")),1),Object(i["withDirectives"])(Object(i["createElementVNode"])("span",null," – ",512),[[i["vShow"],e.areAdsForProfessionalServicesEnabled]]),Object(i["withDirectives"])(Object(i["createElementVNode"])("a",{rel:"noreferrer noopener",target:"_blank",href:e.professionalHelpUrl},Object(i["toDisplayString"])(e.translate("Feedback_ProfessionalHelp")),9,le),[[i["vShow"],e.areAdsForProfessionalServicesEnabled]]),ce])])])):Object(i["createCommentVNode"])("",!0),(Object(i["openBlock"])(!0),Object(i["createElementBlock"])(i["Fragment"],null,Object(i["renderList"])(e.sites,(function(t){return Object(i["openBlock"])(),Object(i["createBlock"])(u,{key:t.idsite,website:t,"evolution-metric":e.evolutionSelector,"date-sparkline":e.dateSparkline,"show-sparklines":e.showSparklines,metric:e.sortColumn,"display-revenue-column":e.displayRevenueColumn},null,8,["website","evolution-metric","date-sparkline","show-sparklines","metric","display-revenue-column"])})),128))])),Object(i["createElementVNode"])("tfoot",null,[Object(i["createElementVNode"])("tr",null,[Object(i["createElementVNode"])("td",ue,[Object(i["createElementVNode"])("div",de,[Object(i["createElementVNode"])("div",me,[e.hasSuperUserAccess?(Object(i["openBlock"])(),Object(i["createElementBlock"])("a",{key:0,href:e.addSiteUrl},[pe,Object(i["createTextVNode"])(" "+Object(i["toDisplayString"])(e.translate("SitesManager_AddSite")),1)],8,be)):Object(i["createCommentVNode"])("",!0)]),Object(i["createElementVNode"])("div",ve,[Object(i["withDirectives"])(Object(i["createElementVNode"])("span",{id:"prev",class:"previous dataTablePrevious",onClick:t[6]||(t[6]=function(t){return e.previousPage()})},[Object(i["createElementVNode"])("span",fe,"« "+Object(i["toDisplayString"])(e.translate("General_Previous")),1)],512),[[i["vShow"],!(0===e.currentPage)]]),Object(i["createElementVNode"])("span",he,[Object(i["createElementVNode"])("span",ge,Object(i["toDisplayString"])(e.translate("General_Pagination",e.paginationLowerBound,e.paginationUpperBound,e.numberOfFilteredSites)),1)]),Object(i["withDirectives"])(Object(i["createElementVNode"])("span",{id:"next",class:"next dataTableNext",onClick:t[7]||(t[7]=function(t){return e.nextPage()})},[Object(i["createElementVNode"])("span",Oe,Object(i["toDisplayString"])(e.translate("General_Next"))+" »",1)],512),[[i["vShow"],!(e.currentPage>=e.numberOfPages)]])]),je])])]),Object(i["createElementVNode"])("tr",Se,[Object(i["createElementVNode"])("td",_e,[Object(i["createElementVNode"])("div",ye,[Object(i["createElementVNode"])("div",we,[Object(i["withDirectives"])(Object(i["createElementVNode"])("input",{type:"text",onKeydown:t[8]||(t[8]=Object(i["withKeys"])((function(t){return e.searchSite(e.searchTerm)}),["enter"])),"onUpdate:modelValue":t[9]||(t[9]=function(t){return e.searchTerm=t}),placeholder:e.translate("Actions_SubmenuSitesearch")},null,40,ke),[[i["vModelText"],e.searchTerm]]),Object(i["createElementVNode"])("span",{class:"icon-search search_ico",onClick:t[10]||(t[10]=function(t){return e.searchSite(e.searchTerm)}),title:e.translate("General_ClickToSearch")},null,8,Ve)])])])])])])],512)}function Ee(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ce(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Me(e,t,n){return t&&Ce(e.prototype,t),n&&Ce(e,n),e}function Be(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e} + */var U=window,H=U.NumberFormatter,F=function(){function e(){var t=this;L(this,e),z(this,"privateState",Object(a["reactive"])({sites:[],isLoading:!1,pageSize:25,currentPage:0,totalVisits:"?",totalPageviews:"?",totalActions:"?",totalRevenue:"?",searchTerm:"",lastVisits:"?",lastVisitsDate:"?",numberOfSites:0,loadingMessage:Object(x["translate"])("MultiSites_LoadingWebsites"),reverse:!0,sortColumn:"nb_visits",refreshInterval:0,errorLoadingSites:!1})),z(this,"refreshTimeout",null),z(this,"fetchAbort",null),z(this,"state",Object(a["computed"])((function(){return Object(a["readonly"])(t.privateState)}))),z(this,"numberOfFilteredSites",Object(a["computed"])((function(){return t.state.value.numberOfSites}))),z(this,"numberOfPages",Object(a["computed"])((function(){return Math.ceil(t.numberOfFilteredSites.value/t.state.value.pageSize-1)}))),z(this,"currentPagingOffset",Object(a["computed"])((function(){return Math.ceil(t.state.value.currentPage*t.state.value.pageSize)}))),z(this,"paginationLowerBound",Object(a["computed"])((function(){return t.currentPagingOffset.value+1}))),z(this,"paginationUpperBound",Object(a["computed"])((function(){var e=t.currentPagingOffset.value+t.state.value.pageSize,n=t.numberOfFilteredSites.value;return e>n&&(e=n),e})))}return I(e,[{key:"cancelRefereshInterval",value:function(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null)}},{key:"updateWebsitesList",value:function(e){var t=this;if(e){var n=e.sites;n.forEach((function(e){if(1!==e.ratio&&"1"!==e.ratio){var n=H.formatPercent(Math.round(100*parseInt(e.ratio,10))),r=null,o="0",a="0",i="0",s="0";if("nb_visits"!==t.state.value.sortColumn&&"visits_evolution"!==t.state.value.sortColumn||(o=H.formatNumber(e.previous_nb_visits),a=H.formatNumber(e.nb_visits),i=H.formatPercent(e.visits_evolution),r=Object(x["translate"])("General_ColumnNbVisits"),s=H.formatNumber(Math.round(parseInt(e.previous_nb_visits,10)*parseInt(e.ratio,10)))),"pageviews_evolution"===t.state.value.sortColumn&&(o="".concat(e.previous_Actions_nb_pageviews),a="".concat(e.nb_pageviews),i=H.formatPercent(e.pageviews_evolution),r=Object(x["translate"])("General_ColumnPageviews"),s=H.formatNumber(Math.round(parseInt(e.previous_Actions_nb_pageviews,10)*parseInt(e.ratio,10)))),"revenue_evolution"===t.state.value.sortColumn&&(o=H.formatCurrency(e.previous_Goal_revenue,e.currencySymbol),a=H.formatCurrency(e.revenue,e.currencySymbol),i=H.formatPercent(e.revenue_evolution),r=Object(x["translate"])("General_ColumnRevenue"),s=H.formatCurrency(Math.round(parseInt(e.previous_Goal_revenue,10)*parseInt(e.ratio,10)),e.currencySymbol)),r)switch(e.tooltip="".concat(Object(x["translate"])("MultiSites_EvolutionComparisonIncomplete",[n]),"\n"),e.tooltip+="".concat(Object(x["translate"])("MultiSites_EvolutionComparisonProportional",[n,"".concat(s),r,"".concat(o)]),"\n"),e.periodName){case"day":e.tooltip+=Object(x["translate"])("MultiSites_EvolutionComparisonDay",["".concat(a),r,"".concat(s),e.previousRange,"".concat(i)]);break;case"week":e.tooltip+=Object(x["translate"])("MultiSites_EvolutionComparisonWeek",["".concat(a),r,"".concat(s),e.previousRange,"".concat(i)]);break;case"month":e.tooltip+=Object(x["translate"])("MultiSites_EvolutionComparisonMonth",["".concat(a),r,"".concat(s),e.previousRange,"".concat(i)]);break;case"year":e.tooltip+=Object(x["translate"])("MultiSites_EvolutionComparisonYear",["".concat(a),r,"".concat(s),e.previousRange,"".concat(i)]);break;default:break}}})),this.privateState.totalVisits=e.totals.nb_visits,this.privateState.totalPageviews=e.totals.nb_pageviews,this.privateState.totalActions=e.totals.nb_actions,this.privateState.totalRevenue=e.totals.revenue,this.privateState.lastVisits=e.totals.nb_visits_lastdate,this.privateState.sites=n,this.privateState.numberOfSites=e.numSites,this.privateState.lastVisitsDate=e.lastDate}else this.onError()}},{key:"sortBy",value:function(e){this.state.value.sortColumn===e&&(this.privateState.reverse=!this.state.value.reverse),this.privateState.sortColumn=e,this.fetchAllSites()}},{key:"previousPage",value:function(){this.privateState.currentPage=this.state.value.currentPage-1,this.fetchAllSites()}},{key:"nextPage",value:function(){this.privateState.currentPage=this.state.value.currentPage+1,this.fetchAllSites()}},{key:"searchSite",value:function(e){this.privateState.searchTerm=e,this.privateState.currentPage=0,this.fetchAllSites()}},{key:"fetchAllSites",value:function(){var e=this;this.fetchAbort&&(this.fetchAbort.abort(),this.fetchAbort=null,this.cancelRefereshInterval()),this.privateState.isLoading=!0,this.privateState.errorLoadingSites=!1;var t={method:"MultiSites.getAllWithGroups",hideMetricsDoc:"1",filter_sort_order:"asc",filter_limit:this.state.value.pageSize,filter_offset:this.currentPagingOffset.value,showColumns:["label","nb_visits","nb_pageviews","visits_evolution","visits_evolution_trend","pageviews_evolution","pageviews_evolution_trend","revenue_evolution","revenue_evolution_trend","nb_actions,revenue"].join(",")};return this.privateState.searchTerm&&(t.pattern=this.privateState.searchTerm),this.privateState.sortColumn&&(t.filter_sort_column=this.privateState.sortColumn),this.privateState.reverse&&(t.filter_sort_order="desc"),this.fetchAbort=new AbortController,x["AjaxHelper"].fetch(t,{abortController:this.fetchAbort}).then((function(t){e.updateWebsitesList(t)})).catch((function(){e.onError()})).finally((function(){e.privateState.isLoading=!1,e.fetchAbort=null,e.state.value.refreshInterval&&e.state.value.refreshInterval>0&&(e.cancelRefereshInterval(),e.refreshTimeout=setTimeout((function(){e.refreshTimeout=null,e.fetchAllSites()}),1e3*e.state.value.refreshInterval))}))}},{key:"onError",value:function(){this.privateState.errorLoadingSites=!0,this.privateState.sites=[]}},{key:"setRefreshInterval",value:function(e){this.privateState.refreshInterval=e}},{key:"setPageSize",value:function(e){this.privateState.pageSize=e}}]),e}(),q=new F,W={ref:"root"},$={class:"card-title"},K=["innerHTML","title"],J={id:"mt",class:"dataTable card-table",cellspacing:"0"},Y={class:"heading"},Q={class:"heading"},X={class:"heading"},Z={class:"heading"},ee=["colspan"],te=["value"],ne={value:"visits_evolution"},re={value:"pageviews_evolution"},oe={key:0,value:"revenue_evolution"},ae={key:0},ie={colspan:"7",class:"allWebsitesLoading"},se={key:1},le={key:0},ce={colspan:"7"},ue={class:"notification system notification-error"},be=Object(a["createElementVNode"])("br",null,null,-1),de=Object(a["createElementVNode"])("br",null,null,-1),me={rel:"noreferrer noopener",target:"_blank",href:"https://matomo.org/faq/troubleshooting/faq_19489/"},pe=Object(a["createTextVNode"])(" – "),ve={rel:"noreferrer noopener",target:"_blank",href:"https://forum.matomo.org/"},fe=["href"],he=Object(a["createTextVNode"])(". "),Oe={colspan:"8",class:"paging"},je={class:"row"},ge={class:"col s3 add_new_site"},Se=["href"],_e=Object(a["createElementVNode"])("span",{class:"icon-add"},null,-1),ye={class:"col s6"},we={style:{cursor:"pointer"}},ke={class:"dataTablePages"},Ve={id:"counter"},Ee={style:{cursor:"pointer"},class:"pointer"},Ne=Object(a["createElementVNode"])("div",{class:"col s3"}," ",-1),Ce={row_id:"last"},Me={colspan:"8",class:"site_search"},Pe={class:"row"},Be={class:"input-field col s12"},Te=["placeholder"],De=["title"];function xe(e,t,n,r,o,i){var s=this,l=Object(a["resolveComponent"])("EnrichedHeadline"),c=Object(a["resolveComponent"])("ActivityIndicator"),u=Object(a["resolveComponent"])("MultisitesSite");return Object(a["openBlock"])(),Object(a["createElementBlock"])("div",W,[Object(a["createElementVNode"])("h2",$,[Object(a["createVNode"])(l,{"help-url":"https://matomo.org/faq/new-to-piwik/all-websites-dashboard/","feature-name":e.translate("General_AllWebsitesDashboard")},{default:Object(a["withCtx"])((function(){return[Object(a["createTextVNode"])(Object(a["toDisplayString"])(e.translate("General_AllWebsitesDashboard"))+" ",1),Object(a["createElementVNode"])("span",{class:"smallTitle",innerHTML:e.$sanitize(s.smallTitleContent),title:e.smallTitleTooltip},null,8,K)]})),_:1},8,["feature-name"])]),Object(a["createElementVNode"])("table",J,[Object(a["createElementVNode"])("thead",null,[Object(a["createElementVNode"])("tr",null,[Object(a["createElementVNode"])("th",{id:"names",class:Object(a["normalizeClass"])(["label",{columnSorted:"label"===e.sortColumn}]),onClick:t[0]||(t[0]=function(t){return e.sortBy("label")})},[Object(a["createElementVNode"])("span",Y,Object(a["toDisplayString"])(e.translate("General_Website")),1),Object(a["createElementVNode"])("span",{class:Object(a["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"label"===e.sortColumn,multisites_desc:e.reverse&&"label"===e.sortColumn}]),style:{"margin-left":"3.5px"}},null,2)],2),Object(a["createElementVNode"])("th",{id:"visits",class:Object(a["normalizeClass"])(["multisites-column",{columnSorted:"nb_visits"===e.sortColumn}]),onClick:t[1]||(t[1]=function(t){return e.sortBy("nb_visits")})},[Object(a["createElementVNode"])("span",{class:Object(a["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"nb_visits"===e.sortColumn,multisites_desc:e.reverse&&"nb_visits"===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(a["createElementVNode"])("span",Q,Object(a["toDisplayString"])(e.translate("General_ColumnNbVisits")),1)],2),Object(a["createElementVNode"])("th",{id:"pageviews",class:Object(a["normalizeClass"])(["multisites-column",{columnSorted:"nb_pageviews"===e.sortColumn}]),onClick:t[2]||(t[2]=function(t){return e.sortBy("nb_pageviews")})},[Object(a["createElementVNode"])("span",{class:Object(a["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"nb_pageviews"===e.sortColumn,multisites_desc:e.reverse&&"nb_pageviews"===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(a["createElementVNode"])("span",X,Object(a["toDisplayString"])(e.translate("General_ColumnPageviews")),1)],2),e.displayRevenueColumn?(Object(a["openBlock"])(),Object(a["createElementBlock"])("th",{key:0,id:"revenue",class:Object(a["normalizeClass"])(["multisites-column",{columnSorted:"revenue"===e.sortColumn}]),onClick:t[3]||(t[3]=function(t){return e.sortBy("revenue")})},[Object(a["createElementVNode"])("span",{class:Object(a["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&"revenue"===e.sortColumn,multisites_desc:e.reverse&&"revenue"===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(a["createElementVNode"])("span",Z,Object(a["toDisplayString"])(e.translate("General_ColumnRevenue")),1)],2)):Object(a["createCommentVNode"])("",!0),Object(a["createElementVNode"])("th",{id:"evolution",class:Object(a["normalizeClass"])({columnSorted:e.evolutionSelector===e.sortColumn}),colspan:e.showSparklines?2:1},[Object(a["createElementVNode"])("span",{class:Object(a["normalizeClass"])(["arrow",{multisites_asc:!e.reverse&&e.evolutionSelector===e.sortColumn,multisites_desc:e.reverse&&e.evolutionSelector===e.sortColumn}]),style:{"margin-right":"3.5px"}},null,2),Object(a["createElementVNode"])("span",{class:"evolution",onClick:t[4]||(t[4]=function(t){return e.sortBy(e.evolutionSelector)}),style:{"margin-right":"3.5px"}},Object(a["toDisplayString"])(e.translate("MultiSites_Evolution")),1),Object(a["createElementVNode"])("select",{class:"selector browser-default",id:"evolution_selector",value:e.evolutionSelector,onChange:t[5]||(t[5]=function(t){e.evolutionSelector=t.target.value,e.sortBy(e.evolutionSelector)})},[Object(a["createElementVNode"])("option",ne,Object(a["toDisplayString"])(e.translate("General_ColumnNbVisits")),1),Object(a["createElementVNode"])("option",re,Object(a["toDisplayString"])(e.translate("General_ColumnPageviews")),1),e.displayRevenueColumn?(Object(a["openBlock"])(),Object(a["createElementBlock"])("option",oe,Object(a["toDisplayString"])(e.translate("General_ColumnRevenue")),1)):Object(a["createCommentVNode"])("",!0)],40,te)],10,ee)])]),e.isLoading?(Object(a["openBlock"])(),Object(a["createElementBlock"])("tbody",ae,[Object(a["createElementVNode"])("tr",null,[Object(a["createElementVNode"])("td",ie,[Object(a["createVNode"])(c,{"loading-message":e.loadingMessage,loading:e.isLoading},null,8,["loading-message","loading"])])])])):Object(a["createCommentVNode"])("",!0),e.isLoading?Object(a["createCommentVNode"])("",!0):(Object(a["openBlock"])(),Object(a["createElementBlock"])("tbody",se,[e.errorLoadingSites?(Object(a["openBlock"])(),Object(a["createElementBlock"])("tr",le,[Object(a["createElementVNode"])("td",ce,[Object(a["createElementVNode"])("div",ue,[Object(a["createTextVNode"])(Object(a["toDisplayString"])(e.translate("General_ErrorRequest","",""))+" ",1),be,de,Object(a["createTextVNode"])(" "+Object(a["toDisplayString"])(e.translate("General_NeedMoreHelp"))+" ",1),Object(a["createElementVNode"])("a",me,Object(a["toDisplayString"])(e.translate("General_Faq")),1),pe,Object(a["createElementVNode"])("a",ve,Object(a["toDisplayString"])(e.translate("Feedback_CommunityHelp")),1),Object(a["withDirectives"])(Object(a["createElementVNode"])("span",null," – ",512),[[a["vShow"],e.areAdsForProfessionalServicesEnabled]]),Object(a["withDirectives"])(Object(a["createElementVNode"])("a",{rel:"noreferrer noopener",target:"_blank",href:e.professionalHelpUrl},Object(a["toDisplayString"])(e.translate("Feedback_ProfessionalHelp")),9,fe),[[a["vShow"],e.areAdsForProfessionalServicesEnabled]]),he])])])):Object(a["createCommentVNode"])("",!0),(Object(a["openBlock"])(!0),Object(a["createElementBlock"])(a["Fragment"],null,Object(a["renderList"])(e.sites,(function(t){return Object(a["openBlock"])(),Object(a["createBlock"])(u,{key:t.idsite,website:t,"evolution-metric":e.evolutionSelector,"date-sparkline":e.dateSparkline,"show-sparklines":e.showSparklines,metric:e.sortColumn,"display-revenue-column":e.displayRevenueColumn},null,8,["website","evolution-metric","date-sparkline","show-sparklines","metric","display-revenue-column"])})),128))])),Object(a["createElementVNode"])("tfoot",null,[Object(a["createElementVNode"])("tr",null,[Object(a["createElementVNode"])("td",Oe,[Object(a["createElementVNode"])("div",je,[Object(a["createElementVNode"])("div",ge,[e.hasSuperUserAccess?(Object(a["openBlock"])(),Object(a["createElementBlock"])("a",{key:0,href:e.addSiteUrl},[_e,Object(a["createTextVNode"])(" "+Object(a["toDisplayString"])(e.translate("SitesManager_AddSite")),1)],8,Se)):Object(a["createCommentVNode"])("",!0)]),Object(a["createElementVNode"])("div",ye,[Object(a["withDirectives"])(Object(a["createElementVNode"])("span",{id:"prev",class:"previous dataTablePrevious",onClick:t[6]||(t[6]=function(t){return e.previousPage()})},[Object(a["createElementVNode"])("span",we,"« "+Object(a["toDisplayString"])(e.translate("General_Previous")),1)],512),[[a["vShow"],!(0===e.currentPage)]]),Object(a["createElementVNode"])("span",ke,[Object(a["createElementVNode"])("span",Ve,Object(a["toDisplayString"])(e.translate("General_Pagination",e.paginationLowerBound,e.paginationUpperBound,e.numberOfFilteredSites)),1)]),Object(a["withDirectives"])(Object(a["createElementVNode"])("span",{id:"next",class:"next dataTableNext",onClick:t[7]||(t[7]=function(t){return e.nextPage()})},[Object(a["createElementVNode"])("span",Ee,Object(a["toDisplayString"])(e.translate("General_Next"))+" »",1)],512),[[a["vShow"],!(e.currentPage>=e.numberOfPages)]])]),Ne])])]),Object(a["createElementVNode"])("tr",Ce,[Object(a["createElementVNode"])("td",Me,[Object(a["createElementVNode"])("div",Pe,[Object(a["createElementVNode"])("div",Be,[Object(a["withDirectives"])(Object(a["createElementVNode"])("input",{type:"text",onKeydown:t[8]||(t[8]=Object(a["withKeys"])((function(t){return e.searchSite(e.searchTerm)}),["enter"])),"onUpdate:modelValue":t[9]||(t[9]=function(t){return e.searchTerm=t}),placeholder:e.translate("Actions_SubmenuSitesearch")},null,40,Te),[[a["vModelText"],e.searchTerm]]),Object(a["createElementVNode"])("span",{class:"icon-search search_ico",onClick:t[10]||(t[10]=function(t){return e.searchSite(e.searchTerm)}),title:e.translate("General_ClickToSearch")},null,8,De)])])])])])])],512)}var Ae=Object(a["defineComponent"])({props:{displayRevenueColumn:Boolean,showSparklines:Boolean,dateSparkline:String,pageSize:Number,autoRefreshTodayReport:Number},components:{EnrichedHeadline:x["EnrichedHeadline"],ActivityIndicator:x["ActivityIndicator"],MultisitesSite:G},data:function(){return{evolutionSelector:"visits_evolution",searchTerm:""}},created:function(){this.pageSize&&q.setPageSize(this.pageSize),this.refresh(this.autoRefreshTodayReport)},methods:{refresh:function(e){q.setRefreshInterval(e),q.fetchAllSites()},sortBy:function(e){q.sortBy(e)},previousPage:function(){q.previousPage()},nextPage:function(){q.nextPage()},searchSite:function(){q.searchSite(this.searchTerm)}},computed:{hasSuperUserAccess:function(){return x["Matomo"].hasSuperUserAccess},date:function(){return x["MatomoUrl"].urlParsed.value.date},idSite:function(){return x["MatomoUrl"].urlParsed.value.idSite},url:function(){return x["Matomo"].piwik_url},period:function(){return x["Matomo"].period},areAdsForProfessionalServicesEnabled:function(){return x["Matomo"].config&&x["Matomo"].config.are_ads_enabled},sortColumn:function(){return q.state.value.sortColumn},reverse:function(){return q.state.value.reverse},smallTitleContent:function(){var e=q.state.value;return Object(x["translate"])("General_TotalVisitsPageviewsActionsRevenue","<strong>".concat(e.totalVisits,"</strong>"),"<strong>".concat(e.totalPageviews,"</strong>"),"<strong>".concat(e.totalActions,"</strong>"),"<strong>".concat(e.totalRevenue,"</strong>"))},smallTitleTooltip:function(){var e=q.state.value;return Object(x["translate"])("General_EvolutionSummaryGeneric",Object(x["translate"])("General_NVisits","".concat(e.totalVisits)),this.date,"".concat(e.lastVisits),e.lastVisitsDate,Object(x["getFormattedEvolution"])(e.totalVisits,e.lastVisits))},loadingMessage:function(){return q.state.value.loadingMessage},isLoading:function(){return q.state.value.isLoading},errorLoadingSites:function(){return q.state.value.errorLoadingSites},sites:function(){return q.state.value.sites},numberOfPages:function(){return q.numberOfPages.value},currentPage:function(){return q.state.value.currentPage},paginationLowerBound:function(){return q.paginationLowerBound.value},paginationUpperBound:function(){return q.paginationUpperBound.value},numberOfFilteredSites:function(){return q.numberOfFilteredSites.value},professionalHelpUrl:function(){return"https://matomo.org/support-plans/?pk_campaign=Help&pk_medium=AjaxError&pk_content=MultiSites&pk_source=Matomo_App"},addSiteUrl:function(){return"index.php?module=SitesManager&action=index&showaddsite=1&period=".concat(this.period,"&")+"date=".concat(this.date,"&idSite=").concat(this.idSite)}}});Ae.render=xe;var Ge=Ae; /*! * Matomo - free/libre analytics platform * * @link https://matomo.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */var Pe=window,Te=Pe.NumberFormatter,Ae=function(){function e(){var t=this;Ee(this,e),Be(this,"privateState",Object(i["reactive"])({sites:[],isLoading:!1,pageSize:25,currentPage:0,totalVisits:"?",totalPageviews:"?",totalActions:"?",totalRevenue:"?",searchTerm:"",lastVisits:"?",lastVisitsDate:"?",numberOfSites:0,loadingMessage:Object(o["translate"])("MultiSites_LoadingWebsites"),reverse:!0,sortColumn:"nb_visits",refreshInterval:0,errorLoadingSites:!1})),Be(this,"refreshTimeout",null),Be(this,"fetchAbort",null),Be(this,"state",Object(i["computed"])((function(){return Object(i["readonly"])(t.privateState)}))),Be(this,"numberOfFilteredSites",Object(i["computed"])((function(){return t.state.value.numberOfSites}))),Be(this,"numberOfPages",Object(i["computed"])((function(){return Math.ceil(t.numberOfFilteredSites.value/t.state.value.pageSize-1)}))),Be(this,"currentPagingOffset",Object(i["computed"])((function(){return Math.ceil(t.state.value.currentPage*t.state.value.pageSize)}))),Be(this,"paginationLowerBound",Object(i["computed"])((function(){return t.currentPagingOffset.value+1}))),Be(this,"paginationUpperBound",Object(i["computed"])((function(){var e=t.currentPagingOffset.value+t.state.value.pageSize,n=t.numberOfFilteredSites.value;return e>n&&(e=n),e})))}return Me(e,[{key:"cancelRefereshInterval",value:function(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null)}},{key:"updateWebsitesList",value:function(e){var t=this;if(e){var n=e.sites;n.forEach((function(e){if(1!==e.ratio&&"1"!==e.ratio){var n=Te.formatPercent(Math.round(100*parseInt(e.ratio,10))),r=null,a="0",i="0",s="0",l="0";if("nb_visits"!==t.state.value.sortColumn&&"visits_evolution"!==t.state.value.sortColumn||(a=Te.formatNumber(e.previous_nb_visits),i=Te.formatNumber(e.nb_visits),s=Te.formatPercent(e.visits_evolution),r=Object(o["translate"])("General_ColumnNbVisits"),l=Te.formatNumber(Math.round(parseInt(e.previous_nb_visits,10)*parseInt(e.ratio,10)))),"pageviews_evolution"===t.state.value.sortColumn&&(a="".concat(e.previous_Actions_nb_pageviews),i="".concat(e.nb_pageviews),s=Te.formatPercent(e.pageviews_evolution),r=Object(o["translate"])("General_ColumnPageviews"),l=Te.formatNumber(Math.round(parseInt(e.previous_Actions_nb_pageviews,10)*parseInt(e.ratio,10)))),"revenue_evolution"===t.state.value.sortColumn&&(a=Te.formatCurrency(e.previous_Goal_revenue,e.currencySymbol),i=Te.formatCurrency(e.revenue,e.currencySymbol),s=Te.formatPercent(e.revenue_evolution),r=Object(o["translate"])("General_ColumnRevenue"),l=Te.formatCurrency(Math.round(parseInt(e.previous_Goal_revenue,10)*parseInt(e.ratio,10)),e.currencySymbol)),r)switch(e.tooltip="".concat(Object(o["translate"])("MultiSites_EvolutionComparisonIncomplete",[n]),"\n"),e.tooltip+="".concat(Object(o["translate"])("MultiSites_EvolutionComparisonProportional",[n,"".concat(l),r,"".concat(a)]),"\n"),e.periodName){case"day":e.tooltip+=Object(o["translate"])("MultiSites_EvolutionComparisonDay",["".concat(i),r,"".concat(l),e.previousRange,"".concat(s)]);break;case"week":e.tooltip+=Object(o["translate"])("MultiSites_EvolutionComparisonWeek",["".concat(i),r,"".concat(l),e.previousRange,"".concat(s)]);break;case"month":e.tooltip+=Object(o["translate"])("MultiSites_EvolutionComparisonMonth",["".concat(i),r,"".concat(l),e.previousRange,"".concat(s)]);break;case"year":e.tooltip+=Object(o["translate"])("MultiSites_EvolutionComparisonYear",["".concat(i),r,"".concat(l),e.previousRange,"".concat(s)]);break;default:break}}})),this.privateState.totalVisits=e.totals.nb_visits,this.privateState.totalPageviews=e.totals.nb_pageviews,this.privateState.totalActions=e.totals.nb_actions,this.privateState.totalRevenue=e.totals.revenue,this.privateState.lastVisits=e.totals.nb_visits_lastdate,this.privateState.sites=n,this.privateState.numberOfSites=e.numSites,this.privateState.lastVisitsDate=e.lastDate}else this.onError()}},{key:"sortBy",value:function(e){this.state.value.sortColumn===e&&(this.privateState.reverse=!this.state.value.reverse),this.privateState.sortColumn=e,this.fetchAllSites()}},{key:"previousPage",value:function(){this.privateState.currentPage=this.state.value.currentPage-1,this.fetchAllSites()}},{key:"nextPage",value:function(){this.privateState.currentPage=this.state.value.currentPage+1,this.fetchAllSites()}},{key:"searchSite",value:function(e){this.privateState.searchTerm=e,this.privateState.currentPage=0,this.fetchAllSites()}},{key:"fetchAllSites",value:function(){var e=this;this.fetchAbort&&(this.fetchAbort.abort(),this.fetchAbort=null,this.cancelRefereshInterval()),this.privateState.isLoading=!0,this.privateState.errorLoadingSites=!1;var t={method:"MultiSites.getAllWithGroups",hideMetricsDoc:"1",filter_sort_order:"asc",filter_limit:this.state.value.pageSize,filter_offset:this.currentPagingOffset.value,showColumns:["label","nb_visits","nb_pageviews","visits_evolution","visits_evolution_trend","pageviews_evolution","pageviews_evolution_trend","revenue_evolution","revenue_evolution_trend","nb_actions,revenue"].join(",")};return this.privateState.searchTerm&&(t.pattern=this.privateState.searchTerm),this.privateState.sortColumn&&(t.filter_sort_column=this.privateState.sortColumn),this.privateState.reverse&&(t.filter_sort_order="desc"),this.fetchAbort=new AbortController,o["AjaxHelper"].fetch(t,{abortController:this.fetchAbort}).then((function(t){e.updateWebsitesList(t)})).catch((function(){e.onError()})).finally((function(){e.privateState.isLoading=!1,e.fetchAbort=null,e.state.value.refreshInterval&&e.state.value.refreshInterval>0&&(e.cancelRefereshInterval(),e.refreshTimeout=setTimeout((function(){e.refreshTimeout=null,e.fetchAllSites()}),1e3*e.state.value.refreshInterval))}))}},{key:"onError",value:function(){this.privateState.errorLoadingSites=!0,this.privateState.sites=[]}},{key:"setRefreshInterval",value:function(e){this.privateState.refreshInterval=e}},{key:"setPageSize",value:function(e){this.privateState.pageSize=e}}]),e}(),De=new Ae,xe=Object(i["defineComponent"])({props:{displayRevenueColumn:Boolean,showSparklines:Boolean,dateSparkline:String,pageSize:Number,autoRefreshTodayReport:Number},components:{EnrichedHeadline:o["EnrichedHeadline"],ActivityIndicator:o["ActivityIndicator"],MultisitesSite:G},data:function(){return{evolutionSelector:"visits_evolution",searchTerm:""}},created:function(){this.pageSize&&De.setPageSize(this.pageSize),this.refresh(this.autoRefreshTodayReport)},methods:{refresh:function(e){De.setRefreshInterval(e),De.fetchAllSites()},sortBy:function(e){De.sortBy(e)},previousPage:function(){De.previousPage()},nextPage:function(){De.nextPage()},searchSite:function(){De.searchSite(this.searchTerm)}},computed:{hasSuperUserAccess:function(){return o["Matomo"].hasSuperUserAccess},date:function(){return o["MatomoUrl"].urlParsed.value.date},idSite:function(){return o["MatomoUrl"].urlParsed.value.idSite},url:function(){return o["Matomo"].piwik_url},period:function(){return o["Matomo"].period},areAdsForProfessionalServicesEnabled:function(){return o["Matomo"].config&&o["Matomo"].config.are_ads_enabled},sortColumn:function(){return De.state.value.sortColumn},reverse:function(){return De.state.value.reverse},smallTitleContent:function(){var e=De.state.value;return Object(o["translate"])("General_TotalVisitsPageviewsActionsRevenue","<strong>".concat(e.totalVisits,"</strong>"),"<strong>".concat(e.totalPageviews,"</strong>"),"<strong>".concat(e.totalActions,"</strong>"),"<strong>".concat(e.totalRevenue,"</strong>"))},smallTitleTooltip:function(){var e=De.state.value;return Object(o["translate"])("General_EvolutionSummaryGeneric",Object(o["translate"])("General_NVisits","".concat(e.totalVisits)),this.date,"".concat(e.lastVisits),e.lastVisitsDate,Object(o["getFormattedEvolution"])(e.totalVisits,e.lastVisits))},loadingMessage:function(){return De.state.value.loadingMessage},isLoading:function(){return De.state.value.isLoading},errorLoadingSites:function(){return De.state.value.errorLoadingSites},sites:function(){return De.state.value.sites},numberOfPages:function(){return De.numberOfPages.value},currentPage:function(){return De.state.value.currentPage},paginationLowerBound:function(){return De.paginationLowerBound.value},paginationUpperBound:function(){return De.paginationUpperBound.value},numberOfFilteredSites:function(){return De.numberOfFilteredSites.value},professionalHelpUrl:function(){return"https://matomo.org/support-plans/?pk_campaign=Help&pk_medium=AjaxError&pk_content=MultiSites&pk_source=Matomo_App"},addSiteUrl:function(){return"index.php?module=SitesManager&action=index&showaddsite=1&period=".concat(this.period,"&")+"date=".concat(this.date,"&idSite=").concat(this.idSite)}}});xe.render=Ne;var Ge=xe; -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */Object(o["createAngularJsAdapter"])({component:Ge,scope:{displayRevenueColumn:{angularJsBind:"@",transform:o["transformAngularJsBoolAttr"]},showSparklines:{angularJsBind:"@",transform:o["transformAngularJsBoolAttr"]},dateSparkline:{angularJsBind:"@"},pageSize:{angularJsBind:"@",transform:o["transformAngularJsIntAttr"]},autoRefreshTodayReport:{angularJsBind:"@",transform:o["transformAngularJsIntAttr"]}},directiveName:"piwikMultisitesDashboard"})}})})); + */}})})); //# sourceMappingURL=MultiSites.umd.min.js.map
\ No newline at end of file diff --git a/plugins/MultiSites/vue/src/Dashboard/Dashboard.adapter.ts b/plugins/MultiSites/vue/src/Dashboard/Dashboard.adapter.ts deleted file mode 100644 index 5db60f3d24..0000000000 --- a/plugins/MultiSites/vue/src/Dashboard/Dashboard.adapter.ts +++ /dev/null @@ -1,39 +0,0 @@ -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ - -import { - createAngularJsAdapter, - transformAngularJsBoolAttr, - transformAngularJsIntAttr, -} from 'CoreHome'; -import Dashboard from './Dashboard.vue'; - -export default createAngularJsAdapter({ - component: Dashboard, - scope: { - displayRevenueColumn: { - angularJsBind: '@', - transform: transformAngularJsBoolAttr, - }, - showSparklines: { - angularJsBind: '@', - transform: transformAngularJsBoolAttr, - }, - dateSparkline: { - angularJsBind: '@', - }, - pageSize: { - angularJsBind: '@', - transform: transformAngularJsIntAttr, - }, - autoRefreshTodayReport: { - angularJsBind: '@', - transform: transformAngularJsIntAttr, - }, - }, - directiveName: 'piwikMultisitesDashboard', -}); diff --git a/plugins/MultiSites/vue/src/MultisitesSite/MultisitesSite.adapter.ts b/plugins/MultiSites/vue/src/MultisitesSite/MultisitesSite.adapter.ts deleted file mode 100644 index 5b74aee43f..0000000000 --- a/plugins/MultiSites/vue/src/MultisitesSite/MultisitesSite.adapter.ts +++ /dev/null @@ -1,34 +0,0 @@ -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ - -import { createAngularJsAdapter } from 'CoreHome'; -import MultisitesSite from './MultisitesSite.vue'; - -export default createAngularJsAdapter({ - component: MultisitesSite, - scope: { - website: { - angularJsBind: '=', - }, - evolutionMetric: { - angularJsBind: '=', - }, - showSparklines: { - angularJsBind: '=', - }, - dateSparkline: { - angularJsBind: '=', - }, - displayRevenueColumn: { - angularJsBind: '=', - }, - metric: { - angularJsBind: '=', - }, - }, - directiveName: 'piwikMultisitesSite', -}); diff --git a/plugins/MultiSites/vue/src/index.ts b/plugins/MultiSites/vue/src/index.ts index b7042f0ce9..27b4835e6a 100644 --- a/plugins/MultiSites/vue/src/index.ts +++ b/plugins/MultiSites/vue/src/index.ts @@ -5,9 +5,6 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later */ -import './MultisitesSite/MultisitesSite.adapter'; -import './Dashboard/Dashboard.adapter'; - export { default as MultisitesSite } from './MultisitesSite/MultisitesSite.vue'; export { default as DashboadStore } from './Dashboard/Dashboard.store'; export { default as Dashboard } from './Dashboard/Dashboard.vue'; |