mirror of
https://github.com/TandoorRecipes/recipes.git
synced 2026-01-01 12:18:45 -05:00
search page saves filters, tweaked reset
This commit is contained in:
@@ -173,10 +173,13 @@ const pageSize = useRouteQuery('pageSize', useUserPreferenceStore().deviceSettin
|
|||||||
*/
|
*/
|
||||||
const availableFilters = computed(() => {
|
const availableFilters = computed(() => {
|
||||||
let f: Array<{ value: string, title: string }> = []
|
let f: Array<{ value: string, title: string }> = []
|
||||||
|
useUserPreferenceStore().deviceSettings.search_visibleFilters = []
|
||||||
Object.entries(filters.value).forEach((entry) => {
|
Object.entries(filters.value).forEach((entry) => {
|
||||||
let [key, filter] = entry
|
let [key, filter] = entry
|
||||||
if (!filter.enabled) {
|
if (!filter.enabled) {
|
||||||
f.push({value: filter.id, title: filter.label})
|
f.push({value: filter.id, title: filter.label})
|
||||||
|
} else {
|
||||||
|
useUserPreferenceStore().deviceSettings.search_visibleFilters.push(filter.id)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
return f
|
return f
|
||||||
@@ -218,6 +221,11 @@ watch(() => query.value, () => {
|
|||||||
* perform initial search on mounted
|
* perform initial search on mounted
|
||||||
*/
|
*/
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
// load filters that were previously enabled
|
||||||
|
useUserPreferenceStore().deviceSettings.search_visibleFilters.forEach(f => {
|
||||||
|
filters.value[f].enabled = true
|
||||||
|
})
|
||||||
|
|
||||||
enableFiltersWithValues()
|
enableFiltersWithValues()
|
||||||
searchRecipes({page: page.value})
|
searchRecipes({page: page.value})
|
||||||
})
|
})
|
||||||
@@ -260,7 +268,7 @@ function reset() {
|
|||||||
page.value = 1
|
page.value = 1
|
||||||
query.value = ''
|
query.value = ''
|
||||||
Object.values(filters.value).forEach((filter) => {
|
Object.values(filters.value).forEach((filter) => {
|
||||||
filter.enabled = false
|
//filter.enabled = false
|
||||||
filter.modelValue = filter.default
|
filter.modelValue = filter.default
|
||||||
})
|
})
|
||||||
selectedCustomFilter.value = null
|
selectedCustomFilter.value = null
|
||||||
|
|||||||
@@ -196,6 +196,7 @@ export const useUserPreferenceStore = defineStore('user_preference_store', () =>
|
|||||||
|
|
||||||
search_itemsPerPage: 50,
|
search_itemsPerPage: 50,
|
||||||
search_viewMode: 'grid',
|
search_viewMode: 'grid',
|
||||||
|
search_visibleFilters: [],
|
||||||
|
|
||||||
start_showMealPlan: true,
|
start_showMealPlan: true,
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ export type DeviceSettings = {
|
|||||||
|
|
||||||
search_itemsPerPage: number,
|
search_itemsPerPage: number,
|
||||||
search_viewMode: 'table'|'grid',
|
search_viewMode: 'table'|'grid',
|
||||||
|
search_visibleFilters: String[],
|
||||||
|
|
||||||
start_showMealPlan: boolean,
|
start_showMealPlan: boolean,
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user