David
29a7f9c070
Merge pull request #18895 from overleaf/dp-presentation-mode
...
Add pdf presentation mode
GitOrigin-RevId: e6ac1ae339e9690a733a110c6f0a33149e869dd6
2024-06-17 08:04:30 +00:00
Brian Gough
15b464adb3
Merge pull request #18775 from overleaf/bg-cookie-session-metrics-middleware
...
add middleware to record session cookie metrics in web
GitOrigin-RevId: f4404455e219d2071d6f0b39e657e9219b7d1c70
2024-06-13 08:04:16 +00:00
Brian Gough
26d6955e75
Merge pull request #18741 from overleaf/bg-cookie-session-test-rotation-support
...
test session key rotation in cookie-session module
GitOrigin-RevId: 57486b3df527a9998da3b93981c9d45f510802b8
2024-06-13 08:04:06 +00:00
andrew rumble
e16cd2842e
Add new fields to mongoose subscription schema
...
GitOrigin-RevId: 6b28d7464482a8d5729709f99893b333c3d7f9c2
2024-06-11 08:04:55 +00:00
Antoine Clausse
35a0947046
Don't throw cron job when some PayPal collection fails ( #18795 )
...
* Don't throw cron job when some PayPal collection fails
Follow-up of https://github.com/overleaf/internal/pull/18414 and https://github.com/overleaf/internal/pull/18572
This was causing `Heartbeat [cron-web-collect-paypal-prod] is expired.`
And the cron to rerun (altogether three times a day, instead of once a day)
https://cloudlogging.app.goo.gl/W4qBPFDeTUkRQ8J27
* Update tests
GitOrigin-RevId: a6a29cc84c0c72fd86b2e3a9739669d3a5fb0be5
2024-06-11 08:04:04 +00:00
Antoine Clausse
1883a45576
In PayPal collect invoices script: Update throw unsuccessful invoices collections ( #18572 )
...
* Remove throw on `INVOICES_COLLECTED_SUCCESS.length === 0`
Effectively reverts 038377b511
See: https://digital-science.slack.com/archives/C20TZCMMF/p1716973110408049
* Update tests so they don't expect rejections
* Reject when some invoice collection failed
GitOrigin-RevId: aa37f7fa37c96b8624e87d94be675d115e3250a9
2024-05-30 08:04:31 +00:00
Alexandre Bourdin
68c3eb7fcd
Merge pull request #18000 from overleaf/ab-dev-enable-toolbar-default
...
[web] Enable the dev-toolbar by default in the dev environment
GitOrigin-RevId: 170e59e9b82268e621fe99ffcc82b7d68467e1b3
2024-05-27 10:23:56 +00:00
Brian Gough
0d1531a2ee
Merge pull request #18088 from overleaf/ab-session-secret-rotation
...
[web/realtime/history-v1] Support session secret rotation
GitOrigin-RevId: 3c2fa27b1b3e0a8e0c9d1af2e616ce873d54aedf
2024-05-27 10:23:33 +00:00
Antoine Clausse
de9a733108
In collect_paypal_past_due_invoice.js, iterate over each page instead of gathering data from all pages at first ( #18414 )
...
* Create `getPaginatedEndpointIterator` to iterate each page
* Create `waitMs` util, it will replace `slowCallback`
* Make `handleAPIError` async
* Make `isAccountUsingPaypal` async
* Make `attemptInvoiceCollection` async
* Make `attemptInvoicesCollection` async
* Use `await` instead of `new Promise`
* Remove unused callbackified `attemptInvoiceCollection`
* Run `attemptInvoiceCollection` for each page instead of gathering all pages in the beginning
* Add test on fetching multiple pages of invoice
GitOrigin-RevId: 2674b18c6ca5732b873fb2bc71b515909006f93d
2024-05-27 10:23:18 +00:00
David
9efae1f958
Merge pull request #18320 from overleaf/dp-add-secondary-prompt-ui
...
Add secondary email form V2 (with Captcha this time)
GitOrigin-RevId: b06216a2c9cb5b3b09305a17992eca506a0047f5
2024-05-27 10:22:40 +00:00
Antoine Clausse
0030ec17f6
[web] Convert RecurlyWrapper functions to async ( #18384 )
...
* Rename `RecurlyWrapper` to `promises`, as it will only contain the promises soon
* Update `apiRequest`
* Update `_parseXml`
* Update `_parseXmlAndGetAttribute`
* Update `_parse*Xml`
* Update `updateAccountEmailAddress`
* Update `checkAccountExists`
* Update `createAccount`
* Update `createBillingInfo`
* Update `setAddressAndCompanyBillingInfo`
* Update `createSubscription`
* Update `_createPaypalSubscription`
* Update `_handle422Response`
* Update `_createCreditCardSubscription`
* Update `createSubscription`
* Update `getSubscriptions`
* Update `getSubscription`
* Update `getPaginatedEndpoint`
* Update `getAccount`
* Update `getAccountActiveCoupons`
* Update `getCoupon`
* Update `getBillingInfo`
* Update `getAccountPastDueInvoices`
* Update `attemptInvoiceCollection`
* Update `updateSubscription`
* Update `createFixedAmmountCoupon`
* Update `lookupCoupon`
* Update `redeemCoupon`
* Update `extendTrial`
* Update `listAccountActiveSubscriptions`
* To find which functions to add as callbackified, I used this Regex:
`RecurlyWrapper\.(?!promises)[^.\s]*`
And after adding callbackified functions, we're left with no results with the Regex:
`RecurlyWrapper\.(?!promises|apiUrl|_buildXml|_parseXml|attemptInvoiceCollection|createFixedAmmountCoupon|getAccountActiveCoupons|getBillingInfo|getPaginatedEndpoint|getSubscription|updateAccountEmailAddress)[^.\s]*`
* Update unit tests
* Test `getSubscription` both as "promise" and as "callback"
I'm not sure if we want to generalize this.
* Fix: add missing `await`s (!!)
* Change `apiRequest` to reject errors instead of resolving it in an object
* Fixup for CollectPayPalPastDueInvoice test
* Fix: callbackify `getSubscriptions` (!!)
* Replace `.then(...)` chain by multiple `await`
* Fixup `attemptInvoicesCollection`: prevent reading length of undefined
* Use `return await` when returning promises
Per https://github.com/overleaf/internal/pull/18384#pullrequestreview-2065738771
GitOrigin-RevId: ceda755b24fd29f97a27e60ac5db9bc7e369f932
2024-05-27 10:21:26 +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
Antoine Clausse
27a021b093
[web] Add tests to collect_paypal_past_due_invoice.js + update logging ( #18310 )
...
* Fix: Invoices collected array length comparison
Update the code with the correct condition to respect the intent of the previous implementation ("exit with non zero code when no invoicess were processed").
See 5476f39984
However, I'm not sure if erroring when no invoices are collected is actually what we want to do.
* Wrap `collect_paypal_past_due_invoice` script and export the function
* Fixup typo `accoutns`
* Log invoices collection data before throwing
* Add note: `handleAPIError` is silencing the errors
* Create a test on `collect_paypal_past_due_invoice`
* Replace `console.log` by `@overleaf/logger` (bunyan)
Our `console.warn` show up as Errors (in red) in GCP. For example the following is an error in GCP:
```
Errors in attemptInvoiceCollection with id=2693634 OError: Recurly API returned with status code: 400
```
https://github.com/overleaf/internal/blob/5476f39/services/web/scripts/recurly/collect_paypal_past_due_invoice.js#L9
---
Does it correctly set the levels as warnings if we use `@overleaf/logger`
GitOrigin-RevId: 37c8bdf4afd8cef4706700aafb44480ec8966a74
2024-05-15 08:04:46 +00:00
David
0d08fc1df2
Merge pull request #18318 from overleaf/dp-revert-secondary-email
...
Revert "Merge pull request #18139 from overleaf/dp-add-secondary-prompt-ui"
GitOrigin-RevId: d8af37a5c332ac21ddd4c85679553df0bda326f9
2024-05-14 08:04:11 +00:00
David
7e48f4e38a
Merge pull request #18139 from overleaf/dp-add-secondary-prompt-ui
...
Add UI for secondary email prompt
GitOrigin-RevId: 887b2c7f0047f19b605f03745f7dda83926ec70b
2024-05-14 08:04:01 +00:00
Jakob Ackermann
c8f3de986c
Merge pull request #18152 from overleaf/jpa-stricter-session-validation
...
[web] stricter session validation
GitOrigin-RevId: 3ef916318fde7f31e3e3fd0f7082dde7a2975a27
2024-05-03 08:04:20 +00:00
Antoine Clausse
c4a35c35db
Delete 3 migration scripts for compile-timeouts ( #18163 )
...
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com >
GitOrigin-RevId: 2d66052994159b6d902b807f02488095d65562e1
2024-05-01 08:05:00 +00:00
Antoine Clausse
ad474e00de
Fix: unset recent users featuresUpdatedAt after wrong update ( #18149 )
...
* Copy previous script
* Remove `featuresUpdatedAt` that was wrongly set on recent users
* Fix! `signupDate` -> `signUpDate`
* Add test on `migration_compile_timeout_60s_to_20s_fixup_new_users.js`
* style: `$unset: { featuresUpdatedAt: 1 }` -> `$unset: { featuresUpdatedAt: '' }`
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com >
* Add comment on test (https://github.com/overleaf/internal/pull/18149#discussion_r1582999534 )
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com >
---------
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com >
GitOrigin-RevId: 408f5c7d48e60722aba736167b8e8858e9570d99
2024-04-30 08:04:33 +00:00
Antoine Clausse
b7f4886c7e
[web] Create script to update forgotten featuresUpdatedAt after the migration to 20s compile timeout ( #18113 )
...
* Copy `migration_compile_timeout_60s_to_20s.js` script
* Update `featuresUpdatedAt`
* Add a comment about `featuresUpdatedAt` in migration_compile_timeout_60s_to_20s.js
* Fix test on migration_compile_timeout_60s_to_20s.js
* Fix: Include users having `featuresUpdatedAt` undefined in the update
* Add test on `migration_compile_timeout_60s_to_20s_fixup_features_updated_at`
GitOrigin-RevId: 4b2baf955a6a9f39bf9ce00b7839af551064c6cb
2024-04-30 08:04:28 +00:00
Brian Gough
4474adb10f
Merge pull request #17732 from overleaf/bg-session-mitigation-initial-protoype
...
anonymous cookie-based sessions module
GitOrigin-RevId: 75fe2d48fa384ba8d07c0b478a9a5a907a2b3b67
2024-04-26 08:04:54 +00:00
Jakob Ackermann
74f8a078ca
Merge pull request #18116 from overleaf/jpa-bulk-replace-localhost
...
[misc] bulk replace localhost with 127.0.0.1
GitOrigin-RevId: d238f3635302e8ff5500d611108c4d1bef216726
2024-04-26 08:04:39 +00:00
David
8f9577da5c
Merge pull request #17947 from overleaf/dp-secondary-email-confirmation-code
...
Add endpoints for secondary email confirmation by code
GitOrigin-RevId: c2829672fd9aeca457f76958d4922b9c95086f26
2024-04-26 08:04:00 +00:00
Jessica Lawshe
b081352a3b
Merge pull request #17912 from overleaf/jel-sso-enroll-after-login
...
[web] Redirect to group SSO enrollment page after log in
GitOrigin-RevId: 4c0937de6f009cd6e7e094569eb9ad46606a763b
2024-04-25 08:05:10 +00:00
Alexandre Bourdin
fc44fc2a38
Merge pull request #18017 from overleaf/ab-convert-assigned-at-date
...
[web] Transform assignedAt back to date for conversion
GitOrigin-RevId: bd0213b337f765d8512386f9f5d3fc6d03572e33
2024-04-23 08:04:52 +00:00
David
dbf176eaa7
Merge pull request #17989 from overleaf/dp-test-endpoint-injection
...
Create an injectRouteAfter test helper method
GitOrigin-RevId: e6c7cfd47a0200b47d5074185301f15ae2182c44
2024-04-19 08:04:02 +00:00
David
07bd66438b
Merge pull request #17810 from overleaf/dp-compormised-password-prompt
...
Add compromised password prompt
GitOrigin-RevId: 7910a220943fcb3aa191da6d514d5bc3ae20f5a3
2024-04-19 08:03:58 +00:00
Jakob Ackermann
e5b350d218
Merge pull request #17926 from overleaf/jpa-batched-update-sorting
...
[web] batchedUpdate: use explicit sorting to find first record to update
GitOrigin-RevId: 6f57b92a4e5907f307618bd98642b4874018e9fa
2024-04-17 08:04:09 +00:00
Antoine Clausse
e2648c28cd
Merge pull request #17909 from overleaf/ac-tear-down-compile-timeout-tests-2
...
[web] Remove split-tests `compile-backend-class*` and `compile-timeout-20s*` (attempt 2)
GitOrigin-RevId: 5658f2977d3e7089eec5bbe7a33eee81c153e41d
2024-04-16 08:04:08 +00:00
Antoine Clausse
113344b6a9
Merge pull request #17899 from overleaf/revert-17700-ac-tear-down-compile-timeout-tests
...
Revert "[web] Remove split-tests `compile-backend-class*` and `compile-timeout-20s*`"
GitOrigin-RevId: d5070ced06adbd435e782a44b7ef767e395bd6a0
2024-04-15 08:04:37 +00:00
Antoine Clausse
7cb0b0b6af
[web] Remove split-tests compile-backend-class* and compile-timeout-20s* ( #17700 )
...
* Remove split-tests of `compile-timeout-20s` and `compile-timeout-20s-existing-users`
* Remove `NEW_COMPILE_TIMEOUT_ENFORCED_CUTOFF` variables
* Revert timeout override `60` -> `20`
* Update settings.overrides.saas.js: `compileTimeout: 20`
* Remove `compile-backend-class-n2d`
* Remove `force_new_compile_timeout`
* Remove `showNewCompileTimeoutUI`
* Remove `compileTimeChanging`
* Simplify code by removing segmentation object
* Remove `CompileTimeoutChangingSoon`
* Remove `user.features.compileTimeout = '20 (with 10s prompt)'`
* Remove `CompileTimeWarning`
* Remove `TimeoutUpgradePrompt` (old)
* Remove `compile-backend-class`
* Remove unused translations
* Update tests
* Fix: Show `CompileTimeout` even if `!window.ExposedSettings.enableSubscriptions`
* Create script to migrate users to 20s compileTimeout
* migration script: exclude `compileTimeout: 20` from the match
* migration script: use `batchedUpdate`
* Remove `showFasterCompilesFeedbackUI` and `FasterCompilesFeedback`
Helped-by: Jakob Ackermann <jakob.ackermann@overleaf.com >
* Remove `_getCompileBackendClassDetails`, simplify definition of `limits` object
* Remove `Settings.apis.clsi.defaultBackendClass`
* Remove unnecessary second scan of the whole user collection in dry mode
* Override `timeout` to 20 for users having `compileGroup === 'standard' && compileTimeout <= 60`
* Remove second `logCount`: re-run the script in dry-mode if you want to see that count
* Use secondary readPreference when counting users
* Fix script setup and exit 0
* Fix: Remove `user.` from query path!
* Add acceptance test on script migration_compile_timeout_60s_to_20s.js
GitOrigin-RevId: 3cb65130e6d7fbd9c54005f4c213066d0473e9d8
2024-04-15 08:04:24 +00:00
Jessica Lawshe
90c86cd1e9
Merge pull request #17841 from overleaf/jel-lint-populate
...
[web] Add linting rule for mongoose `populate`
GitOrigin-RevId: 625b2b5f9db4e88ce0d629752f083b8be71c7766
2024-04-12 08:06:18 +00:00
Jakob Ackermann
a669739c8b
Merge pull request #17873 from overleaf/jpa-await-user-login
...
[web] await promisified user login in ProjectStructureTests
GitOrigin-RevId: 68df8931a5c7c3843367c6fd34a66278c212ff5b
2024-04-12 08:05:20 +00:00
Jakob Ackermann
6bb98f2b23
Merge pull request #17871 from overleaf/jpa-bind-v4-v6
...
[misc] align the host for binding and requesting in tests
GitOrigin-RevId: 916521c56928329ff2cbf2817f3a0a27aeaf8c3d
2024-04-12 08:04:51 +00:00
roo hutton
6646ef2b32
Merge pull request #17596 from overleaf/rh-permissions-policy
...
[web] Add Permissions-Policy header
GitOrigin-RevId: 8934bbbda411102580d9ef8af135dcdc147627f9
2024-04-08 08:04:29 +00:00
David
adf96742d3
Merge pull request #17530 from overleaf/dp-teardown-onboarding-flow-split-test
...
Teardown onboarding flow split test
GitOrigin-RevId: 48e95e4e736772074cb68d195fc950a9da3aebcf
2024-04-08 08:04:04 +00:00
Brian Gough
908856aaea
Merge pull request #17593 from overleaf/bg-account-security-update-hibp-links
...
Update haveibeenpwnd links to use the password check form
GitOrigin-RevId: f67b1ed689c851ad3684becc38cd5eb82b0018a2
2024-03-22 09:03:13 +00:00
Thomas
71324dc691
Merge pull request #17569 from overleaf/tm-account-suspension
...
Add the ability to suspend user accounts
GitOrigin-RevId: 5e57f29941434c78a47354baca83527213f9b9b5
2024-03-22 09:03:06 +00:00
David
ea6c762559
Merge pull request #16957 from overleaf/dp-mongoose-callback-subscription-test-helpers
...
Promisify Subscription acceptance test helper
GitOrigin-RevId: 0a03f994fdc65dcd3b1b33d2f777602962274ab7
2024-03-11 09:04:04 +00:00
David
eb1b6b264c
Merge pull request #17430 from overleaf/dp-callbackify-class
...
Add callbackifyClass utility
GitOrigin-RevId: 762b800ce0eff2f146147908838162f7d32bd855
2024-03-11 09:03:59 +00:00
David
040013923a
Merge pull request #17384 from overleaf/dp-mongoose-callback-publisher-helper
...
Promisify Publisher acceptance test helper
GitOrigin-RevId: cce447234e32bfb93f8ce30deaf7fa21838e9176
2024-03-06 17:27:37 +00:00
ilkin-overleaf
d10f025603
add missing token access fields to projects ( #17372 )
...
GitOrigin-RevId: d2eca00c40af65f0309f4b196fc3b5f043761729
2024-03-06 17:27:26 +00:00
Jakob Ackermann
e729e0c874
Merge pull request #17409 from overleaf/jpa-check-before-hibp
...
[web] check user password before HIBP check
GitOrigin-RevId: 7c1bdc220fb9369733a1ff3bf26bed8cacc8e8d4
2024-03-05 09:03:46 +00:00
Jakob Ackermann
130f593986
Merge pull request #17401 from overleaf/jpa-skip-hibp-known-device
...
[web] skip HIBP check from known devices
GitOrigin-RevId: 897df02492aafeac010753c7c306e02bde5b1fd8
2024-03-05 09:03:37 +00:00
Jakob Ackermann
b35fe196db
Merge pull request #17399 from overleaf/jpa-hibp-login
...
[web] check HIBP on login
GitOrigin-RevId: e052926e4d970f9a15821f1ea9c8af46bdab90cb
2024-03-05 09:03:34 +00:00
Jessica Lawshe
994e50129b
Merge pull request #17257 from overleaf/jel-delete-sso-config-users-cleared
...
[web] Clear users linking data when deleting group SSO config
GitOrigin-RevId: 1c1f63a747f422a646c763f771a8237f91182c38
2024-02-27 17:02:19 +00:00
Jessica Lawshe
96b146f27f
Merge pull request #17221 from overleaf/jel-acceptance-tests
...
[web] Update SAML and group acceptance tests helpers
GitOrigin-RevId: b31abf1e8d34169b5ee428186b6168c083a72d46
2024-02-27 17:02:15 +00:00
Alf Eaton
861e1c4785
Skip ProjectInviteTests ( #17312 )
...
GitOrigin-RevId: 5fd65b51a845fef59591cf58eb13b0e8087ec284
2024-02-27 17:02:05 +00:00
Brian Gough
84b2b8ce81
Merge pull request #17282 from overleaf/bg-object-id-unit-tests-ii
...
add unit tests for ObjectId comparison with chai and sinon
GitOrigin-RevId: e23156f6fd95f37d447f7569a01916c71bf04ede
2024-02-27 09:03:04 +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
Alf Eaton
5b75da14db
Redirect Safari <= 13 to unsupported browsers page ( #17123 )
...
GitOrigin-RevId: 8cc508eb7f4f68c5864e102b2d4af9c8920800ae
2024-02-23 09:03:09 +00:00