fix(filter): don't show other filters in project selection in saved filter

Resolves https://github.com/go-vikunja/frontend/issues/125
This commit is contained in:
kolaente 2023-09-13 11:41:47 +02:00
parent a6eb804fae
commit 5c95a721f4
Signed by: konrad
GPG Key ID: F40E70337AB24C9B
1 changed files with 8 additions and 2 deletions

View File

@ -155,7 +155,8 @@
</div>
<template
v-if="['filters.create', 'project.edit', 'filter.settings.edit'].includes($route.name as string)">
v-if="['filters.create', 'project.edit', 'filter.settings.edit'].includes($route.name as string)"
>
<div class="field">
<label class="label">{{ $t('project.projects') }}</label>
<div class="control">
@ -311,7 +312,7 @@ function prepareFilters() {
prepareSingleValue('percent_done', 'percentDone', 'usePercentDone', true)
prepareDate('reminders')
prepareRelatedObjectFilter('users', 'assignees')
prepareRelatedObjectFilter('projects', 'project_id')
prepareProjectsFilter()
prepareSingleValue('labels')
@ -514,6 +515,11 @@ async function prepareRelatedObjectFilter(kind: EntityType, filterName = null, s
entities[kind] = await services[servicePrefix].getAll({}, {s: filters.value[filterName]})
}
async function prepareProjectsFilter() {
await prepareRelatedObjectFilter('projects', 'project_id')
entities.projects = entities.projects.filter(p => p.id > 0)
}
function setDoneFilter() {
if (filters.value.done) {
removePropertyFromFilter('done')