46 Commits

Author SHA1 Message Date
Alexander Brandon Coles e7a01b741f [OP-19415] Convert FilterForm to ViewComponent
Replaces `Filters::FilterForm` (an `ApplicationForm` subclass) with
`Filters::FilterFormComponent` (an `ApplicationComponent`). The old form
overrode `:nodoc:` Primer hooks (`before_render`, `perform_render`) and
read semi-public ivars (`@builder`, `@view_context`). The new component
receives the builder as an explicit keyword arg and uses a standard ERB
template, reducing Primer internal coupling from five semi-public APIs
to one (`FormList`).

https://community.openproject.org/wp/OP-19415
2026-06-02 18:50:35 +02:00
Klaus Zanders 1f00123aa4 Extract a Filters::FilterForm that can be re-used in other primer forms 2026-05-29 09:28:02 +02:00
David F 3897c25139 Move autocomplete_options from FilterComponent to filter classes. wp/74380
As per review feedback from oliverguenther.
2026-05-26 08:14:56 +02:00
David F ebb76038b4 Turn Meetings filters into lazy-loaded auto-submitted ones. wp/74380 2026-05-26 08:14:56 +02:00
David F af60b3f2b8 Align advanced filters with last mockups version. wp/74380 2026-05-26 08:14:56 +02:00
David F 1d1a31f86a Clean up eventually useless code for advanced filters. wp/74380 2026-05-26 08:14:56 +02:00
David F fe39ccec97 Improve input group markup for advanced filters. wp/74380 2026-05-26 08:14:56 +02:00
David F 1ce489a2e0 Turn partials into form components. wp/74380 2026-05-26 08:14:56 +02:00
Henriette Darge 3dd3d91081 Adapt filter component to new ngSelect syntax 2026-04-22 08:01:45 +02:00
Tobias Dillmann 379d7e2673 [#68702] Project user filter also includes groups and placeholder users
[#68702] Clean up custom field filter spec

[#68702] Clean up Project table spec

[#68702] Add project list filter spec for groups and placeholder users

[#68702] User filter matches group membership

[#68702] Add specs for group membership filtering
2026-01-14 14:05:07 +01:00
Alexander Brandon Coles e3d61b5d6e [#70420] Rework filter close buttons as IconButtons
Fixes the following ERBLint errors: `GitHub/NoTitleAttribute`,
`LinkHasHref`.
2026-01-12 11:46:58 -03:00
ulferts 666593c3c5 simplify options handling 2025-12-16 09:22:13 +01:00
ulferts ffcd4cdfbc consolidate lazy loading and filter components 2025-12-12 16:22:12 +01:00
ulferts c1015d5b4e harmonize place deciding expanded filters 2025-12-12 16:22:09 +01:00
Eric Schubert e22b8b3d74 [#69014] fix hierarchy display in project attributes filter
- https://community.openproject.org/work_packages/69014
- return custom field filter items with depth and label without path
2025-11-14 14:43:35 +01:00
Eric Schubert 503176a5e9 [#68794] enable hierarchy filters in project lists
- https://community.openproject.org/work_packages/68794
- add hierarchy filter to autocompleted filters
- add weight and score to filter value label
- fix some eslint issues in filter form controller
2025-11-10 16:22:45 +01:00
Alexander Brandon Coles 51213056b0 Replace .hidden-for-sighted with Primer's .sr-only
See (docs): https://primer.style/css/storybook/?path=/story/utilities-layout--screen-reader-only
See (source): https://github.com/primer/css/blob/main/src/utilities/visibility-display.scss#L96
2025-07-21 11:25:24 +01:00
Dombi Attila bb480c6f8a Pass the active filter when constructing the additional_attributes for the autocompleters.
Previously the inactive filter was passed to the additional_attributes,
this leading to values not being initialized correctly from the active
filters.
2025-04-08 23:39:14 +03:00
Dombi Attila 137875b9c1 [#62386] Project attribute list entries not displayed when applied as filter in project list
https://community.openproject.org/work_packages/62386
2025-04-08 23:39:09 +03:00
ulferts f5571852ad Merge remote-tracking branch 'origin/release/15.4' into dev 2025-04-02 17:50:08 +02:00
ulferts bd9ece0a71 avoid long list of ids in filter
The endpoint filtered against, /api/v3/principals, already has the visible scope attached to it. Therefore, no non visible principals can be retrieved anyway. Handing in the ids from the client does not provide additional filtering.
2025-04-02 15:23:31 +02:00
Jens Ulferts dc16d27c71 Merge pull request #17951 from opf/feature/59183-filters-for-stages-and-gates-on-project-list
Feature/59183 filters for stages and gates on project list
2025-03-07 11:30:21 +01:00
Dombi Attila d9a03f281a Refactor filter allowed_values 2025-03-05 12:45:08 +01:00
Dombi Attila 290a31256f Update list filter strategy to use the second value from the allowed_values 2025-03-05 12:45:08 +01:00
Dombi Attila 453d55e089 Use version groups for the version html autocompleters. 2025-03-05 12:45:08 +01:00
Dombi Attila cf9d2197cc [#61398] Version autocompleter for filter values on the project list
https://community.openproject.org/work_packages/61398
2025-03-05 12:45:08 +01:00
ulferts d22228b5ec move logic into component 2025-03-03 13:26:25 +01:00
Dombi Attila da49d60f61 [#60521] Autocompleters for filter values on the project list
https://community.openproject.org/work_packages/60521
2025-02-18 14:27:00 +02:00
Ivan Kuchin 0f6a12da3a erb_lint auto fix layout 2025-02-11 18:49:20 +01:00
Dombi Attila 7df051b41e Solve perceived complexity warning from rubocop. 2025-01-30 15:50:32 +02:00
Dombi Attila cf61c98d85 Hide selected user names from the autocompleter. 2025-01-30 15:50:31 +02:00
Dombi Attila 226e332936 Clear up autocomplete options in the filter component. 2025-01-30 15:50:30 +02:00
Dombi Attila 41a8760521 [#60972] Autocompleters for user cf filter values on the project list
https://community.openproject.org/work_packages/60972
2025-01-30 15:50:29 +02:00
Dombi Attila 89ca681847 Undo unnecessary change 2024-08-26 13:51:53 +03:00
Dombi Attila 66c1956977 Add separate ProjectFilterButtonComponent 2024-08-26 13:51:52 +03:00
Dombi Attila 7dfbd5e8b5 Create advanced_filters and available_advanced_filters for Project 2024-08-26 13:51:51 +03:00
Dombi Attila eba8aa63bd [#55234] Always visible text filter in project list
https://community.openproject.org/work_packages/55234
2024-08-26 13:51:50 +03:00
Aaron Contreras 8e82fe6167 Merge branch 'dev' into project-index-turbofy 2024-08-16 10:50:30 -05:00
Ivan Kuchin ff9e80586c remove enterprise banner
Also from meetings filter, but we should not be displaying it there
anyway
2024-08-15 13:31:26 +02:00
Aaron Contreras 58edf3fdef Update filter counter as well when performing turbo requests 2024-08-14 12:21:04 -05:00
Ivan Kuchin 4911b8a149 remove years from copyrights (except for COPYRIGHT file) 2024-07-31 15:02:49 +02:00
Ivan Kuchin 8f08442c12 separate optional and required shared project filter 2024-07-12 13:52:03 +02:00
Klaus Zanders 1660fce6ef Manage some leftover copyright noticesthat still mention 2023 2024-07-03 08:42:09 +02:00
Henriette Darge 0f5822cd7e Extract filter logic of projectCustomFieldsMapping into a generic filter controller. Therefore, a separate folder for the filter controllers was created and the previous filtersController was named more specific and moved to that folder. 2024-06-11 12:56:19 +02:00
Henriette Darge 6ba2f34e09 Correctly check for filter params to decide whether the filter section should be opened 2024-06-04 12:19:28 +02:00
Henriette Darge 25917115ca Extract FilterButton from FilterComponent to be able to use them separately in the subheader 2024-05-31 14:17:48 +02:00