Skip to content

Commit e7bc012

Browse files
authored
Merge pull request #894 from Yelinz/fix-filter-order
fix(ember): uniform filter order for work item and case
2 parents 1c318cd + 15228f0 commit e7bc012

File tree

3 files changed

+154
-147
lines changed

3 files changed

+154
-147
lines changed

ember/app/ui/components/case-filters/template.hbs

+58-58
Original file line numberDiff line numberDiff line change
@@ -28,65 +28,65 @@
2828
@resetFilters={{@resetFilters}}
2929
class="uk-width-auto"
3030
>
31-
<Filters
32-
class="uk-grid-match uk-flex-around uk-child-width-1-4@l uk-child-width-1-5@xl modal-filters"
33-
uk-grid
34-
as |Filter|
35-
>
36-
<Filter.Input
37-
@label={{t "work-items.filters.documentNumber"}}
38-
@value={{@filters.documentNumber}}
39-
@inverted={{@invertedFilters.documentNumber}}
40-
@onChange={{perform @updateFilter "documentNumber"}}
41-
@invertFilter={{perform @invertFilter "documentNumber"}}
42-
/>
43-
<Filter.Input
44-
@label={{t "work-items.filters.answer"}}
45-
@value={{@filters.answerSearch}}
46-
@inverted={{@invertedFilters.answerSearch}}
47-
@onChange={{perform @updateFilter "answerSearch"}}
48-
@invertFilter={{perform @invertFilter "answerSearch"}}
49-
/>
50-
{{#if (can "filter access case")}}
51-
<Filter.Identity
52-
@selected={{@filters.identities}}
53-
@onChange={{perform @updateFilter "identities"}}
54-
@inverted={{@invertedFilters.identities}}
55-
@invertFilter={{perform @invertFilter "identities"}}
31+
<Filters class="uk-flex uk-flex-column uk-flex-between" as |Filter|>
32+
<div class="uk-flex uk-flex-row uk-flex-around uk-margin-medium">
33+
<Filter.Input
34+
@label={{t "work-items.filters.documentNumber"}}
35+
@value={{@filters.documentNumber}}
36+
@inverted={{@invertedFilters.documentNumber}}
37+
@onChange={{perform @updateFilter "documentNumber"}}
38+
@invertFilter={{perform @invertFilter "documentNumber"}}
5639
/>
57-
{{/if}}
58-
<Filter.Dropdown
59-
@label={{t "work-items.filters.forms"}}
60-
@selected={{@filters.forms}}
61-
@inverted={{@invertedFilters.forms}}
62-
@options={{this.forms.value}}
63-
@onChange={{perform @updateFilter "forms"}}
64-
@invertFilter={{perform @invertFilter "forms"}}
65-
/>
66-
<Filter.Dropdown
67-
@label={{t "work-items.filters.expertAssociations"}}
68-
@selected={{@filters.expertAssociations}}
69-
@inverted={{@invertedFilters.expertAssociations}}
70-
@options={{this.expertAssociations}}
71-
@onChange={{perform @updateFilter "expertAssociations"}}
72-
@invertFilter={{perform @invertFilter "expertAssociations"}}
73-
/>
74-
<Filter.Dropdown
75-
@label={{t "work-items.filters.distributionPlans"}}
76-
@selected={{@filters.distributionPlans}}
77-
@inverted={{@invertedFilters.distributionPlans}}
78-
@options={{this.distributionPlans}}
79-
@onChange={{perform @updateFilter "distributionPlans"}}
80-
@invertFilter={{perform @invertFilter "distributionPlans"}}
81-
/>
82-
<Filter.Dropdown
83-
@label={{t "work-items.filters.sections"}}
84-
@selected={{@filters.sections}}
85-
@inverted={{@invertedFilters.sections}}
86-
@options={{this.sections}}
87-
@onChange={{perform @updateFilter "sections"}}
88-
@invertFilter={{perform @invertFilter "sections"}}
89-
/>
40+
<Filter.Input
41+
@label={{t "work-items.filters.answer"}}
42+
@value={{@filters.answerSearch}}
43+
@inverted={{@invertedFilters.answerSearch}}
44+
@onChange={{perform @updateFilter "answerSearch"}}
45+
@invertFilter={{perform @invertFilter "answerSearch"}}
46+
/>
47+
{{#if (can "filter access case")}}
48+
<Filter.Identity
49+
@selected={{@filters.identities}}
50+
@onChange={{perform @updateFilter "identities"}}
51+
@inverted={{@invertedFilters.identities}}
52+
@invertFilter={{perform @invertFilter "identities"}}
53+
/>
54+
{{/if}}
55+
<Filter.Dropdown
56+
@label={{t "work-items.filters.forms"}}
57+
@selected={{@filters.forms}}
58+
@inverted={{@invertedFilters.forms}}
59+
@options={{this.forms.value}}
60+
@onChange={{perform @updateFilter "forms"}}
61+
@invertFilter={{perform @invertFilter "forms"}}
62+
/>
63+
</div>
64+
<div class="uk-flex uk-flex-row uk-flex-around">
65+
<Filter.Dropdown
66+
@label={{t "work-items.filters.expertAssociations"}}
67+
@selected={{@filters.expertAssociations}}
68+
@inverted={{@invertedFilters.expertAssociations}}
69+
@options={{this.expertAssociations}}
70+
@onChange={{perform @updateFilter "expertAssociations"}}
71+
@invertFilter={{perform @invertFilter "expertAssociations"}}
72+
/>
73+
<Filter.Dropdown
74+
@label={{t "work-items.filters.distributionPlans"}}
75+
@selected={{@filters.distributionPlans}}
76+
@inverted={{@invertedFilters.distributionPlans}}
77+
@options={{this.distributionPlans}}
78+
@onChange={{perform @updateFilter "distributionPlans"}}
79+
@invertFilter={{perform @invertFilter "distributionPlans"}}
80+
/>
81+
<Filter.Dropdown
82+
@label={{t "work-items.filters.sections"}}
83+
@selected={{@filters.sections}}
84+
@inverted={{@invertedFilters.sections}}
85+
@options={{this.sections}}
86+
@onChange={{perform @updateFilter "sections"}}
87+
@invertFilter={{perform @invertFilter "sections"}}
88+
/>
89+
</div>
9090
</Filters>
9191
</FilterModal>
9292

ember/app/ui/components/work-item-filters/template.hbs

+91-89
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,6 @@
2626
@invertedIcon={{@invertedFilters.taskTypes}}
2727
@onChange={{perform @updateFilter "taskTypes"}}
2828
/>
29-
<Filter.Identity
30-
@selected={{@filters.identities}}
31-
@invertedIcon={{@invertedFilters.identities}}
32-
@onChange={{perform @updateFilter "identities"}}
33-
/>
3429
<Filter.Input
3530
class="uk-width-small"
3631
@label={{t "work-items.filters.documentNumber"}}
@@ -44,96 +39,103 @@
4439
@invertedIcon={{@invertedFilters.answerSearch}}
4540
@onChange={{perform @updateFilter "answerSearch"}}
4641
/>
42+
<Filter.Identity
43+
@selected={{@filters.identities}}
44+
@invertedIcon={{@invertedFilters.identities}}
45+
@onChange={{perform @updateFilter "identities"}}
46+
/>
4747

4848
<FilterModal
4949
@setFiltersAmount={{this.setFiltersAmount}}
5050
@resetFilters={{@resetFilters}}
5151
class="uk-width-auto"
5252
>
53-
<Filters
54-
class="uk-grid-match uk-flex-around uk-child-width-1-4@l uk-child-width-1-5@xl modal-filters"
55-
uk-grid
56-
as |Filter|
57-
>
58-
<Filter.RadioButtons
59-
@label={{t "work-items.filters.status"}}
60-
@selected={{@filters.status}}
61-
@options={{array
62-
(hash value="open" label=(t "work-items.filters.open"))
63-
(hash value="closed" label=(t "work-items.filters.closed"))
64-
}}
65-
@onChange={{perform @updateFilter "status"}}
66-
/>
67-
<Filter.RadioButtons
68-
@label={{t "work-items.filters.responsible"}}
69-
@selected={{@filters.responsible}}
70-
@options={{array
71-
(hash value="all" label=(t "work-items.filters.all"))
72-
(hash value="own" label=(t "work-items.filters.own"))
73-
}}
74-
@onChange={{perform @updateFilter "responsible"}}
75-
/>
76-
<Filter.Dropdown
77-
@label={{t "work-items.filters.taskTypes"}}
78-
@selected={{@filters.taskTypes}}
79-
@inverted={{@invertedFilters.taskTypes}}
80-
@options={{this.taskTypes.value}}
81-
@onChange={{perform @updateFilter "taskTypes"}}
82-
@invertFilter={{perform @invertFilter "taskTypes"}}
83-
/>
84-
<Filter.Identity
85-
@selected={{@filters.identities}}
86-
@inverted={{@invertedFilters.identities}}
87-
@onChange={{perform @updateFilter "identities"}}
88-
@invertFilter={{perform @invertFilter "identities"}}
89-
/>
90-
<Filter.Input
91-
@label={{t "work-items.filters.documentNumber"}}
92-
@inverted={{@invertedFilters.documentNumber}}
93-
@value={{@filters.documentNumber}}
94-
@onChange={{perform @updateFilter "documentNumber"}}
95-
@invertFilter={{perform @invertFilter "documentNumber"}}
96-
/>
97-
<Filter.Input
98-
@label={{t "work-items.filters.answer"}}
99-
@value={{@filters.answerSearch}}
100-
@inverted={{@invertedFilters.answerSearch}}
101-
@onChange={{perform @updateFilter "answerSearch"}}
102-
@invertFilter={{perform @invertFilter "answerSearch"}}
103-
/>
104-
<Filter.Dropdown
105-
@label={{t "work-items.filters.forms"}}
106-
@selected={{@filters.forms}}
107-
@inverted={{@invertedFilters.documenformstNumber}}
108-
@options={{this.forms.value}}
109-
@onChange={{perform @updateFilter "forms"}}
110-
@invertFilter={{perform @invertFilter "forms"}}
111-
/>
112-
<Filter.Dropdown
113-
@label={{t "work-items.filters.expertAssociations"}}
114-
@selected={{@filters.expertAssociations}}
115-
@inverted={{@invertedFilters.expertAssociations}}
116-
@options={{this.expertAssociations}}
117-
@onChange={{perform @updateFilter "expertAssociations"}}
118-
@invertFilter={{perform @invertFilter "expertAssociations"}}
119-
/>
120-
<Filter.Dropdown
121-
@label={{t "work-items.filters.distributionPlans"}}
122-
@selected={{@filters.distributionPlans}}
123-
@inverted={{@invertedFilters.distributionPlans}}
124-
@options={{this.distributionPlans}}
125-
@onChange={{perform @updateFilter "distributionPlans"}}
126-
@invertFilter={{perform @invertFilter "distributionPlans"}}
127-
/>
128-
<Filter.Dropdown
129-
@label={{t "work-items.filters.sections"}}
130-
@selected={{@filters.sections}}
131-
@inverted={{@invertedFilters.sections}}
132-
@options={{this.sections}}
133-
@onChange={{perform @updateFilter "sections"}}
134-
@loading={{this.questionOptions.isLoading}}
135-
@invertFilter={{perform @invertFilter "sections"}}
136-
/>
53+
<Filters class="uk-flex uk-flex-column uk-flex-between" as |Filter|>
54+
<div class="uk-flex uk-flex-row uk-flex-around">
55+
<Filter.RadioButtons
56+
@label={{t "work-items.filters.status"}}
57+
@selected={{@filters.status}}
58+
@options={{array
59+
(hash value="open" label=(t "work-items.filters.open"))
60+
(hash value="closed" label=(t "work-items.filters.closed"))
61+
}}
62+
@onChange={{perform @updateFilter "status"}}
63+
/>
64+
<Filter.RadioButtons
65+
@label={{t "work-items.filters.responsible"}}
66+
@selected={{@filters.responsible}}
67+
@options={{array
68+
(hash value="all" label=(t "work-items.filters.all"))
69+
(hash value="own" label=(t "work-items.filters.own"))
70+
}}
71+
@onChange={{perform @updateFilter "responsible"}}
72+
/>
73+
<Filter.Dropdown
74+
@label={{t "work-items.filters.taskTypes"}}
75+
@selected={{@filters.taskTypes}}
76+
@inverted={{@invertedFilters.taskTypes}}
77+
@options={{this.taskTypes.value}}
78+
@onChange={{perform @updateFilter "taskTypes"}}
79+
@invertFilter={{perform @invertFilter "taskTypes"}}
80+
/>
81+
</div>
82+
<div class="uk-flex uk-flex-row uk-flex-around uk-margin-medium">
83+
<Filter.Input
84+
@label={{t "work-items.filters.documentNumber"}}
85+
@inverted={{@invertedFilters.documentNumber}}
86+
@value={{@filters.documentNumber}}
87+
@onChange={{perform @updateFilter "documentNumber"}}
88+
@invertFilter={{perform @invertFilter "documentNumber"}}
89+
/>
90+
<Filter.Input
91+
@label={{t "work-items.filters.answer"}}
92+
@value={{@filters.answerSearch}}
93+
@inverted={{@invertedFilters.answerSearch}}
94+
@onChange={{perform @updateFilter "answerSearch"}}
95+
@invertFilter={{perform @invertFilter "answerSearch"}}
96+
/>
97+
<Filter.Identity
98+
@selected={{@filters.identities}}
99+
@inverted={{@invertedFilters.identities}}
100+
@onChange={{perform @updateFilter "identities"}}
101+
@invertFilter={{perform @invertFilter "identities"}}
102+
/>
103+
<Filter.Dropdown
104+
@label={{t "work-items.filters.forms"}}
105+
@selected={{@filters.forms}}
106+
@inverted={{@invertedFilters.documenformstNumber}}
107+
@options={{this.forms.value}}
108+
@onChange={{perform @updateFilter "forms"}}
109+
@invertFilter={{perform @invertFilter "forms"}}
110+
/>
111+
</div>
112+
<div class="uk-flex uk-flex-row uk-flex-around">
113+
<Filter.Dropdown
114+
@label={{t "work-items.filters.expertAssociations"}}
115+
@selected={{@filters.expertAssociations}}
116+
@inverted={{@invertedFilters.expertAssociations}}
117+
@options={{this.expertAssociations}}
118+
@onChange={{perform @updateFilter "expertAssociations"}}
119+
@invertFilter={{perform @invertFilter "expertAssociations"}}
120+
/>
121+
<Filter.Dropdown
122+
@label={{t "work-items.filters.distributionPlans"}}
123+
@selected={{@filters.distributionPlans}}
124+
@inverted={{@invertedFilters.distributionPlans}}
125+
@options={{this.distributionPlans}}
126+
@onChange={{perform @updateFilter "distributionPlans"}}
127+
@invertFilter={{perform @invertFilter "distributionPlans"}}
128+
/>
129+
<Filter.Dropdown
130+
@label={{t "work-items.filters.sections"}}
131+
@selected={{@filters.sections}}
132+
@inverted={{@invertedFilters.sections}}
133+
@options={{this.sections}}
134+
@onChange={{perform @updateFilter "sections"}}
135+
@loading={{this.questionOptions.isLoading}}
136+
@invertFilter={{perform @invertFilter "sections"}}
137+
/>
138+
</div>
137139
</Filters>
138140
</FilterModal>
139141

ember/app/utils/filters-component.js

+5
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ export default class FiltersComponent extends Component {
4141
}
4242

4343
const question = this.questionOptions.value.filterBy("slug", slug)[0];
44+
45+
if (!question) {
46+
return [];
47+
}
48+
4449
const options = question[question.__typename].edges;
4550

4651
return options.map((edge) => ({

0 commit comments

Comments
 (0)