156 Commits

Author SHA1 Message Date
Oliver Günther 5bf27bb868 Merge remote-tracking branch 'origin/release/17.4' into dev 2026-05-05 12:29:43 +02:00
ulferts 222639f8d4 include filter working with portfolios and programs 2026-04-30 10:18:09 +02:00
OpenProject Actions CI 2c218d839a Merge branch 'release/17.4' into dev 2026-04-23 10:50:04 +00:00
Henriette Darge ca93c77bd6 Skip TeamPlanner in onboarding tour when there is no EE token available 2026-04-22 14:04:03 +02:00
Henriette Darge 1225a30fca Adapt tests to removed uiRouter 2026-04-21 09:15:05 +02:00
Henriette Darge 22a6d4e8b4 Create rails based split create 2026-04-21 09:15:05 +02:00
Henriette Darge cbf0fac8d3 Remove uiRouter from Calendars 2026-04-21 09:15:05 +02:00
Dombi Attila 27ce813500 Introduce EditFormWorkPackageChangeset to enforce custom field validation when editing work packages in angular. 2025-10-14 12:01:58 +02:00
Ivan Kuchin 75f213d528 fix enterprise plan expectations 2025-09-19 15:41:57 +02:00
Christophe Bliard 17447f3cc8 Fix flaky spec
spec: `./modules/team_planner/spec/features/team_planner_add_existing_work_packages_spec.rb:176`
failing job: https://github.com/opf/openproject/actions/runs/15991857052/job/45107671723

Moving by 800 pixels was too imprecise: it was moved to Wednesday
instead of being moved to Tuesday as intended. It was ok when the
element was not fully loaded, but not when it was. Probably its
dimensions changed a bit and that was enough to fall on the wrong day...

The fix is to drag from the card to the target date column header, with
an y offset of the header's height. This way it's dragged exactly on the
day area below the day header. It works even if we change the default
dimensions of everything.
2025-07-01 11:49:29 +02:00
Behrokh Satarnejad 8565925b17 [64112] Create an angular breadcrumb as placeholder for the toggle button (#19229)
* create a breadcrumbs angular component

* change the styles of breadcrumbs component so it look like other breadcrumbs

* add breadcrumbs component to the partition query space component

* add breadcrumbs to boards

* add breadcrumbs to team planners and calendar

* add breadcrumbs to ifc viewer and wps and gantt pages

* add feature specs for modules that have breadcrumbs component

* add mobile view for breadcrumbs component

* fix mobile styles in bcf module

* remove margin-bottom from breadcrumb mobile since it has some space from toolbar title

* add a section for active breadcrumb

* move breadcrumb items for gantt and wp to a separate method

* fix urls for work packages and gantt pages when there is no project selected

* use only op- classes

* use existing translations and use capybara accessible selectors

* change gantt translation key

* fix failing test in boards

* add section header of side bar menu to the breadcrumb last item

* change css BEM styles and change the projectWorkPackages path to workPackages path

* undo css changes in bcf view

* fix failing tests

* change target of anchors

* Use real space instead of a margin so that screen readers can read it out correctly

---------

Co-authored-by: Henriette Darge <h.darge@openproject.com>
2025-06-25 15:27:21 +02:00
Oliver Günther a9abaed22d Extend banner for team planners 2025-06-12 13:59:00 +02:00
Christophe Bliard feaf2a8e6d [63475] Set dates when dropping work packages in team planner
When drag&dropping a work package in the team planner from the left
panel, the dates should be set, especially if they were not set
initially. This differs from the behavior of the calendar module where
drag&dropping from one date to another should keep any unset dates.

Also, only start date and duration are set to be able to deal with
non-working days.

That use case was hopefully caught by a failing feature spec:
modules/team_planner/spec/features/team_planner_add_existing_work_packages_spec.rb:135.
I added another spec to ensure that non-working days are handled correctly.
2025-05-19 09:56:55 +02:00
Oliver Günther e27ac494d3 Consistent naming of upsell, not upsale 2025-04-24 15:52:34 +02:00
Oliver Günther 075eb87719 Fix onboarding tour trigger 2025-04-07 10:55:26 +02:00
Oliver Günther 8945491e32 Allow banner matcher to receive plan 2025-04-07 10:55:26 +02:00
Christophe Bliard 2d7288d317 [59539] Make work packages manually scheduled by default
The `schedule_manually` column is also non-nullable now.

This includes the following changes:

- Automatically scheduled parent dates are and `ignore_non_working_days`
  attributes are now always derived from children's values, even if the
  children are scheduled manually.

  It's more natural. Without that, adding a child to a work package
  would not change the parent's dates.

  As a consequence, the parent can start on a non-working day if one of
  its children is manually scheduled, ignores non-working days, and
  starts on a non-working day. That's why the parent's
  `ignore_non_working_days` attribute is now also derived from all its
  children regardless of the scheduling mode.

  If the parent is manually scheduled, its dates and it's ability to
  ignore non-working days will still be defined independently from its
  children.

- Fix tests broken by scheduling mode being manual by default.

  The tests had to be adapted to explicitly set scheduling mode to
  automatic for followers and parents, and sometimes even follower's
  children. Without it, work packages would not be rescheduled
  automatically.

- Replace schedule helpers with table helpers.

  Schedule helpers helped well, but table helpers are more flexible and
  support more column types.

- Add "days counting" and "scheduling mode" columns to table helpers.

  "days counting" to set `ignore_non_working_days` attribute.
    - "all days" value maps to `ignore_non_working_days: true`.
    - "working days" value maps to `ignore_non_working_days: false`.
  "scheduling mode" to set `schedule_manually` attribute.
    - "manual" value maps to `schedule_manually: true`.
    - "automatic" value maps to `schedule_manually: false`.
2025-02-25 09:12:22 +01:00
Oliver Günther b214c61315 Reset some specs 2025-01-14 13:23:57 +01:00
Oliver Günther f791d33b72 Replace specs 2025-01-14 10:20:35 +01:00
Oliver Günther f2f94d6020 Merge pull request #16934 from opf/feature/53809-update-pageheaders-and-subheaders-in-the-rails-global-index-pages
[53809] Fix issues in PageHeaders & SubHeaders in the (rails) global index pages
2024-10-14 10:14:56 +02:00
Henriette Darge efe54cf8ca Use Primer Button for "AddButtonComponent" 2024-10-11 09:46:24 +02:00
Dombi Attila 0dbc52f235 Fix specs 2024-10-08 12:42:36 +03:00
Christophe Bliard d8d0a2be14 Try to fix another flickering test
modules/team_planner/spec/features/query_handling_spec.rb sometimes
misses the dropdown, because it does not wait long enough after adding a
filter, and once the filter is applied, the page state is reset and the
dropdown is closed, which leads to the error.
2024-09-06 17:24:54 +02:00
Ivan Kuchin 4911b8a149 remove years from copyrights (except for COPYRIGHT file) 2024-07-31 15:02:49 +02:00
Henriette Darge 142b8834af Re-add queryId to pass to the Submenu target url . Otherwise the wrong element will be highlighted in the submenu. This was accidentally removed during the refactoring of the boards submenu 2024-06-28 14:56:04 +02:00
Henriette Darge 357ca0f396 Replace angular sidemenu with rails based Submenu component for TeamPlanner module 2024-06-20 14:06:04 +02:00
ulferts 3b2121f733 Revert "Merge remote-tracking branch 'origin/release/13.4' into dev"
This reverts commit 40b2bbeb09, reversing
changes made to b4c6cb17cc.
2024-03-21 11:31:17 +01:00
Ivan Kuchin 7787e457a3 Revert "Merge branch 'dev' into release/13.4"
This reverts commit a901541269, reversing
changes made to e573ca00b7.
2024-03-20 20:19:08 +01:00
Ivan Kuchin 9e4934cd0a change quotes using rubocop --only Style/StringLiterals,Style/QuotedSymbols -a 2024-03-20 18:05:22 +01:00
Dombi Attila b4cb96f6b6 Bug/46490 number of displayed assignees in team planner wrongly restricted by objects per page (#14978)
* [#46490] Number of displayed assignees in team planner wrongly restricted by "objects per page"

https://community.openproject.org/work_packages/46490

* Refactor team_planner.add_assignee method to include retry_block

* Separate helper method to check for searching and adding

---------

Co-authored-by: Oliver Günther <mail@oliverguenther.de>
2024-03-12 09:45:48 +01:00
Henriette Darge 8ceeca8cb1 Adapt onboarding tour to new Gantt module 2024-02-01 16:32:24 +01:00
Henriette Darge b69679e96c Remove the feature flag for the separate gantt module 2024-02-01 14:15:03 +01:00
Oliver Günther 5d31cbb999 Use date display field for card dates (#14619)
* Use date display field for card dates

https://community.openproject.org/work_packages/51858

* Allow overriding which format to use

* Fix rendering of only start and due date within combined date field

* Use display field for team planner too

* Restore placeholders

* Render due date instead of start date to get highlighting
2024-01-25 13:42:55 +01:00
Christophe Bliard 8fa8584538 Run rubocop --autocorrect on all files
Only the safe cops have run. rubocop version is 1.59.0.
2024-01-05 15:27:09 +01:00
Christophe Bliard c795874f7f Update copyright year for 2024
command used: `rg -l 'Copyright \(C\) 2012-202\d the OpenProject' | xargs -n 100 sed -i -r 's/Copyright \(C\) 2012-202. the OpenProject/Copyright (C) 2012-2024 the OpenProject/'`
2024-01-02 16:23:54 +01:00
Klaus Zanders 624fd26215 decrease polling interval and add a note why we add it 2023-12-13 16:32:22 +01:00
Klaus Zanders 7ab49f9420 Add settings for the notification polling interval for tests that rely
on it
2023-12-13 16:00:41 +01:00
bsatarnejad e10000f465 adjust tests for removed scrum tour 2023-11-28 14:13:37 +01:00
Oliver Günther 129a44bf99 Set monday as start of week to fix team planner specs 2023-11-20 07:37:21 +01:00
ulferts 5b2bc41f41 Merge remote-tracking branch 'origin/dev' into easier-factory-role-setup 2023-10-12 12:09:27 +02:00
ulferts 2b2abf864a introduce ProjectRole model 2023-10-09 14:34:20 +02:00
Klaus Zanders a256fd85ac Fix a bunch of more usages of member_in_project that was overlooked 2023-10-09 10:40:45 +02:00
Aaron Contreras 28c188d5cd Fix race-condition in spec
There was a race-condition where the saving of the query was happening
as the update request for the added filter was also happening, causing
the frontend to not register the save as a successful creation but
as a successful update (from the added filter), causing the spec to
fail under conditions where it's execution was too fast.

The bcf_view_management spec is behaving a bit differently than others.
After adding the first filter, the filter count is still expected to
be "1" for some reason and starts incrementing with every other filter
added from then on. An injectable `initial_filter_count`.

**NOTE**: This is only a patch to aid in the flakiness that everyone
is experiencing but ultimately I would expect the "Save" button and
the "Save as" button to be disabled until every already performed
request is done (which would prevent this from happening to some users
just performing things at Capybara speed, or for some users under high
latency regions).
2023-09-15 14:33:43 -05:00
Aaron Contreras 048ee898c7 Remove redundant login_as
`current_user` is already adding a `before` hook where the given user
is logged in. This causes a double login that just slows down the test.
2023-09-15 12:27:06 -05:00
Aaron Contreras 7ee330b88a Lint: Use symbol style for metadata
Addresses "Rubocop: RSpec/MetadataStyle"
2023-09-15 12:25:44 -05:00
Aaron Contreras b4189e01a1 Chore: Add frozen_string_literal: true magic comment 2023-09-15 12:25:22 -05:00
Oliver Günther 92259181ce Adapt specs to use introduced helpers 2023-09-13 09:02:42 +02:00
Aaron Contreras 12785d8a88 Leave TODO comment to take care of sorting behavior 2023-08-16 09:33:14 -05:00
Aaron Contreras cc1b7456ea Add expectations for sorting behavior in Team Planner Index Page 2023-08-16 09:33:12 -05:00
Aaron Contreras 5d374a1dcb Refactor: Clean up Team Planner Overview specs
This is simpler to grok through and would help me write the sorting
specs in an easier and clearer way.
2023-08-16 09:33:12 -05:00