92 Commits

Author SHA1 Message Date
Oliver Günther c660802146 Merge remote-tracking branch 'origin/release/17.3' into release/17.4 2026-05-06 09:19:25 +02:00
Oliver Günther 6877e29351 Validate current user password confirmation when changing passwords through API
https://community.openproject.org/work_packages/74335
2026-04-23 14:19:50 +02:00
Alexander Brandon Coles 1d4580fbb5 Merge branch 'dev' into merge-release/17.3-20260408042316
# Conflicts:
#	config/locales/crowdin/el.yml
#	modules/backlogs/app/forms/my/backlogs_form.rb
#	modules/backlogs/app/views/shared/_view_my_settings.html.erb
#	modules/backlogs/config/locales/crowdin/ru.yml
#	modules/backlogs/config/locales/crowdin/uk.yml
#	modules/two_factor_authentication/config/locales/crowdin/el.yml
#	modules/wikis/config/locales/crowdin/uk.yml
2026-04-08 10:19:16 +02:00
ulferts 1f78f5ae4d use preference service inside user update service - for backlogs as well 2026-04-02 10:01:24 +02:00
Henriette Darge deeb026431 Adapt tests to new reminders and notifications structure 2026-03-30 11:56:23 +02:00
Oliver Günther 69899243ce Add and adapt specs 2025-09-24 13:46:09 +02:00
Oliver Günther 8fee175faf Assign autologin session link, and use it to show and delete sessions 2025-09-24 13:46:09 +02:00
Pavel Balashou 1323927095 [#65068] Add deleted status to user.
https://community.openproject.org/work_packages/65068
2025-08-27 09:53:37 +02:00
Pavel Balashou 2db9ef305c [#63912] Support multiple authentication provider user links
https://community.openproject.org/work_packages/63912
2025-06-03 10:13:00 +02:00
Jan Sandbrink 0b87e7543f Freeze string literals in specs
Rolling out frozen string literals further by freezing all
string literals in core specs.
2025-05-05 09:29:55 +02:00
Oliver Günther 216def9bdc Remove references to StructuredMeeting, Agenda and Minutes 2025-04-10 08:34:20 +02:00
Oliver Günther edc0a2a47e Replace show_banners with hide_banners
Encode features in the configuration API, instead of relying on a boolean yes/no flag
2025-04-07 10:55:21 +02:00
Tobias Dillmann 1387fd3d96 fix typo, add mini spec 2024-10-28 09:10:01 +01:00
Dombi Attila e065e1a4c3 Fix specs 2024-10-28 09:09:57 +01:00
Oliver Günther 524a4597a3 Add claims 2024-10-21 13:03:50 +02:00
Pavel Balashou e0c5dd3ef6 Update OIDC configuration UI. 2024-10-21 13:03:46 +02:00
Oliver Günther 9586b06db3 Merge pull request #16331 from opf/chore/verify_partial_doubles
Set verify_partial_doubles=true
2024-08-06 10:54:18 +02:00
Oliver Günther 1df0c00c2a Adapt affected specs to opt-out of double verification 2024-08-05 19:31:30 +02:00
Ivan Kuchin 4911b8a149 remove years from copyrights (except for COPYRIGHT file) 2024-07-31 15:02:49 +02:00
Ivan Kuchin b10e6d718c rubocop autocorrect 2024-06-24 19:01:59 +02:00
Oliver Günther d9a7194f5a Don't clear invitation tokens on login 2024-06-11 08:27:14 +02:00
Oliver Günther 99e915b2c9 Changing mail address should invalidate tokens on top of session 2024-06-10 15:20:27 +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
Oliver Günther 6210b085fb Move successful_login out of the retained session yield
Ensure that the successful_login hooks receive all retained values from the session

https://community.openproject.org/work_packages/52185
2024-01-18 11:06:45 +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
Oliver Günther aea036079f Proper logout tests 2023-11-23 10:45:54 +01:00
Oliver Günther 885836184a Rework autologin cookie to not be unique 2023-11-22 16:36:07 +01:00
Dombi Attila 9fbe0729b8 Remove the default admin shared context as it is not necessary. 2023-11-01 15:04:45 +02:00
Dombi Attila fbb2844069 [#50208] Disabling the default admin user is possible via a system user (#14057)
* [#50208] When disabling the default `admin` user, after an update two `admin` users exists in the database.

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

* fix specs
2023-11-01 08:29:36 +01:00
Oliver Günther 569e759182 Add test for correctly setting limit_self_registration 2023-10-12 13:54:03 +02:00
Oliver Günther 7bdfbc5473 Add test for added error when omniauth provided user is being limited 2023-10-11 16:50:59 +02:00
Oliver Günther 47b32dd5cc Move use_graph_api and self_registration OIDC options into configuration 2023-10-11 16:50:53 +02:00
Aaron Contreras 90dca8c8c8 Update User::ChangePasswordService to activate the current user
* Updates the service to activate the user only if it's currently
  in an "invited" status.

* Updates the service spec.
2023-09-04 09:26:30 -05:00
Oliver Günther e32d2d0058 Remove AuthSource base namespace, model 2023-07-27 08:16:43 +02:00
Oliver Günther 5756195947 Basic session management table 2023-06-21 15:54:24 +02:00
Christophe Bliard 4c2a9d0aa8 Enable RSpec zero monkey patching mode
The plan for RSpec 4.0 is to disable monkey patching.

See https://github.com/rspec/rspec-core/blob/main/features/configuration/zero_monkey_patching_mode.feature for details.
2023-05-31 19:22:29 +02:00
Aaron Contreras 89addda29a Maintain constructor signature (*classes)
In order to keep this constructor flexible and be able to simply
provide class names that warrant replacing, performed a refactor
on the internal works.

I don't believe recursion is strictly necessary and if anything, I feel
a simple "hijack" or "focus" on replacements one by one without the need
for instantiation is simpler to wrap my head around.

Made sure to add some specs to cover both constructor signatures and
expected behavior.
2023-05-15 11:04:02 -05:00
Aaron Contreras 03387ca418 Refactor replacement-finding recursion
Account for multiple column replacements in one model by
identifying unique replacements at a

class + column + condition

level
2023-05-15 11:03:53 -05:00
ulferts 1cf42e1a93 Merge branch 'dev' into fix/merge_wiki_content_into_page 2023-04-28 09:27:18 +02:00
Markus Kahl d6e63adbe2 invalidate recovery tokens after password change
so that unused recovery tokens cannot be used to change
a user's password after they changed it in-app already
2023-04-27 15:48:43 +02:00
Markus Kahl faafa84608 allow to limit self registration for openid connect providers 2023-04-20 14:39:26 +02:00
ulferts a328940c3a merge wiki_content into page 2023-04-05 10:05:20 +02:00
Christophe Bliard aa23106c11 lint: autocorrect RSpec/FactoryBot/ConsistentParenthesesStyle
command is

    rubocop -A --only RSpec/FactoryBot/ConsistentParenthesesStyle modules spec
2023-03-07 15:04:32 +01:00
ulferts 046db16aee add non null constraints on data_id/type polymorphic foreign key
An OP instance reported a lot of records where both are null. It is still unclear how this has happend.
Having an explicit not null is not as good has having a proper foreign key constraint, which however cannot be modelled on polymorphic
relations in SQL. And the invalid records reported by the instance should at least be prevented.
2023-03-06 10:13:08 +01:00
Christophe Bliard 85b3258a29 Autocorrect with some rubocop cops
RSpec/Rails/InferredSpecType and Style/RedundantConstantBase

rubocop --autocorrect-all --only RSpec/Rails/InferredSpecType,Style/RedundantConstantBase spec modules/*/spec
2023-01-13 14:28:59 +01:00
Christophe Bliard 21a696ef9b Update copyright information for 2023 2022-12-30 15:51:26 +01:00
ulferts e35791503d ensure default language is applied on new user record 2022-11-29 16:31:35 +01:00