const addOrUpdateUrlGetParam = function(name, value) {
let href = window.location.href;
let regex = new RegExp('[&\\?]' + name + '=');
if (regex.test(href)) { // the parameter name is already set
regex = new RegExp('([&\\?])' + name + '=\\d+');
href = href.replace(regex, '$1' + name + '=' + value);
} else { // the parameter is not yet set
if (href.indexOf('?') > -1) { // another parameter is already set
href = href + '&' + name + '=' + value;
} else {
href = href + '?' + name + '=' + value;
}
}
window.history.replaceState(null, null, href);
};