Commit Graph

353 Commits

Author SHA1 Message Date
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
Andrew Rumble
5dca40eea2 Merge pull request #22646 from overleaf/ar-address-mongo-count-deprecation-warning
[web] Switch from find.count to countDocuments

GitOrigin-RevId: cc607868334d54b3d5c375c06fec97a482a16cc5
2025-02-17 09:04:58 +00:00
Kristina
bf42250255 [web] migrate secondary confirm email page to bootstrap 5 (#23452)
GitOrigin-RevId: 39ff8856d40033df802a3d811c53d12f94e7d0ed
2025-02-12 09:04:46 +00:00
Jakob Ackermann
b4b2fbaf07 [misc] fix logger.error(err) and logger.warn(err) calls (#23369)
* [misc] fix logger.error(err) calls

The signature is "logger.error({ err }, 'MESSAGE')".

* [project-history] remove duplicate logger.err calls in health check

The call-site is already logging any errors. Also, the logger.err call
signature was not quite right.

* [web] log userId when removeDropbox/removeGithub hook fails

* [misc] fix logger.warn(err) calls

The signature is "logger.warn({ err }, 'MESSAGE')".

* [misc] fix logger.error(OError.tag(err)) calls

* [web] make eslint happy

GitOrigin-RevId: 7f528113a3f7e9f6293b7d2d45adc079380325bb
2025-02-06 09:04:31 +00:00
Antoine Clausse
858d31bcd0 [web] Update secondary email addition: confirm with 6 digits code (#22851)
* Remove `Interstitial` from `ConfirmEmailForm`

* Allow adding `affiliationOptions` in `addWithConfirmationCode`

* Add confirmationStep in add-email.tsx

* Call `getEmails` once a secondary email is added

* Fix tests

* Lint fix

* Style confirm-email-form

Figma: https://www.figma.com/design/TWyeImDSZHhkl9akYaGmeb/24.5-Secondary-email-reconfirmation?node-id=1-449&p=f&m=dev

* Remove unnecessary `successMessage` and `successButtonText` from hidden ConfirmEmailForm

* Remove icon padding

* Rename file to confirm-email-form.tsx

* Use `OLButton`

* Add Cancel button

* Update loading states

* Remove redundant `className` with variants

GitOrigin-RevId: 62b1729cf2299da38f20fa3946273ad0193c7d54
2025-01-31 09:05:23 +00:00
M Fahru
2031bccfcd Merge pull request #22615 from overleaf/mf-reconfirm-page-migrate-bs5
[web] Migrate reconfirm account page to bootstrap 5 and website-redesign styling

GitOrigin-RevId: b65f3ad69a5914ce42dc58c21436c8616393f724
2025-01-28 09:05:47 +00:00
M Fahru
9e811eefc5 Merge pull request #22613 from overleaf/mf-migrate-primary-email-check-bs5
[web] Migrate "Primary email check" page to bootstrap 5 and website-redesign styling

GitOrigin-RevId: e233edafb8c5033c8fbd97088fa1ac840e2e572e
2025-01-28 09:05:43 +00:00
Jimmy Domagala-Tang
e1a7dea96e Merge pull request #22994 from overleaf/jdt-diasble-assist
Add a toggle to hide all AI features on a users account

GitOrigin-RevId: 978b02609c40f3975daa267aa6c10ac49e13d6f3
2025-01-28 09:05:27 +00:00
Mathias Jakobsen
580ad4bdca Merge pull request #23026 from overleaf/mj-wc-settings-second-try
[web] Move write and cite setting storage

GitOrigin-RevId: 88a234c15b4dd2a9b451170e3b474d88bb6d45f7
2025-01-24 09:05:22 +00:00
Antoine Clausse
01fb8ba69f [web] Promisify ensureAffiliationMiddleware and refactor InstitutionHubsController (#22242 feedback) (#22261)
* Promisify `ensureAffiliationMiddleware`

* In `ensureAffiliationMiddleware`, throw when UserNotFoundError

* Unnest object `_InstitutionHubsController`

* Format fix

GitOrigin-RevId: 5b3c6c24724520353540b8d8dd05005b6fa749ff
2025-01-21 09:04:57 +00:00
Antoine Clausse
5ba9a7238d [web] Remove promises exports from Controller modules (#22242)
* Remove promises object from CollaboratorsInviteController.mjs

* Define functions at root

* Remove mentions of undefined `revokeInviteForUser`

* Remove unused `doLogout`

* Remove promises object from UserController.js

* Remove unused `makeChangePreview`

* Remove promises object from SubscriptionController.js (`getRecommendedCurrency` and `getLatamCountryBannerDetails`)

* Remove promises object from CollabratecController.mjs

* Remove promises object from SSOController.mjs

* Remove promises object from ReferencesApiController.mjs

* Remove promises object from MetricsEmailController.mjs

* Remove promises object from InstitutionHubsController.mjs

* Remove promises object from DocumentUpdaterController.mjs

* Remove promises object from SubscriptionAdminController.mjs

* Fixup unit tests

* Add expects that controllers don't error

* Promisify `ensureAffiliationMiddleware`

GitOrigin-RevId: 311c8afa7d5c8e4f051408d305b6b4147a020edc
2025-01-17 09:05:36 +00:00
Miguel Serrano
185caced20 Merge pull request #22264 from overleaf/msm-login_support_text-env
[web] Add `OVERLEAF_LOGIN_SUPPORT_TEXT` for CE/SP login pages

GitOrigin-RevId: 7f473b6a3448b4cb73c0c954d0ea1db34b980d6c
2025-01-10 09:05:56 +00:00
Miguel Serrano
e6ceb314cb Merge pull request #22321 from overleaf/msm-force-flag-delete-user
[web] Fix user deletion in CE/SP when email does not exist

GitOrigin-RevId: 051f822318d63c8a9f50d5e9aeca095f3b37efb4
2025-01-10 09:05:48 +00:00
Miguel Serrano
3f6aa2369d Merge pull request #21031 from overleaf/msm-clean-collabratec-tokens
[web] cleanup collabratec tokens

GitOrigin-RevId: 0ad73ca5d4c4c82d79e2ec7119c5b77a83b7086f
2025-01-09 09:05:15 +00:00
Thomas
c74a3b3437 Merge pull request #22433 from overleaf/tm-suspend-users-script
Add script for bulk account suspension

GitOrigin-RevId: 434ac819c12a2a33c26baf963d8d8874b1864928
2024-12-11 09:04:40 +00:00
Mathias Jakobsen
cd160132c2 Merge pull request #22204 from overleaf/mj-papers-linking
[web+third-party-references] Add linking to papers account

GitOrigin-RevId: dbf6a01b16ae661558da01549922294278dbda70
2024-12-04 09:04:47 +00:00
Antoine Clausse
b78faef983 [web] Add audit logs for clear_sessions_set_must_reconfirm script, "must-reset-password-set" and "must-reset-password-unset" (#21776)
* Promisify clear_sessions_set_must_reconfirm.mjs

* Add test on PasswordResetTests.mjs

* Add `must-reset-password-unset` audit log

* Add `must-reset-password-set` audit log

* Add test ClearSessionsSetMustReconfirmTests.mjs

* Fixup bad copy-paste in test: `must-reset-password-set` -> `must-reset-password-unset`

* Check `must_reconfirm` before calling `removeReconfirmFlag`

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

* Fix unit test

* Use `promiseMapWithLimit`

* Add `{ script: true }` to AuditLog. Also use `undefined` instead of `null` for consistency

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 522026c82196d263c196503d899b8c57b05b31dd
2024-11-15 09:05:21 +00:00
Mathias Jakobsen
c32e11042d Merge pull request #21662 from overleaf/mj-ref-provider-text
[web] Update reference manager linking text

GitOrigin-RevId: b3614a7efead8cb2d6fb628dbfe8a750b4c39033
2024-11-15 09:04:53 +00:00
Andrew Rumble
b8d279c74b Migrate Features to ES modules
GitOrigin-RevId: 4e9d3176b4b5a5504afc102e569a27d7788864a3
2024-10-17 08:06:08 +00:00
Jakob Ackermann
7c7f60d7a6 Merge pull request #20756 from overleaf/jpa-clear-admin-sessions
[web] add script for clearing admin sessions

GitOrigin-RevId: c5103b233073db62276698067b2262d7a785592b
2024-10-14 10:58:12 +00:00
Miguel Serrano
25cd0354f7 [web] Expose metric for active users in SP (#20130)
* [web] Expose metric for active users in SP

* Removed redundant UserHandler.setupLoginData()

In the past this method was also calling
a now deleted notifyDomainLicence(), but now
this is just an alias for populateTeamInvites()

* Added migration for `lastActive`

* Added secondary read precedence to count active users

GitOrigin-RevId: 86d6db31e1ae74ae40c6599e6acb731d8c4a04bd
2024-10-14 10:57:28 +00:00
Jimmy Domagala-Tang
3fd4bd97e0 Merge pull request #20256 from overleaf/jdt-enable-writefull-unset
Differentiate between unset and disabled Writefull

GitOrigin-RevId: 3cf8f12ede851dab5a8067bdbcddba6c69870573
2024-09-06 08:05:52 +00:00
Liangjun Song
51761303b8 Merge pull request #19954 from overleaf/ls-access-token-gradual-rollout-cleanup
Update git bridge modal for pw auth deprecation

GitOrigin-RevId: 2e764922bf350ddcba29bf9f3baa220ed1f48e40
2024-08-26 08:05:15 +00:00
Jakob Ackermann
0a2fca82c6 Merge pull request #19863 from overleaf/jpa-log-noise-pro
[web] gracefully handle missing "getUserGroupsSSOEnrollmentStatus" hook

GitOrigin-RevId: 3e37a9caf4ccc54ec89c9a274bd4a55c503a3f43
2024-08-22 08:05:08 +00:00
andrew rumble
b00d1336d4 Switch to mongodb-legacy
GitOrigin-RevId: 11e09528c153de6b7766d18c3c90d94962190371
2024-08-21 08:04:24 +00:00
Alexandre Bourdin
e2888cd2bb Merge pull request #19861 from overleaf/ab-overleaf-integration-delete-flow
[web] Remove /user/delete override from overleaf-integration

GitOrigin-RevId: 4f679f6835522c2325fe7b0368f58e7a952ee73d
2024-08-14 08:05:30 +00:00