From 1c83f489d1ab30ae4e426da583ccd884bd13b989 Mon Sep 17 00:00:00 2001 From: Michael Shamoon <4887959+shamoon@users.noreply.github.com> Date: Fri, 20 May 2022 22:23:35 -0700 Subject: [PATCH] Use 1/0 instead of true/false --- .../filter-editor/filter-editor.component.ts | 5 ++++- src-ui/src/app/utils/query-params.ts | 13 ++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src-ui/src/app/components/document-list/filter-editor/filter-editor.component.ts b/src-ui/src/app/components/document-list/filter-editor/filter-editor.component.ts index f52435d49..421cd0693 100644 --- a/src-ui/src/app/components/document-list/filter-editor/filter-editor.component.ts +++ b/src-ui/src/app/components/document-list/filter-editor/filter-editor.component.ts @@ -313,7 +313,10 @@ export class FilterEditorComponent implements OnInit, OnDestroy { break case FILTER_ASN_ISNULL: this.textFilterTarget = TEXT_FILTER_TARGET_ASN - this.textFilterModifier = TEXT_FILTER_MODIFIER_NULL + this.textFilterModifier = + rule.value == 'true' || rule.value == '1' + ? TEXT_FILTER_MODIFIER_NULL + : TEXT_FILTER_MODIFIER_NOTNULL break case FILTER_ASN_GT: this.textFilterTarget = TEXT_FILTER_TARGET_ASN diff --git a/src-ui/src/app/utils/query-params.ts b/src-ui/src/app/utils/query-params.ts index 5294ad465..5c5dae8d5 100644 --- a/src-ui/src/app/utils/query-params.ts +++ b/src-ui/src/app/utils/query-params.ts @@ -15,7 +15,7 @@ export function generateParams( ): Params { let params = {} params[SORT_FIELD_PARAMETER] = sortField - params[SORT_REVERSE_PARAMETER] = sortReverse + params[SORT_REVERSE_PARAMETER] = sortReverse ? 1 : undefined params[PAGE_PARAMETER] = isNaN(currentPage) ? 1 : currentPage return { ...queryParamsFromFilterRules(filterRules), @@ -41,7 +41,9 @@ export function getStateFromQueryParams(queryParams: ParamMap): ListViewState { } } -export function filterRulesFromQueryParams(queryParams: ParamMap) { +export function filterRulesFromQueryParams( + queryParams: ParamMap +): FilterRule[] { const allFilterRuleQueryParams: string[] = FILTER_RULE_TYPES.map( (rt) => rt.filtervar ) @@ -67,6 +69,8 @@ export function filterRulesFromQueryParams(queryParams: ParamMap) { filterRulesFromQueryParams = filterRulesFromQueryParams.concat( // map all values to filter rules filterQueryParamValues.map((val) => { + if (rule_type.datatype == 'boolean') + val = val.replace('1', 'true').replace('0', 'false') return { rule_type: rule_type.id, value: isNullRuleType ? null : val, @@ -88,9 +92,12 @@ export function queryParamsFromFilterRules(filterRules: FilterRule[]): Params { ? params[ruleType.filtervar] + ',' + rule.value : rule.value } else if (ruleType.isnull_filtervar && rule.value == null) { - params[ruleType.isnull_filtervar] = true + params[ruleType.isnull_filtervar] = 1 } else { params[ruleType.filtervar] = rule.value + if (ruleType.datatype == 'boolean') + params[ruleType.filtervar] = + rule.value == 'true' || rule.value == '1' ? 1 : 0 } } return params