62 lines
1.9 KiB
TypeScript
Raw Normal View History

2018-04-02 07:34:16 +02:00
import AnimeNotifier from "../AnimeNotifier"
import {findAll} from "scripts/Utils"
2017-11-07 17:46:39 +01:00
// Filter anime on explore page
export function filterAnime(arn: AnimeNotifier, input: HTMLInputElement) {
2018-04-02 07:44:11 +02:00
let root = document.getElementById("filter-root")
2018-03-23 01:43:45 +01:00
2018-04-02 07:44:11 +02:00
let elementYear = document.getElementById("filter-year") as HTMLSelectElement
2018-04-13 17:55:52 +02:00
let elementSeason = document.getElementById("filter-season") as HTMLSelectElement
2018-04-02 07:44:11 +02:00
let elementStatus = document.getElementById("filter-status") as HTMLSelectElement
let elementType = document.getElementById("filter-type") as HTMLSelectElement
2017-11-07 17:46:39 +01:00
for (let element of findAll("anime-grid-image")) {
let img = element as HTMLImageElement
2018-03-20 23:58:37 +01:00
img.src = arn.emptyPixel()
img.classList.remove("element-found")
2018-03-20 23:58:37 +01:00
img.classList.remove("element-color-preview")
2018-03-14 03:50:39 +01:00
}
2018-03-23 01:43:45 +01:00
let year = elementYear.value || "any"
2018-04-13 17:55:52 +02:00
let season = elementSeason.value || "any"
2018-03-23 01:43:45 +01:00
let status = elementStatus.value || "any"
let type = elementType.value || "any"
2018-04-13 17:55:52 +02:00
arn.diff(`${root.dataset.url}/${year}/${season}/${status}/${type}`)
}
2018-07-06 01:52:05 +09:00
// Toggle hiding added anime.
2018-11-16 16:46:56 +09:00
export function toggleHideAddedAnime() {
2018-07-06 01:52:05 +09:00
hideAddedAnime()
}
// Hides anime that are already in your list.
export function hideAddedAnime() {
for (let anime of findAll("anime-grid-cell")) {
if (anime.dataset.added !== "true") {
2018-07-06 01:55:04 +09:00
continue
}
anime.classList.toggle("anime-grid-cell-hide")
}
2017-12-03 19:08:05 +01:00
}
// Hides anime that are not in your list.
export function calendarShowAddedAnimeOnly(arn: AnimeNotifier, element: HTMLInputElement) {
for (let anime of findAll("calendar-entry")) {
if (anime.dataset.added === "false") {
2017-12-03 19:08:05 +01:00
anime.classList.toggle("hidden")
}
}
const anime = document.getElementsByClassName("calendar-entry").item(0)
const showUserList = !anime.classList.contains("hidden")
let obj = {
"CalendarSettings.ShowUserList": showUserList
}
let apiEndpoint = arn.findAPIEndpoint(element);
arn.post(apiEndpoint, obj)
.catch(err => arn.statusMessage.showError(err));
2017-11-07 17:46:39 +01:00
}