necessário
This commit is contained in:
parent
92b0a902ca
commit
7edb0a17ed
5 changed files with 199 additions and 162 deletions
|
|
@ -10,13 +10,77 @@ hotkeys('/', {keyup: true}, function (event, _){
|
|||
});
|
||||
|
||||
|
||||
let filtered_tags = new Set();
|
||||
|
||||
/**
|
||||
* @param {string} name
|
||||
*/
|
||||
function filter_tags(name) {
|
||||
filtered_tags.add(name);
|
||||
/**
|
||||
* @type {NodeListOf<HTMLElement>}
|
||||
*/
|
||||
let covers = document.querySelectorAll('.cover');
|
||||
for (let cover of covers) {
|
||||
/**
|
||||
* @type {Array<string>}
|
||||
*/
|
||||
let tags = eval(cover.dataset['tags']); // yeehaw!!! eu sou um cowboy yeehaw!!!
|
||||
if (!(tags.includes(name))) {
|
||||
cover.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
const url = new URL(window.location.href);
|
||||
const new_params = new URLSearchParams([
|
||||
['tags', Array.from(filtered_tags).join('&')]
|
||||
// ...Array.from(url.searchParams.entries()),
|
||||
]).toString();
|
||||
window.history.replaceState(null, "", `${url.pathname}?${new_params}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} name
|
||||
*/
|
||||
function filter_artists(name) {
|
||||
filtered_tags.add(name);
|
||||
/**
|
||||
* @type {NodeListOf<HTMLElement>}
|
||||
*/
|
||||
let covers = document.querySelectorAll('.cover');
|
||||
for (let cover of covers) {
|
||||
/**
|
||||
* @type {Array<string>}
|
||||
*/
|
||||
let tags = eval(cover.dataset['tags']); // yeehaw!!! eu sou um cowboy yeehaw!!!
|
||||
if (!(tags.includes(name))) {
|
||||
cover.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
const url = new URL(window.location.href);
|
||||
const new_params = new URLSearchParams([
|
||||
['tags', Array.from(filtered_tags).join('&')]
|
||||
// ...Array.from(url.searchParams.entries()),
|
||||
]).toString();
|
||||
window.history.replaceState(null, "", `${url.pathname}?${new_params}`);
|
||||
}
|
||||
|
||||
|
||||
// filtra tags na url da página
|
||||
const url = new URL(window.location.href);
|
||||
filtered_tags = new Set(url.searchParams.get('tags')?.split('&'));
|
||||
filtered_tags?.forEach(filter_tags);
|
||||
|
||||
function clear_filters() {
|
||||
window.history.replaceState(null, "", url.pathname);
|
||||
document.querySelectorAll('.cover').forEach(x => x.classList.remove('hidden'));
|
||||
filtered_tags = new Set();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {Event & {target: HTMLElement}} event
|
||||
*/
|
||||
function inspectSetTimeout(event) {
|
||||
let target = event.target;
|
||||
|
||||
let id = setTimeout(
|
||||
() => {
|
||||
let targetId = '#' + target.id;
|
||||
|
|
@ -33,7 +97,7 @@ function inspectSetTimeout(event) {
|
|||
500
|
||||
);
|
||||
|
||||
target.dataset['timeout'] = id
|
||||
target.dataset['timeout'] = id;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -41,6 +105,6 @@ function inspectSetTimeout(event) {
|
|||
*/
|
||||
function inspectClearTimeout(event) {
|
||||
let target = event.target;
|
||||
clearTimeout(target.dataset['timeout'])
|
||||
clearTimeout(target.dataset['timeout']);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue