285 Commits (92d1ee31e4951528446fb1376f1b1e84d5a67f5c)

Author SHA1 Message Date
uplift 92d1ee31e4
Add authenticateRequest middleware (#9795)
* Add  authenticateRequest middleware

to Post routes

* Fix linting error
4 years ago
Julian Lam 7da061f0d7
refactor: automatically authenticate all requests setup through route helpers (#9357)
* refactor: automatically authenticate all requests setup through route helpers

* fix: removed connect-ensure-login dependency

* fix: bug with some middlewares not defined outside route helper methods
4 years ago
Julian Lam 9d17f397c0 fix(remountable-routes): more fixes to remountable routes
fix: ensure proper admin privilege checking on remounted `/admin` mount

fix: guard against plugins sending back missing mounts

fix: no need to make addRemountableRoutes awaitable
4 years ago
Julian Lam 16c1d6e937 style(remountable-routes): abstract removable routes code to a separate local fn 4 years ago
Julian Lam 1f28713f1a refactor(remountable-routes): rename `src/routes/accounts.js` to `src/routes/user.js` to better match the route prefix 4 years ago
Julian Lam bc68e990af fix(remountable-routes): bug with user routes remounting to itself 4 years ago
Julian Lam 9021f071d4 feat(remountable-routes): allow category and account routes to be remounted 4 years ago
Julian Lam f01af62b53 feat(remountable-routes): allow /admin and /post to be remountable 4 years ago
Julian Lam 92758ec50d refactor(remountable-routes): allow certain route prefixes to be mounted elsewhere 4 years ago
Peter Jaszkowiak 115d19e289 chore: eslint prefer-rest-params, prefer-spread 4 years ago
Peter Jaszkowiak 23f212a4c0 chore: eslint prefer-destructuring 4 years ago
Peter Jaszkowiak dab3b23575 chore: eslint no-var, vars-on-top 4 years ago
Peter Jaszkowiak b56d9e12b5 chore: eslint prefer-arrow-callback 4 years ago
Peter Jaszkowiak 707b55b6a5 chore: eslint prefer-template 4 years ago
Julian Lam 3b1c03ed50 feat: allow ACP API access to bearer tokens
closes nodebb/nodebb-plugin-write-api#132
4 years ago
Julian Lam 9dd3cc0483 feat: allow plugins to define api routes
via new plugin hook static:api.routes
5 years ago
Julian Lam f6433ef2c5 fix(refactor): merging write-api auth middlewares with core middlewares 5 years ago
Julian Lam ec5c48b188 feat: migrating write-api skeleton into core 5 years ago
Barış Soner Uşaklı 762b0be4b4 feat: remove /assets/stylesheet.css 5 years ago
Julian Lam a82e9bd7f6
feat: privileges for Admin Control Panel (#8355)
* feat: acp privileges (WIP)

* fix: restore global privilege hooks

* refactor: using cid 0 in admin privs

* fix: no need for zebrastripe-reset

* feat: manage:categories privilege WIP

* feat: renamed prefix to admin:, settigns and dashboard privs

* fix: nofocus on acp privs group find modal

* refactor: privileges.x.get() to not used hardcoded privs

* fix: crash if unable to get latest version

* feat: setting acp priv

* Revert "fix: crash if unable to get latest version"

This reverts commit afdb235f48eb0072d88de45f3a1e0151281095b3.

* feat: user/privilege acp privs

* fix: category selector in manage/privileges

* fix: guests potentially becoming admins

* fix: bug in setting admin privs

* fix: some last minute things + api docs

* fix: some more last minute fixes
5 years ago
Barış Soner Uşaklı 842b8abb84
feat: add buildHeaderAsync (#8367)
* feat: add buildHeaderAsync

make helphers.notAllowed async

* fix: remove csrf from buildHeader

* fix: remove unused method, use middleware

* fix: /post/pid redirect doesn't need buildHeader

use buildHeaderAsync
5 years ago
Julian Lam c82a263788 Revert "fix: override ACAO header for read API spec file"
This reverts commit 240d90919b.
5 years ago
Julian Lam 240d90919b fix: override ACAO header for read API spec file 5 years ago
Julian Lam df139928b6
feat: displaying one-click unsubscribe link in email footer (#8024)
closes #8016
5 years ago
Julian Lam 52a2e5d61d fix: #7816, adding GDPR and TOU interstitials earlier on route reloading
A use-case was presented that called for a theme to disable the
registration interstitials. However, the plugin hooks were always
fired first, and so the core interstitials could not be removed
at that time because they hadn't been added yet.

This change moved the interstitial adding to the earliest point
possible, right after plugins.loadedHooks is emptied in preparation
for plugin initialisation.
6 years ago
Barış Soner Uşaklı 0d047f4eb9 feat: #7743, webserver 6 years ago
Julian Lam d722f3b8b6 fix: mounting of all-route middlewares to router instead of app
related to julianlam/nodebb-plugin-session-sharing#73
These three lines haven't changed in two years, but it makes more
sense for them to be called against the relative path router,
otherwise req.originalUrl contains the relative path, which is
not necessary.
6 years ago
Barış Soner Uşaklı c72da5595a fix: #6806
3 new global privileges
view:users
view:tags
view:groups
6 years ago
Barış Soner Uşaklı 5353960ae7 fix: #7316 6 years ago
Julian Lam c831ff0de3
fix: removal of timeago fallback middleware (#7259)
* fix: removal of timeago fallback middleware

Instead of loading English fallback on missing language, we opt
to not send a script tag for a missing language to begin with.

Timeago already loads with English as default, so it will just
continue to use English.

* fix: check userLang against supported language codes

* fix: cleaned up code as per @pitaj

* fix: added comments

* fix: more fixes as per @pitaj

* feat: added addl. test for timeago locales, fixed broken test
6 years ago
Julian Lam 70a87d4399
feat: support for one-click unsubscribe from email clients (#7203)
* feat: sending notifs via ACP creates real notification

re: #7202

* feat: basic integration for one-click unsubscription #7202

* feat: tests for #7202 + bugfix

* feat: added and organized digest unsub tests

closes #7202
6 years ago
Barış Soner Uşaklı d31684e8b8 fix: #7131 6 years ago
Julian Lam a07d9898df fix: #7071 buildSkinAsset won't rebuild continuously 6 years ago
Barış Soner Uşaklı cb7c2d8c28 fix: add missing render function 6 years ago
Barış Soner Uşaklı 1f918ca8f8
Home route (#7039)
* fix: WIP home fix

* remove console.log

* fix: #6949

on redis run all tests in subfolder /forum
fix URI errors
fix sping/ping
6 years ago
Peter Jaszkowiak ba619c7ec8 style(eslint): match operator-linebreak preferences 6 years ago
Barış Soner Uşaklı 4b486a808e fix custom home 6 years ago
Baris Usakli d0b67b00db closes #6949 6 years ago
Julian Lam f96208a0c8 fix(uploads): ugly filenames on uploaded asset downloading
During regular processing, a timestamp is prepended to the filename
for any uploaded files. We don't want this to be part of the filename
if an end-user elects to download the file.

This commit adds a middleware to strip out that portion of the
basename and adds the appropriate Content-Disposition header for
files in /uploads/files

Fixes #6953
6 years ago
renovate[bot] 64b9dabff8 chore(deps): update dependency eslint-config-airbnb-base to v13 (#6599)
* chore(deps): update dependency eslint-config-airbnb-base to v13

* chore: #6599, linting 😬
7 years ago
Julian Lam 501b3a79ca
Refactor skins to be built on server-side (#6849)
* WIP

* using bootswatch from npm instead of bootswatch CDN url

* feat: on-demand client css building for skins

* added ability for client-side to select a skin

* updated loading and saving logic of bootstrapSkin on client side user settings

* fix: broken test for #6849
7 years ago
Barış Soner Uşaklı 60c58870af
remove hotswap (#6835) 7 years ago
Barış Soner Uşaklı 92744a7200 closes #6852 7 years ago
Peter Jaszkowiak 04d31fe1d4 Precompile all templates
- Benchpress compilation is 33x faster now
- Native module with JS fallback and pre-built binaries
- Dev template build is <1sec now
- Minified template build is ~5sec (uglify accounts for almost all)
7 years ago
Barış Soner Uşaklı ccad95cf73 closes #6579 7 years ago
Barış Soner Uşaklı 43180d4b83 #6158 7 years ago
Peter Jaszkowiak 11b9cb7688 Fix #6076, `action:home.get:*` returned to previous functionality (#6077)
Added tests to confirm `buildHeader` is used and `/api` works
7 years ago
Barış Soner Uşaklı e4ea4d5134 move composer routes to its own file 8 years ago
Peter Jaszkowiak bbdc55cb3a Better fix for #5993 (#6034)
* Better fix for #5993

Also a nice newline so the line doesn't get overwritten when running `./nodebb upgrade`

* Optimizations for custom homepage

Move it into a separate module
8 years ago
Barış Soner Uşaklı 5b2a674a4f closes #6020 8 years ago