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:
Diffstat (limited to 'plugins/Morpheus/javascripts/ajaxHelper.js')
-rw-r--r--plugins/Morpheus/javascripts/ajaxHelper.js42
1 files changed, 40 insertions, 2 deletions
diff --git a/plugins/Morpheus/javascripts/ajaxHelper.js b/plugins/Morpheus/javascripts/ajaxHelper.js
index 8050539192..71001c722e 100644
--- a/plugins/Morpheus/javascripts/ajaxHelper.js
+++ b/plugins/Morpheus/javascripts/ajaxHelper.js
@@ -149,6 +149,8 @@ function ajaxHelper() {
*/
this.requestHandle = null;
+ this.defaultParams = ['idSite', 'period', 'date', 'segment'];
+
/**
* Adds params to the request.
* If params are given more then once, the latest given value is used for the request
@@ -312,6 +314,42 @@ function ajaxHelper() {
};
/**
+ * Detect whether are allowed to use the given default parameter or not
+ * @param string parameter
+ * @returns {boolean}
+ * @private
+ */
+ this._useGETDefaultParameter = function (parameter) {
+ if (parameter && this.defaultParams) {
+ var i;
+ for (i = 0; i < this.defaultParams.length; i++) {
+ if (this.defaultParams[i] === parameter) {
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * Removes a default parameter that is usually send automatically along the request.
+ *
+ * @param {String} parameter A name such as "period", "date", "segment".
+ */
+ this.removeDefaultParameter = function (parameter) {
+ if (parameter && this.defaultParams) {
+
+ var i;
+ for (i = 0; i < this.defaultParams.length; i++) {
+ if (this.defaultParams[i] === parameter) {
+ this.defaultParams.splice(i, 1);
+ }
+ }
+ }
+ }
+
+ /**
* Send the request
* @param {Boolean} [sync] indicates if the request should be synchronous (defaults to false)
* @return {void}
@@ -482,13 +520,13 @@ function ajaxHelper() {
}
for (var key in defaultParams) {
- if (!params[key] && !this.postParams[key] && defaultParams[key]) {
+ if (this._useGETDefaultParameter(key) && !params[key] && !this.postParams[key] && defaultParams[key]) {
params[key] = defaultParams[key];
}
}
// handle default date & period if not already set
- if (!params.date && !this.postParams.date) {
+ if (this._useGETDefaultParameter('date') && !params.date && !this.postParams.date) {
params.date = piwik.currentDateString || broadcast.getValueFromUrl('date');
if (params.period == 'range' && piwik.currentDateString) {
params.date = piwik.startDateString + ',' + params.date;