mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-04-02 13:45:10 -05:00
Merge pull request #923 from paperless-ngx/fix-queryparams-comma-splitting
Fix: allow commas in non-multi rules query params
This commit is contained in:
commit
d230431227
@ -1,7 +1,7 @@
|
|||||||
import { Injectable } from '@angular/core'
|
import { Injectable } from '@angular/core'
|
||||||
import { ParamMap, Params, Router } from '@angular/router'
|
import { ParamMap, Params, Router } from '@angular/router'
|
||||||
import { FilterRule } from '../data/filter-rule'
|
import { FilterRule } from '../data/filter-rule'
|
||||||
import { FILTER_RULE_TYPES } from '../data/filter-rule-type'
|
import { FilterRuleType, FILTER_RULE_TYPES } from '../data/filter-rule-type'
|
||||||
import { PaperlessSavedView } from '../data/paperless-saved-view'
|
import { PaperlessSavedView } from '../data/paperless-saved-view'
|
||||||
import { DocumentListViewService } from './document-list-view.service'
|
import { DocumentListViewService } from './document-list-view.service'
|
||||||
|
|
||||||
@ -135,17 +135,19 @@ export function filterRulesFromQueryParams(queryParams: ParamMap) {
|
|||||||
allFilterRuleQueryParams
|
allFilterRuleQueryParams
|
||||||
.filter((frqp) => queryParams.has(frqp))
|
.filter((frqp) => queryParams.has(frqp))
|
||||||
.forEach((filterQueryParamName) => {
|
.forEach((filterQueryParamName) => {
|
||||||
const filterQueryParamValues: string[] = queryParams
|
const rule_type: FilterRuleType = FILTER_RULE_TYPES.find(
|
||||||
.get(filterQueryParamName)
|
(rt) => rt.filtervar == filterQueryParamName
|
||||||
.split(',')
|
)
|
||||||
|
const valueURIComponent: string = queryParams.get(filterQueryParamName)
|
||||||
|
const filterQueryParamValues: string[] = rule_type.multi
|
||||||
|
? valueURIComponent.split(',')
|
||||||
|
: [valueURIComponent]
|
||||||
|
|
||||||
filterRulesFromQueryParams = filterRulesFromQueryParams.concat(
|
filterRulesFromQueryParams = filterRulesFromQueryParams.concat(
|
||||||
// map all values to filter rules
|
// map all values to filter rules
|
||||||
filterQueryParamValues.map((val) => {
|
filterQueryParamValues.map((val) => {
|
||||||
return {
|
return {
|
||||||
rule_type: FILTER_RULE_TYPES.find(
|
rule_type: rule_type.id,
|
||||||
(rt) => rt.filtervar == filterQueryParamName
|
|
||||||
).id,
|
|
||||||
value: val,
|
value: val,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
Loading…
x
Reference in New Issue
Block a user