Integrated scene alerts in alert filters.

This commit is contained in:
2026-07-13 22:05:06 +02:00
parent fe1170b22e
commit ad912e8f03

View File

@@ -17,6 +17,7 @@ const filterActors = ref(false);
const filterEntities = ref(false);
const filterTags = ref(false);
const filterExpressions = ref(false);
const filterScenes = ref(false);
const filterCombined = ref(null);
const filteredAlerts = computed(() => {
@@ -39,11 +40,15 @@ const filteredAlerts = computed(() => {
return false;
}
if (filterCombined.value === false && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches].length > 1) {
if (filterScenes.value && alert.scenes.length === 0) {
return false;
}
if (filterCombined.value === true && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches].length === 1) {
if (filterCombined.value === false && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches, ...alert.scenes].length > 1) {
return false;
}
if (filterCombined.value === true && [...alert.actors, ...alert.entities, ...alert.tags, ...alert.matches, ...alert.scenes].length === 1) {
return false;
}
@@ -67,6 +72,10 @@ const filteredAlerts = computed(() => {
return true;
}
if (alert.scenes.some((scene) => queryRegex.test(scene.title))) {
return true;
}
return false;
});
});
@@ -140,37 +149,45 @@ function toggleFilterCombined() {
<div class="filters-section">
<Icon
v-tooltip="'Only show actor alerts'"
icon="star"
title="Only show actor alerts"
class="noselect"
:class="{ active: filterActors }"
@click="filterActors = !filterActors"
/>
<Icon
v-tooltip="'Only show tag alerts'"
icon="price-tags"
title="Only show tag alerts"
class="noselect"
:class="{ active: filterTags }"
@click="filterTags = !filterTags"
/>
<Icon
v-tooltip="'Only show channel alerts'"
icon="device_hub"
title="Only show channel alerts"
class="noselect"
:class="{ active: filterEntities }"
@click="filterEntities = !filterEntities"
/>
<Icon
v-tooltip="'Only show expression alerts'"
icon="regexp"
title="Only show expression alerts"
class="noselect"
:class="{ active: filterExpressions }"
@click="filterExpressions = !filterExpressions"
/>
<Icon
v-tooltip="'Only show scene release date alerts'"
icon="clapboard-play"
class="noselect"
:class="{ active: filterScenes }"
@click="filterScenes = !filterScenes"
/>
<Icon
v-if="filterCombined === false"
icon="target3"