Synchronize Etiquette common.js and YCDL common.js.
This commit is contained in:
parent
e1033d0138
commit
d6ca8206b4
1 changed files with 27 additions and 0 deletions
|
@ -133,6 +133,32 @@ function html_to_element(html)
|
||||||
return template.content.firstChild;
|
return template.content.firstChild;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
common.init_atag_merge_params =
|
||||||
|
function init_atag_merge_params()
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
To create an <a> tag where the ?parameters written on the href are merged
|
||||||
|
with the parameters of the current page URL, give it the class
|
||||||
|
"merge_params". If the URL and href contain the same parameter, the href
|
||||||
|
takes priority.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
URL: ?filter=hello&orderby=score
|
||||||
|
href: "?orderby=date"
|
||||||
|
Result: "?filter=hello&orderby=date"
|
||||||
|
*/
|
||||||
|
var as = Array.from(document.getElementsByClassName("merge_params"));
|
||||||
|
page_params = new URLSearchParams(window.location.search);
|
||||||
|
as.forEach(function(a){
|
||||||
|
var a_params = new URLSearchParams(a.search);
|
||||||
|
var new_params = new URLSearchParams();
|
||||||
|
page_params.forEach(function(value, key) {new_params.set(key, value); });
|
||||||
|
a_params.forEach(function(value, key) {new_params.set(key, value); });
|
||||||
|
a.search = new_params.toString();
|
||||||
|
a.classList.remove("merge_params");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
common.init_button_with_confirm =
|
common.init_button_with_confirm =
|
||||||
function init_button_with_confirm()
|
function init_button_with_confirm()
|
||||||
{
|
{
|
||||||
|
@ -258,6 +284,7 @@ function refresh()
|
||||||
common.on_pageload =
|
common.on_pageload =
|
||||||
function on_pageload()
|
function on_pageload()
|
||||||
{
|
{
|
||||||
|
common.init_atag_merge_params();
|
||||||
common.init_button_with_confirm();
|
common.init_button_with_confirm();
|
||||||
}
|
}
|
||||||
document.addEventListener("DOMContentLoaded", common.on_pageload);
|
document.addEventListener("DOMContentLoaded", common.on_pageload);
|
||||||
|
|
Loading…
Reference in a new issue