* [web] Group audit log link in settings
Adds a link to access the `/manage/groups/:subscription_id/audit-logs`
endpoint
* [web] Add `group-audit-logs` split test for gradual rollout
GitOrigin-RevId: 60d6c9917ca54ff5e228996e7454a901f0f3b9ca
* [web] Group settings: audit Log
User facing audit logs, available to Group Admins.
- `/audit-logs` page
- `/audit-logs/csv` to download all logs
GitOrigin-RevId: 4938c49fdd8e62f5ea278b6c80ed2bd544455b92
* Ensure add comment tooltip doesnt show up without comment permissions
* disable comment option when no permissions in new editor
* add e2e tests
* use server pro for project sharing
* use findByRole for add comment
* remove .only
GitOrigin-RevId: fbef78e0db7678a00d6c602069e16ddeaf23b2f3
* Improve landmarks for the Project Dasbhboard
* Improve landmarks for the IDE page
* Improve landmarks for the new redesigned IDE page
* Sort locales
* Fix typo OlButtonToolbar -> OLButtonToolbar
* Update project navbar translation
* Update labels
* Redundant main landmark
* Fix failing test
* Descriptive name for the rails tab
* Header should not be in a button
* Update translation to Account and help
* Update translation to Project categories and tags
* Add explanations
* Show landmark for the survey widget when it's rendered
* Suggestions for nav stretch/scroll/borders
* Source format
---------
Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>
GitOrigin-RevId: d05a738e782d2edb229529aadf92b9004dfd973a
* Convert and add portals and learn wiki .less to .scss
* Convert learn wiki to BS5 and update search JS
* Convert portals to BS5
* Move gallery page padding to seperate class, to avoid forcing padding to the gallery included on portal pages
---------
Co-authored-by: Rebeka Dekany <50901361+rebekadekany@users.noreply.github.com>
GitOrigin-RevId: 3a93d56280ccdcf7fb1837511a3efe54b2efd428
* Update Reconfirm Affiliation (Pug) in Portal page
Change the notification so it directs users to the settings page instead of triggering an email confirmation with token-link
* Update Reconfirm Affiliation (React) in Settings page
Update the component so it sends the 6-digits code and opens the modal to enter it
* Update Reconfirm Affiliation (React) in Projects page
Update the component so it sends the 6-digits code and opens the modal to enter it
* `cleanup_unused_locales`
* `bin/run web npm run extract-translations`
* Update tests
* Minor updates in tests
* Update Pug notifications with the notification mixin
* De-center the "reconfirmed notification"
* Update "Learn more" links to "Learn more about institutional email reconfirmation"
* Update tests
GitOrigin-RevId: cb65623e209217614786eec56f7f5d28b9e8cec5
* Improve landmarks for the Project Dasbhboard
* Improve landmarks for the IDE page
* Improve landmarks for the new redesigned IDE page
* Sort locales
* Fix typo OlButtonToolbar -> OLButtonToolbar
* Update project navbar translation
* Update labels
* Redundant main landmark
* Fix failing test
* Descriptive name for the rails tab
* Header should not be in a button
* Update translation to Account and help
* Update translation to Project categories and tags
* Add explanations
GitOrigin-RevId: 96712b37bb1306b552de510d9fd8ae890f24309f
* [web] reject upload requests without a file path
* [web] update copy on error message and link to contact form
Co-authored-by: Kamal Arkinstall <kamal.arkinstall@overleaf.com>
* [web] update copy: move dot to the end
---------
Co-authored-by: Kamal Arkinstall <kamal.arkinstall@overleaf.com>
GitOrigin-RevId: ba1ee81a91b046540caeb2f3f3da0e305611b35f
* Create AdminCapabilities in admin-panel module
* Add `adminRolesEnabled` setting
* Use `PermissionsController.requirePermission` in admin-panel routes
* Update `adminCapabilities` to be an array
* Update frontend tests
* Rename `defaultAdminCapabilities` to `fullAdminCapabilities`
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Add tests to PermissionsManagerTests.js
* Get admin roles and capabilities from the database
* Add tests to admin-panel
* Fixup PermissionsManagerTests.js without admin-panel module
* Revert "Use `PermissionsController.requirePermission` in admin-panel routes"
This reverts commit ccbf3e3e3bca9239b786c662cba2ac6bd2f4117a.
* Revert "Fixup PermissionsManagerTests.js without admin-panel module"
This reverts commit 6d7ad207bb17c5ca4c12c489d4636a02c608926d.
* Revert "Add tests to PermissionsManagerTests.js"
This reverts commit 8f9cc911750911e1c4b74b631d8c8a1b1ca86630.
* Fix tests after the reverts
* Replace capabilities to more sensible examples ('modify-user-email' and 'view-project')
* Set `adminRolesEnabled: false` for now
* Return `[]` capabilities for non-admins
* Misc: types, test description, settings ordering
* Small refactor of AdminPermissions.mjs:
Reuse code with `getMissingCapabilities`
Throw when `requiredCapabilities` is empty
* Update tests after update
* Rename `checkAdminPermissions` to `hasAdminPermissions`
* Change role permissions to array instead of object
* Remove admin capabilities when `!Settings.adminPrivilegeAvailable`
* Return `[]` if there is no user id
* Throw if `user?._id` is missing
* Update services/web/modules/admin-panel/app/src/AdminPermissions.mjs
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Adjust to ForbiddenError constructor syntax
* Give empty capabilities for unknown role, update tests
---------
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 1eec4f6a45e1cc3ae76a3a4603cec1ceba1c2322