|
@@ -48,8 +48,22 @@ function (angular, kbn, _) {
|
|
|
return url;
|
|
return url;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- url += (url.indexOf('?') !== -1 ? '&' : '?');
|
|
|
|
|
- return url + paramsArray.join('&');
|
|
|
|
|
|
|
+ return this.appendToQueryString(url, paramsArray.join('&'));
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ this.appendToQueryString = function(url, stringToAppend) {
|
|
|
|
|
+ if (!_.isUndefined(stringToAppend) && stringToAppend !== null && stringToAppend !== '') {
|
|
|
|
|
+ var pos = url.indexOf('?');
|
|
|
|
|
+ if (pos !== -1) {
|
|
|
|
|
+ if (url.length - pos > 1) {
|
|
|
|
|
+ url += '&';
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ url += '?';
|
|
|
|
|
+ }
|
|
|
|
|
+ url += stringToAppend;
|
|
|
|
|
+ }
|
|
|
|
|
+ return url;
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
this.getAnchorInfo = function(link) {
|
|
this.getAnchorInfo = function(link) {
|
|
@@ -65,7 +79,6 @@ function (angular, kbn, _) {
|
|
|
info.target = link.targetBlank ? '_blank' : '_self';
|
|
info.target = link.targetBlank ? '_blank' : '_self';
|
|
|
info.href = templateSrv.replace(link.url || '', scopedVars);
|
|
info.href = templateSrv.replace(link.url || '', scopedVars);
|
|
|
info.title = templateSrv.replace(link.title || '', scopedVars);
|
|
info.title = templateSrv.replace(link.title || '', scopedVars);
|
|
|
- info.href += '?';
|
|
|
|
|
}
|
|
}
|
|
|
else if (link.dashUri) {
|
|
else if (link.dashUri) {
|
|
|
info.href = 'dashboard/' + link.dashUri + '?';
|
|
info.href = 'dashboard/' + link.dashUri + '?';
|
|
@@ -91,8 +104,9 @@ function (angular, kbn, _) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
info.href = this.addParamsToUrl(info.href, params);
|
|
info.href = this.addParamsToUrl(info.href, params);
|
|
|
|
|
+
|
|
|
if (link.params) {
|
|
if (link.params) {
|
|
|
- info.href += "&" + templateSrv.replace(link.params, scopedVars);
|
|
|
|
|
|
|
+ info.href = this.appendToQueryString(info.href, templateSrv.replace(link.params, scopedVars));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
return info;
|
|
return info;
|