Set custom action titles for Ajax request to improve Piwik integration
Change-Id: I38fe710584b838f6dc9215bf9ec212db1abc9877
diff --git a/dev/js/src/api.js b/dev/js/src/api.js
index 1d71550..e536ea2 100644
--- a/dev/js/src/api.js
+++ b/dev/js/src/api.js
@@ -9,7 +9,7 @@
KorAP.URL = KorAP.URL !== undefined ? KorAP.URL : '';
KorAP.API = KorAP.API || {};
-
+
/**
* Retrieve information about a match
*/
@@ -28,31 +28,39 @@
// This is for legacy support
var legacy = legacySigle.exec(match.textSigle);
+ var docFragment = "";
if (legacy !== null && legacy[0]) {
- url += '/' + legacy[1] + '/' + legacy[2] + '/' + legacy[3];
+ docFragment = legacy[1] + '/' + legacy[2] + '/' + legacy[3];
}
else {
- url += '/' + match.textSigle;
+ docFragment = match.textSigle;
}
-
- url += '/' + match.matchID;
+
+ docFragment += '/' + match.matchID;
+ url += '/' + docFragment;
// { spans: true, layer:x, foundry : y}
if (param['spans'] == true) {
url += '?spans=true';
- if (param['foundry'] !== undefined)
+ docFragment += ' +spans ';
+ if (param['foundry'] !== undefined) {
url += '&foundry=' + param['foundry'];
- if (param['layer'] !== undefined)
+ docFragment += param['foundry'];
+ };
+ if (param['layer'] !== undefined) {
url += '&layer=' + param['layer'];
+ docFragment += '/'+param['layer'];
+ }
}
// { spans : false, layer: [Array of KorAP.InfoLayer] }
else {
// TODO
+ docFragment += ' -spans';
url += '?spans=false';
}
- KorAP.API.getJSON(url, cb);
+ KorAP.API.getJSON(url, cb, "MatchInfo: " + docFragment);
};
@@ -72,7 +80,7 @@
else {
url += '?fields=@all'; // TODO: Maybe '*'?
}
- KorAP.API.getJSON(url, cb);
+ KorAP.API.getJSON(url, cb, "TextInfo: " + doc.textSigle);
};
@@ -80,7 +88,7 @@
* Retrieve information about collections
*/
KorAP.API.getCollections = function (cb) {
- KorAP.API.getJSON(KorAP.URL + '/collection', cb);
+ KorAP.API.getJSON(KorAP.URL + '/collection', cb, "CorpusInfo");
};
@@ -114,21 +122,24 @@
*/
KorAP.API.getCorpStat = function (cq, cb){
var url = KorAP.URL;
- url += "/corpus?cq=" + cq;
- KorAP.API.getJSON(url, cb);
+ url += "/corpus?cq=" + encodeURIComponent(cq);
+ KorAP.API.getJSON(url, cb, "CorpusInfo: " + cq);
};
/**
* General method to retrieve JSON information
*/
- KorAP.API.getJSON = function (url, onload) {
+ KorAP.API.getJSON = function (url, onload, title) {
var req = new XMLHttpRequest();
req.open("GET", url, true);
// Dispatch global "window" event
var reqE = new CustomEvent('korapRequest', {
bubbles : false,
- detail: { "url" : url }
+ detail: {
+ "url" : url,
+ "title" : title
+ }
});
window.dispatchEvent(reqE);