Commit Graph

378 Commits

Author SHA1 Message Date
MoxAmber
18b9d4158e Merge pull request #28498 from overleaf/as-login-noindex
[web] Add noindex to SSO login and login with query params

GitOrigin-RevId: 4c722f51bcd6f4d9b63ebbf584021284c7b5d569
2025-09-18 08:06:19 +00:00
Jessica Lawshe
d1b08f8352 Merge pull request #28402 from overleaf/jel-link-logged-in-async-local-storage
[web] Extend `AsyncLocalStorage` to SAML linking in route, clear `AsyncLocalStorage` on email updates, await analytics helper on email updates,

GitOrigin-RevId: 86a51e6800a4b954ff81a2d977edf1401064dda4
2025-09-17 08:05:30 +00:00
Andrew Rumble
819b2a3a46 Merge pull request #28367 from overleaf/ar-migrate-routermjs-to-zod
[web] migrate router.mjs to zod

GitOrigin-RevId: d3fc21a11351f3e2deb5011cd1beeb86286a300b
2025-09-16 08:05:26 +00:00
Andrew Rumble
48e726ec0d Convert to ES modules
GitOrigin-RevId: cce5cf005597e4b4a2192f2cb6591eb69d119e62
2025-09-09 08:06:41 +00:00
Andrew Rumble
ee882204c8 Rename files
GitOrigin-RevId: cd89001ff0a7768c5b547a27d57861e5ba3aac0d
2025-09-09 08:06:36 +00:00
Tim Down
03d55e1d5d Merge pull request #28246 from overleaf/td-ts-project-dashboard-jsdoc
Working JSDoc type annotations on project list controller

GitOrigin-RevId: b26833affb0fc2ecd38e869c2523e914eabe6548
2025-09-09 08:06:26 +00:00
Antoine Clausse
3d45cc601f [web] Add unlinking third-party logins ability from the admin-panel (#28201)
* Add `clearThirdPartyLogins`

Co-authored-by: Brian Gough <brian.gough@overleaf.com>

* Add a confirmation modal

* Show provider name from settings

* Replace "logins" by "identifiers" for consistency with current terminology

* Hide button if user has no third-party identifiers

* Update tests

* Add test "unlinks Google account"

---------

Co-authored-by: Brian Gough <brian.gough@overleaf.com>
GitOrigin-RevId: 45b9b5ce6fa2cbeba9d4daeda97cd6e500c8266c
2025-09-05 08:05:12 +00:00
Andrew Rumble
9bda769b9e Register email changes with analytics when appropriate
GitOrigin-RevId: 3261df7f1fd4a2c032967731bcc2a61ffb89f094
2025-08-29 08:05:21 +00:00
Jessica Lawshe
c1c5b0d0ce Merge pull request #27834 from overleaf/ii-domain-capture-not-in-group-redirect
[web] Redirect to domain capture page

GitOrigin-RevId: 15d2b8046beb5a40fc4937c337ee9655abaed8fd
2025-08-20 08:06:16 +00:00
roo hutton
cd2fe857ed Merge pull request #27757 from overleaf/rh-secondary-email-alert
Only send security alert email after successful addEmailAddress call

GitOrigin-RevId: 391e613b0f855a5d2187b1da87355e0dbb10044d
2025-08-13 08:06:34 +00:00
Jakob Ackermann
9f80a31d85 [web] add config option for project/user hard deletion delay (#27725)
GitOrigin-RevId: db8030d6c8a3cdf8490edafcfa436cdbcd80fc28
2025-08-13 08:06:17 +00:00
Simon Gardner
3d09f34767 Merge pull request #27445 from overleaf/slg-improve-domain-matcher-error
Improve domain matcher error message

GitOrigin-RevId: 8f07a8e27854637cb931f852e6c59d4960caa33b
2025-08-05 08:06:16 +00:00
Thomas
20c30f6b94 Use AsyncLocalStorage to cache userFullEmails on the request, avoiding duplicated calls to the affiliations endpoint (#27542)
* Use AsyncLocalStorage to cache userFullEmails

* Rename temporary fakeUser override to avoid conflicts

GitOrigin-RevId: 3a74816f677c1357293b0d46f245b4cfc499f2fa
2025-08-05 08:06:04 +00:00
Antoine Clausse
060825f3a7 [web] Fixup: Remove unused sendReconfirmation (#27486)
Wrong merge caused this error in https://github.com/overleaf/internal/pull/27423 (37c8fa1)

GitOrigin-RevId: 3b0033f69fc872439c3f2ae37429fb05d9d69af1
2025-07-30 08:06:55 +00:00
Antoine Clausse
c9c26f7f52 Remove endpoint /user/emails/send-reconfirmation (#27423)
GitOrigin-RevId: bd96d749175248cba83eb07c00dab7e7a9f819da
2025-07-30 08:06:38 +00:00
Antoine Clausse
924aa6db23 [web] Remove the unused endpoint /user/emails/resend_confirmation (#27416)
* Remove the unused endpoint `/user/emails/resend_confirmation`

* Remove exported middleware `resendConfirmationEmail`

* Revert "Remove exported middleware `resendConfirmationEmail`"

This reverts commit 7989bf25465dbc9b68c9d1af0d64d1097a747b55.

GitOrigin-RevId: 8054c6f217a734881093f78599a7b2be29436793
2025-07-30 08:06:33 +00:00
Antoine Clausse
f8e643570c [web] Remove the endpoint /user/emails (POST) (#27418)
* Remove `/user/emails` (post)

* Update test

GitOrigin-RevId: 3979820935209ca36fdd8fabc016ad55d4858cef
2025-07-30 08:06:29 +00:00
Antoine Clausse
f19b603b33 [web] In tests, update email confirmation to use the 6-digits flow (#27069)
* Rename `sendExistingSecondaryEmailConfirmationCode` to `sendExistingEmailConfirmationCode`

* Deduplicate error handling into `throwIfErrorResponse`

* Update `userHelper.confirmEmail` to use the 6-digits flow

GitOrigin-RevId: 91bdf7b185407b58520ca6b2aa1a7c71bdd23bc8
2025-07-18 08:06:18 +00:00
Rebeka Dekany
e29662c951 Tear down bs5-auth-pages feature flag (#27035)
* Remove auth-pages-bs5 test assignment setPassword

* Remove auth-pages-bs5 test assignment passwordReset

* Remove auth-pages-bs5 test assignment primaryEmailCheck

* Remove auth-pages-bs5 test assignment reconfirm

* Remove - bootstrap5PageStatus = 'enabled'

* Remove primary-email-check.less

* Fix spacing

* Remove unused translations

* Removed unused SplitTestHandler

* Update password_reset_sentence_case to password_reset

GitOrigin-RevId: d5a5c9a1576f325186aa103c4b7ad8fb819b790a
2025-07-14 08:05:56 +00:00
Miguel Serrano
177db2826c Merge pull request #26070 from overleaf/msm-disable-dropbox
[web] Disable Dropbox Capability

GitOrigin-RevId: 5f91d2918bf3b88e52f4d27c828a4715f9b88629
2025-06-20 08:05:20 +00:00
Jakob Ackermann
0fc42037f0 [web] fetch token users in a single db query per access mode (#26078)
* [web] skip db query when getting empty list of users

* [web] fetch token users in a single db query per access mode

GitOrigin-RevId: fa5d9edcb761bd5d5e5ea07d137a5a86efdbdd5c
2025-06-06 08:05:42 +00:00
Brian Gough
7e15130002 Merge pull request #25467 from overleaf/bg-fix-error-handling-when-accounts-are-deleted
improve logging deleted when user data is expired

GitOrigin-RevId: ac85b66c503184a815348a11a730fb68a504d80a
2025-06-05 08:06:27 +00:00
M Fahru
1d467ae218 Merge pull request #25967 from overleaf/mf-sync-email-update-to-stripe-account
[web] Sync Stripe customer email when user update their primary email in account setting

GitOrigin-RevId: a5f4b4e960d2c9d4ba96a2b3036329f4868e1bb8
2025-06-04 08:07:23 +00:00
Brian Gough
852042f65a Merge pull request #26050 from overleaf/em-saml-user-query
Improve index usage for SAML user query

GitOrigin-RevId: 189aba60a12c8369a0062e7df4c57bef8a16c98c
2025-06-03 08:06:47 +00:00
Mathias Jakobsen
988d826c75 Merge pull request #26015 from overleaf/mj-ide-breadcrumbs-setting
[web] Add setting to control editor breadcrumbs

GitOrigin-RevId: 6e0a4bb97eba63a1df43d85840f8962bf0238b7c
2025-06-03 08:05:49 +00:00
Miguel Serrano
82a37113d4 Merge pull request #25886 from overleaf/msm-add-skip-email-to-delete-user
[CE] Add `--skip-email` to `delete-user` script

GitOrigin-RevId: d0f5ced26930060df1e9f40dee97839076743bbd
2025-05-23 11:08:31 +00:00
Tim Down
0baf512ac2 Merge pull request #25805 from overleaf/td-bs5-rename-auth-pages-feature-flag
Change auth pages feature flag

GitOrigin-RevId: 091b2cde7cc4f91e2ce7533d610db773fc622bb5
2025-05-23 08:05:14 +00:00
Jimmy Domagala-Tang
c2a36353d9 Merge pull request #25821 from overleaf/jdt-handle-no-prem-src
Handle cases where Writefull is not defined on a user on the subscription page

GitOrigin-RevId: ef43da630b5194f6021ebfc52ca4cb473e674b23
2025-05-22 08:08:05 +00:00
Jimmy Domagala-Tang
abcc493a75 Merge pull request #25505 from overleaf/jdt-redirect-to-wf-based-on-prem-src
Manage on Writefull should provide the right instructions based on premiumSource

GitOrigin-RevId: bc6dcc5962d18220c445315acbb3b4040ff23d5d
2025-05-22 08:08:01 +00:00
Jimmy Domagala-Tang
9aa325ff2d Merge pull request #25151 from overleaf/dk-use-user-features
UserFeaturesContext with cross-tab syncing via BroadcastChannel

GitOrigin-RevId: 4262719f5018f5717211851ce28b3255af65461a
2025-05-13 08:07:57 +00:00
Tim Down
2c75028ad9 Merge pull request #25264 from overleaf/bg-td-account-deletion-logging
Add logging for each stage of user deletion

GitOrigin-RevId: 13f9575012fcd8f166c4b14eba2ee5910658072e
2025-05-05 08:05:36 +00:00
Mathias Jakobsen
9896bf21cd Merge pull request #24733 from overleaf/mj-labs-without-features
[web] Move labs experiments from features to own property

GitOrigin-RevId: 22dee79758e5fa65fc31d9b8d4b155443cd585e7
2025-04-17 08:05:28 +00:00
Mathias Jakobsen
f246b3d91d Merge pull request #24720 from overleaf/mj-teardown-write-and-cite-split-tests
[web] Tear down Write and Cite related split tests

GitOrigin-RevId: 0002829f53b0f28d482c79ed2cbf61066690ae02
2025-04-11 08:05:05 +00:00
Tim Down
c1880247e1 Merge pull request #24416 from overleaf/td-bs5-remove-platform-pages-flag
Remove bs5-misc-pages-platform feature flag from code

GitOrigin-RevId: 8da617e5d7703a56399b227b0c38acda86150b8d
2025-04-08 08:07:07 +00:00
Domagoj Kriskovic
c89914ac8c Script for removing user enrollment from a subscription (#24627)
* Script for removing user enrollment to a subcription

* Add "release-managed-user"  audit log event for an user id

GitOrigin-RevId: adf2dd97ac82977bcfa07d9a24d1f3c190d095a2
2025-04-03 08:04:54 +00:00
roo hutton
0091ab3d92 Merge pull request #24609 from overleaf/rh-bs5-b2c-teardown
Teardown Bootstrap 5 B2C feature flag

GitOrigin-RevId: 4021820bc3b207dae9fffd23dfac778746fa8f20
2025-04-02 08:05:05 +00:00
Miguel Serrano
bf2450b140 Merge pull request #24329 from overleaf/msm-fix-login-translation-ce-sp
[web] Fix `log_in` default translation in user/pass login

GitOrigin-RevId: 70876652a462b7917d9864e5dccce45ebf3b6d0a
2025-03-26 09:05:00 +00:00
Tim Down
6da4ad2079 Merge pull request #24349 from overleaf/td-bs5-add-secondary-email
Migrate add secondary email page to Bootstrap 5

GitOrigin-RevId: f5d1992f2cb2d313f5950ccfd5c187b9bac72d82
2025-03-24 10:46:57 +00:00
David
062b2d57f8 Merge pull request #24137 from overleaf/mj-ide-permissions-utils
[web] Add switcher for editor redesign

GitOrigin-RevId: 806a1f567027df53f879b564a50aaae9166c8480
2025-03-18 09:05:40 +00:00
Jakob Ackermann
3a98940324 [web] switch query for hard-deleting users and add index (#22920)
* [web] switch query for hard-deleting users and add index

Co-authored-by: Dr. Sasha Göbbels <sasha.goebbels@overleaf.com>

* [web] fix unit tests

---------

Co-authored-by: Dr. Sasha Göbbels <sasha.goebbels@overleaf.com>
GitOrigin-RevId: a7fd2a590351d2e0d60c0032ca78d457ef815e41
2025-03-11 09:05:04 +00:00
Rebeka Dekany
dacbf4b634 Bootstrap 3 cleanup from the IDE page - #2 (#24175)
* Remove skipLoadingStyleSheet

* Remove unused bootstrap-5 assignment from the Account settings page since it's archived

* Remove bsVersionIcon

* Remove bsVersion, bootstrapVersion and isBootstrap5 from elements on the IDE page

* Remove BS3Dropdown from the context menu

* Cleanup Bootstrap 3 related comment and type

GitOrigin-RevId: a67244eb78943ee84cc5f89bae164c0361e8fc13
2025-03-11 09:05:00 +00:00
Antoine Clausse
85958774dc [web] Use 6-digits code to confirm existing email in Account Settings (#23931)
* Rename `checkSecondaryEmailConfirmationCode` to `checkAddSecondaryEmailConfirmationCode`

* Create function `sendCodeAndStoreInSession`

* Create function `sendExistingSecondaryEmailConfirmationCode`

* Create function `_checkConfirmationCode`

* Create function `checkExistingEmailConfirmationCode`

* Rename `resendSecondaryEmailConfirmationCode` to `resendAddSecondaryEmailConfirmationCode`

* Create function `_resendConfirmationCode`

* Create function `resendExistingSecondaryEmailConfirmationCode`

* Add `ResendConfirmationCodeModal`

* Remove `ResendConfirmationEmailButton`

* `bin/run web npm run extract-translations`

* Update frontend test

* Fix: don't throw on render when send-confirmation-code fails!

* Update phrasing in the UI

Per https://docs.google.com/document/d/1PE1vlZWQN--PjmXpyHR9rV2YPd7OIPIsUbnZaHj0cDI/edit?usp=sharing

* Add unit test

* Don't share the "send-confirmation" and "resend-confirmation" rate-limits

* Update frontend test after copy change

* Rename `checkAddSecondaryEmailConfirmationCode` to `checkNewSecondaryEmailConfirmationCode` and `resendAddSecondaryEmailConfirmationCode` to `resendNewSecondaryEmailConfirmationCode`

* Rename `cb` to `beforeConfirmEmail`

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

* Return `422` on missing session data

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

* Add `userId` to log

* Replace `isSecondary` param by `welcomeUser`

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

* Rename `resend-confirm-email-code`'s `existingEmail` to `email`

* Remove "secondary" from rate-limiters

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

* Remove unnecessary `userId` check behind `AuthenticationController.requireLogin()`

* Only open the modal if the code was sent successfully

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: df892064641d9f722785699777383b2d863124e1
2025-03-07 09:06:50 +00:00
Tim Down
9067f93c5a Merge pull request #23872 from overleaf/td-bs5-compromised-password-page
Migrate compromised password page to Bootstrap 5

GitOrigin-RevId: fed58659cdeb12ba16bdd08c0c91c629a71ac169
2025-03-05 09:04:54 +00:00
M Fahru
da0c2ceda7 Merge pull request #23585 from overleaf/mf-rename-b2c-pages-bs5-split-test
[web] Rename b2c pages split test to follow the standard for bs5 migration

GitOrigin-RevId: 7a26912642d84866b6b99ce57107f8ba79335f1a
2025-03-04 09:05:01 +00:00
Jessica Lawshe
747609c5d7 Merge pull request #23299 from overleaf/jel-admin-saml-ids
[web] Show SAML IDs in user audit logs and user info page

GitOrigin-RevId: b8baa44c3110764e466d92ad2b0dc54ddc8f7819
2025-02-27 09:05:47 +00:00
Jessica Lawshe
d562c56e07 Merge pull request #23890 from overleaf/jel-reconfirm-date
[web] If v1 date doesn't show as reconfirmed, ensure v2 does not as well

GitOrigin-RevId: dc2850221a2d9176023380b38508311ea98abe43
2025-02-27 09:05:27 +00:00
Antoine Clausse
0d05cef327 [web] When switching primary email, delete the old primary if it's unconfirmed (#23688)
* Add note to ConfirmModal: unconfirmed primary will be deleted

* Change confirm button copy

* Promisify `UserEmailsController.setDefault`

* Update tests after promisification

* Delete unconfirmed primary when swapped

* Fixup apostrophe in translation

* `npm run extract-translations`

* Add unit tests

* Add acceptance tests

* Fix frontend tests

* Make email address bold

* Add "We removed the previous primary..." to the email

GitOrigin-RevId: c971e219e36e509f9963e1720acdd44f562a05b5
2025-02-21 09:05:44 +00:00
Miguel Serrano
c670626e6d Merge pull request #23733 from overleaf/msm-configurable-login-title
[web] Add `OVERLEAF_LOGIN_SUPPORT_TITLE` for CE/SP

GitOrigin-RevId: 5a50d17ded67b68c72dbaeab5172fc283b5aaa01
2025-02-21 09:05:18 +00:00
Antoine Clausse
76301e0cc8 [web] Send security alert email when secondary is added (#23657)
* [web] Send security alert email when secondary is added

* [web] Add test: checkSecondaryEmailConfirmationCode - sends a security alert email

* Move `_sendSecurityAlertEmail` before `addEmailAddress`

GitOrigin-RevId: 8d9c496fffd953871e03d8c7f011c42459eeb0bc
2025-02-18 09:05:14 +00:00
Antoine Clausse
1aada036f9 Create script: remove_unconfirmed_emails.mjs (#23079)
* Create script: remove_unconfirmed_emails.mjs

* Update script remove_unconfirmed_emails.mjs after pairing

Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>

* Add user counts. Add timing

* Revert previous changes: just remove the fully unconfirmed emails

* Add tests on scripts/remove_unconfirmed_emails.mjs

* Update audit log so `removedEmail` is a string and doesn't break the admin-panel audit logs list

* Update remove_unconfirmed_emails to have a `--generate` and a `--consume` mode

* Update tests on remove_unconfirmed_emails

* Add tests checking that `--consume` doesn't delete any email

* Update script so `--consume` checks that emails shouldn't be deleted again!

* Update CSV path to `/tmp/...`

* Add test cases: deleted users, deleted email, comma in email

---------

Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
GitOrigin-RevId: 8c60b56bcdfa33bc6143d66c32a5f430fb76f6d7
2025-02-18 09:05:10 +00:00