Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Burgess <88810029+bx80@users.noreply.github.com>2021-12-01 05:27:48 +0300
committerGitHub <noreply@github.com>2021-12-01 05:27:48 +0300
commit74a6bb09477a175f06bffbef14cf533ba8744b69 (patch)
treed582cea51ba22234ab35a3f86d9d98bf2e061378 /plugins/CoreHome
parent9efa63a654145fcb315d16c5e6d21ab3b96c6f01 (diff)
Configuration option to disable transition periods (#18366)
* Added config option to disable transition periods * Config section checks * Hide transitions row action if period is not allowed * Added system test * Add default values for requests vars * Do allowed period checks for transition row actions in javascript * Code tidy up, fix for range get day count bug, improved tests * Added UI test for disabled period
Diffstat (limited to 'plugins/CoreHome')
-rw-r--r--plugins/CoreHome/vue/dist/CoreHome.umd.js5
-rw-r--r--plugins/CoreHome/vue/dist/CoreHome.umd.min.js2
-rw-r--r--plugins/CoreHome/vue/src/Periods/Range.ts5
3 files changed, 11 insertions, 1 deletions
diff --git a/plugins/CoreHome/vue/dist/CoreHome.umd.js b/plugins/CoreHome/vue/dist/CoreHome.umd.js
index 22a055e0e4..190b5027e1 100644
--- a/plugins/CoreHome/vue/dist/CoreHome.umd.js
+++ b/plugins/CoreHome/vue/dist/CoreHome.umd.js
@@ -546,6 +546,11 @@ var Range_RangePeriod = /*#__PURE__*/function () {
value: function containsToday() {
return todayIsInRange(this.getDateRange());
}
+ }, {
+ key: "getDayCount",
+ value: function getDayCount() {
+ return Math.ceil((this.endDate.getTime() - this.startDate.getTime()) / (1000 * 3600 * 24)) + 1;
+ }
}], [{
key: "getLastNRange",
value: function getLastNRange(childPeriodType, strAmount, strEndDate) {
diff --git a/plugins/CoreHome/vue/dist/CoreHome.umd.min.js b/plugins/CoreHome/vue/dist/CoreHome.umd.min.js
index 7c71a545a3..4850e32df6 100644
--- a/plugins/CoreHome/vue/dist/CoreHome.umd.min.js
+++ b/plugins/CoreHome/vue/dist/CoreHome.umd.min.js
@@ -35,7 +35,7 @@ function D(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-
*
* @link https://matomo.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- */var _=function(){function e(t,n,r){V(this,e),F(this,"startDate",void 0),F(this,"endDate",void 0),F(this,"childPeriodType",void 0),this.startDate=t,this.endDate=n,this.childPeriodType=r}return H(e,[{key:"getPrettyString",value:function(){var e=C(this.startDate),t=C(this.endDate);return D("General_DateRangeFromTo",[e,t])}},{key:"getDateRange",value:function(){return[this.startDate,this.endDate]}},{key:"containsToday",value:function(){return T(this.getDateRange())}}],[{key:"getLastNRange",value:function(t,n,r){var i=Math.max(parseInt(n.toString(),10)-1,0);if(Number.isNaN(i))throw new Error("Invalid range strAmount");var a=r?P(r):E(),o=new Date(a.getTime());if("day"===t)o.setDate(o.getDate()-i);else if("week"===t)o.setDate(o.getDate()-7*i);else if("month"===t)o.setDate(1),o.setMonth(o.getMonth()-i);else{if("year"!==t)throw new Error("Unknown period type '".concat(t,"'."));o.setFullYear(o.getFullYear()-i)}if("day"!==t){var c=f.periods[t].parse(o),s=f.periods[t].parse(a),l=c.getDateRange(),u=I(l,1);o=u[0];var d=s.getDateRange(),p=I(d,2);a=p[1]}var m=new Date(1991,7,6);if(o.getTime()-m.getTime()<0)switch(t){case"year":o=new Date(1992,0,1);break;case"month":o=new Date(1991,8,1);break;case"week":o=new Date(1991,8,12);break;case"day":default:o=m;break}return new e(o,a,t)}},{key:"getLastNRangeChild",value:function(t,n,r){var i=n?P(n):E(),a=new Date(i.getTime()),o=new Date(i.getTime());if("day"===t)a.setDate(a.getDate()-r),o.setDate(o.getDate()-r);else if("week"===t)a.setDate(a.getDate()-7*r),o.setDate(o.getDate()-7*r);else if("month"===t)a.setDate(1),a.setMonth(a.getMonth()-r),o.setDate(1),o.setMonth(o.getMonth()-r);else{if("year"!==t)throw new Error("Unknown period type '".concat(t,"'."));a.setFullYear(a.getFullYear()-r),o.setFullYear(o.getFullYear()-r)}if("day"!==t){var c=f.periods[t].parse(a),s=f.periods[t].parse(o),l=c.getDateRange(),u=I(l,1);a=u[0];var d=s.getDateRange(),p=I(d,2);o=p[1]}var m=new Date(1991,7,6);if(a.getTime()-m.getTime()<0)switch(t){case"year":a=new Date(1992,0,1);break;case"month":a=new Date(1991,8,1);break;case"week":a=new Date(1991,8,12);break;case"day":default:a=m;break}return new e(a,o,t)}},{key:"parse",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"day";if(/^previous/.test(t)){var r=e.getLastNRange(n,"2").startDate;return e.getLastNRange(n,t.substring(8),r)}if(/^last/.test(t))return e.getLastNRange(n,t.substring(4));var i=decodeURIComponent(t).split(",");return new e(P(i[0]),P(i[1]),n)}},{key:"getDisplayText",value:function(){return D("General_DateRangeInPeriodList")}}]),e}();function R(){return{getAllLabels:f.getAllLabels.bind(f),isRecognizedPeriod:f.isRecognizedPeriod.bind(f),get:f.get.bind(f),parse:f.parse.bind(f),parseDate:P,format:C,RangePeriod:_,todayIsInRange:T}}function U(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function q(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function J(e,t,n){return t&&q(e.prototype,t),n&&q(e,n),e}function G(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}
+ */var _=function(){function e(t,n,r){V(this,e),F(this,"startDate",void 0),F(this,"endDate",void 0),F(this,"childPeriodType",void 0),this.startDate=t,this.endDate=n,this.childPeriodType=r}return H(e,[{key:"getPrettyString",value:function(){var e=C(this.startDate),t=C(this.endDate);return D("General_DateRangeFromTo",[e,t])}},{key:"getDateRange",value:function(){return[this.startDate,this.endDate]}},{key:"containsToday",value:function(){return T(this.getDateRange())}},{key:"getDayCount",value:function(){return Math.ceil((this.endDate.getTime()-this.startDate.getTime())/864e5)+1}}],[{key:"getLastNRange",value:function(t,n,r){var i=Math.max(parseInt(n.toString(),10)-1,0);if(Number.isNaN(i))throw new Error("Invalid range strAmount");var a=r?P(r):E(),o=new Date(a.getTime());if("day"===t)o.setDate(o.getDate()-i);else if("week"===t)o.setDate(o.getDate()-7*i);else if("month"===t)o.setDate(1),o.setMonth(o.getMonth()-i);else{if("year"!==t)throw new Error("Unknown period type '".concat(t,"'."));o.setFullYear(o.getFullYear()-i)}if("day"!==t){var c=f.periods[t].parse(o),s=f.periods[t].parse(a),l=c.getDateRange(),u=I(l,1);o=u[0];var d=s.getDateRange(),p=I(d,2);a=p[1]}var m=new Date(1991,7,6);if(o.getTime()-m.getTime()<0)switch(t){case"year":o=new Date(1992,0,1);break;case"month":o=new Date(1991,8,1);break;case"week":o=new Date(1991,8,12);break;case"day":default:o=m;break}return new e(o,a,t)}},{key:"getLastNRangeChild",value:function(t,n,r){var i=n?P(n):E(),a=new Date(i.getTime()),o=new Date(i.getTime());if("day"===t)a.setDate(a.getDate()-r),o.setDate(o.getDate()-r);else if("week"===t)a.setDate(a.getDate()-7*r),o.setDate(o.getDate()-7*r);else if("month"===t)a.setDate(1),a.setMonth(a.getMonth()-r),o.setDate(1),o.setMonth(o.getMonth()-r);else{if("year"!==t)throw new Error("Unknown period type '".concat(t,"'."));a.setFullYear(a.getFullYear()-r),o.setFullYear(o.getFullYear()-r)}if("day"!==t){var c=f.periods[t].parse(a),s=f.periods[t].parse(o),l=c.getDateRange(),u=I(l,1);a=u[0];var d=s.getDateRange(),p=I(d,2);o=p[1]}var m=new Date(1991,7,6);if(a.getTime()-m.getTime()<0)switch(t){case"year":a=new Date(1992,0,1);break;case"month":a=new Date(1991,8,1);break;case"week":a=new Date(1991,8,12);break;case"day":default:a=m;break}return new e(a,o,t)}},{key:"parse",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"day";if(/^previous/.test(t)){var r=e.getLastNRange(n,"2").startDate;return e.getLastNRange(n,t.substring(8),r)}if(/^last/.test(t))return e.getLastNRange(n,t.substring(4));var i=decodeURIComponent(t).split(",");return new e(P(i[0]),P(i[1]),n)}},{key:"getDisplayText",value:function(){return D("General_DateRangeInPeriodList")}}]),e}();function R(){return{getAllLabels:f.getAllLabels.bind(f),isRecognizedPeriod:f.isRecognizedPeriod.bind(f),get:f.get.bind(f),parse:f.parse.bind(f),parseDate:P,format:C,RangePeriod:_,todayIsInRange:T}}function U(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function q(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function J(e,t,n){return t&&q(e.prototype,t),n&&q(e,n),e}function G(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}
/*!
* Matomo - free/libre analytics platform
*
diff --git a/plugins/CoreHome/vue/src/Periods/Range.ts b/plugins/CoreHome/vue/src/Periods/Range.ts
index 07660dae5e..f1c092d7da 100644
--- a/plugins/CoreHome/vue/src/Periods/Range.ts
+++ b/plugins/CoreHome/vue/src/Periods/Range.ts
@@ -176,6 +176,11 @@ export default class RangePeriod {
containsToday(): boolean {
return todayIsInRange(this.getDateRange());
}
+
+ getDayCount(): number {
+ return (Math.ceil((this.endDate.getTime() - this.startDate.getTime()) / (1000 * 3600 * 24))
+ + 1);
+ }
}
Periods.addCustomPeriod('range', RangePeriod);