Commit Graph

105 Commits

Author SHA1 Message Date
Jakob Ackermann
982bca1ad9 [web] remove runtime migration for fixing collaborator lists on projects (#26581)
GitOrigin-RevId: f6a4c142e010e168c79b59cb96dddb147093d4a0
2025-06-26 08:04:54 +00:00
Jakob Ackermann
f7006335b3 Merge pull request #26575 from overleaf/jpa-archived-state
[web] remove runtime migration for project.archived/trashed state

GitOrigin-RevId: 69064878f3dfdcde3727a4e3eb555deb75c70588
2025-06-26 08:04:50 +00:00
Andrew Rumble
23f76f9745 Convert return new Promise to await new Promise
GitOrigin-RevId: 49404748cc90cb7bdef0460f7e9837196f81cae8
2025-06-25 08:06:59 +00:00
Domagoj Kriskovic
1e286f5406 Check for existing reviewers when adding user to a project (#26463)
GitOrigin-RevId: 935335345461133fb8b08fa95f960f801b8775a7
2025-06-19 08:05:27 +00:00
Andrew Rumble
0f268d6bdc Change imports that use chai to use vitest
GitOrigin-RevId: 59d780f754adbb5160a2de8e5eca1def6968584b
2025-06-10 08:05:18 +00:00
Jakob Ackermann
b45ffbf055 [web] skip fetching members and invites for restricted users (#25673)
* [web] hide sensitive data from joinProject when building project view

* [web] skip fetching members and invites for restricted users

* [web] fix owner features in joinProject view

* [web] separate invited members from owner

* [web] skip fetching users with empty members  list

* [web] split await chain

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>

* [web] remove spurious parentheses

* [web] remove dead code

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>

---------

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>
GitOrigin-RevId: 5b4d874f974971e9c14d7412620805f8ebf63541
2025-06-03 08:06:22 +00:00
Andrew Rumble
20619a740a Update test files with vitest compat changes
GitOrigin-RevId: 494f906089d250268a5ff8c8a2150ff2692c37e2
2025-05-29 08:05:06 +00:00
Andrew Rumble
4cced4dcb8 Rename test files for vitest
GitOrigin-RevId: f8792c0ce5eeb4843a534d3ff83e011d25fb65e0
2025-05-29 08:05:00 +00:00
Jakob Ackermann
feebb77556 [web] fetch project members in a single db query (#25662)
* [web] fetch project members in a single db query

GitOrigin-RevId: ca749327d4783c67a3ad81f611cd7d3e7fa84028
2025-05-19 08:05:12 +00:00
Mathias Jakobsen
f86aca54ac Merge pull request #25060 from overleaf/mj-core-pug-bs5
[web] Convert various pug pages to BS5

GitOrigin-RevId: f42de89eca778db19d5faa8a19fa8a210c7a749b
2025-04-29 08:06:01 +00:00
roo hutton
9b1002caee Merge pull request #24630 from overleaf/rh-null-editor-fix
Coerce null reviewer_refs to empty array

GitOrigin-RevId: dd1931b306e22fc4b7dbd3709dfac786a2475724
2025-04-04 08:04:44 +00:00
roo hutton
f1f57a74e3 Merge pull request #24618 from overleaf/rh-null-pending-reviewer
Handle null readOnly_refs in CollaboratorsHandler

GitOrigin-RevId: b718c4a1b5216a42920909615a0f3c2fe0a16bdb
2025-04-02 08:05:10 +00:00
roo hutton
8ed5013809 Merge pull request #24614 from overleaf/rh-pending-reviewer-pull
Set null pendingReviewer_refs to empty array in removeUserFromProject

GitOrigin-RevId: b21dd3f2febdb59dfafb45347960e375daeac463
2025-04-01 08:04:42 +00:00
Eric Mc Sween
3512992ac4 Merge pull request #24433 from overleaf/em-pending-reviewers
Support reviewers in the collaborator limit enforcement logic

GitOrigin-RevId: f11a8e37ca6ef36f9894233803c6ee8363bf0ff8
2025-03-27 14:16:48 +00:00
Eric Mc Sween
4301dcc5a0 Merge pull request #24357 from overleaf/em-reviewers-limit
Count reviewers towards the collaborator limit in the backend

GitOrigin-RevId: 352fa37023ffbb032e23a474a81897ca871fee69
2025-03-24 10:51:14 +00:00
Brian Gough
e56ed89d85 Merge pull request #24181 from overleaf/bg-Project-Audit-Log-Transfer-ownership-is-missing-the-IP-address
add missing ip adress to audit log for transfer ownership

GitOrigin-RevId: c14494efce25efa92a6cd81bcf197d8f897571bb
2025-03-11 09:06:43 +00:00
Jakob Ackermann
c5f410d531 [server-pro] tests: make project invite tests more reliable (#23732)
* [web] wait for sending project invite notification, send email detached

Errors from sending the notification or email are still logged only.
Wait up-to ~one second for notification to be sent (API timeout is 1s).

* [server-pro] tests: wait for invite action to complete

GitOrigin-RevId: e6998e6134b5267c91b47785d616a46e9651b996
2025-02-21 09:05:30 +00:00
Kristina
0e67f8c479 Merge pull request #23259 from overleaf/kh-rm-dead-manager-code
[web] remove unused functions to support legacy read/write link sharing

GitOrigin-RevId: 504c1eb721caa7131ed685b1e0fa5e0d0b460888
2025-02-04 09:04:29 +00:00
Kristina
d397a1c54d Merge pull request #23131 from overleaf/kh-teardown-link-sharing-split-tests
[web] tear down link sharing split tests

GitOrigin-RevId: 449e9f368405aea1500035269428e7ae0c37d8fb
2025-02-04 09:04:25 +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
Domagoj Kriskovic
001443c1a4 Ensure track changes is enabled for reviewers when switching roles (#22645)
* Ensure track changes is enabled for reviewers when switching roles

* update track_changes.${userId} if track_changes is an object

GitOrigin-RevId: 3e803f4d475dbb67ff85b30095307ea58a07b2bc
2025-01-10 09:04:51 +00:00
Domagoj Kriskovic
a5547ec312 Set track changes state permissions for reviewer role (#22345) (#22436)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* Add reviewer in change privilege level handler

GitOrigin-RevId: 88ec39f2b760b5d1ca6dc3a363df31c087268972
2024-12-12 09:04:46 +00:00
Domagoj Kriskovic
6102fd7c13 Revert "Set track changes state permissions for reviewer role (#22345)" (#22431)
This reverts commit 6a03d2355b3fb7d7b755ed1d3ab1a080126cd2dc.

GitOrigin-RevId: 4e962bd9a547a9d6205460c9a8e9a0e835442be4
2024-12-10 13:09:42 +00:00
Domagoj Kriskovic
29be04aa67 List projects where user is added as reviewer (#22347)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* List projects where user is added as reviewer

GitOrigin-RevId: 8ec9e59e4c0b65167705b0a56be3e309ef6af3e7
2024-12-10 13:09:19 +00:00
Domagoj Kriskovic
b20f4e58c1 Set track changes state permissions for reviewer role (#22345)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* Add reviewer in change privilege level handler

GitOrigin-RevId: 6a03d2355b3fb7d7b755ed1d3ab1a080126cd2dc
2024-12-10 13:09:14 +00:00
Domagoj Kriskovic
a6311b8284 Support for adding reviewer role (#22314)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

GitOrigin-RevId: 5b831102d561f5dbc4b23ab9f6dc63e3a87ea103
2024-12-10 09:04:47 +00:00
Domagoj Kriskovic
0427eeae0b Revert "Support for adding reviewer role (#22137)" (#22293)
This reverts commit 54064a7f961fe06f188ab449cd469cdaaf01b20a.

GitOrigin-RevId: 1dabc635756aff465d2fe9aa0d18121b081df3b0
2024-12-04 09:05:12 +00:00
Domagoj Kriskovic
b7e6237a55 Support for adding reviewer role (#22137)
* Support for adding reviewer role

* show reviewer in track changes user list

* added "review" in assertClientCanViewProject

* test if reviewer can read project

* added collaboratorsGetter tests

* eit toggle-track-changes when track changes changes

* Support for changing privilege to reviewers for invited users (#22159)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role (#22167)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role

* added authorization helper tests

* added ensureUserCanReviewProjectContent middleware

* allow changing track changes only with write permissions

* removed canUserReviewProjectContent

* List projects where user is added as a reviewer (#22249)

* List projects where user is added as reviewer

* list projects in /user/projects

* fix tests

GitOrigin-RevId: 54064a7f961fe06f188ab449cd469cdaaf01b20a
2024-12-04 09:05:00 +00:00
Andrew Rumble
46e22c2021 Update tests
GitOrigin-RevId: 9272720e0f6865c54257c43bd98d8e6003251aa2
2024-10-17 08:06:17 +00:00
roo hutton
00761b128a Merge pull request #20561 from overleaf/rh-duplicate-invite
[web] Revoke invite after joining project via link sharing

GitOrigin-RevId: 5071c9fbb226e5eef8c3e5c82991da73529d7396
2024-10-14 11:08:00 +00:00
andrew rumble
08879f8f45 Fix use of fake ObjectIds in tests
12 character strings are no longer valid see:
https://github.com/mongodb/js-bson/releases/tag/v6.0.0 (Strings of
length 12 can no longer make an ObjectId)

GitOrigin-RevId: 2590c10915c50b951f991b2cf161d80235e445ca
2024-09-24 08:06:23 +00:00
roo hutton
833189fd26 Merge pull request #20306 from overleaf/rh-change-owner-viewer
[web] Allow project ownership to be transferred to Viewers

GitOrigin-RevId: 061d6e7b10c5c15212419e0736d0bfac39b65e96
2024-09-16 08:04:33 +00:00
Thomas
222163bb43 Merge pull request #20083 from overleaf/tm-fix-mongodb-legacy-collaborators-getter
Update CollaboratorsInviteGetter to use mongodb-legacy instead of mongodb

GitOrigin-RevId: 06eb6f89725c06f759e19f73c4a4d1ade5703b4f
2024-08-22 14:01:39 +00:00
Thomas
0f5907c4b6 Merge pull request #20036 from overleaf/tm-collab-limit-link-sharing
Enforce collaborator limit for link sharing

GitOrigin-RevId: b724dca0c616ef15e5bd6d07e9d898d34dd46acd
2024-08-22 14:01:34 +00:00
Thomas
d78bffcf2b Merge pull request #20034 from overleaf/tm-collab-limit-edit-invites
Enforce collaborator limit when accepting project invites

GitOrigin-RevId: 94f281113fe7c7b6d0a5ef43e11ab579400d9e56
2024-08-22 14:01:30 +00:00
roo hutton
7b65ce677c [web] Enforce collaborator limit (#19619)
* Enables collaborator limit enforcement

* Add pendingEditor_refs for editors downgraded during limit enforcement

* Add isPendingEditor to useEditorContext

---------

Co-authored-by: Thomas Mees <thomas.mees@overleaf.com>
GitOrigin-RevId: b622213f6282ccd8ee85a23ceb29b8c6f8ff6a96
2024-08-22 14:01:25 +00:00
andrew rumble
b00d1336d4 Switch to mongodb-legacy
GitOrigin-RevId: 11e09528c153de6b7766d18c3c90d94962190371
2024-08-21 08:04:24 +00:00
ilkin-overleaf
bf8078075f Merge pull request #19626 from overleaf/ii-invite-remove-unncecessary-fields
[web] Clean up props exposed to the /invite and /invites endpoints

GitOrigin-RevId: dc4163e04d5785e141d5e322bfb0a626e67d637f
2024-08-12 08:05:04 +00:00
ilkin-overleaf
90e5c2886d Merge pull request #19249 from overleaf/ii-invite-token-response
[web] Fix share modal resend status code

GitOrigin-RevId: 303f7b6c49d9522df6317789bb7c3c69d774715f
2024-07-15 09:05:02 +00:00
ilkin-overleaf
80788f41b1 Merge pull request #19071 from overleaf/ii-invite-token-remove-token-field
[web] Remove the token field from `projectInvites` collection

GitOrigin-RevId: fe8395e1d1a0ba2daad600b7e3be657f40151a8e
2024-07-04 08:05:00 +00:00
Thomas
f430f1392f Merge pull request #19185 from overleaf/tm-validate-can-invite-editor-2
Update inviteToProject to check if editor slots are available

GitOrigin-RevId: bb67ae6329130573ba43e9524a3084bf5551ebde
2024-07-01 08:04:21 +00:00
Thomas
60fce4207b Add serverside checks for changing the user access level after link sharing changes (#19168)
* Add getEditInviteCount to count only edit collaborators

* Add getInvitedEditCollaboratorCount to count joined editors

* Add canAddXEditCollaborators to determine if owner can add more editors

* Update setCollaboratorInfo to check if editor slots are available

GitOrigin-RevId: a88707f102dfbde39322f5a7bbc79d47b6e810d5
2024-07-01 08:04:16 +00:00
Thomas
f9edf0c546 Add new interstitial 'Join project' consent page for existing link sharing editors when opening a project (#19066)
* Add helpers for checking and removing user readwrite token membership

* Add sharing-updates page and handlers

* Redirect read write token members to sharing-updates on project load

GitOrigin-RevId: d552a2cd74a9843c6103923b03f137131a48877a
2024-06-26 11:12:42 +00:00
ilkin-overleaf
93b90b4867 Merge pull request #18789 from overleaf/ii-invite-token-lookup-by-hmac-token
[web] Lookup project invitations by HMAC token

GitOrigin-RevId: b631445e18f83ddb5e7708388a57a0fac0f73bd2
2024-06-24 12:03:10 +00:00
ilkin-overleaf
cfa17a8531 Merge pull request #18653 from overleaf/ii-invite-token-create-hmac
[web] Add HMAC tokens for project invitations

GitOrigin-RevId: 02fa01e24790c9a87f57ff9346f5346658d4dd46
2024-06-17 08:04:17 +00:00
Eric Mc Sween
01e2a29766 Merge pull request #18225 from overleaf/em-typescript-eslint
Add typescript-eslint rule: no-floating-promises

GitOrigin-RevId: 8c3decdff537c885f5bfeb5250b7805480bc6602
2024-05-27 10:22:20 +00:00
Jakob Ackermann
d8055e6749 Merge pull request #18294 from overleaf/jpa-td-invite-details
[web] avoid content reflection via query parameter on register page

GitOrigin-RevId: 43e7ba6069e0d9f3f12e5e9e680b5960b0673782
2024-05-16 08:05:09 +00:00
ilkin-overleaf
a881ce672b Merge pull request #17023 from overleaf/ii-token-access-null-values
[web] Fix projects token access values

GitOrigin-RevId: f0c6a4993e42320c06753cb65198138afe55b71a
2024-02-26 09:03:13 +00:00
Mathias Jakobsen
2a78b68c78 Merge pull request #16186 from overleaf/mj-mongo-object-id
[web] Use constructor for ObjectId

GitOrigin-RevId: 9eb8b377ea599605b72af237d1ab12f4d8287162
2023-12-19 09:04:02 +00:00
Jessica Lawshe
4e9666600f Merge pull request #15326 from overleaf/jel-link-sharing
[web] Add prefix of token hash to link sharing URLs

GitOrigin-RevId: 4b764c076a335768ab261dd1e181d90ce00fd1a2
2023-10-25 08:04:59 +00:00