add a switch to filter closed UEs

This commit is contained in:
imperosol
2026-09-11 15:12:07 +02:00
parent ceb15b132b
commit ff75b439a5
3 changed files with 23 additions and 1 deletions
@@ -20,6 +20,7 @@ document.addEventListener("alpine:init", () => {
// biome-ignore lint/style/useNamingConvention: api is in snake_case
page_size: pageSizeDefault,
search: "",
hideClosedUes: true,
department: [] as string[],
// biome-ignore lint/style/useNamingConvention: api is in snake_case
credit_type: [] as CreditType[],
@@ -41,6 +42,7 @@ document.addEventListener("alpine:init", () => {
10,
);
this.search = url.get("search") || "";
this.hideClosedUes = [null, "true"].includes(url.get("hideClosed"));
this.department = url.getAll("department");
this.credit_type = url.getAll("credit_type") as CreditType[];
/* The semester is easier to use on the backend as an enum (spring/autumn/both/none)
@@ -61,7 +63,13 @@ document.addEventListener("alpine:init", () => {
this.to_change = [];
}, 50);
const searchParams = ["search", "department", "credit_type", "semester"];
const searchParams = [
"search",
"hideClosedUes",
"department",
"credit_type",
"semester",
];
const paginationParams = ["page", "page_size"];
for (const param of searchParams) {
this.$watch(param, () => {
@@ -93,6 +101,8 @@ document.addEventListener("alpine:init", () => {
// biome-ignore lint/style/useNamingConvention: api is in snake_case
credit_type: this.credit_type.length > 0 ? this.credit_type : undefined,
semester: this.semester.length > 0 ? this.semester : undefined,
// biome-ignore lint/style/useNamingConvention: api is snake_case
is_open: this.hideClosedUes ? true : undefined,
department: this.department.length > 0 ? this.department : undefined,
search: this.search || undefined,
},