diff --git a/core/Menu/MenuAdmin.php b/core/Menu/MenuAdmin.php
index 1c71fea04d4..0a56c7e8f89 100644
--- a/core/Menu/MenuAdmin.php
+++ b/core/Menu/MenuAdmin.php
@@ -110,13 +110,14 @@ public function addPluginItem(string $menuName, array $url, int $order = 50, $to
* @param string $menuName
* @param array $url
* @param int $order
- * @param bool|string $tooltip
+ * @param false|string $tooltip
+ * @param false|string $icon
* @api
* @since 3.0.0
*/
- public function addMeasurableItem($menuName, $url, $order = 50, $tooltip = false)
+ public function addMeasurableItem($menuName, $url, $order = 50, $tooltip = false, $icon = false)
{
- $this->addItem('CoreAdminHome_MenuMeasurables', $menuName, $url, $order, $tooltip);
+ $this->addItem('CoreAdminHome_MenuMeasurables', $menuName, $url, $order, $tooltip, $icon);
}
/**
diff --git a/lang/en.json b/lang/en.json
index 3f498897115..ffeab11a308 100644
--- a/lang/en.json
+++ b/lang/en.json
@@ -30,15 +30,19 @@
"Cancel": "Cancel",
"CannotUnzipFile": "Cannot unzip file %1$s: %2$s",
"CanNotEditGlobalSegment": "This is a global segment. Only super users can edit global segments.",
+ "CanNotDeleteGlobalSegment": "This is a global segment. Only super users can delete global segments.",
"CanNotStarGlobalSegment": "This is a global segment. Only super users can star global segments.",
"CanNotUnstarGlobalSegment": "This is a global segment. Only super users can unstar global segments.",
"CanEditGlobalSegment": "This is a global segment. Any changes will apply across all websites.",
+ "CanDeleteGlobalSegment": "This is a global segment. Deleting will apply across all websites.",
"CanStarGlobalSegment": "This is a global segment. Adding to Starred will apply across all websites.",
"CanUnstarGlobalSegment": "This is a global segment. Removing from Starred will apply across all websites.",
"CanNotEditSiteSegment": "You can only edit the segments you created yourself.",
+ "CanNotDeleteSiteSegment": "You can only delete the segments you created yourself.",
"CanNotStarSiteSegment": "You can only add to Starred the segments you created yourself.",
"CanNotUnstarSiteSegment": "You can only remove from Starred the segments you created yourself.",
"CanEditSiteSegment": "Edit the segment for this website.",
+ "CanDeleteSiteSegment": "Delete the segment for this website.",
"CanStarSiteSegment": "Add to Starred segments for this website.",
"CanUnstarSiteSegment": "Remove from Starred segments for this website.",
"ChangeInX": "Change in %1$s",
@@ -70,6 +74,8 @@
"ColumnDestinationPage": "Destination Page",
"ColumnEntrances": "Entrances",
"ColumnEntrancesDocumentation": "Number of visits that started on this page.",
+ "ColumnEvolutionVisits": "Evolution Visits",
+ "ColumnEvolutionVisitsDocumentation": "The percentage change of visits compared to the previous period. A positive value indicates growth, while a negative value signals a decrease.",
"ColumnExitRate": "Exit rate",
"ColumnExitRateDocumentation": "The percentage of visits that left the website after viewing this page.",
"ColumnExits": "Exits",
@@ -95,6 +101,8 @@
"ColumnPercentageVisits": "%% Visits",
"ColumnPercentageVisitsDocumentation": "The percentage of total visits.",
"ColumnRevenue": "Revenue",
+ "ColumnSegment": "Segment",
+ "ColumnSegmentDocumentation": "A segment is a set of criteria used to select only a part of the entire set of visits.",
"ColumnSumTimeOnSite": "Total Time on Website",
"ColumnSumVisitLength": "Total time spent by visitors (in seconds)",
"ColumnTotalPageviews": "Total Pageviews",
diff --git a/plugins/CoreHome/stylesheets/dataTable/_dataTable.less b/plugins/CoreHome/stylesheets/dataTable/_dataTable.less
index 7bccb34220a..251c14dbc91 100644
--- a/plugins/CoreHome/stylesheets/dataTable/_dataTable.less
+++ b/plugins/CoreHome/stylesheets/dataTable/_dataTable.less
@@ -101,7 +101,9 @@ body>.widget table.dataTable {
}
// for dataTables in report pages (not for widgets in the dashboard)
-.theWidgetContent .card .card-content table.dataTable, table.dataTable, table.subDataTable {
+.theWidgetContent .card .card-content table.dataTable,
+table.dataTable,
+table.subDataTable {
th {
background: @theme-color-background-base !important;
@@ -156,10 +158,15 @@ table.dataTable td.column {
white-space: nowrap;
}
-.dataTable tr.highlight td {
+.dataTable tr.highlight td,
+.dataTable_row-highlight td {
font-weight: bold;
}
+tr:nth-last-child(1 of .dataTable_row-group) td {
+ border-bottom: 3px solid @theme-color-background-tinyContrast !important;
+}
+
table.dataTable th.label,
table.dataTable td.label,
table.subActionsDataTable td.label,
diff --git a/plugins/CoreHome/stylesheets/dataTable/_entityTable.less b/plugins/CoreHome/stylesheets/dataTable/_entityTable.less
index 8bcac416490..ae47f1adb2c 100644
--- a/plugins/CoreHome/stylesheets/dataTable/_entityTable.less
+++ b/plugins/CoreHome/stylesheets/dataTable/_entityTable.less
@@ -50,6 +50,45 @@ table.entityTable {
}
}
}
+
+ th.entityTable_Numeric {
+ text-align: right !important;
+ }
+ td.entityTable_Numeric {
+ text-align: right;
+ font-variant-numeric: tabular-nums;
+ }
+
+ .entityTable_Sparkline {
+ padding: 0;
+ width: 100px;
+ }
+}
+
+.entityTable_StarCell,
+table.entityTable tbody tr .entityTable_StarCell {
+ width: 40px;
+ padding-right: 0;
+}
+
+.entityTable_Filler,
+table.entityTable tbody tr .entityTable_Filler {
+ padding: 0;
+}
+
+.entityTable_ActionCell,
+table.entityTable tbody tr .entityTable_ActionCell {
+ padding: 0 16px;
+}
+
+.entityTable_ActionCell-1,
+table.entityTable tbody tr .entityTable_ActionCell-1 {
+ width: 80px;
+}
+
+.entityTable_ActionCell-3,
+table.entityTable tbody tr .entityTable_ActionCell-3 {
+ width: 170px;
}
.table-action {
@@ -71,6 +110,15 @@ table.entityTable {
box-shadow: 0 1px 2px 0 rgba(0,0,0,0.16), 0 1px 5px 0 rgba(0,0,0,0.12);
cursor: pointer;
}
+
+ &[data-state="disabled"] {
+ opacity: 0.2;
+ cursor: not-allowed;
+ }
+
+ .entityTable_ActionCell & {
+ display: inline-block;
+ }
}
.card .tableActionBar {
@@ -82,6 +130,11 @@ table.entityTable {
}
}
+.tableFooterLabel {
+ margin-bottom: 16px;
+ font-style: italic;
+}
+
.tableActionBar {
a,
button {
@@ -105,12 +158,14 @@ table.entityTable {
text-transform: uppercase;
vertical-align: middle;
-webkit-tap-highlight-color: transparent;
+
&:hover {
text-decoration: none;
}
}
- button:first-child, a:first-child {
+ button:first-child,
+ a:first-child {
background-color: @theme-color-brand !important;
color: @color-white;
}
diff --git a/plugins/CoreHome/vue/src/Sparkline/Sparkline.less b/plugins/CoreHome/vue/src/Sparkline/Sparkline.less
index 2dfcf64c157..7a6a58d697d 100644
--- a/plugins/CoreHome/vue/src/Sparkline/Sparkline.less
+++ b/plugins/CoreHome/vue/src/Sparkline/Sparkline.less
@@ -2,3 +2,22 @@ img.sparklineImg {
width: 100px;
height: 25px;
}
+
+.sparklineEvolution {
+ color: black;
+ font-size: 12px;
+ white-space: nowrap;
+}
+
+.sparklineEvolution-positive {
+ color: green;
+}
+
+.sparklineEvolution-negative {
+ color: red;
+}
+
+.sparklineEvolution_icon {
+ margin-right: 1em;
+ vertical-align: middle;
+}
diff --git a/plugins/CoreVue/types/index.d.ts b/plugins/CoreVue/types/index.d.ts
index 5f1c4f0df84..9f67bef17af 100644
--- a/plugins/CoreVue/types/index.d.ts
+++ b/plugins/CoreVue/types/index.d.ts
@@ -83,6 +83,7 @@ declare global {
interface PiwikHelperGlobal {
escape(text: string): string;
redirect(params?: any);
+ getCurrentQueryStringWithParametersModified(newparams: string);
htmlDecode(encoded: string): string;
htmlEntities(value: string): string;
modalConfirm(element: JQuery|HTMLElement|string, callbacks?: ModalConfirmCallbacks, options?: ModalConfirmOptions);
diff --git a/plugins/CustomDimensions/tests/System/expected/test___API.getReportPagesMetadata.xml b/plugins/CustomDimensions/tests/System/expected/test___API.getReportPagesMetadata.xml
index dc2ab4a83b1..87d3c6e0620 100644
--- a/plugins/CustomDimensions/tests/System/expected/test___API.getReportPagesMetadata.xml
+++ b/plugins/CustomDimensions/tests/System/expected/test___API.getReportPagesMetadata.xml
@@ -1565,4 +1565,35 @@
-
\ No newline at end of file
+
+ General_Visitors.CoreHome_Segments
+
+ General_Visitors
+ Visitors
+ 5
+ icon-reporting-visitors
+ <p>The Visitors pages tell you things about who your visitors are. Things like where your visitors came from, what devices and browsers they're using and when they generally visit your website. Understand, in the aggregate, who your audience is, and look for outliers to see how your audience could grow.</p><p>In addition to general information about your visitors, you can also use the <a href="#" onclick="this.href=broadcast.buildReportingUrl('category=General_Visitors&subcategory=Live_VisitorLog')">Visits Log</a> to see what occurred in every individual visit.</p>
+
+
+
+ CoreHome_Segments
+ Segments
+ 99
+
+
+
+
+ Segments
+ SegmentEditor
+ manageSegments
+ 99
+
+ SegmentEditor
+ manageSegments
+
+ widgetSegmentEditormanageSegments
+ 0
+
+
+
+
diff --git a/plugins/CustomDimensions/tests/UI/expected-screenshots/CustomDimensions_report_visit_mainmenu.png b/plugins/CustomDimensions/tests/UI/expected-screenshots/CustomDimensions_report_visit_mainmenu.png
index f76ce1962b0..4bf91d4422b 100644
--- a/plugins/CustomDimensions/tests/UI/expected-screenshots/CustomDimensions_report_visit_mainmenu.png
+++ b/plugins/CustomDimensions/tests/UI/expected-screenshots/CustomDimensions_report_visit_mainmenu.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:7e871cf2b85a7342016772411034b40b4ce3cf1c75763dfb9d9beccfd537cc0d
-size 32273
+oid sha256:68f11338406c2c78b9028361c5e9bdbe7ab0248a25a236f5f46da8476f947012
+size 33543
diff --git a/plugins/Goals/Menu.php b/plugins/Goals/Menu.php
index 93cdb3b19ab..b25dc81958f 100644
--- a/plugins/Goals/Menu.php
+++ b/plugins/Goals/Menu.php
@@ -22,7 +22,7 @@ public function configureAdminMenu(MenuAdmin $menu)
$idSite = $this->getIdSite($userPreferences->getDefaultWebsiteId());
if (Piwik::isUserHasWriteAccess($idSite)) {
- $menu->addMeasurableItem('Goals_Goals', $this->urlForAction('manage', array('idSite' => $idSite)), 40);
+ $menu->addMeasurableItem('Goals_Goals', $this->urlForAction('manage', array('idSite' => $idSite)), 15);
}
}
diff --git a/plugins/Morpheus/stylesheets/ui/_cards.less b/plugins/Morpheus/stylesheets/ui/_cards.less
index b8acd3bae86..f1796bbe667 100644
--- a/plugins/Morpheus/stylesheets/ui/_cards.less
+++ b/plugins/Morpheus/stylesheets/ui/_cards.less
@@ -59,7 +59,12 @@ h1,
}
}
-.card-table + .tableActionBar {
+.card-introduction {
+ max-width: 900px;
+}
+
+.card-table + .tableActionBar,
+.tableFooterLabel + .tableActionBar {
margin: 0 0 0 -20px;
}
diff --git a/plugins/ScheduledReports/ScheduledReports.php b/plugins/ScheduledReports/ScheduledReports.php
index 4f39104d145..8f32bd9b4df 100644
--- a/plugins/ScheduledReports/ScheduledReports.php
+++ b/plugins/ScheduledReports/ScheduledReports.php
@@ -153,7 +153,7 @@ public function getClientSideTranslationKeys(&$translationKeys)
$translationKeys[] = 'ScheduledReports_ReportIncludeNWebsites';
$translationKeys[] = 'SegmentEditor_LoadingSegmentedDataMayTakeSomeTime';
$translationKeys[] = 'General_Download';
- $translationKeys[] = 'ScheduledReports_Segment_HelpScheduledReport';
+ $translationKeys[] = 'ScheduledReports_HelpSegmentManagement';
$translationKeys[] = 'SegmentEditor_AddNewSegment';
$translationKeys[] = 'ScheduledReports_SentToMe';
$translationKeys[] = 'ScheduledReports_AlsoSendReportToTheseEmails';
diff --git a/plugins/ScheduledReports/lang/en.json b/plugins/ScheduledReports/lang/en.json
index e96eaa80584..8ffc20aae10 100644
--- a/plugins/ScheduledReports/lang/en.json
+++ b/plugins/ScheduledReports/lang/en.json
@@ -36,7 +36,7 @@
"ReportUpdated": "Report updated",
"ReportAdded": "Report added",
"Segment_Deletion_Error": "This segment cannot be deleted or made invisible to other users because it is used to generate email report(s) %s. Please retry after removing this segment from this report(s).",
- "Segment_HelpScheduledReport": "You can select an existing custom segment to apply to data in this scheduled report. You may create and edit custom segments in your dashboard %1$s(click here to open)%2$s, then click on the \"%3$s\" box, then \"%4$s\".",
+ "HelpSegmentManagement": "You can select an existing custom segment to apply to data in this scheduled report. You may create and edit custom segments in the dedicated segments management page %1$s(click here to open)%2$s.",
"SegmentAppliedToReports": "The segment '%s' is applied to the reports.",
"SegmentDeleted": "Segment deleted",
"SendReportNow": "Send Report now",
diff --git a/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.js b/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.js
index 71ee0342cf7..ce1bc6676d2 100644
--- a/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.js
+++ b/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.js
@@ -348,26 +348,26 @@ function ManageScheduledReportvue_type_template_id_038aa0f7_render(_ctx, _cache,
// EXTERNAL MODULE: external "CoreHome"
var external_CoreHome_ = __webpack_require__("19dc");
-// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--13-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--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/ScheduledReports/vue/src/AddReport/AddReport.vue?vue&type=template&id=711546b4
+// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--13-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--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/ScheduledReports/vue/src/AddReport/AddReport.vue?vue&type=template&id=67aaa7f8
-const AddReportvue_type_template_id_711546b4_hoisted_1 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", {
+const AddReportvue_type_template_id_67aaa7f8_hoisted_1 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", {
class: "clear"
}, null, -1);
-const AddReportvue_type_template_id_711546b4_hoisted_2 = {
+const AddReportvue_type_template_id_67aaa7f8_hoisted_2 = {
key: 0
};
-const AddReportvue_type_template_id_711546b4_hoisted_3 = ["innerHTML"];
-const AddReportvue_type_template_id_711546b4_hoisted_4 = {
+const AddReportvue_type_template_id_67aaa7f8_hoisted_3 = ["innerHTML"];
+const AddReportvue_type_template_id_67aaa7f8_hoisted_4 = {
id: "emailScheduleInlineHelp",
class: "inline-help-node"
};
-const AddReportvue_type_template_id_711546b4_hoisted_5 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
-const AddReportvue_type_template_id_711546b4_hoisted_6 = {
+const AddReportvue_type_template_id_67aaa7f8_hoisted_5 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
+const AddReportvue_type_template_id_67aaa7f8_hoisted_6 = {
id: "emailReportPeriodInlineHelp",
class: "inline-help-node"
};
-const AddReportvue_type_template_id_711546b4_hoisted_7 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
-const AddReportvue_type_template_id_711546b4_hoisted_8 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
+const AddReportvue_type_template_id_67aaa7f8_hoisted_7 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
+const AddReportvue_type_template_id_67aaa7f8_hoisted_8 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
const _hoisted_9 = {
key: 0,
id: "reportHourHelpText",
@@ -423,7 +423,7 @@ const _hoisted_29 = {
};
const _hoisted_30 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1);
const _hoisted_31 = ["innerHTML"];
-function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $setup, $data, $options) {
+function AddReportvue_type_template_id_67aaa7f8_render(_ctx, _cache, $props, $setup, $data, $options) {
const _component_Field = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("Field");
const _component_SelectedReportsList = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("SelectedReportsList");
const _component_SaveButton = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("SaveButton");
@@ -433,7 +433,7 @@ function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $se
class: "entityAddContainer",
"content-title": _ctx.contentTitle
}, {
- default: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(() => [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("p", null, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_CreateTooltip')), 1), AddReportvue_type_template_id_711546b4_hoisted_1, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])((Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("form", {
+ default: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(() => [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("p", null, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_CreateTooltip')), 1), AddReportvue_type_template_id_67aaa7f8_hoisted_1, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])((Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("form", {
id: "addEditReport",
onSubmit: _cache[13] || (_cache[13] = $event => _ctx.$emit('submit'))
}, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, {
@@ -452,7 +452,7 @@ function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $se
value: $event
})),
"inline-help": _ctx.translate('ScheduledReports_DescriptionOnFirstPageScheduledReport')
- }, null, 8, ["title", "model-value", "inline-help"])]), _ctx.segmentEditorActivated ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", AddReportvue_type_template_id_711546b4_hoisted_2, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, {
+ }, null, 8, ["title", "model-value", "inline-help"])]), _ctx.segmentEditorActivated ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", AddReportvue_type_template_id_67aaa7f8_hoisted_2, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, {
uicontrol: "select",
name: "report_segment",
title: _ctx.translate('SegmentEditor_ChooseASegment'),
@@ -468,7 +468,7 @@ function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $se
id: "reportSegmentInlineHelp",
class: "inline-help-node",
innerHTML: _ctx.$sanitize(_ctx.reportSegmentInlineHelp)
- }, null, 8, AddReportvue_type_template_id_711546b4_hoisted_3)) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true)]),
+ }, null, 8, AddReportvue_type_template_id_67aaa7f8_hoisted_3)) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true)]),
_: 1
}, 8, ["title", "model-value", "options"])])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, {
uicontrol: "select",
@@ -487,7 +487,7 @@ function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $se
title: _ctx.translate('ScheduledReports_ReportSchedule'),
options: _ctx.periods
}, {
- "inline-help": Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(() => [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", AddReportvue_type_template_id_711546b4_hoisted_4, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_WeeklyScheduleHelp')) + " ", 1), AddReportvue_type_template_id_711546b4_hoisted_5, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_MonthlyScheduleHelp')), 1)])]),
+ "inline-help": Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(() => [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", AddReportvue_type_template_id_67aaa7f8_hoisted_4, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_WeeklyScheduleHelp')) + " ", 1), AddReportvue_type_template_id_67aaa7f8_hoisted_5, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_MonthlyScheduleHelp')), 1)])]),
_: 1
}, 8, ["model-value", "title", "options"])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, {
uicontrol: "select",
@@ -500,7 +500,7 @@ function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $se
options: _ctx.paramPeriods,
title: _ctx.translate('ScheduledReports_ReportPeriod')
}, {
- "inline-help": Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(() => [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", AddReportvue_type_template_id_711546b4_hoisted_6, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_ScheduleReportPeriodHelp')) + " ", 1), AddReportvue_type_template_id_711546b4_hoisted_7, AddReportvue_type_template_id_711546b4_hoisted_8, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_ScheduleReportPeriodHelp2')), 1)])]),
+ "inline-help": Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(() => [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", AddReportvue_type_template_id_67aaa7f8_hoisted_6, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_ScheduleReportPeriodHelp')) + " ", 1), AddReportvue_type_template_id_67aaa7f8_hoisted_7, AddReportvue_type_template_id_67aaa7f8_hoisted_8, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('ScheduledReports_ScheduleReportPeriodHelp2')), 1)])]),
_: 1
}, 8, ["model-value", "options", "title"])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, {
uicontrol: "select",
@@ -640,7 +640,7 @@ function AddReportvue_type_template_id_711546b4_render(_ctx, _cache, $props, $se
_: 3
}, 8, ["content-title"]);
}
-// CONCATENATED MODULE: ./plugins/ScheduledReports/vue/src/AddReport/AddReport.vue?vue&type=template&id=711546b4
+// CONCATENATED MODULE: ./plugins/ScheduledReports/vue/src/AddReport/AddReport.vue?vue&type=template&id=67aaa7f8
// CONCATENATED MODULE: ./plugins/ScheduledReports/vue/src/utilities.ts
/*!
@@ -1035,7 +1035,9 @@ SelectedReportsListvue_type_script_lang_ts.render = SelectedReportsListvue_type_
return Object(external_CoreHome_["translate"])('ScheduledReports_EvolutionGraphsShowForEachInPeriod', '', '', this.frequencyPeriodSingle);
},
reportSegmentInlineHelp() {
- return Object(external_CoreHome_["translate"])('ScheduledReports_Segment_HelpScheduledReport', '', '', Object(external_CoreHome_["translate"])('SegmentEditor_DefaultAllVisits'), Object(external_CoreHome_["translate"])('SegmentEditor_AddNewSegment'));
+ const segmentManagementPageParams = ['module=CoreHome', 'action=index', 'category=General_Visitors', 'subcategory=CoreHome_Segments'].join('&');
+ const segmentManagementPageUrl = piwikHelper.getCurrentQueryStringWithParametersModified(segmentManagementPageParams);
+ return Object(external_CoreHome_["translate"])('ScheduledReports_HelpSegmentManagement', ``, '');
},
timezoneOffset() {
return external_CoreHome_["Matomo"].timezoneOffset;
@@ -1090,7 +1092,7 @@ SelectedReportsListvue_type_script_lang_ts.render = SelectedReportsListvue_type_
-AddReportvue_type_script_lang_ts.render = AddReportvue_type_template_id_711546b4_render
+AddReportvue_type_script_lang_ts.render = AddReportvue_type_template_id_67aaa7f8_render
/* harmony default export */ var AddReport = (AddReportvue_type_script_lang_ts);
// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--13-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--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/ScheduledReports/vue/src/ListReports/ListReports.vue?vue&type=template&id=0bb9d0fc
diff --git a/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.min.js b/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.min.js
index 889872a38b9..69c7699a1cc 100644
--- a/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.min.js
+++ b/plugins/ScheduledReports/vue/dist/ScheduledReports.umd.min.js
@@ -4,13 +4,13 @@
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- */const i={key:0};function a(e,t,r,o,n,a){const c=Object(l["resolveComponent"])("Field");return e.report?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",i,[Object(l["createElementVNode"])("div",null,[Object(l["withDirectives"])(Object(l["createVNode"])(c,{uicontrol:"checkbox",name:"report_email_me",introduction:e.translate("ScheduledReports_SendReportTo"),"model-value":e.report.emailMe,"onUpdate:modelValue":t[0]||(t[0]=t=>e.$emit("change","emailMe",t)),title:`${e.translate("ScheduledReports_SentToMe")} (${e.currentUserEmail})`},null,8,["introduction","model-value","title"]),[[l["vShow"],"email"===e.report.type]])]),Object(l["createElementVNode"])("div",null,[Object(l["withDirectives"])(Object(l["createVNode"])(c,{uicontrol:"textarea","var-type":"array","model-value":e.report.additionalEmails,"onUpdate:modelValue":t[1]||(t[1]=t=>e.$emit("change","additionalEmails",t)),title:e.translate("ScheduledReports_AlsoSendReportToTheseEmails")},null,8,["model-value","title"]),[[l["vShow"],"email"===e.report.type]])])])):Object(l["createCommentVNode"])("",!0)}var c=r("a5a2"),s=Object(l["defineComponent"])({props:{report:{type:Object,required:!0},reportType:{type:String,required:!0},defaultDisplayFormat:{type:Number,required:!0},defaultEmailMe:{type:Boolean,required:!0},defaultEvolutionGraph:{type:Boolean,required:!0},currentUserEmail:{type:String,required:!0}},emits:["change"],components:{Field:c["Field"]},setup(e){const{resetReportParametersFunctions:t,updateReportParametersFunctions:r,getReportParametersFunctions:o}=window;t[e.reportType]||(t[e.reportType]=t=>{t.displayFormat=e.defaultDisplayFormat,t.emailMe=e.defaultEmailMe,t.evolutionGraph=e.defaultEvolutionGraph,t.additionalEmails=[]}),r[e.reportType]||(r[e.reportType]=e=>{null!==e&&void 0!==e&&e.parameters&&["displayFormat","emailMe","evolutionGraph","additionalEmails"].forEach(t=>{t in e.parameters&&(e[t]=e.parameters[t])})}),o[e.reportType]||(o[e.reportType]=e=>({displayFormat:e.displayFormat,emailMe:e.emailMe,evolutionGraph:e.evolutionGraph,additionalEmails:e.additionalEmails||[],enforceOrder:!0}))}});s.render=a;var d=s;const p={class:"emailReports",ref:"root"},u={ref:"reportSentSuccess"},m={ref:"reportUpdatedSuccess"},b=Object(l["createElementVNode"])("div",{id:"ajaxError",style:{display:"none"}},null,-1),O={id:"ajaxLoadingDiv",style:{display:"none"}},h={class:"loadingPiwik"},y={class:"loadingSegment"},j=Object(l["createElementVNode"])("a",{id:"bottom"},null,-1);function g(e,t,r,o,n,i){const a=Object(l["resolveComponent"])("MatomoLoader"),c=Object(l["resolveComponent"])("ListReports"),s=Object(l["resolveComponent"])("AddReport");return Object(l["openBlock"])(),Object(l["createElementBlock"])("div",p,[Object(l["createElementVNode"])("div",u,null,512),Object(l["createElementVNode"])("div",m,null,512),Object(l["createElementVNode"])("div",null,[b,Object(l["createElementVNode"])("div",O,[Object(l["createElementVNode"])("div",h,[Object(l["createVNode"])(a),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("General_LoadingData")),1)]),Object(l["createElementVNode"])("div",y,Object(l["toDisplayString"])(e.translate("SegmentEditor_LoadingSegmentedDataMayTakeSomeTime")),1)]),Object(l["withDirectives"])(Object(l["createVNode"])(c,{"content-title":e.contentTitle,"user-login":e.userLogin,"login-module":e.loginModule,reports:e.reports,"site-name":e.decodedSiteName,"segment-editor-activated":e.segmentEditorActivated,"saved-segments-by-id":e.savedSegmentsById,periods:e.periods,"report-types":e.reportTypes,"download-output-type":e.downloadOutputType,language:e.language,"report-formats-by-report-type":e.reportFormatsByReportType,"sending-reports":e.sendingReports,onCreate:t[0]||(t[0]=t=>e.createReport()),onEdit:t[1]||(t[1]=t=>e.editReport(t)),onDelete:t[2]||(t[2]=t=>e.deleteReport(t)),onSendnow:t[3]||(t[3]=t=>e.sendReportNow(t))},null,8,["content-title","user-login","login-module","reports","site-name","segment-editor-activated","saved-segments-by-id","periods","report-types","download-output-type","language","report-formats-by-report-type","sending-reports"]),[[l["vShow"],e.showReportsList]]),e.showReportForm?(Object(l["openBlock"])(),Object(l["createBlock"])(s,{key:0,report:e.report,periods:e.periods,"param-periods":e.paramPeriods,"report-type-options":e.reportTypeOptions,"report-formats-by-report-type-options":e.reportFormatsByReportTypeOptions,"display-formats":e.displayFormats,"reports-by-category-by-report-type":e.reportsByCategoryByReportType,"allow-multiple-reports-by-report-type":e.allowMultipleReportsByReportType,"count-websites":e.countWebsites,"site-name":e.decodedSiteName,"selected-reports":e.selectedReports,"selected-reports-order":e.selectedReportsOrder,"report-types":e.reportTypes,"segment-editor-activated":e.segmentEditorActivated,"saved-segments-by-id":e.savedSegmentsById,onToggleSelectedReport:t[4]||(t[4]=t=>e.toggleSelectedReport(t.reportType,t.uniqueId)),onReorderSelectedReports:t[5]||(t[5]=t=>e.onReorderSelectedReports(t.reportType,t.order)),onChange:t[6]||(t[6]=t=>e.onChangeProperty(t.prop,t.value)),onSubmit:t[7]||(t[7]=t=>e.submitReport())},{"report-parameters":Object(l["withCtx"])(()=>[Object(l["renderSlot"])(e.$slots,"report-parameters")]),_:3},8,["report","periods","param-periods","report-type-options","report-formats-by-report-type-options","display-formats","reports-by-category-by-report-type","allow-multiple-reports-by-report-type","count-websites","site-name","selected-reports","selected-reports-order","report-types","segment-editor-activated","saved-segments-by-id"])):Object(l["createCommentVNode"])("",!0),j])],512)}var v=r("19dc");const R=Object(l["createElementVNode"])("div",{class:"clear"},null,-1),f={key:0},S=["innerHTML"],E={id:"emailScheduleInlineHelp",class:"inline-help-node"},N=Object(l["createElementVNode"])("br",null,null,-1),k={id:"emailReportPeriodInlineHelp",class:"inline-help-node"},V=Object(l["createElementVNode"])("br",null,null,-1),B=Object(l["createElementVNode"])("br",null,null,-1),w={key:0,id:"reportHourHelpText",class:"inline-help-node"},T=["textContent"],_={id:"deliveryMediumnInlineHelp",class:"inline-help-node"},C=["innerHTML"],P={ref:"reportParameters"},F={class:"report_evolution_graph"},D={class:"row evolution-graph-period"},M={class:"col s12"},q={for:"report_evolution_period_for_each"},x=["checked"],L=["innerHTML"],I={class:"col s12"},H={for:"report_evolution_period_for_prev"},A=["checked"],U=["value"],G={class:"row"},z={class:"col s12"},W={class:"reportCategory"},Z={class:"listReports"},K=["name","type","id","checked","onChange"],X={key:0,class:"entityInlineHelp"},J=Object(l["createElementVNode"])("br",null,null,-1),Q=["innerHTML"];function Y(e,t,r,o,n,i){const a=Object(l["resolveComponent"])("Field"),c=Object(l["resolveComponent"])("SelectedReportsList"),s=Object(l["resolveComponent"])("SaveButton"),d=Object(l["resolveComponent"])("ContentBlock"),p=Object(l["resolveDirective"])("form");return Object(l["openBlock"])(),Object(l["createBlock"])(d,{class:"entityAddContainer","content-title":e.contentTitle},{default:Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("p",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_CreateTooltip")),1),R,Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createElementBlock"])("form",{id:"addEditReport",onSubmit:t[13]||(t[13]=t=>e.$emit("submit"))},[Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"text",name:"website",title:e.translate("General_Website"),disabled:!0,"model-value":e.siteName},null,8,["title","model-value"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"textarea",name:"report_description",title:e.translate("General_Description"),"model-value":e.report.description,"onUpdate:modelValue":t[0]||(t[0]=t=>e.$emit("change",{prop:"description",value:t})),"inline-help":e.translate("ScheduledReports_DescriptionOnFirstPageScheduledReport")},null,8,["title","model-value","inline-help"])]),e.segmentEditorActivated?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",f,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_segment",title:e.translate("SegmentEditor_ChooseASegment"),"model-value":e.report.idsegment,"onUpdate:modelValue":t[1]||(t[1]=t=>e.$emit("change",{prop:"idsegment",value:t})),options:e.savedSegmentsById},{"inline-help":Object(l["withCtx"])(()=>[e.segmentEditorActivated?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{key:0,id:"reportSegmentInlineHelp",class:"inline-help-node",innerHTML:e.$sanitize(e.reportSegmentInlineHelp)},null,8,S)):Object(l["createCommentVNode"])("",!0)]),_:1},8,["title","model-value","options"])])):Object(l["createCommentVNode"])("",!0),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_schedule","model-value":e.report.period,"onUpdate:modelValue":t[2]||(t[2]=t=>{e.$emit("change",{prop:"period",value:t}),e.$emit("change",{prop:"periodParam",value:"never"===e.report.period?null:e.report.period})}),title:e.translate("ScheduledReports_ReportSchedule"),options:e.periods},{"inline-help":Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("div",E,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e.translate("ScheduledReports_WeeklyScheduleHelp"))+" ",1),N,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_MonthlyScheduleHelp")),1)])]),_:1},8,["model-value","title","options"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_period","model-value":e.report.periodParam,"onUpdate:modelValue":t[3]||(t[3]=t=>e.$emit("change",{prop:"periodParam",value:t})),options:e.paramPeriods,title:e.translate("ScheduledReports_ReportPeriod")},{"inline-help":Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("div",k,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e.translate("ScheduledReports_ScheduleReportPeriodHelp"))+" ",1),V,B,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_ScheduleReportPeriodHelp2")),1)])]),_:1},8,["model-value","options","title"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_hour","model-value":e.report.hour,"onUpdate:modelValue":t[4]||(t[4]=t=>e.$emit("change",{prop:"hour",value:t})),title:e.translate("ScheduledReports_ReportHour","X"),options:e.reportHours},{"inline-help":Object(l["withCtx"])(()=>[0!==e.timezoneOffset&&"0"!==e.timezoneOffset?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",w,[Object(l["createElementVNode"])("span",{textContent:Object(l["toDisplayString"])(e.reportHourUtc)},null,8,T)])):Object(l["createCommentVNode"])("",!0)]),_:1},8,["model-value","title","options"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_type",disabled:1===e.reportTypes.length,"model-value":e.report.type,"onUpdate:modelValue":t[5]||(t[5]=t=>e.$emit("change",{prop:"type",value:t})),title:e.translate("ScheduledReports_ReportType"),options:e.reportTypeOptions},{"inline-help":Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("div",_,[Object(l["createElementVNode"])("span",{innerHTML:e.$sanitize(e.getDeliveryMediumInlineTooltip)},null,8,C)])]),_:1},8,["disabled","model-value","title","options"])]),Object(l["createElementVNode"])("div",P,[Object(l["renderSlot"])(e.$slots,"report-parameters")],512),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.reportFormatsByReportTypeOptions,(t,r)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{key:r},[Object(l["withDirectives"])(Object(l["createVNode"])(a,{uicontrol:"select",name:"report_format",title:e.translate("ScheduledReports_ReportFormat"),class:Object(l["normalizeClass"])(r),"model-value":e.report["format"+r],"onUpdate:modelValue":t=>e.$emit("change",{prop:"format"+r,value:t}),options:t},null,8,["title","class","model-value","onUpdate:modelValue","options"]),[[l["vShow"],e.report.type===r]])]))),128)),Object(l["withDirectives"])(Object(l["createElementVNode"])("div",null,[Object(l["createElementVNode"])("div",{class:Object(l["normalizeClass"])(e.report.type)},[Object(l["createVNode"])(a,{uicontrol:"select",name:"display_format","model-value":e.report.displayFormat,"onUpdate:modelValue":t[6]||(t[6]=t=>e.$emit("change",{prop:"displayFormat",value:t})),options:e.displayFormats,introduction:e.translate("ScheduledReports_AggregateReportsFormat")},null,8,["model-value","options","introduction"])],2),Object(l["createElementVNode"])("div",F,[Object(l["withDirectives"])(Object(l["createVNode"])(a,{uicontrol:"checkbox",name:"report_evolution_graph",title:e.translate("ScheduledReports_EvolutionGraph",5),"model-value":e.report.evolutionGraph,"onUpdate:modelValue":t[7]||(t[7]=t=>e.$emit("change",{prop:"evolutionGraph",value:t}))},null,8,["title","model-value"]),[[l["vShow"],-1!==[2,"2",3,"3"].indexOf(e.report.displayFormat)]])]),Object(l["withDirectives"])(Object(l["createElementVNode"])("div",D,[Object(l["createElementVNode"])("div",M,[Object(l["createElementVNode"])("label",q,[Object(l["createElementVNode"])("input",{id:"report_evolution_period_for_each",name:"report_evolution_period_for",type:"radio",value:"each",checked:"each"===e.report.evolutionPeriodFor,onChange:t[8]||(t[8]=t=>e.$emit("change",{prop:"evolutionPeriodFor",value:t.target.value}))},null,40,x),Object(l["createElementVNode"])("span",{innerHTML:e.$sanitize(e.evolutionGraphsShowForEachInPeriod)},null,8,L)])]),Object(l["createElementVNode"])("div",I,[Object(l["createElementVNode"])("label",H,[Object(l["createElementVNode"])("input",{id:"report_evolution_period_for_prev",name:"report_evolution_period_for",type:"radio",value:"prev",checked:"prev"===e.report.evolutionPeriodFor,onChange:t[9]||(t[9]=t=>e.$emit("change",{prop:"evolutionPeriodFor",value:t.target.value}))},null,40,A),Object(l["createElementVNode"])("span",null,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e.translate("ScheduledReports_EvolutionGraphsShowForPreviousN",e.frequencyPeriodPlural))+": ",1),Object(l["createElementVNode"])("input",{type:"number",name:"report_evolution_period_n",value:e.report.evolutionPeriodN,onKeydown:t[10]||(t[10]=t=>e.onEvolutionPeriodN(t)),onChange:t[11]||(t[11]=t=>e.onEvolutionPeriodN(t))},null,40,U)])])])],512),[[l["vShow"],-1!==[1,"1",2,"2",3,"3"].indexOf(e.report.displayFormat)]])],512),[[l["vShow"],"pdf"===e.report["format"+e.report.type]||"html"===e.report["format"+e.report.type]]]),Object(l["createElementVNode"])("div",G,[Object(l["createElementVNode"])("h3",z,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportsIncluded")),1)]),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.reportsByCategoryByReportTypeInColumns,(t,r)=>Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{name:"reportsList",class:Object(l["normalizeClass"])("row "+r),key:r},[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t,(t,o)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{class:"col s12 m6",key:o},[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t,(t,o)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{key:o},[Object(l["createElementVNode"])("h3",W,Object(l["toDisplayString"])(o),1),Object(l["createElementVNode"])("ul",Z,[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t,t=>{var o;return Object(l["openBlock"])(),Object(l["createElementBlock"])("li",{key:t.uniqueId},[Object(l["createElementVNode"])("label",null,[Object(l["createElementVNode"])("input",{name:r+"Reports",type:e.allowMultipleReportsByReportType[r]?"checkbox":"radio",id:`${r}${t.uniqueId}`,checked:null===(o=e.selectedReports[r])||void 0===o?void 0:o[t.uniqueId],onChange:o=>e.$emit("toggleSelectedReport",{reportType:r,uniqueId:t.uniqueId})},null,40,K),Object(l["createElementVNode"])("span",null,Object(l["toDisplayString"])(e.decode(t.name)),1),"MultiSites_getAll"===t.uniqueId?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",X,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportIncludeNWebsites",e.countWebsites)),1)):Object(l["createCommentVNode"])("",!0)])])}),128))]),J]))),128))]))),128))],2)),[[l["vShow"],e.report.type===r]])),128)),Object(l["createVNode"])(c,{reports:e.selectedReportsForCurrentType,enabled:e.allowMultipleReportsByReportType[e.report.type],onReorder:e.onSelectedReportsReorder},null,8,["reports","enabled","onReorder"]),Object(l["createVNode"])(s,{value:e.saveButtonTitle,onConfirm:t[12]||(t[12]=t=>e.$emit("submit"))},null,8,["value"]),Object(l["createElementVNode"])("div",{class:"entityCancel",innerHTML:e.$sanitize(e.entityCancelText)},null,8,Q)],32)),[[p]])]),_:3},8,["content-title"])}
+ */const i={key:0};function a(e,t,r,o,n,a){const c=Object(l["resolveComponent"])("Field");return e.report?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",i,[Object(l["createElementVNode"])("div",null,[Object(l["withDirectives"])(Object(l["createVNode"])(c,{uicontrol:"checkbox",name:"report_email_me",introduction:e.translate("ScheduledReports_SendReportTo"),"model-value":e.report.emailMe,"onUpdate:modelValue":t[0]||(t[0]=t=>e.$emit("change","emailMe",t)),title:`${e.translate("ScheduledReports_SentToMe")} (${e.currentUserEmail})`},null,8,["introduction","model-value","title"]),[[l["vShow"],"email"===e.report.type]])]),Object(l["createElementVNode"])("div",null,[Object(l["withDirectives"])(Object(l["createVNode"])(c,{uicontrol:"textarea","var-type":"array","model-value":e.report.additionalEmails,"onUpdate:modelValue":t[1]||(t[1]=t=>e.$emit("change","additionalEmails",t)),title:e.translate("ScheduledReports_AlsoSendReportToTheseEmails")},null,8,["model-value","title"]),[[l["vShow"],"email"===e.report.type]])])])):Object(l["createCommentVNode"])("",!0)}var c=r("a5a2"),s=Object(l["defineComponent"])({props:{report:{type:Object,required:!0},reportType:{type:String,required:!0},defaultDisplayFormat:{type:Number,required:!0},defaultEmailMe:{type:Boolean,required:!0},defaultEvolutionGraph:{type:Boolean,required:!0},currentUserEmail:{type:String,required:!0}},emits:["change"],components:{Field:c["Field"]},setup(e){const{resetReportParametersFunctions:t,updateReportParametersFunctions:r,getReportParametersFunctions:o}=window;t[e.reportType]||(t[e.reportType]=t=>{t.displayFormat=e.defaultDisplayFormat,t.emailMe=e.defaultEmailMe,t.evolutionGraph=e.defaultEvolutionGraph,t.additionalEmails=[]}),r[e.reportType]||(r[e.reportType]=e=>{null!==e&&void 0!==e&&e.parameters&&["displayFormat","emailMe","evolutionGraph","additionalEmails"].forEach(t=>{t in e.parameters&&(e[t]=e.parameters[t])})}),o[e.reportType]||(o[e.reportType]=e=>({displayFormat:e.displayFormat,emailMe:e.emailMe,evolutionGraph:e.evolutionGraph,additionalEmails:e.additionalEmails||[],enforceOrder:!0}))}});s.render=a;var d=s;const p={class:"emailReports",ref:"root"},u={ref:"reportSentSuccess"},m={ref:"reportUpdatedSuccess"},b=Object(l["createElementVNode"])("div",{id:"ajaxError",style:{display:"none"}},null,-1),O={id:"ajaxLoadingDiv",style:{display:"none"}},h={class:"loadingPiwik"},y={class:"loadingSegment"},j=Object(l["createElementVNode"])("a",{id:"bottom"},null,-1);function g(e,t,r,o,n,i){const a=Object(l["resolveComponent"])("MatomoLoader"),c=Object(l["resolveComponent"])("ListReports"),s=Object(l["resolveComponent"])("AddReport");return Object(l["openBlock"])(),Object(l["createElementBlock"])("div",p,[Object(l["createElementVNode"])("div",u,null,512),Object(l["createElementVNode"])("div",m,null,512),Object(l["createElementVNode"])("div",null,[b,Object(l["createElementVNode"])("div",O,[Object(l["createElementVNode"])("div",h,[Object(l["createVNode"])(a),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("General_LoadingData")),1)]),Object(l["createElementVNode"])("div",y,Object(l["toDisplayString"])(e.translate("SegmentEditor_LoadingSegmentedDataMayTakeSomeTime")),1)]),Object(l["withDirectives"])(Object(l["createVNode"])(c,{"content-title":e.contentTitle,"user-login":e.userLogin,"login-module":e.loginModule,reports:e.reports,"site-name":e.decodedSiteName,"segment-editor-activated":e.segmentEditorActivated,"saved-segments-by-id":e.savedSegmentsById,periods:e.periods,"report-types":e.reportTypes,"download-output-type":e.downloadOutputType,language:e.language,"report-formats-by-report-type":e.reportFormatsByReportType,"sending-reports":e.sendingReports,onCreate:t[0]||(t[0]=t=>e.createReport()),onEdit:t[1]||(t[1]=t=>e.editReport(t)),onDelete:t[2]||(t[2]=t=>e.deleteReport(t)),onSendnow:t[3]||(t[3]=t=>e.sendReportNow(t))},null,8,["content-title","user-login","login-module","reports","site-name","segment-editor-activated","saved-segments-by-id","periods","report-types","download-output-type","language","report-formats-by-report-type","sending-reports"]),[[l["vShow"],e.showReportsList]]),e.showReportForm?(Object(l["openBlock"])(),Object(l["createBlock"])(s,{key:0,report:e.report,periods:e.periods,"param-periods":e.paramPeriods,"report-type-options":e.reportTypeOptions,"report-formats-by-report-type-options":e.reportFormatsByReportTypeOptions,"display-formats":e.displayFormats,"reports-by-category-by-report-type":e.reportsByCategoryByReportType,"allow-multiple-reports-by-report-type":e.allowMultipleReportsByReportType,"count-websites":e.countWebsites,"site-name":e.decodedSiteName,"selected-reports":e.selectedReports,"selected-reports-order":e.selectedReportsOrder,"report-types":e.reportTypes,"segment-editor-activated":e.segmentEditorActivated,"saved-segments-by-id":e.savedSegmentsById,onToggleSelectedReport:t[4]||(t[4]=t=>e.toggleSelectedReport(t.reportType,t.uniqueId)),onReorderSelectedReports:t[5]||(t[5]=t=>e.onReorderSelectedReports(t.reportType,t.order)),onChange:t[6]||(t[6]=t=>e.onChangeProperty(t.prop,t.value)),onSubmit:t[7]||(t[7]=t=>e.submitReport())},{"report-parameters":Object(l["withCtx"])(()=>[Object(l["renderSlot"])(e.$slots,"report-parameters")]),_:3},8,["report","periods","param-periods","report-type-options","report-formats-by-report-type-options","display-formats","reports-by-category-by-report-type","allow-multiple-reports-by-report-type","count-websites","site-name","selected-reports","selected-reports-order","report-types","segment-editor-activated","saved-segments-by-id"])):Object(l["createCommentVNode"])("",!0),j])],512)}var v=r("19dc");const R=Object(l["createElementVNode"])("div",{class:"clear"},null,-1),f={key:0},S=["innerHTML"],E={id:"emailScheduleInlineHelp",class:"inline-help-node"},N=Object(l["createElementVNode"])("br",null,null,-1),k={id:"emailReportPeriodInlineHelp",class:"inline-help-node"},V=Object(l["createElementVNode"])("br",null,null,-1),B=Object(l["createElementVNode"])("br",null,null,-1),w={key:0,id:"reportHourHelpText",class:"inline-help-node"},T=["textContent"],_={id:"deliveryMediumnInlineHelp",class:"inline-help-node"},C=["innerHTML"],P={ref:"reportParameters"},F={class:"report_evolution_graph"},D={class:"row evolution-graph-period"},M={class:"col s12"},q={for:"report_evolution_period_for_each"},x=["checked"],L=["innerHTML"],I={class:"col s12"},H={for:"report_evolution_period_for_prev"},A=["checked"],U=["value"],G={class:"row"},z={class:"col s12"},W={class:"reportCategory"},Z={class:"listReports"},K=["name","type","id","checked","onChange"],Q={key:0,class:"entityInlineHelp"},X=Object(l["createElementVNode"])("br",null,null,-1),J=["innerHTML"];function Y(e,t,r,o,n,i){const a=Object(l["resolveComponent"])("Field"),c=Object(l["resolveComponent"])("SelectedReportsList"),s=Object(l["resolveComponent"])("SaveButton"),d=Object(l["resolveComponent"])("ContentBlock"),p=Object(l["resolveDirective"])("form");return Object(l["openBlock"])(),Object(l["createBlock"])(d,{class:"entityAddContainer","content-title":e.contentTitle},{default:Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("p",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_CreateTooltip")),1),R,Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createElementBlock"])("form",{id:"addEditReport",onSubmit:t[13]||(t[13]=t=>e.$emit("submit"))},[Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"text",name:"website",title:e.translate("General_Website"),disabled:!0,"model-value":e.siteName},null,8,["title","model-value"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"textarea",name:"report_description",title:e.translate("General_Description"),"model-value":e.report.description,"onUpdate:modelValue":t[0]||(t[0]=t=>e.$emit("change",{prop:"description",value:t})),"inline-help":e.translate("ScheduledReports_DescriptionOnFirstPageScheduledReport")},null,8,["title","model-value","inline-help"])]),e.segmentEditorActivated?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",f,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_segment",title:e.translate("SegmentEditor_ChooseASegment"),"model-value":e.report.idsegment,"onUpdate:modelValue":t[1]||(t[1]=t=>e.$emit("change",{prop:"idsegment",value:t})),options:e.savedSegmentsById},{"inline-help":Object(l["withCtx"])(()=>[e.segmentEditorActivated?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{key:0,id:"reportSegmentInlineHelp",class:"inline-help-node",innerHTML:e.$sanitize(e.reportSegmentInlineHelp)},null,8,S)):Object(l["createCommentVNode"])("",!0)]),_:1},8,["title","model-value","options"])])):Object(l["createCommentVNode"])("",!0),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_schedule","model-value":e.report.period,"onUpdate:modelValue":t[2]||(t[2]=t=>{e.$emit("change",{prop:"period",value:t}),e.$emit("change",{prop:"periodParam",value:"never"===e.report.period?null:e.report.period})}),title:e.translate("ScheduledReports_ReportSchedule"),options:e.periods},{"inline-help":Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("div",E,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e.translate("ScheduledReports_WeeklyScheduleHelp"))+" ",1),N,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_MonthlyScheduleHelp")),1)])]),_:1},8,["model-value","title","options"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_period","model-value":e.report.periodParam,"onUpdate:modelValue":t[3]||(t[3]=t=>e.$emit("change",{prop:"periodParam",value:t})),options:e.paramPeriods,title:e.translate("ScheduledReports_ReportPeriod")},{"inline-help":Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("div",k,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e.translate("ScheduledReports_ScheduleReportPeriodHelp"))+" ",1),V,B,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_ScheduleReportPeriodHelp2")),1)])]),_:1},8,["model-value","options","title"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_hour","model-value":e.report.hour,"onUpdate:modelValue":t[4]||(t[4]=t=>e.$emit("change",{prop:"hour",value:t})),title:e.translate("ScheduledReports_ReportHour","X"),options:e.reportHours},{"inline-help":Object(l["withCtx"])(()=>[0!==e.timezoneOffset&&"0"!==e.timezoneOffset?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",w,[Object(l["createElementVNode"])("span",{textContent:Object(l["toDisplayString"])(e.reportHourUtc)},null,8,T)])):Object(l["createCommentVNode"])("",!0)]),_:1},8,["model-value","title","options"])]),Object(l["createElementVNode"])("div",null,[Object(l["createVNode"])(a,{uicontrol:"select",name:"report_type",disabled:1===e.reportTypes.length,"model-value":e.report.type,"onUpdate:modelValue":t[5]||(t[5]=t=>e.$emit("change",{prop:"type",value:t})),title:e.translate("ScheduledReports_ReportType"),options:e.reportTypeOptions},{"inline-help":Object(l["withCtx"])(()=>[Object(l["createElementVNode"])("div",_,[Object(l["createElementVNode"])("span",{innerHTML:e.$sanitize(e.getDeliveryMediumInlineTooltip)},null,8,C)])]),_:1},8,["disabled","model-value","title","options"])]),Object(l["createElementVNode"])("div",P,[Object(l["renderSlot"])(e.$slots,"report-parameters")],512),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.reportFormatsByReportTypeOptions,(t,r)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{key:r},[Object(l["withDirectives"])(Object(l["createVNode"])(a,{uicontrol:"select",name:"report_format",title:e.translate("ScheduledReports_ReportFormat"),class:Object(l["normalizeClass"])(r),"model-value":e.report["format"+r],"onUpdate:modelValue":t=>e.$emit("change",{prop:"format"+r,value:t}),options:t},null,8,["title","class","model-value","onUpdate:modelValue","options"]),[[l["vShow"],e.report.type===r]])]))),128)),Object(l["withDirectives"])(Object(l["createElementVNode"])("div",null,[Object(l["createElementVNode"])("div",{class:Object(l["normalizeClass"])(e.report.type)},[Object(l["createVNode"])(a,{uicontrol:"select",name:"display_format","model-value":e.report.displayFormat,"onUpdate:modelValue":t[6]||(t[6]=t=>e.$emit("change",{prop:"displayFormat",value:t})),options:e.displayFormats,introduction:e.translate("ScheduledReports_AggregateReportsFormat")},null,8,["model-value","options","introduction"])],2),Object(l["createElementVNode"])("div",F,[Object(l["withDirectives"])(Object(l["createVNode"])(a,{uicontrol:"checkbox",name:"report_evolution_graph",title:e.translate("ScheduledReports_EvolutionGraph",5),"model-value":e.report.evolutionGraph,"onUpdate:modelValue":t[7]||(t[7]=t=>e.$emit("change",{prop:"evolutionGraph",value:t}))},null,8,["title","model-value"]),[[l["vShow"],-1!==[2,"2",3,"3"].indexOf(e.report.displayFormat)]])]),Object(l["withDirectives"])(Object(l["createElementVNode"])("div",D,[Object(l["createElementVNode"])("div",M,[Object(l["createElementVNode"])("label",q,[Object(l["createElementVNode"])("input",{id:"report_evolution_period_for_each",name:"report_evolution_period_for",type:"radio",value:"each",checked:"each"===e.report.evolutionPeriodFor,onChange:t[8]||(t[8]=t=>e.$emit("change",{prop:"evolutionPeriodFor",value:t.target.value}))},null,40,x),Object(l["createElementVNode"])("span",{innerHTML:e.$sanitize(e.evolutionGraphsShowForEachInPeriod)},null,8,L)])]),Object(l["createElementVNode"])("div",I,[Object(l["createElementVNode"])("label",H,[Object(l["createElementVNode"])("input",{id:"report_evolution_period_for_prev",name:"report_evolution_period_for",type:"radio",value:"prev",checked:"prev"===e.report.evolutionPeriodFor,onChange:t[9]||(t[9]=t=>e.$emit("change",{prop:"evolutionPeriodFor",value:t.target.value}))},null,40,A),Object(l["createElementVNode"])("span",null,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e.translate("ScheduledReports_EvolutionGraphsShowForPreviousN",e.frequencyPeriodPlural))+": ",1),Object(l["createElementVNode"])("input",{type:"number",name:"report_evolution_period_n",value:e.report.evolutionPeriodN,onKeydown:t[10]||(t[10]=t=>e.onEvolutionPeriodN(t)),onChange:t[11]||(t[11]=t=>e.onEvolutionPeriodN(t))},null,40,U)])])])],512),[[l["vShow"],-1!==[1,"1",2,"2",3,"3"].indexOf(e.report.displayFormat)]])],512),[[l["vShow"],"pdf"===e.report["format"+e.report.type]||"html"===e.report["format"+e.report.type]]]),Object(l["createElementVNode"])("div",G,[Object(l["createElementVNode"])("h3",z,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportsIncluded")),1)]),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.reportsByCategoryByReportTypeInColumns,(t,r)=>Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{name:"reportsList",class:Object(l["normalizeClass"])("row "+r),key:r},[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t,(t,o)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{class:"col s12 m6",key:o},[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t,(t,o)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",{key:o},[Object(l["createElementVNode"])("h3",W,Object(l["toDisplayString"])(o),1),Object(l["createElementVNode"])("ul",Z,[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t,t=>{var o;return Object(l["openBlock"])(),Object(l["createElementBlock"])("li",{key:t.uniqueId},[Object(l["createElementVNode"])("label",null,[Object(l["createElementVNode"])("input",{name:r+"Reports",type:e.allowMultipleReportsByReportType[r]?"checkbox":"radio",id:`${r}${t.uniqueId}`,checked:null===(o=e.selectedReports[r])||void 0===o?void 0:o[t.uniqueId],onChange:o=>e.$emit("toggleSelectedReport",{reportType:r,uniqueId:t.uniqueId})},null,40,K),Object(l["createElementVNode"])("span",null,Object(l["toDisplayString"])(e.decode(t.name)),1),"MultiSites_getAll"===t.uniqueId?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",Q,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportIncludeNWebsites",e.countWebsites)),1)):Object(l["createCommentVNode"])("",!0)])])}),128))]),X]))),128))]))),128))],2)),[[l["vShow"],e.report.type===r]])),128)),Object(l["createVNode"])(c,{reports:e.selectedReportsForCurrentType,enabled:e.allowMultipleReportsByReportType[e.report.type],onReorder:e.onSelectedReportsReorder},null,8,["reports","enabled","onReorder"]),Object(l["createVNode"])(s,{value:e.saveButtonTitle,onConfirm:t[12]||(t[12]=t=>e.$emit("submit"))},null,8,["value"]),Object(l["createElementVNode"])("div",{class:"entityCancel",innerHTML:e.$sanitize(e.entityCancelText)},null,8,J)],32)),[[p]])]),_:3},8,["content-title"])}
/*!
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- */function ee(e,t){return""+(24+parseFloat(e)+t)%24}const te={key:0,class:"selectedReportsWrapper"},re={class:"selectedReportsHeading"},oe={class:"selectedReportsHelp"},ne={class:"selectedReportsList",ref:"list"},le=["data-unique-id"],ie=Object(l["createElementVNode"])("span",{class:"icon-menu-hamburger drag-icon"},null,-1),ae={class:"selectedReportName"};function ce(e,t,r,o,n,i){return e.shouldDisplay?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",te,[Object(l["createElementVNode"])("div",re,[Object(l["createElementVNode"])("h3",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_SelectedReports")),1)]),Object(l["createElementVNode"])("p",oe,Object(l["toDisplayString"])(e.translate("ScheduledReports_SelectedReportsHelp")),1),Object(l["createElementVNode"])("ul",ne,[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.reports,t=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("li",{key:t.uniqueId,"data-unique-id":t.uniqueId},[ie,Object(l["createElementVNode"])("span",ae,Object(l["toDisplayString"])(e.decode(t.name)),1)],8,le))),128))],512)])):Object(l["createCommentVNode"])("",!0)}const{$:se}=window;var de=Object(l["defineComponent"])({name:"SelectedReportsList",props:{reports:{type:Array,required:!0},enabled:{type:Boolean,default:!0}},emits:["reorder"],computed:{shouldDisplay(){return!!this.enabled&&this.reports.length>0}},watch:{reports(){this.scheduleRefresh()},enabled(){this.scheduleRefresh()}},mounted(){this.scheduleRefresh()},beforeUnmount(){this.destroySortable()},methods:{translate:v["translate"],decode(e){return v["Matomo"].helper.htmlDecode(e)},getListElement(){return this.$refs.list},scheduleRefresh(){Object(l["nextTick"])(()=>{this.refreshSortable()})},refreshSortable(){if(!this.shouldDisplay)return void this.destroySortable();const e=this.getListElement();if(!e)return;const t=se(e);t.data("ui-sortable")?t.sortable("refresh"):t.sortable({axis:"y",helper:"clone",placeholder:"selectedReportPlaceholder",stop:()=>{this.emitOrder()}})},destroySortable(){const e=this.getListElement();if(!e)return;const t=se(e);t.data("ui-sortable")&&t.sortable("destroy")},emitOrder(){const e=this.getListElement();if(!e)return;const t=se(e).find("li").map((function(){return String(se(this).data("uniqueId"))})).get();this.$emit("reorder",t)}}});de.render=ce;var pe=de,ue=Object(l["defineComponent"])({props:{report:{type:Object,required:!0},selectedReports:Object,selectedReportsOrder:{type:Object,default:()=>({})},paramPeriods:{type:Object,required:!0},reportTypeOptions:{type:Object,required:!0},reportFormatsByReportTypeOptions:{type:Object,required:!0},displayFormats:{type:Object,required:!0},reportsByCategoryByReportType:{type:Object,required:!0},allowMultipleReportsByReportType:{type:Object,required:!0},countWebsites:{type:Number,required:!0},siteName:{type:String,required:!0},reportTypes:{type:Object,required:!0},segmentEditorActivated:Boolean,savedSegmentsById:Object,periods:{type:Object,required:!0}},emits:["submit","change","toggleSelectedReport","reorderSelectedReports"],components:{ContentBlock:v["ContentBlock"],Field:c["Field"],SaveButton:c["SaveButton"],SelectedReportsList:pe},directives:{Form:c["Form"]},created(){this.onEvolutionPeriodN=Object(v["debounce"])(this.onEvolutionPeriodN,50)},methods:{onEvolutionPeriodN(e){this.$emit("change",{prop:"evolutionPeriodN",value:e.target.value})},decode(e){return v["Matomo"].helper.htmlDecode(e)},onSelectedReportsReorder(e){this.report&&this.report.type&&this.$emit("reorderSelectedReports",{reportType:this.report.type,order:e})}},setup(e,t){const r=Object(l["ref"])(null);return Object(l["watch"])(()=>e.report,e=>{const t=r.value;t.querySelectorAll("[vue-entry]").forEach(t=>{$(t).data("vueAppInstance").report_=e})}),Object(l["onMounted"])(()=>{const o=r.value;v["Matomo"].helper.compileVueEntryComponents(o,{report:e.report,onChange(e,r){t.emit("change",{prop:e,value:r})}})}),{reportParameters:r}},beforeUnmount(){const e=this.$refs.reportParameters;v["Matomo"].helper.destroyVueComponent(e)},computed:{enforceSelectedReportOrder(){var e;const t=(null===(e=this.report)||void 0===e?void 0:e.parameters)||{};return"undefined"!==typeof t.enforceOrder&&!!t.enforceOrder},selectedReportsOrderNormalized(){const e={},t=this.selectedReports||{};return Object.keys(t).forEach(r=>{const o=t[r]||{},n=((this.selectedReportsOrder||{})[r]||[]).filter(e=>o[e]),l=Object.keys(o).filter(e=>o[e]&&-1===n.indexOf(e));e[r]=n.concat(l)}),e},reportsLookup(){const e=this.reportsByCategoryByReportType,t={};return Object.entries(e).forEach(([e,r])=>{t[e]=t[e]||{},Object.values(r).forEach(r=>{r.forEach(r=>{t[e][r.uniqueId]=r})})}),t},selectedReportsForCurrentType(){var e;const t=null===(e=this.report)||void 0===e?void 0:e.type;if(!t)return[];const r=(this.selectedReports||{})[t]||{};let o=[];if(this.enforceSelectedReportOrder)o=this.selectedReportsOrderNormalized[t]||[];else{const e=this.reportsByCategoryByReportType[t]||{},n=[];Object.values(e).forEach(e=>{e.forEach(e=>{r[e.uniqueId]&&n.push(e.uniqueId)})}),o=n}if(o.length||(o=Object.keys(r).filter(e=>r[e])),!o.length)return[];const n=this.reportsLookup[t]||{};return o.map(e=>n[e]).filter(e=>!!e)},reportsByCategoryByReportTypeInColumns(){const e=this.reportsByCategoryByReportType,t=Object.entries(e).map(([e,t])=>{const r=Math.floor((Object.keys(t).length+1)/2),o={},n={};let l=o;return Object.entries(t).forEach(([e,t])=>{l[e]=t,Object.keys(l).length>=r&&(l=n)}),[e,[o,n]]});return Object.fromEntries(t)},entityCancelText(){return Object(v["translate"])("General_OrCancel",'',"")},frequencyPeriodSingle(){if(!this.report||!this.report.period)return"";const{ReportPlugin:e}=window;let t=e.periodTranslations[this.report.period];return t||(t=e.periodTranslations.day),t.single},frequencyPeriodPlural(){if(!this.report||!this.report.period)return"";const{ReportPlugin:e}=window;let t=e.periodTranslations[this.report.period];return t||(t=e.periodTranslations.day),t.plural},evolutionGraphsShowForEachInPeriod(){return Object(v["translate"])("ScheduledReports_EvolutionGraphsShowForEachInPeriod","","",this.frequencyPeriodSingle)},reportSegmentInlineHelp(){return Object(v["translate"])("ScheduledReports_Segment_HelpScheduledReport",'',"",Object(v["translate"])("SegmentEditor_DefaultAllVisits"),Object(v["translate"])("SegmentEditor_AddNewSegment"))},timezoneOffset(){return v["Matomo"].timezoneOffset},timeZoneDifferenceInHours(){return v["Matomo"].timezoneOffset/3600},reportHours(){const e=[];for(let t=0;t<24;t+=1)2*this.timeZoneDifferenceInHours%2!==0?e.push({key:t+".5",value:t+":30"}):e.push({key:""+t,value:""+t});return e},reportHourUtc(){const e=ee(this.report.hour,-this.timeZoneDifferenceInHours);return Object(v["translate"])("ScheduledReports_ReportHourWithUTC",[e])},saveButtonTitle(){const{ReportPlugin:e}=window,t=this.report.idreport>0;return t?e.updateReportString:e.createReportString},contentTitle(){const{ReportPlugin:e}=window,t=this.report.idreport>0;return t?e.updateReportString:Object(v["translate"])("ScheduledReports_CreateAndScheduleReport")},getDeliveryMediumInlineTooltip(){const e=Object(v["translate"])("CoreHome_LearnMoreFullStop",Object(v["externalLink"])("https://matomo.org/faq/general/create-and-schedule-a-report/"),"");return`${Object(v["translate"])("ScheduledReports_CreateTooltip")} ${e}`}}});ue.render=Y;var me=ue;const be={class:"first"},Oe={key:0},he={colspan:"7"},ye=Object(l["createElementVNode"])("br",null,null,-1),je=Object(l["createElementVNode"])("br",null,null,-1),ge=["href"],ve=Object(l["createElementVNode"])("br",null,null,-1),Re=Object(l["createElementVNode"])("br",null,null,-1),fe={key:1},Se={colspan:"7"},Ee=Object(l["createElementVNode"])("br",null,null,-1),Ne=Object(l["createElementVNode"])("br",null,null,-1),ke=Object(l["createElementVNode"])("br",null,null,-1),Ve={class:"first"},Be={key:0,class:"entityInlineHelp",style:{"font-size":"9pt"}},we={key:0},Te={key:1},_e={key:0},Ce={key:0},Pe=Object(l["createElementVNode"])("br",null,null,-1),Fe=["onClick"],De=["src"],Me={key:2,class:"loadingPiwik"},qe=["id","action"],xe=["value"],Le=Object(l["createElementVNode"])("input",{type:"hidden",name:"force_api_session",value:"1"},null,-1),Ie=["onClick","id"],$e=["src"],He={style:{"text-align":"center","padding-top":"2px"}},Ae=["onClick","title"],Ue=Object(l["createElementVNode"])("span",{class:"icon-edit"},null,-1),Ge=[Ue],ze={style:{"text-align":"center","padding-top":"2px"}},We=["onClick","title"],Ze=Object(l["createElementVNode"])("span",{class:"icon-delete"},null,-1),Ke=[Ze],Xe={class:"tableActionBar"},Je=Object(l["createElementVNode"])("span",{class:"icon-add"},null,-1);function Qe(e,t,r,o,n,i){const a=Object(l["resolveComponent"])("MatomoLoader"),c=Object(l["resolveComponent"])("ContentBlock"),s=Object(l["resolveDirective"])("content-table");return Object(l["openBlock"])(),Object(l["createBlock"])(c,{id:"entityEditContainer",class:"entityTableContainer","help-url":e.externalRawLink("https://matomo.org/docs/email-reports/"),feature:"true","content-title":e.contentTitle},{default:Object(l["withCtx"])(()=>{var r;return[Object(l["createElementVNode"])("p",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_ManageTooltip")),1),Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createElementBlock"])("table",null,[Object(l["createElementVNode"])("thead",null,[Object(l["createElementVNode"])("tr",null,[Object(l["createElementVNode"])("th",be,Object(l["toDisplayString"])(e.translate("General_Description")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportSchedule")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportFormat")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_SendReportTo")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("General_Download")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("General_Edit")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("General_Delete")),1)])]),Object(l["createElementVNode"])("tbody",null,["anonymous"===e.userLogin?(Object(l["openBlock"])(),Object(l["createElementBlock"])("tr",Oe,[Object(l["createElementVNode"])("td",he,[ye,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_MustBeLoggedIn"))+" ",1),je,Object(l["createTextVNode"])("› "),Object(l["createElementVNode"])("a",{href:"index.php?module="+e.loginModule},Object(l["toDisplayString"])(e.translate("Login_LogIn")),9,ge),ve,Re])])):null!==(r=e.reports)&&void 0!==r&&r.length?Object(l["createCommentVNode"])("",!0):(Object(l["openBlock"])(),Object(l["createElementBlock"])("tr",fe,[Object(l["createElementVNode"])("td",Se,[Ee,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_ThereIsNoReportToManage",e.siteName))+". ",1),Ne,ke])])),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.decodedReports,t=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("tr",{key:t.idreport},[Object(l["createElementVNode"])("td",Ve,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(t.description)+" ",1),e.segmentEditorActivated&&t.idsegment?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",Be,[e.savedSegmentsById[t.idsegment]?(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",we,Object(l["toDisplayString"])(e.savedSegmentsById[t.idsegment]),1)):(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",Te,Object(l["toDisplayString"])(e.translate("ScheduledReports_SegmentDeleted")),1))])):Object(l["createCommentVNode"])("",!0)]),Object(l["createElementVNode"])("td",null,Object(l["toDisplayString"])(e.periods[t.period])+" ",1),Object(l["createElementVNode"])("td",null,[t.format?(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",_e,Object(l["toDisplayString"])(t.format.toUpperCase()),1)):Object(l["createCommentVNode"])("",!0)]),Object(l["createElementVNode"])("td",null,[0===t.recipients.length?(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",Ce,Object(l["toDisplayString"])(e.translate("ScheduledReports_NoRecipients")),1)):Object(l["createCommentVNode"])("",!0),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t.recipients,(e,t)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",{key:t},[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e)+" ",1),Pe]))),128)),0===t.recipients.length||e.sendingReports.includes(t.idreport)?Object(l["createCommentVNode"])("",!0):(Object(l["openBlock"])(),Object(l["createElementBlock"])("a",{key:1,href:"#",name:"linkSendNow",class:"link_but withIcon",style:{"margin-top":"3px"},onClick:Object(l["withModifiers"])(r=>e.$emit("sendnow",t.idreport),["prevent"])},[Object(l["createElementVNode"])("img",{border:"0",src:e.reportTypes[t.type]},null,8,De),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_SendReportNow")),1)],8,Fe)),e.sendingReports.includes(t.idreport)?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",Me,[Object(l["createVNode"])(a),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_SendingReport")),1)])):Object(l["createCommentVNode"])("",!0)]),Object(l["createElementVNode"])("td",null,[Object(l["createElementVNode"])("form",{method:"POST",target:"_blank",id:"downloadReportForm_"+t.idreport,action:e.linkTo({module:"API",segment:null,method:"ScheduledReports.generateReport",idReport:t.idreport,outputType:e.downloadOutputType,language:e.language,format:-1!==["html","csv","tsv"].indexOf(t.format)?t.format:"original"})},[Object(l["createElementVNode"])("input",{type:"hidden",name:"token_auth",value:e.token_auth},null,8,xe),Le],8,qe),Object(l["createElementVNode"])("a",{href:"",rel:"noreferrer noopener",name:"linkDownloadReport",class:"link_but withIcon",onClick:Object(l["withModifiers"])(r=>e.displayReport(t.idreport),["prevent"]),id:t.idreport},[Object(l["createElementVNode"])("img",{border:"0",width:16,height:16,src:e.reportFormatsByReportType[t.type][t.format]},null,8,$e),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("General_Download")),1)],8,Ie)]),Object(l["createElementVNode"])("td",He,[Object(l["createElementVNode"])("button",{class:"table-action",onClick:r=>e.$emit("edit",t.idreport),title:e.translate("General_Edit")},Ge,8,Ae)]),Object(l["createElementVNode"])("td",ze,[Object(l["createElementVNode"])("button",{class:"table-action",onClick:r=>e.$emit("delete",t.idreport),title:e.translate("General_Delete")},Ke,8,We)])]))),128))])])),[[s]]),Object(l["createElementVNode"])("div",Xe,["anonymous"!==e.userLogin?(Object(l["openBlock"])(),Object(l["createElementBlock"])("button",{key:0,id:"add-report",onClick:t[0]||(t[0]=t=>e.$emit("create"))},[Je,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_CreateAndScheduleReport")),1)])):Object(l["createCommentVNode"])("",!0)])]}),_:1},8,["help-url","content-title"])}var Ye=Object(l["defineComponent"])({props:{contentTitle:{type:String,required:!0},userLogin:{type:String,required:!0},loginModule:{type:String,required:!0},reports:{type:Array,required:!0},siteName:{type:String,required:!0},segmentEditorActivated:Boolean,savedSegmentsById:Object,periods:{type:Object,required:!0},downloadOutputType:{type:Number,required:!0},language:{type:String,required:!0},reportFormatsByReportType:{type:Object,required:!0},reportTypes:{type:Object,required:!0},sendingReports:{type:Array,required:!1}},components:{ContentBlock:v["ContentBlock"],MatomoLoader:v["MatomoLoader"]},directives:{ContentTable:v["ContentTable"]},emits:["create","edit","delete","sendnow"],methods:{linkTo(e){return"?"+v["MatomoUrl"].stringify(Object.assign(Object.assign({},v["MatomoUrl"].urlParsed.value),e))},displayReport(e){$("#downloadReportForm_"+e).submit()}},computed:{token_auth(){return v["Matomo"].token_auth},decodedReports(){return this.reports.map(e=>Object.assign(Object.assign({},e),{},{description:v["Matomo"].helper.htmlDecode(e.description)}))}}});Ye.render=Qe;var et=Ye;function tt(){v["Matomo"].helper.lazyScrollTo(".emailReports",200)}function rt(e,t){var r;null!==(r=window.updateReportParametersFunctions)&&void 0!==r&&r[e]&&window.updateReportParametersFunctions[e](t)}function ot(e,t){var r;null!==(r=window.resetReportParametersFunctions)&&void 0!==r&&r[e]&&window.resetReportParametersFunctions[e](t)}window.resetReportParametersFunctions=window.resetReportParametersFunctions||{},window.updateReportParametersFunctions=window.updateReportParametersFunctions||{},window.getReportParametersFunctions=window.getReportParametersFunctions||{};const{$:nt}=window,lt="scheduledReports.pendingNotification",it=v["Matomo"].timezoneOffset/3600;var at=Object(l["defineComponent"])({props:{contentTitle:{type:String,required:!0},userLogin:{type:String,required:!0},loginModule:{type:String,required:!0},reports:{type:Array,required:!0},siteName:{type:String,required:!0},segmentEditorActivated:Boolean,savedSegmentsById:Object,periods:{type:Object,required:!0},downloadOutputType:{type:Number,required:!0},language:{type:String,required:!0},reportFormatsByReportType:{type:Object,required:!0},paramPeriods:{type:Object,required:!0},reportTypeOptions:{type:Object,required:!0},reportFormatsByReportTypeOptions:{type:Object,required:!0},displayFormats:{type:Object,required:!0},reportsByCategoryByReportType:{type:Object,required:!0},allowMultipleReportsByReportType:{type:Object,required:!0},countWebsites:{type:Number,required:!0},reportTypes:{type:Object,required:!0}},components:{MatomoLoader:v["MatomoLoader"],AddReport:me,ListReports:et},directives:{ContentTable:v["ContentTable"],Form:c["Form"]},mounted(){nt(this.$refs.root).on("click","a.entityCancelLink",()=>{this.showListOfReports()}),v["Matomo"].postEvent("ScheduledReports.ManageScheduledReport.mounted",{element:this.$refs.root});const e="undefined"!==typeof sessionStorage?sessionStorage.getItem(lt):null;e&&this.$refs.reportUpdatedSuccess&&(sessionStorage.removeItem(lt),this.fadeInOutSuccessMessage(this.$refs.reportUpdatedSuccess,e,!1))},unmounted(){v["Matomo"].postEvent("ScheduledReports.ManageScheduledReport.unmounted",{element:this.$refs.root})},data(){return{showReportsList:!0,report:{},selectedReports:{},selectedReportsOrder:{},sendingReports:[]}},methods:{sendReportNow(e){this.sendingReports.includes(e)||(tt(),this.sendingReports.push(e),v["AjaxHelper"].post({method:"ScheduledReports.sendReport"},{idReport:e,force:!0}).then(()=>{this.fadeInOutSuccessMessage(this.$refs.reportSentSuccess,Object(v["translate"])("ScheduledReports_ReportSent"),!1)}).finally(()=>{this.sendingReports=this.sendingReports.filter(t=>t!==e)}))},formSetEditReport(e){const{ReportPlugin:t}=window;let r={idreport:e,type:t.defaultReportType,format:t.defaultReportFormat,description:"",period:t.defaultPeriod,hour:t.defaultHour,reports:[],idsegment:"",evolutionPeriodFor:"prev",evolutionPeriodN:t.defaultEvolutionPeriodN,periodParam:t.defaultPeriod};e>0?(r=t.reportList[e],rt(r.type,r)):ot(r.type,r),r.hour=ee(r.hour,it),this.selectedReports={},this.selectedReportsOrder={},Object.values(r.reports).forEach(e=>{this.selectedReports[r.type]=this.selectedReports[r.type]||{},this.selectedReports[r.type][e]=!0}),this.selectedReportsOrder[r.type]=Object.values(r.reports).map(e=>e),r["format"+r.type]=r.format,r.idsegment||(r.idsegment=""),this.report=r,this.report.description=v["Matomo"].helper.htmlDecode(r.description)},fadeInOutSuccessMessage(e,t,r=!0){v["NotificationsStore"].show({message:t,placeat:e,context:"success",noclear:!0,type:"toast",style:{display:"inline-block",marginTop:"10px",width:"100%"},id:"scheduledReportSuccess"}),r&&("undefined"!==typeof sessionStorage&&sessionStorage.setItem(lt,t),v["Matomo"].helper.refreshAfter(2))},changedReportType(){ot(this.report.type,this.report)},deleteReport(e){v["Matomo"].helper.modalConfirm("#confirm",{yes:()=>{v["AjaxHelper"].post({method:"ScheduledReports.deleteReport"},{idReport:e},{redirectOnSuccess:!0})}})},showListOfReports(e){this.showReportsList=!0,v["Matomo"].helper.hideAjaxError(),("undefined"===typeof e||e)&&tt()},createReport(){this.showReportsList=!1,Object(l["nextTick"])(()=>{this.formSetEditReport(0)})},editReport(e){this.showReportsList=!1,Object(l["nextTick"])(()=>{this.formSetEditReport(e)})},submitReport(){const e={idReport:this.report.idreport,description:this.report.description,idSegment:this.report.idsegment,reportType:this.report.type,reportFormat:this.report["format"+this.report.type],periodParam:this.report.periodParam,evolutionPeriodFor:this.report.evolutionPeriodFor};"each"!==e.evolutionPeriodFor&&(e.evolutionPeriodN=this.report.evolutionPeriodN);const{period:t}=this.report,r=ee(this.report.hour,-it),o=e.reportType,n=this.selectedReports[o]||{};let l=(this.selectedReportsOrder[o]||[]).filter(e=>n[e]);l.length||(l=Object.keys(n).filter(e=>n[e])),l.length>0&&(e.reports=l);const i=window.getReportParametersFunctions[this.report.type](this.report);e.parameters=i;const a=this.report.idreport>0;return v["AjaxHelper"].post({method:a?"ScheduledReports.updateReport":"ScheduledReports.addReport",period:t,hour:r},e).then(()=>{tt(),this.fadeInOutSuccessMessage(this.$refs.reportUpdatedSuccess,a?Object(v["translate"])("ScheduledReports_ReportUpdated"):Object(v["translate"])("ScheduledReports_ReportAdded"))}),!1},onChangeProperty(e,t){this.report[e]=t,"type"===e&&this.changedReportType()},toggleSelectedReport(e,t){this.selectedReports[e]=this.selectedReports[e]||{};const r=!this.selectedReports[e][t];this.selectedReports[e][t]=r,this.selectedReportsOrder[e]=this.selectedReportsOrder[e]||[],r?-1===this.selectedReportsOrder[e].indexOf(t)&&this.selectedReportsOrder[e].push(t):this.selectedReportsOrder[e]=this.selectedReportsOrder[e].filter(e=>e!==t)},onReorderSelectedReports(e,t){this.selectedReportsOrder[e]=t.filter(t=>{var r;return null===(r=this.selectedReports[e])||void 0===r?void 0:r[t]})}},computed:{showReportForm(){return!this.showReportsList},decodedSiteName(){return v["Matomo"].helper.htmlDecode(this.siteName)}}});at.render=g;var ct=at;
+ */function ee(e,t){return""+(24+parseFloat(e)+t)%24}const te={key:0,class:"selectedReportsWrapper"},re={class:"selectedReportsHeading"},oe={class:"selectedReportsHelp"},ne={class:"selectedReportsList",ref:"list"},le=["data-unique-id"],ie=Object(l["createElementVNode"])("span",{class:"icon-menu-hamburger drag-icon"},null,-1),ae={class:"selectedReportName"};function ce(e,t,r,o,n,i){return e.shouldDisplay?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",te,[Object(l["createElementVNode"])("div",re,[Object(l["createElementVNode"])("h3",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_SelectedReports")),1)]),Object(l["createElementVNode"])("p",oe,Object(l["toDisplayString"])(e.translate("ScheduledReports_SelectedReportsHelp")),1),Object(l["createElementVNode"])("ul",ne,[(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.reports,t=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("li",{key:t.uniqueId,"data-unique-id":t.uniqueId},[ie,Object(l["createElementVNode"])("span",ae,Object(l["toDisplayString"])(e.decode(t.name)),1)],8,le))),128))],512)])):Object(l["createCommentVNode"])("",!0)}const{$:se}=window;var de=Object(l["defineComponent"])({name:"SelectedReportsList",props:{reports:{type:Array,required:!0},enabled:{type:Boolean,default:!0}},emits:["reorder"],computed:{shouldDisplay(){return!!this.enabled&&this.reports.length>0}},watch:{reports(){this.scheduleRefresh()},enabled(){this.scheduleRefresh()}},mounted(){this.scheduleRefresh()},beforeUnmount(){this.destroySortable()},methods:{translate:v["translate"],decode(e){return v["Matomo"].helper.htmlDecode(e)},getListElement(){return this.$refs.list},scheduleRefresh(){Object(l["nextTick"])(()=>{this.refreshSortable()})},refreshSortable(){if(!this.shouldDisplay)return void this.destroySortable();const e=this.getListElement();if(!e)return;const t=se(e);t.data("ui-sortable")?t.sortable("refresh"):t.sortable({axis:"y",helper:"clone",placeholder:"selectedReportPlaceholder",stop:()=>{this.emitOrder()}})},destroySortable(){const e=this.getListElement();if(!e)return;const t=se(e);t.data("ui-sortable")&&t.sortable("destroy")},emitOrder(){const e=this.getListElement();if(!e)return;const t=se(e).find("li").map((function(){return String(se(this).data("uniqueId"))})).get();this.$emit("reorder",t)}}});de.render=ce;var pe=de,ue=Object(l["defineComponent"])({props:{report:{type:Object,required:!0},selectedReports:Object,selectedReportsOrder:{type:Object,default:()=>({})},paramPeriods:{type:Object,required:!0},reportTypeOptions:{type:Object,required:!0},reportFormatsByReportTypeOptions:{type:Object,required:!0},displayFormats:{type:Object,required:!0},reportsByCategoryByReportType:{type:Object,required:!0},allowMultipleReportsByReportType:{type:Object,required:!0},countWebsites:{type:Number,required:!0},siteName:{type:String,required:!0},reportTypes:{type:Object,required:!0},segmentEditorActivated:Boolean,savedSegmentsById:Object,periods:{type:Object,required:!0}},emits:["submit","change","toggleSelectedReport","reorderSelectedReports"],components:{ContentBlock:v["ContentBlock"],Field:c["Field"],SaveButton:c["SaveButton"],SelectedReportsList:pe},directives:{Form:c["Form"]},created(){this.onEvolutionPeriodN=Object(v["debounce"])(this.onEvolutionPeriodN,50)},methods:{onEvolutionPeriodN(e){this.$emit("change",{prop:"evolutionPeriodN",value:e.target.value})},decode(e){return v["Matomo"].helper.htmlDecode(e)},onSelectedReportsReorder(e){this.report&&this.report.type&&this.$emit("reorderSelectedReports",{reportType:this.report.type,order:e})}},setup(e,t){const r=Object(l["ref"])(null);return Object(l["watch"])(()=>e.report,e=>{const t=r.value;t.querySelectorAll("[vue-entry]").forEach(t=>{$(t).data("vueAppInstance").report_=e})}),Object(l["onMounted"])(()=>{const o=r.value;v["Matomo"].helper.compileVueEntryComponents(o,{report:e.report,onChange(e,r){t.emit("change",{prop:e,value:r})}})}),{reportParameters:r}},beforeUnmount(){const e=this.$refs.reportParameters;v["Matomo"].helper.destroyVueComponent(e)},computed:{enforceSelectedReportOrder(){var e;const t=(null===(e=this.report)||void 0===e?void 0:e.parameters)||{};return"undefined"!==typeof t.enforceOrder&&!!t.enforceOrder},selectedReportsOrderNormalized(){const e={},t=this.selectedReports||{};return Object.keys(t).forEach(r=>{const o=t[r]||{},n=((this.selectedReportsOrder||{})[r]||[]).filter(e=>o[e]),l=Object.keys(o).filter(e=>o[e]&&-1===n.indexOf(e));e[r]=n.concat(l)}),e},reportsLookup(){const e=this.reportsByCategoryByReportType,t={};return Object.entries(e).forEach(([e,r])=>{t[e]=t[e]||{},Object.values(r).forEach(r=>{r.forEach(r=>{t[e][r.uniqueId]=r})})}),t},selectedReportsForCurrentType(){var e;const t=null===(e=this.report)||void 0===e?void 0:e.type;if(!t)return[];const r=(this.selectedReports||{})[t]||{};let o=[];if(this.enforceSelectedReportOrder)o=this.selectedReportsOrderNormalized[t]||[];else{const e=this.reportsByCategoryByReportType[t]||{},n=[];Object.values(e).forEach(e=>{e.forEach(e=>{r[e.uniqueId]&&n.push(e.uniqueId)})}),o=n}if(o.length||(o=Object.keys(r).filter(e=>r[e])),!o.length)return[];const n=this.reportsLookup[t]||{};return o.map(e=>n[e]).filter(e=>!!e)},reportsByCategoryByReportTypeInColumns(){const e=this.reportsByCategoryByReportType,t=Object.entries(e).map(([e,t])=>{const r=Math.floor((Object.keys(t).length+1)/2),o={},n={};let l=o;return Object.entries(t).forEach(([e,t])=>{l[e]=t,Object.keys(l).length>=r&&(l=n)}),[e,[o,n]]});return Object.fromEntries(t)},entityCancelText(){return Object(v["translate"])("General_OrCancel",'',"")},frequencyPeriodSingle(){if(!this.report||!this.report.period)return"";const{ReportPlugin:e}=window;let t=e.periodTranslations[this.report.period];return t||(t=e.periodTranslations.day),t.single},frequencyPeriodPlural(){if(!this.report||!this.report.period)return"";const{ReportPlugin:e}=window;let t=e.periodTranslations[this.report.period];return t||(t=e.periodTranslations.day),t.plural},evolutionGraphsShowForEachInPeriod(){return Object(v["translate"])("ScheduledReports_EvolutionGraphsShowForEachInPeriod","","",this.frequencyPeriodSingle)},reportSegmentInlineHelp(){const e=["module=CoreHome","action=index","category=General_Visitors","subcategory=CoreHome_Segments"].join("&"),t=piwikHelper.getCurrentQueryStringWithParametersModified(e);return Object(v["translate"])("ScheduledReports_HelpSegmentManagement",``,"")},timezoneOffset(){return v["Matomo"].timezoneOffset},timeZoneDifferenceInHours(){return v["Matomo"].timezoneOffset/3600},reportHours(){const e=[];for(let t=0;t<24;t+=1)2*this.timeZoneDifferenceInHours%2!==0?e.push({key:t+".5",value:t+":30"}):e.push({key:""+t,value:""+t});return e},reportHourUtc(){const e=ee(this.report.hour,-this.timeZoneDifferenceInHours);return Object(v["translate"])("ScheduledReports_ReportHourWithUTC",[e])},saveButtonTitle(){const{ReportPlugin:e}=window,t=this.report.idreport>0;return t?e.updateReportString:e.createReportString},contentTitle(){const{ReportPlugin:e}=window,t=this.report.idreport>0;return t?e.updateReportString:Object(v["translate"])("ScheduledReports_CreateAndScheduleReport")},getDeliveryMediumInlineTooltip(){const e=Object(v["translate"])("CoreHome_LearnMoreFullStop",Object(v["externalLink"])("https://matomo.org/faq/general/create-and-schedule-a-report/"),"");return`${Object(v["translate"])("ScheduledReports_CreateTooltip")} ${e}`}}});ue.render=Y;var me=ue;const be={class:"first"},Oe={key:0},he={colspan:"7"},ye=Object(l["createElementVNode"])("br",null,null,-1),je=Object(l["createElementVNode"])("br",null,null,-1),ge=["href"],ve=Object(l["createElementVNode"])("br",null,null,-1),Re=Object(l["createElementVNode"])("br",null,null,-1),fe={key:1},Se={colspan:"7"},Ee=Object(l["createElementVNode"])("br",null,null,-1),Ne=Object(l["createElementVNode"])("br",null,null,-1),ke=Object(l["createElementVNode"])("br",null,null,-1),Ve={class:"first"},Be={key:0,class:"entityInlineHelp",style:{"font-size":"9pt"}},we={key:0},Te={key:1},_e={key:0},Ce={key:0},Pe=Object(l["createElementVNode"])("br",null,null,-1),Fe=["onClick"],De=["src"],Me={key:2,class:"loadingPiwik"},qe=["id","action"],xe=["value"],Le=Object(l["createElementVNode"])("input",{type:"hidden",name:"force_api_session",value:"1"},null,-1),Ie=["onClick","id"],$e=["src"],He={style:{"text-align":"center","padding-top":"2px"}},Ae=["onClick","title"],Ue=Object(l["createElementVNode"])("span",{class:"icon-edit"},null,-1),Ge=[Ue],ze={style:{"text-align":"center","padding-top":"2px"}},We=["onClick","title"],Ze=Object(l["createElementVNode"])("span",{class:"icon-delete"},null,-1),Ke=[Ze],Qe={class:"tableActionBar"},Xe=Object(l["createElementVNode"])("span",{class:"icon-add"},null,-1);function Je(e,t,r,o,n,i){const a=Object(l["resolveComponent"])("MatomoLoader"),c=Object(l["resolveComponent"])("ContentBlock"),s=Object(l["resolveDirective"])("content-table");return Object(l["openBlock"])(),Object(l["createBlock"])(c,{id:"entityEditContainer",class:"entityTableContainer","help-url":e.externalRawLink("https://matomo.org/docs/email-reports/"),feature:"true","content-title":e.contentTitle},{default:Object(l["withCtx"])(()=>{var r;return[Object(l["createElementVNode"])("p",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_ManageTooltip")),1),Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createElementBlock"])("table",null,[Object(l["createElementVNode"])("thead",null,[Object(l["createElementVNode"])("tr",null,[Object(l["createElementVNode"])("th",be,Object(l["toDisplayString"])(e.translate("General_Description")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportSchedule")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_ReportFormat")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("ScheduledReports_SendReportTo")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("General_Download")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("General_Edit")),1),Object(l["createElementVNode"])("th",null,Object(l["toDisplayString"])(e.translate("General_Delete")),1)])]),Object(l["createElementVNode"])("tbody",null,["anonymous"===e.userLogin?(Object(l["openBlock"])(),Object(l["createElementBlock"])("tr",Oe,[Object(l["createElementVNode"])("td",he,[ye,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_MustBeLoggedIn"))+" ",1),je,Object(l["createTextVNode"])("› "),Object(l["createElementVNode"])("a",{href:"index.php?module="+e.loginModule},Object(l["toDisplayString"])(e.translate("Login_LogIn")),9,ge),ve,Re])])):null!==(r=e.reports)&&void 0!==r&&r.length?Object(l["createCommentVNode"])("",!0):(Object(l["openBlock"])(),Object(l["createElementBlock"])("tr",fe,[Object(l["createElementVNode"])("td",Se,[Ee,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_ThereIsNoReportToManage",e.siteName))+". ",1),Ne,ke])])),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(e.decodedReports,t=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("tr",{key:t.idreport},[Object(l["createElementVNode"])("td",Ve,[Object(l["createTextVNode"])(Object(l["toDisplayString"])(t.description)+" ",1),e.segmentEditorActivated&&t.idsegment?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",Be,[e.savedSegmentsById[t.idsegment]?(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",we,Object(l["toDisplayString"])(e.savedSegmentsById[t.idsegment]),1)):(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",Te,Object(l["toDisplayString"])(e.translate("ScheduledReports_SegmentDeleted")),1))])):Object(l["createCommentVNode"])("",!0)]),Object(l["createElementVNode"])("td",null,Object(l["toDisplayString"])(e.periods[t.period])+" ",1),Object(l["createElementVNode"])("td",null,[t.format?(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",_e,Object(l["toDisplayString"])(t.format.toUpperCase()),1)):Object(l["createCommentVNode"])("",!0)]),Object(l["createElementVNode"])("td",null,[0===t.recipients.length?(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",Ce,Object(l["toDisplayString"])(e.translate("ScheduledReports_NoRecipients")),1)):Object(l["createCommentVNode"])("",!0),(Object(l["openBlock"])(!0),Object(l["createElementBlock"])(l["Fragment"],null,Object(l["renderList"])(t.recipients,(e,t)=>(Object(l["openBlock"])(),Object(l["createElementBlock"])("span",{key:t},[Object(l["createTextVNode"])(Object(l["toDisplayString"])(e)+" ",1),Pe]))),128)),0===t.recipients.length||e.sendingReports.includes(t.idreport)?Object(l["createCommentVNode"])("",!0):(Object(l["openBlock"])(),Object(l["createElementBlock"])("a",{key:1,href:"#",name:"linkSendNow",class:"link_but withIcon",style:{"margin-top":"3px"},onClick:Object(l["withModifiers"])(r=>e.$emit("sendnow",t.idreport),["prevent"])},[Object(l["createElementVNode"])("img",{border:"0",src:e.reportTypes[t.type]},null,8,De),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_SendReportNow")),1)],8,Fe)),e.sendingReports.includes(t.idreport)?(Object(l["openBlock"])(),Object(l["createElementBlock"])("div",Me,[Object(l["createVNode"])(a),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_SendingReport")),1)])):Object(l["createCommentVNode"])("",!0)]),Object(l["createElementVNode"])("td",null,[Object(l["createElementVNode"])("form",{method:"POST",target:"_blank",id:"downloadReportForm_"+t.idreport,action:e.linkTo({module:"API",segment:null,method:"ScheduledReports.generateReport",idReport:t.idreport,outputType:e.downloadOutputType,language:e.language,format:-1!==["html","csv","tsv"].indexOf(t.format)?t.format:"original"})},[Object(l["createElementVNode"])("input",{type:"hidden",name:"token_auth",value:e.token_auth},null,8,xe),Le],8,qe),Object(l["createElementVNode"])("a",{href:"",rel:"noreferrer noopener",name:"linkDownloadReport",class:"link_but withIcon",onClick:Object(l["withModifiers"])(r=>e.displayReport(t.idreport),["prevent"]),id:t.idreport},[Object(l["createElementVNode"])("img",{border:"0",width:16,height:16,src:e.reportFormatsByReportType[t.type][t.format]},null,8,$e),Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("General_Download")),1)],8,Ie)]),Object(l["createElementVNode"])("td",He,[Object(l["createElementVNode"])("button",{class:"table-action",onClick:r=>e.$emit("edit",t.idreport),title:e.translate("General_Edit")},Ge,8,Ae)]),Object(l["createElementVNode"])("td",ze,[Object(l["createElementVNode"])("button",{class:"table-action",onClick:r=>e.$emit("delete",t.idreport),title:e.translate("General_Delete")},Ke,8,We)])]))),128))])])),[[s]]),Object(l["createElementVNode"])("div",Qe,["anonymous"!==e.userLogin?(Object(l["openBlock"])(),Object(l["createElementBlock"])("button",{key:0,id:"add-report",onClick:t[0]||(t[0]=t=>e.$emit("create"))},[Xe,Object(l["createTextVNode"])(" "+Object(l["toDisplayString"])(e.translate("ScheduledReports_CreateAndScheduleReport")),1)])):Object(l["createCommentVNode"])("",!0)])]}),_:1},8,["help-url","content-title"])}var Ye=Object(l["defineComponent"])({props:{contentTitle:{type:String,required:!0},userLogin:{type:String,required:!0},loginModule:{type:String,required:!0},reports:{type:Array,required:!0},siteName:{type:String,required:!0},segmentEditorActivated:Boolean,savedSegmentsById:Object,periods:{type:Object,required:!0},downloadOutputType:{type:Number,required:!0},language:{type:String,required:!0},reportFormatsByReportType:{type:Object,required:!0},reportTypes:{type:Object,required:!0},sendingReports:{type:Array,required:!1}},components:{ContentBlock:v["ContentBlock"],MatomoLoader:v["MatomoLoader"]},directives:{ContentTable:v["ContentTable"]},emits:["create","edit","delete","sendnow"],methods:{linkTo(e){return"?"+v["MatomoUrl"].stringify(Object.assign(Object.assign({},v["MatomoUrl"].urlParsed.value),e))},displayReport(e){$("#downloadReportForm_"+e).submit()}},computed:{token_auth(){return v["Matomo"].token_auth},decodedReports(){return this.reports.map(e=>Object.assign(Object.assign({},e),{},{description:v["Matomo"].helper.htmlDecode(e.description)}))}}});Ye.render=Je;var et=Ye;function tt(){v["Matomo"].helper.lazyScrollTo(".emailReports",200)}function rt(e,t){var r;null!==(r=window.updateReportParametersFunctions)&&void 0!==r&&r[e]&&window.updateReportParametersFunctions[e](t)}function ot(e,t){var r;null!==(r=window.resetReportParametersFunctions)&&void 0!==r&&r[e]&&window.resetReportParametersFunctions[e](t)}window.resetReportParametersFunctions=window.resetReportParametersFunctions||{},window.updateReportParametersFunctions=window.updateReportParametersFunctions||{},window.getReportParametersFunctions=window.getReportParametersFunctions||{};const{$:nt}=window,lt="scheduledReports.pendingNotification",it=v["Matomo"].timezoneOffset/3600;var at=Object(l["defineComponent"])({props:{contentTitle:{type:String,required:!0},userLogin:{type:String,required:!0},loginModule:{type:String,required:!0},reports:{type:Array,required:!0},siteName:{type:String,required:!0},segmentEditorActivated:Boolean,savedSegmentsById:Object,periods:{type:Object,required:!0},downloadOutputType:{type:Number,required:!0},language:{type:String,required:!0},reportFormatsByReportType:{type:Object,required:!0},paramPeriods:{type:Object,required:!0},reportTypeOptions:{type:Object,required:!0},reportFormatsByReportTypeOptions:{type:Object,required:!0},displayFormats:{type:Object,required:!0},reportsByCategoryByReportType:{type:Object,required:!0},allowMultipleReportsByReportType:{type:Object,required:!0},countWebsites:{type:Number,required:!0},reportTypes:{type:Object,required:!0}},components:{MatomoLoader:v["MatomoLoader"],AddReport:me,ListReports:et},directives:{ContentTable:v["ContentTable"],Form:c["Form"]},mounted(){nt(this.$refs.root).on("click","a.entityCancelLink",()=>{this.showListOfReports()}),v["Matomo"].postEvent("ScheduledReports.ManageScheduledReport.mounted",{element:this.$refs.root});const e="undefined"!==typeof sessionStorage?sessionStorage.getItem(lt):null;e&&this.$refs.reportUpdatedSuccess&&(sessionStorage.removeItem(lt),this.fadeInOutSuccessMessage(this.$refs.reportUpdatedSuccess,e,!1))},unmounted(){v["Matomo"].postEvent("ScheduledReports.ManageScheduledReport.unmounted",{element:this.$refs.root})},data(){return{showReportsList:!0,report:{},selectedReports:{},selectedReportsOrder:{},sendingReports:[]}},methods:{sendReportNow(e){this.sendingReports.includes(e)||(tt(),this.sendingReports.push(e),v["AjaxHelper"].post({method:"ScheduledReports.sendReport"},{idReport:e,force:!0}).then(()=>{this.fadeInOutSuccessMessage(this.$refs.reportSentSuccess,Object(v["translate"])("ScheduledReports_ReportSent"),!1)}).finally(()=>{this.sendingReports=this.sendingReports.filter(t=>t!==e)}))},formSetEditReport(e){const{ReportPlugin:t}=window;let r={idreport:e,type:t.defaultReportType,format:t.defaultReportFormat,description:"",period:t.defaultPeriod,hour:t.defaultHour,reports:[],idsegment:"",evolutionPeriodFor:"prev",evolutionPeriodN:t.defaultEvolutionPeriodN,periodParam:t.defaultPeriod};e>0?(r=t.reportList[e],rt(r.type,r)):ot(r.type,r),r.hour=ee(r.hour,it),this.selectedReports={},this.selectedReportsOrder={},Object.values(r.reports).forEach(e=>{this.selectedReports[r.type]=this.selectedReports[r.type]||{},this.selectedReports[r.type][e]=!0}),this.selectedReportsOrder[r.type]=Object.values(r.reports).map(e=>e),r["format"+r.type]=r.format,r.idsegment||(r.idsegment=""),this.report=r,this.report.description=v["Matomo"].helper.htmlDecode(r.description)},fadeInOutSuccessMessage(e,t,r=!0){v["NotificationsStore"].show({message:t,placeat:e,context:"success",noclear:!0,type:"toast",style:{display:"inline-block",marginTop:"10px",width:"100%"},id:"scheduledReportSuccess"}),r&&("undefined"!==typeof sessionStorage&&sessionStorage.setItem(lt,t),v["Matomo"].helper.refreshAfter(2))},changedReportType(){ot(this.report.type,this.report)},deleteReport(e){v["Matomo"].helper.modalConfirm("#confirm",{yes:()=>{v["AjaxHelper"].post({method:"ScheduledReports.deleteReport"},{idReport:e},{redirectOnSuccess:!0})}})},showListOfReports(e){this.showReportsList=!0,v["Matomo"].helper.hideAjaxError(),("undefined"===typeof e||e)&&tt()},createReport(){this.showReportsList=!1,Object(l["nextTick"])(()=>{this.formSetEditReport(0)})},editReport(e){this.showReportsList=!1,Object(l["nextTick"])(()=>{this.formSetEditReport(e)})},submitReport(){const e={idReport:this.report.idreport,description:this.report.description,idSegment:this.report.idsegment,reportType:this.report.type,reportFormat:this.report["format"+this.report.type],periodParam:this.report.periodParam,evolutionPeriodFor:this.report.evolutionPeriodFor};"each"!==e.evolutionPeriodFor&&(e.evolutionPeriodN=this.report.evolutionPeriodN);const{period:t}=this.report,r=ee(this.report.hour,-it),o=e.reportType,n=this.selectedReports[o]||{};let l=(this.selectedReportsOrder[o]||[]).filter(e=>n[e]);l.length||(l=Object.keys(n).filter(e=>n[e])),l.length>0&&(e.reports=l);const i=window.getReportParametersFunctions[this.report.type](this.report);e.parameters=i;const a=this.report.idreport>0;return v["AjaxHelper"].post({method:a?"ScheduledReports.updateReport":"ScheduledReports.addReport",period:t,hour:r},e).then(()=>{tt(),this.fadeInOutSuccessMessage(this.$refs.reportUpdatedSuccess,a?Object(v["translate"])("ScheduledReports_ReportUpdated"):Object(v["translate"])("ScheduledReports_ReportAdded"))}),!1},onChangeProperty(e,t){this.report[e]=t,"type"===e&&this.changedReportType()},toggleSelectedReport(e,t){this.selectedReports[e]=this.selectedReports[e]||{};const r=!this.selectedReports[e][t];this.selectedReports[e][t]=r,this.selectedReportsOrder[e]=this.selectedReportsOrder[e]||[],r?-1===this.selectedReportsOrder[e].indexOf(t)&&this.selectedReportsOrder[e].push(t):this.selectedReportsOrder[e]=this.selectedReportsOrder[e].filter(e=>e!==t)},onReorderSelectedReports(e,t){this.selectedReportsOrder[e]=t.filter(t=>{var r;return null===(r=this.selectedReports[e])||void 0===r?void 0:r[t]})}},computed:{showReportForm(){return!this.showReportsList},decodedSiteName(){return v["Matomo"].helper.htmlDecode(this.siteName)}}});at.render=g;var ct=at;
/*!
* Matomo - free/libre analytics platform
*
diff --git a/plugins/ScheduledReports/vue/dist/umd.metadata.json b/plugins/ScheduledReports/vue/dist/umd.metadata.json
index 6eb1c55162a..dce4477a3c5 100644
--- a/plugins/ScheduledReports/vue/dist/umd.metadata.json
+++ b/plugins/ScheduledReports/vue/dist/umd.metadata.json
@@ -1,6 +1,6 @@
{
"dependsOn": [
- "CorePluginsAdmin",
- "CoreHome"
+ "CoreHome",
+ "CorePluginsAdmin"
]
}
\ No newline at end of file
diff --git a/plugins/ScheduledReports/vue/src/AddReport/AddReport.vue b/plugins/ScheduledReports/vue/src/AddReport/AddReport.vue
index 2910a3098fb..7a80409bbdd 100644
--- a/plugins/ScheduledReports/vue/src/AddReport/AddReport.vue
+++ b/plugins/ScheduledReports/vue/src/AddReport/AddReport.vue
@@ -600,12 +600,19 @@ export default defineComponent({
);
},
reportSegmentInlineHelp() {
+ const segmentManagementPageParams = [
+ 'module=CoreHome',
+ 'action=index',
+ 'category=General_Visitors',
+ 'subcategory=CoreHome_Segments',
+ ].join('&');
+ const segmentManagementPageUrl = piwikHelper.getCurrentQueryStringWithParametersModified(
+ segmentManagementPageParams,
+ );
return translate(
- 'ScheduledReports_Segment_HelpScheduledReport',
- '',
+ 'ScheduledReports_HelpSegmentManagement',
+ ``,
'',
- translate('SegmentEditor_DefaultAllVisits'),
- translate('SegmentEditor_AddNewSegment'),
);
},
timezoneOffset() {
diff --git a/plugins/SegmentEditor/Controller.php b/plugins/SegmentEditor/Controller.php
new file mode 100644
index 00000000000..4116f902784
--- /dev/null
+++ b/plugins/SegmentEditor/Controller.php
@@ -0,0 +1,171 @@
+period = Request::fromRequest()->getStringParameter('period', 'day');
+ $this->strDate = Request::fromRequest()->getStringParameter('date', 'yesterday');
+ $this->currentSegmentDefinition = Request::fromRequest()->getStringParameter('segment', '');
+ $this->checkSitePermission();
+ Piwik::checkUserHasViewAccess($this->idSite);
+ }
+
+ public function manageSegments(): string
+ {
+ $view = new View('@SegmentEditor/manageSegments');
+ $this->setGeneralVariablesView($view);
+ $view->authorizedToCreateSegments = SegmentEditorAPI::getInstance()->isUserCanAddNewSegment($this->idSite);
+ $view->segmentTranslations = $this->getTranslations();
+ $view->showMenu = true;
+ $view->sparklineTooltipKey = $this->getSparklineTooltipKey();
+
+ $allVisitsSegment = [
+ 'definition' => '',
+ 'name' => Piwik::translate('SegmentEditor_DefaultAllVisits'),
+ 'fixed' => true,
+ 'starred' => false,
+ ];
+ $view->segmentList = SegmentEditor\API::getInstance()->getAll($this->idSite);
+ array_unshift($view->segmentList, $allVisitsSegment);
+ $view->segmentData = [];
+ foreach ($view->segmentList as $index => &$segment) {
+ $segment['fixed'] = $segment['fixed'] ?? false;
+ $segment['selected'] = $segment['definition'] === $this->currentSegmentDefinition;
+ $segment['dashboardUrl'] = '?module=CoreHome&action=index&idSite=' . $this->idSite . '&period=' . $this->period . '&date=' . $this->strDate . '&segment=' . urlencode($segment['definition']);
+ $segment['sparklineUrl'] = $this->getSegmentSparklineUrl($segment);
+ $data = VisitsSummary\API::getInstance()
+ ->get($this->idSite, $this->period, $this->strDate, $segment['definition'])
+ ->getFirstRow()->getArrayCopy();
+ list($previousDate, $ignore) = Range::getLastDate($this->strDate, $this->period);
+ $data['past_nb_visits'] = VisitsSummary\API::getInstance()
+ ->getVisits($this->idSite, $this->period, $previousDate, $segment['definition'])
+ ->getFirstRow()->getColumn('nb_visits');
+ $data['evolution_visits_direction'] = $this->getEvolutionDirection($data["nb_visits"], $data['past_nb_visits']);
+ $data['evolution_visits_icon'] = $this->getEvolutionIcon($data['evolution_visits_direction']);
+ $data['evolution_visits'] = CalculateEvolutionFilter::calculate($data["nb_visits"], $data['past_nb_visits'], 0, true, false);
+ $view->segmentData[$index] = $data;
+ }
+
+ return $view->render();
+ }
+
+ protected function getEvolutionDirection($currentValue, $pastValue): string
+ {
+ if ($currentValue > $pastValue) {
+ return self::$POSITIVE;
+ }
+
+ if ($currentValue < $pastValue) {
+ return self::$NEGATIVE;
+ }
+
+ return self::$STABLE;
+ }
+
+ protected function getEvolutionIcon($direction): string
+ {
+ if ($direction === self::$POSITIVE) {
+ return 'plugins/MultiSites/images/arrow_up.png';
+ }
+
+ if ($direction === self::$NEGATIVE) {
+ return 'plugins/MultiSites/images/arrow_down.png';
+ }
+
+ return 'plugins/MultiSites/images/stop.png';
+ }
+
+ protected function getSegmentSparklineUrl($segment): string
+ {
+ $params = $this->getGraphParamsModified([
+ 'viewDataTable' => 'sparkline',
+ 'action' => 'getEvolutionGraph',
+ 'module' => 'VisitsSummary',
+ 'columns' => ['nb_visits'],
+ 'segment' => $segment['definition'],
+ ]);
+ return Url::getCurrentQueryStringWithParametersModified($params);
+ }
+
+ private function getSparklineTooltipKey(): string
+ {
+ if ($this->period === 'day') {
+ return 'SegmentEditor_SparklineTooltipDays';
+ }
+ if ($this->period === 'week') {
+ return 'SegmentEditor_SparklineTooltipWeeks';
+ }
+ if ($this->period === 'month') {
+ return 'SegmentEditor_SparklineTooltipMonths';
+ }
+ if ($this->period === 'year') {
+ return 'SegmentEditor_SparklineTooltipYears';
+ }
+
+ return '';
+ }
+
+ private function getTranslations(): array
+ {
+ $translationKeys = array(
+ 'SegmentEditor_AddNewSegment',
+ 'SegmentEditor_ManageSegments',
+ 'SegmentEditor_SegmentPageTitle',
+ 'SegmentEditor_SegmentPageDescription',
+ 'SegmentEditor_SeeDashboardForThisSegment',
+ 'SegmentEditor_SparklineTooltipDays',
+ 'SegmentEditor_SparklineTooltipWeeks',
+ 'SegmentEditor_SparklineTooltipMonths',
+ 'SegmentEditor_SparklineTooltipYears',
+ 'General_Segment',
+ 'General_SegmentDocumentation',
+ 'General_ColumnEvolutionVisits',
+ 'General_ColumnEvolutionVisitsDocumentation',
+ 'General_ColumnNbVisits',
+ 'General_ColumnNbVisitsDocumentation',
+ 'General_ColumnNbActions',
+ 'General_ColumnNbActionsDocumentation',
+ 'General_Search',
+ 'General_SearchNoResults',
+ );
+ $translations = array();
+ foreach ($translationKeys as $key) {
+ $translations[$key] = Piwik::translate($key);
+ }
+ return $translations;
+ }
+}
diff --git a/plugins/SegmentEditor/Menu.php b/plugins/SegmentEditor/Menu.php
new file mode 100644
index 00000000000..63456006321
--- /dev/null
+++ b/plugins/SegmentEditor/Menu.php
@@ -0,0 +1,41 @@
+getIntegerParameter('idSite', 0);
+ if (Piwik::isUserHasWriteAccess($idSite)) {
+ $menu->addMeasurableItem(
+ 'CoreHome_Segments',
+ $this->urlForModuleAction('CoreHome', 'index', [
+ 'category' => 'General_Visitors',
+ 'subcategory' => 'CoreHome_Segments',
+ ]),
+ 19,
+ Piwik::translate('SegmentEditor_ManageSegments'),
+ 'icon-outlink'
+ );
+ }
+ }
+}
diff --git a/plugins/SegmentEditor/SegmentEditor.php b/plugins/SegmentEditor/SegmentEditor.php
index d17f6bbff2b..43edf062123 100644
--- a/plugins/SegmentEditor/SegmentEditor.php
+++ b/plugins/SegmentEditor/SegmentEditor.php
@@ -57,9 +57,15 @@ public function registerEvents()
'Db.getTablesInstalled' => 'getTablesInstalled',
'SitesManager.deleteSite.end' => 'onDeleteSite',
'UsersManager.deleteUser' => 'onDeleteUser',
+ 'API.getPagesComparisonsDisabledFor' => 'getPagesComparisonsDisabledFor',
);
}
+ public function getPagesComparisonsDisabledFor(&$pages)
+ {
+ $pages[] = 'General_Visitors.CoreHome_Segments';
+ }
+
public function onDeleteSite($idSite)
{
$model = new Model();
@@ -328,6 +334,7 @@ public function install()
public function getJsFiles(&$jsFiles)
{
$jsFiles[] = "plugins/SegmentEditor/javascripts/Segmentation.js";
+ $jsFiles[] = "plugins/SegmentEditor/javascripts/manageSegmentsPage.js";
}
public function getStylesheetFiles(&$stylesheets)
@@ -367,6 +374,7 @@ public function getClientSideTranslationKeys(&$translationKeys)
$translationKeys[] = 'SegmentEditor_OperatorOR';
$translationKeys[] = 'SegmentEditor_AddANDorORCondition';
$translationKeys[] = 'SegmentEditor_DefaultAllVisits';
+ $translationKeys[] = 'SegmentEditor_AreYouSureDeleteSegment';
$translationKeys[] = 'General_OperationEquals';
$translationKeys[] = 'General_OperationNotEquals';
$translationKeys[] = 'General_OperationAtMost';
diff --git a/plugins/SegmentEditor/SegmentSelectorControl.php b/plugins/SegmentEditor/SegmentSelectorControl.php
index f3a3c2cee22..d72e7869156 100644
--- a/plugins/SegmentEditor/SegmentSelectorControl.php
+++ b/plugins/SegmentEditor/SegmentSelectorControl.php
@@ -75,6 +75,12 @@ public function __construct()
}
}
+ $this->manageSegmentUrl = [
+ 'module' => 'CoreHome',
+ 'action' => 'index',
+ 'category' => 'General_Visitors',
+ 'subcategory' => 'CoreHome_Segments',
+ ];
$this->authorizedToCreateSegments = SegmentEditorAPI::getInstance()->isUserCanAddNewSegment($this->idSite);
$this->isUserAnonymous = Piwik::isUserIsAnonymous();
$this->segmentTranslations = $this->getTranslations();
@@ -110,15 +116,19 @@ private function getTranslations()
{
$translationKeys = array(
'General_CanNotEditGlobalSegment',
+ 'General_CanNotDeleteGlobalSegment',
'General_CanNotStarGlobalSegment',
'General_CanNotUnstarGlobalSegment',
'General_CanEditGlobalSegment',
+ 'General_CanDeleteGlobalSegment',
'General_CanStarGlobalSegment',
'General_CanUnstarGlobalSegment',
'General_CanNotEditSiteSegment',
+ 'General_CanNotDeleteSiteSegment',
'General_CanNotStarSiteSegment',
'General_CanNotUnstarSiteSegment',
'General_CanEditSiteSegment',
+ 'General_CanDeleteSiteSegment',
'General_CanStarSiteSegment',
'General_CanUnstarSiteSegment',
'General_OperationEquals',
diff --git a/plugins/SegmentEditor/Widgets/ManageSegments.php b/plugins/SegmentEditor/Widgets/ManageSegments.php
new file mode 100644
index 00000000000..c28664473f1
--- /dev/null
+++ b/plugins/SegmentEditor/Widgets/ManageSegments.php
@@ -0,0 +1,29 @@
+getIntegerParameter('idSite', 0);
+
+ $config->setCategoryId('General_Visitors');
+ $config->setSubcategoryId('CoreHome_Segments');
+ $config->setName('CoreHome_Segments');
+ $config->setIsNotWidgetizable();
+
+ if (empty($idSite)) {
+ $config->disable();
+ }
+ }
+}
diff --git a/plugins/SegmentEditor/categories/ManageSegmentsSubcategory.php b/plugins/SegmentEditor/categories/ManageSegmentsSubcategory.php
new file mode 100644
index 00000000000..67c718cbb1d
--- /dev/null
+++ b/plugins/SegmentEditor/categories/ManageSegmentsSubcategory.php
@@ -0,0 +1,19 @@
+';
+ listHtml += '';
}
listHtml += '';
@@ -243,33 +244,33 @@ Segmentation = (function($) {
'>' +
'' + getSegmentName(segment) + '';
- const canEdit = getIsUserCanEditSegment(segment);
+ const canEdit = getCanUserEditSegment(segment);
// We do not use "disabled" attribute here because it remove pointer events and we want to show tooltips
const disabledAttribute = canEdit ? '' : 'data-state="disabled"';
const starTitleAttribute = 'title="' + getStarSegmentTitle(segment, canEdit) + '"';
listHtml += '' +
- '