283 Commits

Author SHA1 Message Date
Behrokh Satarnejad d924c255cf [69524] Primerize Types form configuration page (#22854)
* Create the section component

* Create the form configuration component

* Create a controller

* change form template

* Use primer dialog for reset to defaults button

* show WP configuration modal while creating a related WPs table

* Fix the drag and drop functionality without save button

* Fix renaming functionality

* Use generic drag and drop in form configuration and move all client side action handling to server side

* Fix embedded query form configuration regressions

* Add data test selectors to all elements that we used for test

* update the current tests with the new implementations and design

* Add new tests for new controller of sections and rows

* WP quesry row should only have edit quesry action

* Update transformer spec regarding the new changes

* Fix the failing test in reset form configuration and some tests for actions

* Fix rubocop errors

* Fix eslint errors

* Add spec for removing a section

* Use condensed border boxes

* fix failing specs

* fix failing specs

* Switch the buttons in form configuration component

* Create the section at the top of the list

* Instead of using UUID, use the name of the group as the key

* Add missing check for EE for section actions

* Remove angular components

* Use action list instead of a border box for left side panel

* Reduce the margin between the right side panel and sub header, add some space to the query table left side, span to the whole available space

* Show validation errors while updating and creating a section

* Use a danger dialog for reset to default

* Add a confirmation for removing the section

* Align items in the row

* Use test_selector instead of data-test-selector

* Create move_action in rb file

* Create move_action in rb file

* Simplify section component

* Simplify form configuration component

* Remove dialog for rename and delete section on missing EE

* Create a component for inactive attribute list

* Create a separate component for reset dialog

* Remove EE feedback dialog

* Remove form partial which is not needed anymore

* Remove unused js strings

* Update using update_via_turbo

* Remove form configuration rows controller

* Create a blanksalte component

* Fix failing specs

* Fix failing specs

* Fix failing specs

* Remove unused translation strings

* Align form configuration section routes with actual create flow

* Change section to group

* Change section to group in services and controllers

* Change section to group in en.yml

* Fix rubocop errors

* Move the query group persistence assertion from the JS feature spec
to the synchronous form configuration groups controller spec.

* Reuse query service result in embedded query build

* Keep inactive attribute filter after turbo list refresh

* Extract form configuration group edit state into form model

* Fix the failing test

* Potential fix for pull request finding 'CodeQL / Potentially uninitialized local variable'

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Rename inactive attribute component inputs

* Refine reset dialog wording for form configuration

* Use direct Turbo action for adding attribute groups

* Reuse generic filter-list controller for inactive attributes

* Remove focus impelementation in ts

* Group form configuration Stimulus controllers under one namespace

* Use turbo request service in form configuration controller

* Clarify legacy group key normalization in form config contract

* Replace inactive attribute list wrapper via turbo stream

* Extract duplicate untitled group key generation into Type::FormGroup.next_untitled_key

* Auto-generate untitled group name on create instead of returning an error

* Avoid mixed return types in form config group create service

* Extract shared form configuration group service behavior into concern

* Fix spacing for the last group and italic font for the placeholder rows

* Replace Angular no-results component with Primer Banner on form configuration page

* Hide dropped element immediately to prevent flickering before Turbo Stream response

* Reload type before rendering create error to prevent duplicate groups

* Await service initialization before use to prevent potential race condition

* Replace sleep calls with deterministic waits in form configuration spec

* Handle malformed JSON and invalid query errors gracefully in form configuration update

* Make query group label a clickable button and empty group hint italic

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2026-05-13 12:56:18 +02:00
Alexander Brandon Coles 44b434e328 [#73798] Remove scrum_projects feature flag
Make Backlogs use the sprint-based behavior unconditionally and
remove the old feature-flagged branches from controllers, routes,
representers, and supporting helpers.

Update the affected Backlogs specs and PDF export expectations to
match the permanent sprint model and keep list reordering stable when
moving work packages between backlog and sprint scopes.

https://community.openproject.org/wp/73798
2026-04-17 09:47:10 +01:00
Tobias Dillmann eb9f8f8bc4 Reapply changes from #22641 2026-04-08 15:40:00 +02:00
Henriette Darge 6732b9fd00 Primerize the myAccount NotificationsForm 2026-03-27 11:31:51 +01:00
Henriette Darge 35d481edb7 Pimerize the reminders form 2026-03-26 14:41:54 +01:00
Tomas Hykel dd804dcb9c Merge remote-tracking branch 'origin/dev' into feature/71896-change-identifier-with-semantic-identifiers 2026-03-19 01:21:19 +01:00
Klaus Zanders 9b5d8af58b Allow nesting Groups in the UI 2026-03-17 09:56:38 +01:00
Tomas Hykel 7bf353cce9 add a missing permitted param 2026-03-12 22:44:17 +01:00
Tobias Dillmann 3761f14288 [#71250] Backlog view can render a sprint
[#71250] Draft: edit_dialog for sprints

# Conflicts:
#	modules/backlogs/lib/open_project/backlogs/engine.rb
2026-03-09 13:24:50 +01:00
Ivan Kuchin d746efca66 permit custom comments for projects 2026-02-25 16:00:31 +01:00
Ivan Kuchin e1f5efcf71 manage has_comment 2026-02-25 16:00:15 +01:00
Oliver Günther 3552df22a6 Implement attribute help text caption 2025-11-25 22:06:38 +01:00
Dombi Attila 3d3e7d90a9 Merge branch 'dev' into feature/68856-project-create-separate-template-page 2025-11-21 20:31:13 +02:00
Klaus Zanders ab33a1a94c add custom action and service to assign role to add side effects 2025-11-20 10:21:52 +01:00
Dombi Attila 3bba5bcd1c Merge branch 'dev' into feature/68856-project-create-separate-template-page 2025-11-19 22:23:31 +02:00
Dombi Attila 40a64f2a5b Remove copy options when creating from template, store the step in a hidden field for validations, display the description field. 2025-11-19 12:49:06 +02:00
Klaus Zanders d4b7043b76 Allow assignment of role_id when editing user custom field 2025-11-18 10:02:17 +01:00
Oliver Günther cacc7e8090 Primerize invitation dialog 2025-10-21 10:01:23 +02:00
Ivan Kuchin dd381f91da Merge pull request #20114 from opf/implementation/64527-recalculate-if-a-calculated-value-cf-or-one-referenced-by-a-calculated-value-cf-is-enabled-disabled-in-a-project
Implementation/64527 recalculate if a calculated value cf or one referenced by a calculated value cf is enabled disabled in a project
2025-09-17 13:52:07 +02:00
Ivan Kuchin 49ee96a500 use value parameter to ensure toggling to the correct state in project custom field mapping 2025-09-16 16:25:49 +02:00
Kabiru Mwenja b1375a2992 Use 'force' terminology for theme contrast preferences
Changes attribute names from enable_auto_*_contrast to force_*_contrast
to better match existing UI terminology and differentiate from single
theme contrast settings.
2025-09-16 17:03:53 +03:00
Kabiru Mwenja 740bedb084 Add "Increase contrast" checkboxes for "Light high contrast" and "Dark high contrast" that force high contrast in Automatic mode
https://community.openproject.org/work_packages/66396
2025-09-13 12:41:05 +03:00
Alexander Brandon Coles 4c55748cd8 [#66122] Initial server rendered widgets support
Provides Project Status (BETA) widget as a Reference Implementation -
this widget is currently based on the design of the Status form on the
Project Settings > General page.

In detail:

- introduces a base `WidgetController` from which widget implementations
  should inherit.
- adds `Overviews::Widgets::ProjectStatusComponent` and accompanying
  specs. Reuses existing forms.
- adds `Overviews::Widgets::StatusController`` with custom `#update`
  action, routes and accompanying permissions.
- makes the Project Status (BETA) widget available by registering in ng
  `OpenProjectGridsModule` and Rails grid modules configuration.

N.B. The Project Status (BETA) widget is EXPERIMENTAL - it will require
further visual refinement (in a follow up work package).
2025-09-02 16:59:07 +01:00
Jens Ulferts 779f008ce0 Merge pull request #19760 from opf/implementation/66295-add-workspace_type-enum-to-projects-table
add workspace_type enum to project
2025-08-12 09:21:34 +02:00
Ivan Kuchin ebb6c4d50c remove custom_fields from project allowed params
custom_field_values is used and passing a list of scalars (not hashes)
will error in custom_fields= method
2025-08-11 13:48:50 +02:00
ulferts c1fd9520ac pass workspace_type on project creation 2025-08-04 16:43:49 +02:00
Oliver Günther 0cb9d86c12 Replace tabs with tab_nav 2025-07-23 15:59:49 +02:00
Alexander Brandon Coles 974de82cfd Fix submission when no copy options are checked
Ensures no asssocations/dependencies can be checked when the user copies
or creates a project from template.
2025-07-01 12:30:07 +01:00
Tobias Dillmann fb60aabbe4 [#64347] introduce formula field to custom field admin views 2025-06-25 10:13:10 +02:00
Henriette Darge 2dbeb00282 Introduce a new setting to disable the keyboard shortcuts 2025-06-23 11:21:51 +02:00
Alexander Brandon Coles 17b3f6cab5 Disable Metrics/AbcSize cop in PermittedParams 2025-06-12 01:06:11 +01:00
Alexander Brandon Coles 7266897a15 Update #create action to permit minimal params
Consolidates param filtering in `PermittedParams`.
2025-06-11 23:28:02 +01:00
Alexander Brandon Coles 43da2deedb Autocorrect Rubocop violations: PermittedParams 2025-06-11 23:25:47 +01:00
Dombi Attila 3580532215 [#61610] Split life cycle datepicker input fields into start, finish date and duration
https://community.openproject.org/work_packages/61610
2025-05-27 23:17:03 +03:00
Ivan Kuchin b902e5e399 replace UpdateContract and UpdateService 2025-05-05 12:10:31 +02:00
Alexander Brandon Coles cf3e62fa4c Fix Project permitted params 2025-04-28 14:26:14 +01:00
Dombi Attila fa3d9a1039 [#61610] Date picker to edit phases and phase gates of a project lifecyle
https://community.openproject.org/work_packages/61610
2025-04-15 18:24:01 +03:00
ulferts c62fb52750 rename to project_phases in permitted_params 2025-04-01 16:41:46 +03:00
ulferts 464e97499c rename steps and step definitions 2025-04-01 16:39:37 +03:00
Eric Schubert d61554501c [#60183] merge pattern collection on update subject pattern
- only replace `subject` key in pattern collection from within subject
  configuration controller
- fix tab selection so that default tab does not overwrite parameter
  tab due to order
2025-01-17 13:24:41 +01:00
Jan Sandbrink a61ab846d2 Very basically allow to update subject patterns
This allows to make use of the subject configuration UI a bit.

However, some things are still missing:
* patterns unrelated to subjects should not be touched
* We should validate that this can only be activated for enterprise (or when it was active before)
2025-01-09 13:18:54 +01:00
Dombi Attila 76d8899cec Use date and date_range in the life cycle steps dialog, automatically infer value in the datepicker, complete the dialog workflow. 2024-12-17 15:56:18 +02:00
Dombi Attila bf658585a1 Make form validations work for nested project life cycle attributes. 2024-12-17 15:54:16 +02:00
Eric Schubert 797e0ff7bd [#58865] fixed flaky custom fields specs 2024-11-13 14:47:50 +01:00
Dombi Attila 84505e2dfb [#58144] Show email on the UI for users with permission
https://community.openproject.org/work_packages/58144
Remove hide_mail flag and replace with :view_user_email permission checks
2024-10-28 09:09:56 +01:00
Oliver Günther ec234d2eda [#53620] Add OAuth application flow for builtin mobile app 2024-09-11 10:12:09 +02:00
Dombi Attila 9355fa1de3 Test admin-only boolean being saved correctly. 2024-08-07 15:38:28 +03:00
Ivan Kuchin 4911b8a149 remove years from copyrights (except for COPYRIGHT file) 2024-07-31 15:02:49 +02:00
Andreas Pfohl 6e777e6e6f Merge remote-tracking branch 'origin/dev' into implementation/54749-create-add-project-modal 2024-06-04 11:15:36 +02:00
Christophe Bliard 5e4766f072 Merge branch 'dev' into feature/49409-status-exclude-from-totals 2024-06-03 17:56:41 +02:00