Skip to content

Commit ed6c7be

Browse files
committed
Bug 1461193 - Simplify addition of persistent parameters
1 parent c3a0e2c commit ed6c7be

1 file changed

Lines changed: 9 additions & 16 deletions

File tree

bugherder/js/bugherder.js

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -512,24 +512,17 @@ var bugherder = {
512512

513513
// Push a new URL onto history
514514
go: function mcM_go(query, replace) {
515-
var maintained = [];
516-
function persist(prop) {
517-
if (this[prop])
518-
maintained.push(prop + '=1');
519-
}
520-
521-
this.persistingParams.forEach(persist, this);
515+
var params = new URLSearchParams(query);
516+
this.persistingParams.forEach((param) => {
517+
if (this[param]) {
518+
params.append(param, '1');
519+
}
520+
}, this);
522521

522+
var newQueryString = params.toString();
523523
var newURL = document.location.href.split('?')[0];
524-
if (query)
525-
newURL = newURL + '?' + query;
526-
527-
var maintainedQuery = maintained.join('&');
528-
if (!query && maintainedQuery.length > 0)
529-
newURL += '?';
530-
else if (query && maintainedQuery.length > 0)
531-
newURL += '&';
532-
newURL += maintainedQuery;
524+
if (newQueryString)
525+
newURL = newURL + '?' + newQueryString;
533526

534527
// Put the cset and tree parameters back in no matter what if present
535528
var currentURLSearch = new URLSearchParams(document.location.search);

0 commit comments

Comments
 (0)