11698 Commits (831ecc6af017ba8662f53e305c61c899c3685f3d)

Author SHA1 Message Date
Julian Lam a55b381791 feat(writeapi): admin settings update route 5 years ago
Julian Lam 2ec838fc59 feat(writeapi): token generation/delete routes, ACP updates 5 years ago
Julian Lam c7d15dfa94 feat: filter:settings.get plugin hook 5 years ago
Julian Lam 3ea1aa4780 refactor(writeapi): update route prefix to api/v3, default error option 5 years ago
Julian Lam f67824719c chore(writeapi): cleanup 5 years ago
Julian Lam 0973feea16 feat(writeapi): post bookmarking 5 years ago
Julian Lam 9942c248eb feat(writeapi): post voting 5 years ago
Julian Lam 5e2a3ea6ec refactor(writeapi): post.tools.purge no longer a method 5 years ago
Julian Lam 414169fdfa feat(writeapi): post delete/restore/purge 5 years ago
Julian Lam f66c2fb60f feat(writeapi): post editing 5 years ago
Julian Lam 1605e5e443 feat(writeapi): topic tags 5 years ago
Julian Lam 9be5629458 feat(writeapi): topic follow/ignore 5 years ago
Julian Lam da25ce4d09 feat: topic delete/restore/purge/(un)pin/(un)lock 5 years ago
Julian Lam 675a62dadd fix: remove debug log 5 years ago
Julian Lam 5fc7e7bfd0 feat: add new api page to ACP menu 5 years ago
Julian Lam 49652e6f1b feat: management of API tokens via ACP 5 years ago
Julian Lam 8e89f34dbf fix: bad logic in group assertion middleware 5 years ago
Julian Lam 8e7baac6ef fix(writeapi): calls to profile editing routes 200 even if user DNE 5 years ago
Julian Lam 7757f965eb fix: errors thrown if no password sent in to profile edit route 5 years ago
Julian Lam 549ca11056 fix: bug where middlewares seemingly ran in parallel 5 years ago
Julian Lam 6096f74ab2 feat(writeapi): adding missing files 5 years ago
Julian Lam 4c833d0bf0 feat(writeapi): topic posting and replying 5 years ago
Julian Lam 40dc1c38d3 feat(writeapi): added DELETE /groups/:slug/membership/:uid route 5 years ago
Julian Lam 68ecf41ecf fix(writeapi): client-side group join API call 5 years ago
Julian Lam 952dc211dd feat(writeapi): added group joining and deletion 5 years ago
Julian Lam d044c3223e feat(writeapi): abstracted ajax calls out to new api module 5 years ago
Julian Lam ba345e53e8 feat(writeapi): added POST /api/v1/groups 5 years ago
Julian Lam 49994f3a15 fix(openapi): moved write-api to public/openapi 5 years ago
Julian Lam 3072de4812 feat: added DELETE /api/v1/categories/:cid route 5 years ago
Julian Lam e942ad8101 feat: added PUT /api/v1/categories/:cid route
Deprecated admin.categories.update socket call
Showing stack trace in console for errors, when in development mode
5 years ago
Julian Lam dc666fd8a9 feat: added POST /api/v1/categories route 5 years ago
Julian Lam a5af2dc819 feat: added PUT/DELETE /api/v1/users/:uid/ban routes 5 years ago
Julian Lam db5c5b2cfb fix: follow route to match spec 5 years ago
Julian Lam b5bbcbaeaa feat: added POST and DELETE /api/v1/users/:uid/follow routes 5 years ago
Julian Lam 7aed174ebc feat: added PUT /api/v1/users/:uid/password route 5 years ago
Julian Lam a1ddc210b2 feat: added DELETE /api/v1/users/:uid and DELETE /api/v1/users 5 years ago
Julian Lam d15d9e4492 fix(refactor): patching helpers.tryRoute for API routes, some re-org
Thanks @barisusakli for the tip
5 years ago
Julian Lam d8879d21db fix: error handling with POST /api/v1/users 5 years ago
Julian Lam 58043e07ba fix: use POST call for user creation in ACP
- Not entirely sure about error handling yet, more research needed
- Also added socket method deprecation utility method
5 years ago
Julian Lam bba2a4638c fix: user creation POST route returns user data, updated openapi spec 5 years ago
Julian Lam 7b6d43bcc8 feat: added checkRequired middleware for API calls 5 years ago
Julian Lam fd67355b03 fix(writeapi): authenticate middleware logic to work better with await 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ı 264818e517 fix: use proper api url
no need to parse all tags since https://api.github.com/repos/NodeBB/NodeBB/releases/latest gives the latest non-prerelease, non-draft releases
5 years ago
Barış Soner Uşaklı 8eb62e2210 fix: tests, get latest release tag recursively 5 years ago
psychobunny cdb794888d style: linting 5 years ago
Barış Soner Uşaklı ed092bf6b5 refactor: remove posts.tools.purge
moved the check to socketPosts.purge
5 years ago
Julian Lam dde5b6b814 fix: unable to register async method as response hook listener
Also fixes #8723, /api/config now runs middleware.authenticateOrGuest
5 years ago
Barış Soner Uşaklı cb2f6f7c4a fix: test 5 years ago
Barış Soner Uşaklı 7bf6d3b8eb fix: dont let mods load postqueue for a cid they are not a mod of 5 years ago
Barış Soner Uşaklı 2ea9768e00 fix: show disabled categories in admin&mods 5 years ago
Barış Soner Uşaklı fbd85680fb fix: spec 5 years ago
Barış Soner Uşaklı 5d9a868142
feat: category filter on post queue (#8710)
* feat: category filter on post queue

category filter module

* feat: add spec
5 years ago
psychobunny 7545951725 chore: refactor src/emailer.js 5 years ago
Peter Jaszkowiak 1aa336d837
refactor: shared constants (#8707)
define plugin name and theme name regexs in one location for consistency

define various shared paths in one place for consistency
5 years ago
Barış Soner Uşaklı e60357d20d
feat: #6594, add top/popular sections to digest email (#8709) 5 years ago
Peter Jaszkowiak 55d5cccf2e
Document deprecations and remove old ones (#8706)
* chore: document deprecation removal versions

* chore: remove deprecations 2+ versions old
5 years ago
Peter Jaszkowiak 017af63fb0
fix: #8686, deprecate `plugin.json/library` (#8705)
and also fix deprecated hooks with no alternative
5 years ago
psychobunny 5441651ea7 fix: update "install plugins" link to go to the download tab 5 years ago
Julian Lam 38f88fc563 fix: #8699 tags route is case sensitive, though tags are not 5 years ago
psychobunny f4d76f1edd feat: move service-worker.js into its own file 5 years ago
psychobunny 14ba1a6dbb feat: analytics:maxCache setting in ACP
I removed a TODO from core. Watch your head as flying pigs are abound
5 years ago
Julian Lam 7f58e3ab09 fix: error on `reset -p` if plugin is not active
No need to throw error if plugin was not active, just silently OK
5 years ago
Renovate Bot 1e5621c049 fix(deps): update dependency sanitize-html to v2 5 years ago
psychobunny 9c5b690799 feat: up recommended size to 512x512 + ACP labels for PWA 5 years ago
psychobunny 6478b32d0e feat: upload maskable icon for PWA 5 years ago
Julian Lam b12e8d6312 feat: show top 5 trending plugins in new tab in Extend > Plugins 5 years ago
Julian Lam 07af621381 fix: typo in getCompatiblePlugins 5 years ago
psychobunny 54705cc432 fix: typo 5 years ago
psychobunny 5172d73137 feat: add theme-color meta tag for browser address bar 5 years ago
psychobunny f69697b3fa feat: basic service worker, minimum requirement for for a2hs; see #8126 5 years ago
psychobunny 31528a5202 fix: manifest - use absolute URL for start_url 5 years ago
psychobunny 46800b6639 fix: prefer webmanifest extension over json
https://w3c.github.io/manifest/#media-type-registration
5 years ago
psychobunny 4fc84e9f5c chore: lint notifications.js 5 years ago
psychobunny 5b427a0c3b feat: option in ACP to configure notification/email delay for chats 5 years ago
Timothy Fike f85fe7faff
don't invite an already invited email (#8688)
* don't invite an already invited email

* add email-invited translation string
5 years ago
Timothy Fike 5078a8df25
ttl/pttl (#8689) 5 years ago
Barış Soner Uşaklı 16039b1117 refactor: post edit 5 years ago
psychobunny b6f2f0e5d0 fix: #8681 change owner modal's search should check if user is banned 5 years ago
Julian Lam 5ddf70221c feat: upon plugin installation via ACP, check against nbbpm first 5 years ago
Julian Lam 0fffe28941 fix: issue where the last flag filter could not be removed 5 years ago
Barış Soner Uşaklı 83d4e7efaa feat: add number of posters to topic 5 years ago
Julian Lam 81595095da feat: allow plugins to override tags and tag counts 5 years ago
Barış Soner Uşaklı bbf6889ecc fix: topic count on category page if filter is author 5 years ago
Barış Soner Uşaklı ac43cd8b6f fix: #8665, trim email before checking validity 5 years ago
Barış Soner Uşaklı e72fe25920 fix: editing posts saving uncessary data 5 years ago
Barış Soner Uşaklı 4f14dc7a58 fix: #8640, add bookmarks to intFields 5 years ago
Barış Soner Uşaklı af43f0e48e fix: #8656, rename /api/me to /api/self 5 years ago
Julian Lam 43571bac38 feat: hotkey "/" to open ACP search 5 years ago
Barış Soner Uşaklı 22cd265434 fix: tests 5 years ago
Barış Soner Uşaklı 220297d501 fix: use correct topic count for category 5 years ago
Barış Soner Uşaklı 437424375e feat: expose calculateTopicPostCount and getChildrenTree 5 years ago
Julian Lam 4fca79380a fix: tests, because redis is TOO FAST 5 years ago
Julian Lam 29b357bc66 refactor: expose new method for appending moderation note 5 years ago
Barış Soner Uşaklı de824007d9 feat: allow custom req.query.filter on /unread /recent 5 years ago
Barış Soner Uşaklı 38d3982bf1 fix: #8418
allow updating other profile fields when username isnt being changed
5 years ago
Barış Soner Uşaklı 4be693f2e7
feat: fullname search (#8641)
* feat: fullname search

* fix: take last element

* fix: attempt to fix psql like query

* feat: upgrade sript, another fix attempt

* fix: psql test

* fix: psql scan

* feat: add debug for test

* feat: test collate

* feat: cleanup

* fix: upgrade script
5 years ago
Julian Lam 0891236142 fix: typo 5 years ago
Julian Lam 7e7366be13 fix: remove toolsVisible in post tools' menu [breaking] 5 years ago
Barış Soner Uşaklı 65d049c6f9 fix: tests 5 years ago
Barış Soner Uşaklı 2d5bd153e0 fix: check if unread_tids are followed 5 years ago
Barış Soner Uşaklı c1c617b323 feat: add topicIndex to category page 5 years ago
Barış Soner Uşaklı a78e1df965 fix: use text-right 5 years ago
Barış Soner Uşaklı 5a40d26b44 feat: #8626, new move posts modal 5 years ago
Barış Soner Uşaklı a34b685c65 fix: remove lang keys, remove sounds menu 5 years ago
Barış Soner Uşaklı 5f10d67db5
Remove sounds (#8617)
* feat: remove sounds

* feat: remove more sounds

* feat: disable sounds plugin

* fix: openapi
5 years ago
Barış Soner Uşaklı 4bace773f9 fix: wider widget area 5 years ago
Barış Soner Uşaklı 19c448612d feat: remove global RELATIVE_PATH 5 years ago
Barış Soner Uşaklı 46ab2711d4 fix: #8432, add CSP frame-ancestors 5 years ago
Barış Soner Uşaklı 6fc31df033 feat: use const/let 5 years ago
Barış Soner Uşaklı 4588e52120 fix: allow setting maximumAboutMeLength to 0 5 years ago
psychobunny a38784f567 fix: additional commit for CF rocket loader 5 years ago
psychobunny 4d6659553b feat: allow nbb to work with cloudflare rocket loader 🚀 5 years ago
Barış Soner Uşaklı 53a5f1516e feat: move code 5 years ago
Barış Soner Uşaklı b6917b9dee feat: #8602, dont send emails to unconfirmed addresses 5 years ago
Barış Soner Uşaklı 94da9fe55e feat: add partials/footer/js.tpl
add ajaxify.coldLoad which gets called from partials/footer/js.tpl
5 years ago
Barış Soner Uşaklı 4031a8cab1 fix: stack trace 5 years ago
Barış Soner Uşaklı 54b497258f feat: add missing name to profile image upload 5 years ago
Barış Soner Uşaklı b0a759223d feat: add action:user.removeCoverPicture 5 years ago
Barış Soner Uşaklı 962446a5ac feat: add user data to action:user.removeUploadedPicture 5 years ago
Barış Soner Uşaklı 9542ef1285 feat: add userData to action:user.delete 5 years ago
Barış Soner Uşaklı a263897627 fix: #8604 5 years ago
Barış Soner Uşaklı 1e5981c0d6 feat: replace relative urls to absolute before sending email notifs
https://github.com/NodeBB/NodeBB/pull/8366/files
5 years ago
Julian Lam f743f92088
refactor: socket posts delete/restore/purge so tid is not necessary (#8607)
* refactor: socket posts delete/restore/purge so tid is not necessary

* refactor: stop trying to be fancy

* fix: tests to not pass in tid into posts.deletePosts

* fix: some more unnecessary tid passing
5 years ago
Julian Lam 0c20351702 feat: additional sorting options for flags
+ upvotes, +downvotes, +replies
5 years ago
Barış Soner Uşaklı 896fe9d65e fix: don't crash on outdated redis instances 5 years ago
Julian Lam 0e58d2b866 fix: update post-queue hook names 5 years ago
Julian Lam 8cc36de284 feat: new filter hook prior to post queue addition
filter:post.queue
5 years ago
Julian Lam a9dfc9a74e feat: add replies to getPostSummaryByPids 5 years ago
Julian Lam e0c7d65a92 Revert "feat: add reply count to getPostSummaryByPids"
This reverts commit de0f4aadb8.
5 years ago
Julian Lam de0f4aadb8 feat: add reply count to getPostSummaryByPids 5 years ago
Barış Soner Uşaklı 9f9164a9be fix: #8582 5 years ago
Julian Lam 56101ae5ae fix: ip-blacklist not working after #8580 5 years ago
Kyle Farris 2b785628e7
fix: removed invalid options for the sendmail transport (#8576)
* Removed invalid options for the sendmail transport that were causing Nodemailer to return the SMTPTransport instead.

* Removed options for rate limiting in admin email interface. Added new option for toggling whether to use pooled connections.
5 years ago
Julian Lam b6b94a56dc refactor: moved ip-blacklist and post-queue styles/tpls to themes
This is a breaking change!, re: #8580
5 years ago
Julian Lam a4dbbc3749 feat: sort dependencies alphabetically
... when merging from install/package.json

/cc @pitaj
5 years ago
Barış Soner Uşaklı 55533b11e5 fix: dupes in unread followed topics 5 years ago
Barış Soner Uşaklı 39f4bbaa0e fix: wrong data passed to getCategories 5 years ago
Barış Soner Uşaklı 354e6ccc66 feat: banning a user will resolve their post flags 5 years ago
Barış Soner Uşaklı 91d9333a50 fix: username, email history disappering if content was deleted 5 years ago
Julian Lam 840cb5105f fix: package-install clobbering scoped nodebb plugins 5 years ago
Julian Lam 4b0cb26b34 fix: empty "manage" menu showing in ACP
... if no privileges corresponding to those menu items
are given
5 years ago
Julian Lam cc2686057c fix: hide nodebb version in ACP for non-superadmins 5 years ago
Julian Lam cf2f1e956a refactor: changed way middleware was exported 5 years ago
Julian Lam f00595b32d fix: change how admin middlewares are exported 5 years ago
Julian Lam ae68a254d7 fix: one less return, to appease codeclimate 5 years ago
Julian Lam 03bd76dea2 fix: inability to access /admin if not superadmin
There was an odd issue where non-superadmins could not use
the /admin route to access the ACP, even though they had
appropriate access. For whatever reason, it could not
be reliably reproduced on my dev. As it turns out, the
reason was because I was checking the wrong privilege,
and my dev database had this wrong privilege leftover
from the initial development of the ACP admin privileges
feature. Dumb.

Anyhow, that fixes this issue.
5 years ago
Barış Soner Uşaklı 29e3ab247d fix: #8560, fix old upgrade script
db.connect no longer exists at the root
5 years ago
Julian Lam 6521e4dac4 Revert "feat: expose global/admin privileges to all routes"
This reverts commit 4737f937ee.
5 years ago
Julian Lam 4737f937ee feat: expose global/admin privileges to all routes
@barisusakli revert if necessary 😬
5 years ago
Andrew Rodrigues 7daba7ddc1
fix: #8570 5 years ago
Julian Lam 3efe2362e2 fix: sorting the flags list by newest is not considered a filter
... as it is default
5 years ago
Julian Lam 334be11382 fix: no-widgets messaging in ACP + copy 5 years ago
Julian Lam 346db0d84d feat: flags list sorting, closes #8569 5 years ago
Julian Lam cabe62a06c fix: #8568 perPage not acting like a filter 5 years ago
Barış Soner Uşaklı 35a538ec2a feat: allow adding multiple users to group 5 years ago
Barış Soner Uşaklı f1e82b6441 feat: add filter:group.getOwnersAndMembers 5 years ago
Julian Lam 9c70b6620e feat: pass uid into filter:flags.list 5 years ago
Barış Soner Uşaklı 31c2b7d946 fix: #8562 5 years ago
Julian Lam 2adae87949 fix: progress bar clobbering upgrade script name 5 years ago
Julian Lam ac75c9a052 fix: tweak upgrade script progress bar to only update 100 times in total 5 years ago
Julian Lam 80a2a700ce fix: navigation title unescape upgrade script tweak 5 years ago
Julian Lam 7456a0e34e fix: new language key for error handling 5 years ago
Julian Lam de8eebbd7c fix: upgrade scripts not run properly if schemaDate is present
Only affected VERY old installs that don't use schemaLog
5 years ago
Barış Soner Uşaklı 0189945996 refactor: remove util.promisify calls 5 years ago
Barış Soner Uşaklı bfaf648ec3 fix: #8556, catch errors from admin check 5 years ago
Barış Soner Uşaklı 326827382a fix: upgrade script for 1.15.0 5 years ago
Barış Soner Uşaklı 846b7d2430 refactor: change pwd change logic
add one more test
5 years ago
Julian Lam 16cee1b03b fix: improper targetUid check during password change 5 years ago
Julian Lam 0903eb4b8c feat: limit privileges column to superadmins only 5 years ago
Peter Jaszkowiak 1d170e0c1c
fix: #8547, remove old deps during upgrade (#8557) 5 years ago
Julian Lam 12edd18b46 feat: use nodebb-scoped bootswatch
closes #8527
5 years ago
Barış Soner Uşaklı 6e91885836 feat: use assetBaseUrl instead of hardcoding 5 years ago
Barış Soner Uşaklı 3f01f4a2b8 Revert "feat: load timeago strings client-side"
This reverts commit 558a2d739c.
5 years ago
Julian Lam 558a2d739c feat: load timeago strings client-side
9adaccd036 introduced the ability to
configure an assetBaseUrl, but the timeago strings were still
calling a hardcoded value as it was handled server-side. There's
no need for the strings to be loaded until timeago is initialised.
5 years ago
Julian Lam 9adaccd036 feat: +assetBaseUrl, -l10BaseUrl, -requireBaseUrl
Additional base URLs were necessary for benchpress and translator,
and in order to not clutter the API response with needless one-
time use base URLs, I decided to use a single base that is used
by all of the services, assetBaseUrl.
5 years ago
Barış Soner Uşaklı 33c5988c34 refactor: rewrite src/upgrade.js with async/await 5 years ago
Barış Soner Uşaklı 231d34d0aa fix: upgrade script 5 years ago
Barış Soner Uşaklı 8887f0edaa fix: don't allow duplicate upgrade script names 5 years ago
Julian Lam 9e3fd0e479 Revert "feat: #8493, plugin helper for standardised link/button injection"
This reverts commit 0bbb813e4b.
5 years ago
Sam Thompson 0bbb813e4b feat: #8493, plugin helper for standardised link/button injection 5 years ago
Julian Lam 9f3b78118a fix: send hard 404 instead of soft 404 for missing modules
We used to send a soft 404 because require.js would error out on
a 404, but it seems years ago, error handling was added to the
require() call, so a hard 404 will not throw errors to the console
5 years ago
Barış Soner Uşaklı d6baf5c278 feat: show event/params on error 5 years ago
Julian Lam 68f8d6e3a1 fix: #8549 send 308 Permanent Redirect on topic/category shortlinks 5 years ago
Julian Lam def16f9e97 feat: introduce overridable l10nBaseUrl config value 5 years ago
Barış Soner Uşaklı 2c35d0ba87 refactor: change incrementViewCount and markAsRead to async/await 5 years ago
Barış Soner Uşaklı dfabd0a3fe feat: remove administrator property from public routes 5 years ago
Barış Soner Uşaklı 774e5d0429 feat: add helmet middlewares 5 years ago
Barış Soner Uşaklı c39c51139b fix: remove default helmet 5 years ago
Julian Lam a716a5529c
feat: more discrete commit-on-save instead of commit-on-change w/ confirm modals (#8541)
* feat: privileges save button, #8537, WIP

* fix: disable firefox autocomplete on privilege form fields

* feat: closes #8537 privilege changes commit on save

- new language strings for confirmation and success modals/toasts
- indeterminate privilege handling (/cc @psychobunny)
- added new discard button
- both discard and save buttons now have confirmation dialogs

* fix(tests): remove duplicate template helper test

* fix(tests): broken template helper test

* feat: confirm dialogs for all privilege copy actions

Also, ability to add user to a privilege table without needing
to refresh the privilege table.

* feat: group row addition w/o table refresh

breaking: helpers.getUserPrivileges and helpers.getGroupPrivileges
no longer make socket calls to the following hooks:

- filter:privileges.list, filter:privileges.admin.list,
  filter:privileges.global.list, filter:privileges.groups.list,
  filter:privileges.admin.groups.list,
  filter:privileges.gloval.groups.list

The filters are still called, but done before the helper method
is called, and the results are passed in instead. This change
should only affect you if you directly call the helper methods,
otherwise the change is transparent.

* fix: stale ajaxify data on privilege category switch

* fix: implicit privileges not showing for user privs

* fix: groups, not group, also fix tests

* fix(tests): again

* fix: wrong tpl rendered when adding group to global priv table
5 years ago
Julian Lam 0f10e0836b fix: remove duplicate configuration for helmet-hsts 5 years ago
Barış Soner Uşaklı e7a502e0aa feat: add ability to search groups in group details page 5 years ago
Barış Soner Uşaklı 335169f2b1 fix: don't process invalid topics, fallback to 0 score 5 years ago
Barış Soner Uşaklı 6924a22238 fix: tests 5 years ago
Barış Soner Uşaklı bb224184d8 fix: #8539, enforce content checks for post queue 5 years ago
Barış Soner Uşaklı 776e34a80f refactor: rewrite src/install with async/await 5 years ago
Julian Lam 6c00ec8435 refactor: removed rather redundant flag reporters zset 5 years ago
Julian Lam 0f2b6f1ff7 fix: bug; additional reports could be added by the same user repeatedly 5 years ago
Barış Soner Uşaklı 519e665939 fix: #8538, go to first unread instead of last read 5 years ago
Barış Soner Uşaklı 0d698a079e fix: #8533, validate and retry password during setup 5 years ago
Barış Soner Uşaklı 9e80a9efdd fix: #8534, dont show modal on search 5 years ago
Barış Soner Uşaklı fb7bb8d400 feat: use category selector in category page
fix privilege shortcuts in group page after search
5 years ago
Barış Soner Uşaklı 560f3eb173 feat: css fixes 5 years ago
Barış Soner Uşaklı 91411cc47c feat: add privileges shortcut to groups list
fix issues with escape group names
5 years ago
Julian Lam fcdbdf63a3 refactor: flags object in post tools 5 years ago
Barış Soner Uşaklı f1974fb900 refactor: pass only needed data 5 years ago
Barış Soner Uşaklı 9f346c53ab fix: language string 5 years ago
Barış Soner Uşaklı f89ec20574 feat: allow passing groupName to user.search 5 years ago
Julian Lam c705e08a76 feat: allow direct link to flag from post tools, #8531 5 years ago
Barış Soner Uşaklı c4829fd8c2 feat: allow changing requirejs base url 5 years ago
Barış Soner Uşaklı 9df871bee2 fix: tests 5 years ago
Barış Soner Uşaklı bbc7737e14 feat: ability to clear cache from acp 5 years ago
Barış Soner Uşaklı 69fb15276c fix: tests 5 years ago
Barış Soner Uşaklı 8d8117ffa1 feat: reduce amount of data loaded on acp admin page
get rid of socket call and use ajaxify.data.categories
5 years ago
Barış Soner Uşaklı 7331faed9f fix: reverse uid checks 5 years ago
Barış Soner Uşaklı 303bffdb5f feat: remove require fallback for plugins 5 years ago
Barış Soner Uşaklı 2dfe9d49f4 fix: acp view category button if category is a link 5 years ago
Barış Soner Uşaklı 762b0be4b4 feat: remove /assets/stylesheet.css 5 years ago
Barış Soner Uşaklı 5e5815f051 fix: #8515, fix login redirect on subfolder 5 years ago
Barış Soner Uşaklı fd4c3cda42 fix: #4695, remove new notif alert 5 years ago
Julian Lam 8473e165a6 fix: too small sortable handle for ACP>Manage>Categories
The handle was initially just the icon, but now it is the icon
and the category label itself.
5 years ago
Barış Soner Uşaklı 24535a62e7 feat: make category tools in acp a dropdown
add view category, view privileges into dropdown
5 years ago
Barış Soner Uşaklı 37e56d94ce feat: series upload 5 years ago
Barış Soner Uşaklı 8bd63f61e0 feat: resolve flag on delete/purge/ban/delete account 5 years ago
Barış Soner Uşaklı c54b6b9c7e refactor: startup 5 years ago
Barış Soner Uşaklı 57135761ca fix: move check inside lock 5 years ago
Barış Soner Uşaklı af91c26a6f refactor: get rid of bind calls 5 years ago
Barış Soner Uşaklı e045436c07 feat: 8502, don't change topics sitemaps on every reply
sort by topic creation in ascending order
5 years ago
Barış Soner Uşaklı 0a9ea91fea feat: allow building custom languages during dev 5 years ago
Barış Soner Uşaklı d1cb405d86 fix: #7351, display less errors with location and error message 5 years ago
Julian Lam 55b0e902fb feat: consolidation of flags to reduce flagspam, #8510
Squashed commit of the following:

commit c6d09396208a10c244d7b3d22ffd2d7dd1274d3a
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 24 13:41:32 2020 -0400

    fix: more tests

commit 32f9af2a87a81fa62ecca01e71d6f0d5b9d37ba1
Merge: e50907535 4eae927d1
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 24 10:53:04 2020 -0400

    Merge remote-tracking branch 'origin/master' into singleton-flags

commit e50907535109dbdbe8f15c3e2fcdf22d90b1332a
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 24 10:52:46 2020 -0400

    fix: controllers-admin test

commit fd5af99e303de48a80b0ccc166eee19175cf232b
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 17:26:55 2020 -0400

    fix(tests): dummy commit to trigger travisCI

commit c452a6ffcfaef91403de084c4ae16795cb23c60e
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 17:05:09 2020 -0400

    fix(openapi): openapi spec changes

commit 8089a74e89128141ab1e6f8ff83447114b3b846b
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 15:48:00 2020 -0400

    fix: reversing the order of reports for display purposes

commit a099892b377333561c72f1ad5b6b20ddb4ce8a96
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 15:45:44 2020 -0400

    refactor: run all flag creation calls in a single batch

commit b24999682f9d5a33a08a049749c1f0eb4f00facc
Author: Julian Lam <julian@nodebb.org>
Date:   Fri Jul 17 15:08:23 2020 -0400

    feat: handling multiple reporters per flag, #8510

commit 08c75c020021ada754bf0e39eae77d631b01dee5
Author: Julian Lam <julian@nodebb.org>
Date:   Thu Jul 16 20:53:18 2020 -0400

    feat: upgrade script for #8510
5 years ago
Barış Soner Uşaklı 3761f05c98 feat: change invalid language codes to default lang 5 years ago
Barış Soner Uşaklı ce6b20c4b7 feat: remove topics.async.getTopicData usage 5 years ago
Barış Soner Uşaklı 0cea713691 feat: remove deprecated checkGlobalPrivacySettings 5 years ago
Barış Soner Uşaklı a0da2ba774 feat: remove deprecated isAdmin method 5 years ago
Barış Soner Uşaklı 2cdb935f1d feat: remove file.isFileTypeAllowed 5 years ago
Barış Soner Uşaklı 4eae927d14 feat: remove deprecated hooks 5 years ago
psychobunny a6ae69737b Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
psychobunny 2c83278f97 feat: quick access dropdown on groups page to access privileges page 5 years ago
Barış Soner Uşaklı 844f2b4ed0 feat: #8524, allow editing category of queued topic 5 years ago
Barış Soner Uşaklı 7260646d6c fix: #8500, allow regular users select topics on unread 5 years ago
Barış Soner Uşaklı 4658121a7d fix: don't crash if content is undefined 5 years ago
Barış Soner Uşaklı ff3c343532 feat: remove js-enabled 5 years ago
Barış Soner Uşaklı a3c8d45626 fix: crash if csrfToken does not exist 5 years ago
Barış Soner Uşaklı a46adb3fd5 fix: more tests 5 years ago
Barış Soner Uşaklı 72c60d19c2 fix: tests 5 years ago
Barış Soner Uşaklı 2a5f8ab27e feat: dont load all subscribers at once
increase batch to 500
5 years ago
Barış Soner Uşaklı 23a9a334cd feat: short more info 5 years ago
Barış Soner Uşaklı 2485a55092 feat: #8521, allow editing title before posting from queue 5 years ago
Barış Soner Uşaklı 1e7397b1b8 feat: allow searching categories in ACP 5 years ago
psychobunny 06143ca7d7 feat: added quick link to edit privileges on the category edit page 5 years ago
Barış Soner Uşaklı 3653151143 fix: #8508, dont allow moving topics if not moderator of target category 5 years ago
Julian Lam e3e55f25d0 refactor: flag sanity checks, +feat: flag limits
- Added new config flag:limitPerTarget, to disallow flags after an item has
  already been flagged x times (default 0, or infinite)
- New zset flags:byTarget, score is the number of times a flag has been made
  against that item
- "already-flagged" translation key removed, now "post-already-flagged" or
  "user-already-flagged" -- this fixed bug where flagging a user you've already
  flagged would tell you you've already flagged this post already.
- Refactored Flags.canFlag to throw errors only, instead of returning boolean
- Updated ACP form inputs for reputation settings page to be more bootstrappy
- +1 upgrade script
5 years ago
Julian Lam 1441720962 feat: logic for flag note editing, #8499 5 years ago
Julian Lam f85a45c722 feat: logic for flag note deletion, #8499 5 years ago
Barış Soner Uşaklı 00d39fb32c feat: #8460, export groups members as csv 5 years ago
Barış Soner Uşaklı b3a88331bf fix: #8488 5 years ago
Barış Soner Uşaklı 393f19b461 feat: pass connection options to socket.io-adapter-mongo 5 years ago
Barış Soner Uşaklı 3dcf538773 feat: #8023, allow wildcard search for uid/email 5 years ago
Barış Soner Uşaklı 46a6686300 fix: category search in selector 5 years ago
Barış Soner Uşaklı 73ddf1cb98 fix: groups.updateCover 5 years ago
Barış Soner Uşaklı c513b88dff feat: #8427, daily downvote limits 5 years ago
Barış Soner Uşaklı 658dd03b03
feat: add tools to recent/unread (#8477)
* feat: add tools to recent/unread

* fix: open api spec

* fix: more api spec
5 years ago
Barış Soner Uşaklı c2ca02dfc7 fix: #8474
make isPrimary and isCluster always booleans
they were strings when using ./nodebb start and boolean if they were in config.json and started with node app.js
5 years ago
Julian Lam 4f51838df8 feat: fire new hooks on chat message editing 5 years ago
Barış Soner Uşaklı 7b04d8970d fix: show stack properly 5 years ago
Julian Lam 9a6b87d261 fix: editing chat messages does not go through content sanity checks 5 years ago
Barış Soner Uşaklı d6c619cf1a fix: don't show blocked users under nested replies 5 years ago
Barış Soner Uşaklı b60e1cbf50 fix: #8469, action:topic.changeOwner, action:post.changeOwner 5 years ago
Barış Soner Uşaklı 87dd6c83eb fix: tests 5 years ago
Barış Soner Uşaklı 746222d6c6 fix: handle scan/zscan returning duplicate elements on redis
increase count on redis zscan
5 years ago
Barış Soner Uşaklı ac6b571ed5 fix: dont allow searching by email/ip if not privileged 5 years ago
Barış Soner Uşaklı fef04fcf6b fix: missing backgroundImage #8386 5 years ago
Barış Soner Uşaklı 02ac44cc5a fix: dont allow searching by ip/banned/flagged for regular users 5 years ago
Barış Soner Uşaklı 057b783df7 feat: use covered query 5 years ago
Julian Lam da29b947bf feat: add js-enabled.css to list of preloaded css files 5 years ago
Barış Soner Uşaklı e95cd28f6f
Zscan (#8458)
* feat: zscan

* fix: mongodb tests

* feat: scan, ip search starts with
5 years ago
Barış Soner Uşaklı 723fe8e8e0
feat: zscan (#8457)
* feat: zscan

* fix: mongodb tests
5 years ago
Barış Soner Uşaklı 59a2ace6f7 fix: only add blocksCount for self and admins 5 years ago
Barış Soner Uşaklı fd20e5c62c fix: tests 5 years ago
Barış Soner Uşaklı bd228d5ee7 feat: fix blocksCount not being returned on user profile
add hook action:user.blocks.toggle
5 years ago
Barış Soner Uşaklı eb9704f85e feat: #8450, next/prev link tags on /unread /recent 5 years ago
Barış Soner Uşaklı fd400a008d fix: don't show in unreplied if score is null 5 years ago
Barış Soner Uşaklı e09ab3dc19 feat: closes #8440, allow configuring max topic count 5 years ago
Barış Soner Uşaklı 0d0b951380 fix: lint 5 years ago
Barış Soner Uşaklı 37b6b8fd48 fix: upgrade script to unescape navigation titles 5 years ago
Barış Soner Uşaklı 2355d9d5dd fix: escape navigation item fields, theme:id, category fields 5 years ago
Barış Soner Uşaklı 023de94ef8 fix: show controls @julianlam 5 years ago
Barış Soner Uşaklı e53a18f219 fix: #8437, #8433 5 years ago
Barış Soner Uşaklı bffb830d87 feat: add missing translation key 5 years ago
Barış Soner Uşaklı 0d112b3605 refactor: make code climate happier? 5 years ago
Barış Soner Uşaklı c718b7293e feat: #3783, min/max tags per category 5 years ago
Barış Soner Uşaklı 00d8ce2663 fix: only allow valid uids 5 years ago
Barış Soner Uşaklı 8383992dcc feat: move export functions into child processes 5 years ago
Barış Soner Uşaklı 48b41debe6
fix: vulnerability in cover and admin uploads (#8419)
* fix: vulnerability in cover and admin uploads

* fix: remove old test

* fix: update tests
5 years ago
Barış Soner Uşaklı e80379dc0e feat: display stack trace on winston.error 5 years ago
Barış Soner Uşaklı af790e3f5e refactor: shorter code 5 years ago
Barış Soner Uşaklı e8f0da6e42 refactor: shorter code 5 years ago
Barış Soner Uşaklı 79a7f89235 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Barış Soner Uşaklı 2bcf7f72d2 fix: follower count going out of sync with real follower count 5 years ago
Barış Soner Uşaklı bef37e27cb
fix: test lock for user create (#8415)
* fix: test lock for user create

* fix: redis hdel with undefined

* feat: add test for undefined key in deleteObjectFields
5 years ago
Barış Soner Uşaklı f0526bff9f fix: add mising timestamp 5 years ago
Barış Soner Uşaklı a680a95e73 feat: add filter:user.getFields to match topic/posts 5 years ago
Manuel Valle 056f85f864
Topic hooks extension (#8413)
* Update data.js with new hook

Implemented new 'filter:topic.getFields' hook as in posts

* Update data.js

* Update data.js
5 years ago
Julian Lam 35a06a8419 feat: #8412 breadcrumbs for ip-blacklist/post queue/flags 5 years ago
Julian Lam f909ed2541 feat: show editor in post diffs if available 5 years ago
Julian Lam b3115ea813 fix: #8410 5 years ago
Julian Lam 58b3d608fc feat: allow post diffs to be restored, #8406 5 years ago
Barış Soner Uşaklı 7ed1a0140a fix: #8401, #8237
switch to @nodebb/socket.io-adapter-mongo
5 years ago
Barış Soner Uşaklı 18d892398f fix: add timestamp to initial username history 5 years ago
Barış Soner Uşaklı 53a9517d54 fix: crash in export posts if post content is undefined 5 years ago
Barış Soner Uşaklı 0041c02465 fix: messaging unread
dont mark chat room unread and then read right away for the user sending the message
5 years ago
Barış Soner Uşaklı 066b442e18 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Barış Soner Uşaklı bb3aa54006 feat: merge changes
allow selecting main topic to merge into
allow specifying a new title for merge topic
upon merge go to correct topic
new tests for merging with options
5 years ago
Barış Soner Uşaklı a024cc1344
fix: whitespace 5 years ago
Barış Soner Uşaklı 0595e71078
fix: typo 5 years ago
Barış Soner Uşaklı 89b010249d
fix: #8392, clear group member cache when group is renamed 5 years ago
Barış Soner Uşaklı 8627bee541 fix: #8386, use backgroundImage everywhere 5 years ago
Julian Lam 4acb3fb210 feat: #8387 expose global and admin privs to flags detail page 5 years ago
Barış Soner Uşaklı 3be4d5f7d5 feat: redirect /me to user profile 5 years ago
Julian Lam daeceb45bd fix: missing space in ACP menu dropdown 5 years ago
Julian Lam 942cc4b132 fix: #8385 5 years ago
Julian Lam 67aca822e6 feat: account content deletion, closes #8381 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ı 30cc83c033 fix: #8374, revert event delete 5 years ago
Barış Soner Uşaklı fd6bf0c927 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Julian Lam 260a482caa fix: remove duplicate link to manage/tags in settings/tags 5 years ago
Barış Soner Uşaklı 3a078f59ec fix: tests 5 years ago
Barış Soner Uşaklı 1b5d5425b4 fix: handle search tag permission as well 5 years ago
Barış Soner Uşaklı 2100a03c1a refactor: change name to privileges to match other apis 5 years ago
cryptoethic f6b92d241a
fix: checking correct permissions for user search (#8371)
* fix: checking correct permissions for user search

* fix: missing permissions porperty in openapi /api/search
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
Barış Soner Uşaklı dcb85ee7a1
#8344 (#8346)
* feat: wip

* feat: wrap middlewares

* feat: middleware errors

* feat: more middleware changes

* fix: remove unused async

* fix: prevent version errors from blocking acp render

* feat: wrap more middlewares
5 years ago
Julian Lam 023942da7d
refactor: making rendering of header and footer async functions
* refactor: make middleware.admin.renderHeader async

* refactor: making rendering of header and footer async functions

* fix: use app.renderAsync instead of promifying it
5 years ago
Julian Lam 922d49be0b fix(style): switch..case 5 years ago
Barış Soner Uşaklı 5a2b515431 feat: #8349, remove user posts from queue if user is deleted 5 years ago
Barış Soner Uşaklı e603ebc0c6 fix: #8323, let admins send validation emails without timeout 5 years ago
Barış Soner Uşaklı 2c9e865763 fix: retry failed setObject calls 5 years ago
Julian Lam 0633ad3277 fix: acp menu items
- Shuffled items in settings
- Moved post-queue and ip-blacklist to front-end
- Removed Settings > Sockets, merged with Settings > Advanced
5 years ago
Julian Lam a83f4259e8 fix: re-jigged tags acp pages 5 years ago
Julian Lam a51fff8bd1
refactor: remove general menu from ACP (#8347)
* refactor: remove general menu from ACP

* fix: incorrect translation keys, fixed tests
5 years ago
Barış Soner Uşaklı 5781a2dc65
feat: fix session mismatch errors by clearing cookie on logout (#8338)
* feat: fix session mismatch errors by clearing cookie on logout

* feat: remove app.upateHeader

ported from 2.0

* feat: handle if user doesn't click button and just refreshes page
5 years ago
Barış Soner Uşaklı 7d484fc0ad refactor: use getSortedSetMembers 5 years ago
Barış Soner Uşaklı 0009f54e6e feat: add getSortedSetMembers 5 years ago
Barış Soner Uşaklı 2727f472ed feat: add the data from page into filter:middleware.renderHeader 5 years ago
Barış Soner Uşaklı ec5582b53c
feat: add privilege give/rescind hooks (#8336)
* feat: add privilege give/rescind hooks

action:privileges.categories.give/rescind
action:privileges.global.give/rescind

breaking change, privileges.categories.give/rescind and privileges.global.give/rescind use full privilege name for groups ie `groups:find` instead of `find`

* fix: tests, privileges renamed
5 years ago
Julian Lam cf00cda07c refactor: src/flags.js because codeclimate 5 years ago
Julian Lam 8d995d1eb6 refactor: flags detail page
- Show account moderation history
- Ban and delete quick actions

Squashed commit of the following:

commit 0e782e65f4d48ae814708e510ec9d01bcdd914e0
Author: Julian Lam <julian@nodebb.org>
Date:   Tue May 26 20:24:53 2020 -0400

    fix(deps): use persona 10.1.41/vanilla 11.1.17

commit 369e073d3c3189d8ce181eb3d573489cbe54d4fc
Author: Julian Lam <julian@nodebb.org>
Date:   Tue May 26 20:23:24 2020 -0400

    fix: allow ban and delete exported methods to have cbs

commit b83a086ea31a77ec82d161306c0b9bc115cb2a3a
Merge: 525aae1ea 256ee45d3
Author: Julian Lam <julian@nodebb.org>
Date:   Tue May 26 08:54:25 2020 -0400

    Merge remote-tracking branch 'origin/master' into flags-improvements

commit 525aae1ea2e5d0103028a0f0c8dde05f172d088e
Author: Julian Lam <julian@nodebb.org>
Date:   Tue May 26 08:53:39 2020 -0400

    feat: integrate ban history and username changes to flag history list

commit 3e68ad28ba266f4c8620a676aa7f463f0a9d1df7
Author: Julian Lam <julian@nodebb.org>
Date:   Mon May 25 18:22:53 2020 -0400

    feat: allow ban and deletion from flag details page

commit a559ea1d8e8883385c2876868d855a0b93516c54
Author: Julian Lam <julian@nodebb.org>
Date:   Mon May 25 18:22:00 2020 -0400

    feat: export banAccount and deleteAccount methods from accounts module
5 years ago
Barış Soner Uşaklı f3afba6156 feat: filter followed tids by category 5 years ago
Barış Soner Uşaklı 1b9e8928eb feat: use getSortedSetsMembers to load followed tids 5 years ago
Barış Soner Uşaklı a015af4a41 feat: add batch size to cursors 5 years ago
Barış Soner Uşaklı 0a31e3e6b0 fix: #8320, dont load moderators separately for each category 5 years ago
Barış Soner Uşaklı 11bb6abb51 fix: show stack trace on startup errors 5 years ago
Barış Soner Uşaklı 9600ede579
feat: up cache size 5 years ago
Barış Soner Uşaklı 7f24200c73 feat: add folder to filter:uploadImage and filter:uploadFile 5 years ago
Barış Soner Uşaklı 3ec05eeaf8 fix: user faster method if sorting by smallest set 5 years ago
Barış Soner Uşaklı 4ee3543ea4 feat: tweak intersection code, add tests 5 years ago
Julian Lam 6f504c4142
Remove allowFileUploads ACP option (#8324)
* feat: allow awaitable upgrade scripts

* feat: allowFileUploads removal upgrade script

* refactor: remove unnecessary ACP option `allowFileUploads`

* fix: updated upgrade script template to not use callback arg

* fix: upgrade script as per @baris

* fix: add missing await

* fix: add missing await
5 years ago
Barış Soner Uşaklı e5228179c1
Mongo intersection (#8322)
* feat: intersection without aggregation

* feat: intersection

* feat: remove debug code
5 years ago
Julian Lam e327d1247e Revert "fix: #8142 invalid session warning if server-side session destroyed"
This reverts commit 526b3cd9ec.
5 years ago
Barış Soner Uşaklı cb662e15ce feat: improve grunt restart/rebuild speed 5 years ago
Barış Soner Uşaklı 4263efa091 feat: don't overwrite req.query.lang if it exists 5 years ago
Barış Soner Uşaklı 12c6bc2e07 feat: convert queries so they used indices directly 5 years ago
Julian Lam ae2db423ee feat: cookie SameSite property
More information:
https://tools.ietf.org/html/draft-ietf-httpbis-cookie-same-site-00#section-4.1.1
https://web.dev/samesite-cookies-explained/
5 years ago
Barış Soner Uşaklı 7a801abade fix: tests on redis 5 years ago
Barış Soner Uşaklı 8bf980cb63 fix: tests, handle no sessions 5 years ago
Barış Soner Uşaklı a0d76ff0a6 fix: #8318, clean expired sessions on login and get 5 years ago
Barış Soner Uşaklı 2587112f9d feat: if only one value is passed used faster function 5 years ago
Barış Soner Uşaklı 81e33b9391 fix: #8317 5 years ago
Julian Lam 526b3cd9ec fix: #8142 invalid session warning if server-side session destroyed
Resolved regression caused by 5a0c7c1497
5 years ago
Barış Soner Uşaklı 5fd81c5c04 fix: check privileges before exporting post/topic data 5 years ago
Barış Soner Uşaklı f0323b6cfa feat: closes #8316, add more data to export profile 5 years ago
Barış Soner Uşaklı 1d3fa3bc4e feat: throw error if uid is missing for update 5 years ago
Barış Soner Uşaklı dfae664e29 fix: exporting posts 5 years ago
Barış Soner Uşaklı bdda022238 fix: undefined uid when downloading posts 5 years ago
Barış Soner Uşaklı 1ba6929cb3 fix: #8311, fix allowUserHomePage value
was always sending 1 even if allowUserHomePage was disabled in acp
5 years ago
Barış Soner Uşaklı 0e58fa33eb feat: match hook property to topic property 5 years ago
Barış Soner Uşaklı bfad457275 feat: add methods for adding/removing tags from topics 5 years ago
Barış Soner Uşaklı e20ad5c56e fix: dont crash if topic is null 5 years ago
Barış Soner Uşaklı c47a1c4df4 fix: convert cids to string for comparison 5 years ago
Barış Soner Uşaklı 97c086aba9 fix: missing await 5 years ago
Barış Soner Uşaklı 337be368eb fix: category selector disabled categories 5 years ago
Barış Soner Uşaklı a73c755b05 feat: closes #8308, edit post notif for watched topic posts 5 years ago
Barış Soner Uşaklı edf9fe3b7f feat: add null tests for sorted sets 5 years ago
Barış Soner Uşaklı 6a5e86dc66 fix: #8305, don't use null values 5 years ago
Barış Soner Uşaklı aad0880f7c feat: add filter:categories.getRecentTopicReplies
pass req.query to getRecentTopicReplies
5 years ago
Barış Soner Uşaklı 7e42988489 refactor: shorter function 5 years ago
Opliko c4545381d7
feat: Add hooks for user blocks (#8296)
* Add hooks for user blocks

* change naming

* Fix the filter...

fixes #8109
5 years ago
Barış Soner Uşaklı 7d08184372 fix: winston showing json object 5 years ago
Barış Soner Uşaklı 0431d75f0d fix: #8297, uids.length is different than topics.length 5 years ago
Julian Lam fcb81cb8ca fix: #8297 guest handles shown in category.tpl 5 years ago
Barış Soner Uşaklı 16a98eaf50 fix: only add to set if numRecentReplies>0 5 years ago
Barış Soner Uşaklı b25b51bd97 feat: add action:post.updatePostVoteCount 5 years ago
Barış Soner Uşaklı 6c59683b16 refactor: change to action:categories.updateRecentTid 5 years ago
Barış Soner Uşaklı ecd622fdf5 fix: failing tests @julianlam 5 years ago
Barış Soner Uşaklı 51933c1fcb feat: add filter:categories.updateRecentTid 5 years ago
Barış Soner Uşaklı 478ed6c16f refactor: match core field name pinned 5 years ago
Julian Lam 0053e779e8 feat: response:router.page, dep. filter variant 5 years ago
Barış Soner Uşaklı 9839346ec3 fix: #8290, if there are no filters go to ?reset=1
dont count ?page=1 as a filter
5 years ago
Barış Soner Uşaklı 5ebcdb1806 fix: #8287, fix users:flags as well 5 years ago
Barış Soner Uşaklı 4f1128fd2b fix: add missing await 5 years ago
Barış Soner Uşaklı 9d153fd388 fix: #8287, dont readd user after deletion
don't add user uid back to users:* sorted sets if they are deleted
upgrade script to fix users:* sorted sets
5 years ago
Barış Soner Uşaklı 4d6b2ec3ce fix: missing await 5 years ago
Barış Soner Uşaklı 0391856d7d fix: #8286, rescind notif when its resolved/rejected 5 years ago
Barış Soner Uşaklı 0ca84bd9f4 fix: #8284, parse ToS on register
rewrite intersitials to async/await
5 years ago
Barış Soner Uşaklı 0c7c70edaf fix: crash in topic controller 5 years ago
psychobunny fe03effe7d Revert "fix: crash when res.locals.linkTags is undefined"
This reverts commit 7cab2b0fea.
5 years ago
Andrew Rodrigues 7cab2b0fea
fix: crash when res.locals.linkTags is undefined 5 years ago
Barış Soner Uşaklı e80b81010c fix: #8272 user link in digest email 5 years ago
Julian Lam 5a1c6ee7ed fix: response hook logic
After some more thought, a response hook should be checking for
whether headers are sent, and executing (or not executing) the
default logic in that case.

Before, we were relying on hooks to call data.next() to continue
execution, but it makes more sense to have the listener either
send a response or not, and handle the behaviour afterwards.
5 years ago
Julian Lam ccc6118d30
Testing suite integration for openapi spec (#8263)
* feat: testing suite integration for openapi spec

The testing suite now takes the openapi spec into account. It will
check each route defined, make a call to it, and compare the
response with the defined schema. Any mismatches will cause the
test to fail.

* fix(openapi): removed debug stuff from tests

* fix(openapi): fixed some tests

* fix(openapi): added additional check to tests, test fixes

* fix(openapi): better tests, fixed spec errors

* fix(openapi): bad conditional in test

* fix: oops

* fix(openapi): more tests fixing

* fix(openapi): more tests

* fix(openapi): fix some more tests

* fix: verbose'd an info log

* fix: topic pagination route returns schema-optimized pagination block

* fix(openapi): more test/spec fixes

* fix(openapi): accidentally sending in authenticated jar for anon routes

* fix(openapi): more test/spec fixes

* fix(openapi): more spec fixes

* fix: timestampReadable Invalid Date

* fix(openapi): more tests... almost there

* fix(openapi): more tests fixing

* fix(openapi): finally all tests passing

* fix(openapi): added reverse test to compare response to spec

... and fixed all the tests that broke

* fix: remove tests related to group covers, as route is gone

* fix(openapi): broken test on travis

* fix(openapi): broken test on travis

* fix(openapi): broken test on travis

* fix(openapi): object cache is not present for psql

* fix: tests

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
5 years ago
Barış Soner Uşaklı 4eafe0f057 fix: #8269, return array of topics from hook 5 years ago
Opliko 6e5ebb6184
feat: manifest.json improvements from #8126 (#8264)
* feat: manifest.json improvements from #8126

* Fix short title placeholder

* use lowercase letters for hex colors
5 years ago
Barış Soner Uşaklı 153456278b feat: show error if json is invalid 5 years ago
Julian Lam ef52461fb6 fix: remove dead picture upload code #8260 5 years ago
Julian Lam 5bcaf71501 fix: path.resolve to logs file 5 years ago
Barış Soner Uşaklı c7ea84a2ae fix: wrong data returned in available.groups 5 years ago
Peter Jaszkowiak e68156e1f2
fix(deps): bump dependencies (#8239)
* fix(deps): bump dependencies

* fix(deps): commander@5

* fix(deps): use @nodebb/mubsub
5 years ago
Julian Lam f2f6fbf15a fix: #8232, unresolvable session mismatch on register cancel 5 years ago
Jonson Petard e6a1741c2e
Support package manager: cnpm and pnpm (#8222)
* feat: support pnpm, cnpm

* feat: store supportedPackageManager in default package.json

* feat: store supportedPackageManager in src/cli/package-install.js

Co-authored-by: a632079 <a632079@qq.com>
5 years ago
hb90dev 3ce885fff2
fixes sitemap base url issue when using with subfolder (#8247)
* fixes sitemap base url issue when using with subfolder

* fixes sitemap base url issue when using with subfolder

* uses directly relative path

* removes prefix variable
5 years ago
Barış Soner Uşaklı d77036dbd1 fix: #8249, don't send move notifications for deleted posts/topics 5 years ago
Julian Lam 1136a369f3 feat: local redoc view on development mode only 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
Barış Soner Uşaklı 59cf0e80d2 fix: throw error if topic does not exist 5 years ago
Barış Soner Uşaklı e93578b81d fix: hookname 5 years ago
Barış Soner Uşaklı 0d1b5a7fb1 fix: #8230, add hook getUserDataByUserSlug 5 years ago
psychobunny 15d6975e96 fix: ignore case for group details route 5 years ago
Barış Soner Uşaklı 740e598a5d fix: lint 5 years ago
Barış Soner Uşaklı 8e23dec84b fix: lint 5 years ago
Barış Soner Uşaklı 00e299e93e feat: closes #8229, add targetUid to action:password.change 5 years ago
Barış Soner Uşaklı 23571224b5 feat: add parent cids to body class 5 years ago
Barış Soner Uşaklı 071506eb7d fix: invite properly 5 years ago
Barış Soner Uşaklı 8f4b99a41c fix: admins not seeing invite button 5 years ago
Barış Soner Uşaklı 0b5fac75b0 fix: #8217, add missing lang key 5 years ago
Julian Lam 93acd13999 fix: #8206 first message in chat has false `newSet` 5 years ago
Barış Soner Uşaklı d080c7b04c feat: add 2 hooks for modifying privileges 5 years ago
Barış Soner Uşaklı f07f4f8e1a fix: #8202, filter non-existing users in search by uid 5 years ago
psychobunny 266061c31a fix: notification bodyShort truncated if there is a comma in topic title 5 years ago
Julian Lam 1efb238a9a refactor: getUsersCSV to use batch lib 5 years ago
psychobunny e1c6c3b267 refactor: reorganized socket.io admin modules 5 years ago
Barış Soner Uşaklı 5e91a67e78 feat: add user ip to admin/dev/info 5 years ago
Barış Soner Uşaklı cba5b23e23 feat: change option name 5 years ago
Barış Soner Uşaklı 80f1bcad20 fix: call next 5 years ago
Baris Usakli 476f6717c4 feat: add no-build to ./nodebb setup 5 years ago
Baris Usakli cf6eadb91a fix: dont let regular users see other users watched categories 5 years ago
Barış Soner Uşaklı 32ada7c4e7 fix: #8188, fix bookmark if sorting is newest_to_oldest 5 years ago
Andrew Rodrigues ac241fb830 fix: duplicate ID + label 5 years ago
Julian Lam f0db240a1d fix: #8184 global mods unable to revoke other user sessions 5 years ago
Barış Soner Uşaklı e72a29b3fd fix: return null if field does not exist 5 years ago
Barış Soner Uşaklı 14e7866745 fix: #8179, limit length of location/website/fullname, check grouptitle 5 years ago
Barış Soner Uşaklı bc93b5676c fix: #8175 5 years ago
Opliko 41c20761e1
Remove deprecated mongo connection options, fixes #8079 (#8174)
fix #8079 
Unified Topology changes the concept of connecting and causes isConnected to always return true, making any reconnection options useless. Next major version of the driver will remove isConnected entirely.
So:
- reconnect tries
- reconnectInterval
- autoReconnect

Are deprecated and don't really do anything anymore (when unified topology is used at least) other than causing warnings at startup since the 3.4 version of the driver (the current version used by NodeBB is 3.5).

Reference: http://mongodb.github.io/node-mongodb-native/3.5/reference/unified-topology/
5 years ago
Andrew Rodrigues 3c9689a5ac
feat: settings sorted list (#8170)
* feat: settings sorted list

see https://github.com/NodeBB/nodebb-plugin-quickstart/pull/9/files for sample
5 years ago
Julian Lam 667608a02c fix: #8168 re-allowing slashes in homePageRoute
Resolves regression introduced by b0f3e48ac2
5 years ago
Julian Lam eddbd86837 fix: tweak to session validation in addHeaders 5 years ago
Barış Soner Uşaklı 630f5d5b85 fix: only call clearCookie for logged in users 5 years ago
Barış Soner Uşaklı 067034082f fix: #6422, update deleted/restored messages 5 years ago
Barış Soner Uşaklı 4d0636f847 fix: #8163, prevent account deletion 5 years ago
Barış Soner Uşaklı 5a0c7c1497 fix: register 5 years ago
Barış Soner Uşaklı e74954407f fix: #8157, update recent tid when post is moved 5 years ago
Barış Soner Uşaklı b73aa84ddc fix: tests 5 years ago
Barış Soner Uşaklı dd3893b134 fix: move start/stop every iteration 5 years ago
Barış Soner Uşaklı 4abe5eb7ff Revert "fix: #8154, move start/stop every iteration"
This reverts commit 300c04cef9.
5 years ago
Barış Soner Uşaklı 300c04cef9 fix: #8154, move start/stop every iteration 5 years ago
Barış Soner Uşaklı 690bb69d03 fix: #8154, respect stop 5 years ago
Barış Soner Uşaklı f23bc347b1 fix: #8156 dont allow loading members from hidden groups 5 years ago
Barış Soner Uşaklı 03a02e5d1d fix: #8155, don't validate name on update if groupName didn't change 5 years ago
Baris Usakli 236e1e6859 fix: return correct number of suggested topics 5 years ago
Julian Lam 398f0120b8 fix: logic for determining dailyStats hour vars
Reverts 9ecdb92f7c and fixes it
properly.
5 years ago
Julian Lam 9ecdb92f7c fix: fix daily analytics being one day off 5 years ago
Julian Lam 0b9ad416cb fix: remove debug line 5 years ago
Julian Lam 79737c53fd feat: guard against accidental ommision
...of analytics: prefix in get*StatsForSet methods
5 years ago
Julian Lam d6e3f3f058
fix: #8142, broken site if no server-side session (#8148)
* fix: #8142, broken site if no server-side session

During the `addHeader` middleware, a check is now done to see if
`req.session.meta` is present. This value is only present if the user
has a valid server-side session.  If it is missing, then it is probably
safe to assume that the server-side session was deleted (either
intentionally or accidentally). In that scenario, the client-side cookie
should be cleared.

Also, there was an issue where the sessionRefresh flag was never cleared
after a successful login, so that was fixed too.

* feat: exported method to get cookie config

* fix: don't clear cookie if cookie is being set

* fix: socket.io tests

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
5 years ago
Julian Lam 0885ec6858 fix: #8144 pluginHooks in maintenance mode middleware 5 years ago
Barış Soner Uşaklı a5ef6b53b8 fix: admin relogin 5 years ago
Barış Soner Uşaklı c35a21d7f0 fix: #8135 5 years ago
Baris Usakli 1e50616c13 fix: handle mkdirp0.5->1.0x so it doesn't break upgrade 5 years ago
Baris Usakli 87225a90c3 fix: #8134, upgrade mkdirp to 1.0.x 5 years ago
Julian Lam b959c24a2b Merge branch 'master' of github.com:NodeBB/NodeBB 5 years ago
Julian Lam 111ed802cf fix: onSuccessfulLogin not working
In scenarios where onSuccessfulLogin was not called in the SSO plugin,
core's calling of onSuccessfulLogin was prematurely returning, because
it was checking the wrong value.

This commit fixes the issue by checking a different value.
5 years ago
Barış Soner Uşaklı 8c48f94b96 fix: #8139, dont allow restore if not deleted by self 5 years ago
Barış Soner Uşaklı 9969dd6335 fix: use view_deleted when filtering, closes #8137 5 years ago
Barış Soner Uşaklı d927b763c1 fix: escape invalid rules 5 years ago
Barış Soner Uşaklı 3cca929a88 fix: add missing await 5 years ago
Barış Soner Uşaklı 0ae1eb4f6e fix: missing await in SocketPosts.changeOwner 5 years ago
Barış Soner Uşaklı 23810cc64b fix: #8133, check if user is in room before removing 5 years ago
Barış Soner Uşaklı 30c503611c refactor: messaging 5 years ago
Barış Soner Uşaklı cd1fa27a8b fix: add missing await 5 years ago
Barış Soner Uşaklı ee4304b443 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Barış Soner Uşaklı f799f017ab fix: missing await 5 years ago
Baris Usakli 418c174d56 fix: dont return flag data to client 5 years ago
Barış Soner Uşaklı 51236df4ed fix: check if user has read priv before flagging 5 years ago
Barış Soner Uşaklı 1f13ab8a19 fix: restrict getUsersInRoom to members 5 years ago
Julian Lam 594cd7e176 fix: #8127 user join system message duplicated
- Now showing user-join message for chat owner in addition to the newly
  added user
- If a modal already exists for a room when createModal is called, don't
  return null, return the modal
5 years ago
Barış Soner Uşaklı bfaba89557 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Julian Lam 8bb5e71ebe fix: typo in #8116 5 years ago
Julian Lam 3fac09b1ab fix: build step defaults to series instead of parallel
- The logic for the build step now defaults to series instead of
  parallel, unless more than 4 CPU cores are detected by the os
  library.
- The `--series` flag still exists, and will enforce build in
  series, as before.
5 years ago
Julian Lam 8e5a2276af
feat: check flag values on save (assignee and state) (#8122)
* feat: add assignee checking when updating flag

Prior to this, it was possible to update the assignee to any value (or
any user. This commit adds checking to allow only admins, global
moderators, or in the case of flagged posts, moderators.

Also some prep work was added for value checking `state`.

* feat: value checking `state` on flag update

The state should be one of the constants defined earlier in the file.
5 years ago
Barış Soner Uşaklı 6a63c1a100 fix: escape system message, don't allow editing system messages 5 years ago
Barış Soner Uşaklı 8c6a7954cf fix: delete upload 5 years ago
Barış Soner Uşaklı 153b1a0eaa fix: check uploadName 5 years ago
Barış Soner Uşaklı 01d1ae78c8 fix: #8120, bubble errors from static hooks 5 years ago
Barış Soner Uşaklı b0f3e48ac2 fix: escape bootswatchSkin and homepageRoute 5 years ago
Barış Soner Uşaklı 3e52557689 fix: change owner missing await 5 years ago
Barış Soner Uşaklı e3952674ba fix: hsts always enabled 5 years ago
Barış Soner Uşaklı b7a57996f7 fix: escape topic.thumb 5 years ago
Baris Usakli 842916ea42 Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Baris Usakli 4eb9652a2a fix: #8112, don't crash hook returns no data 5 years ago
Opliko 740de034fa #8115 - log post owner changes (#8117)
* log post owner changes

* log each post separately

* use map instad of a loop
5 years ago
Opliko 879acc85ae Add disable/enable category to category edit page (#8118) 5 years ago
Barış Soner Uşaklı e06c1bfcd2 fix: escape config.userLang/acpLang, don't allow invalid language codes 5 years ago
Barış Soner Uşaklı 61da8c29ac fix: group create/join/update name validation 5 years ago
Barış Soner Uşaklı 48f086279c fix: don't crash if groupData is missing 5 years ago
Barış Soner Uşaklı 5a8217de01 fix: #8105, fix export json on page load 5 years ago
arite 527745310d fix: #8103, fix advanced menu not displaying in ACP 5 years ago
Barış Soner Uşaklı 10989cccaa fix: meta description missing if url doesn't have post index 5 years ago
Barış Soner Uşaklı 9d074731f4 fix: login with weak password 5 years ago
Barış Soner Uşaklı f6d7a24a67 fix: dont check password strength on login 5 years ago
Barış Soner Uşaklı dec157d606 fix: #8085, fix cookie name 5 years ago
Barış Soner Uşaklı a227cbe328 refactor: async/await middleware 5 years ago
Barış Soner Uşaklı 1b992d8201 fix: #8058, fix incorrect digest setting display in ACP 5 years ago
Peter Jaszkowiak 8c314fe461 Support allowing classes
Otherwise `<input class="form-control">` can't work
5 years ago
Baris Usakli 3454a24b3c refactor: change to const/let 5 years ago
Baris Usakli a8df6d6298 fix: #8078, dont mark notifications read without a mergeId 5 years ago
Baris Usakli 7af1c873a3 fix: #8077, show continue chat on all profile pages 5 years ago
Julian Lam 4fc6944377 feat: better output for cli plugins list, closes #8075 5 years ago
Barış Soner Uşaklı 2679f37dec fix: profile showing posts from deleted topics 5 years ago
Barış Soner Uşaklı 05c9fe2735 feat: #5272, allow changing user groups from manage users page 5 years ago
Baris Usakli 4d66978338 fix: #8073, configurable necroThreshold 5 years ago
Baris Usakli b323df2fe0 fix: allow members to search as well 5 years ago
Baris Usakli c2cd7de891 fix: #8069, dont show hidden groups in search 5 years ago
Baris Usakli 33fd4a1c2b fix: missing await 5 years ago
Julian Lam f9a8ebfce9 feat: merge social authentication into plugins menu in ACP
* also reordered the menu in ACP so plugins come first
* added muted headers in desktop version to distinguish both lists
* fixes julianlam/nodebb-plugin-sso-google#21
* closes #8066
5 years ago
Barış Soner Uşaklı 1bda92e3fc fix: #8064, break-word on post-queue 5 years ago
Barış Soner Uşaklı de404102c0 fix: #8061, don't crash if there is a network problem 6 years ago
Barış Soner Uşaklı a688aaae51 fix: #8059, properly mark topic unread when using mark unread for all 6 years ago
Julian Lam 510737726c fix: unhandled promise rejection error on reset error
Also, removed buildAll() on reset.
6 years ago
Baris Usakli 366ad5cd69 fix: #8050, fix redirect after registration 6 years ago
Opliko 0efe27b1f2 fix: make _csrf a secure cookie if the website is using https (#8045)
* Make _csrf a secure cookie if the website is using https

* fix style for TravsCI

* Add `url_parsed` to databasemock
6 years ago
Baris Usakli 0a96c92300 fix: #8034 6 years ago
Baris Usakli cec0079573 refactor: shorter returns 6 years ago
Baris Usakli efd1e88bbf feat: convert middleware.isAdmin to async/await 6 years ago
Baris Usakli a254520485 fix: serialize 6 years ago
Baris Usakli 1eca5b3dae fix: show login fields if user has local password 6 years ago
Ben Lubar f65922297d fix abysmal postgresql performance in getSortedSetsMembers (#8030)
* refactor postgres upgrade function to use async

* add function wrapper for getting the elements of a sorted set to avoid postgres planning the query with a nested sequential scan

* fix fatal(?!) lint errors

* add missing await

* bump PostgreSQL version on Travis CI to one that isn't over 3 years out of date
6 years ago
Barış Soner Uşaklı eabc6f4763 fix: crash if post doesn't have topic data 6 years ago
Barış Soner Uşaklı e52ecfaf3f fix: don't touch objects that don't have the required fields 6 years ago
Barış Soner Uşaklı f4381ba366 fix: add missing await to sendValidationEmail 6 years ago
Julian Lam dee1d44722 fix: #8007 added tfoot to clear new group button 6 years ago
Julian Lam df139928b6
feat: displaying one-click unsubscribe link in email footer (#8024)
closes #8016
6 years ago
Barış Soner Uşaklı 480a64aaa7 feat: #7467, pass query params when redirecting to posts 6 years ago
Barış Soner Uşaklı b5a30006e2 feat: use helpers.setupAdminPageRoute 6 years ago
Julian Lam 645d647248
feat: wip, better digest handling (+ eventual digest resend logic) (#7995)
* feat: wip, better digest handling (+ eventual digest resend logic)

- await emailer.send call in digest.send method
- save send success to a new sorted set digest:{interval}:byUid

* feat: continuing work on digest tools

- Added ACP page to view digest settings and delivery times per user

* feat: added paginator and stub buttons for resending digest

* feat: wrapping up digest revamp

- New language strings in ACP digest page
- Client-side ACP script for digest ACP page
- Websocket call for ACP page to execute digests
- Broke out logic to retrieve user digest settings to getUsersInterval

* fix: minor cleanup

* fix: #8010 and some style suggestions from baris

* fix: resolve confusing comment
6 years ago
Barış Soner Uşaklı 0037a03886 fix: #8018, allow absolute urls in notification.path 6 years ago
Barış Soner Uşaklı 59242d31aa fix: #8010, fix isBanned call 6 years ago
Barış Soner Uşaklı ac5c560c54 feat: add action:messaging.save 6 years ago
Barış Soner Uşaklı c4e58160cf fix: #8003, check children recursively 6 years ago
Barış Soner Uşaklı b91c4790d1 fix: dont show delete topics on unread 6 years ago
Barış Soner Uşaklı 1cedc4a0d6 feat: #7957, allow post queue based on group
allow multiple select in ACP pages
6 years ago
Barış Soner Uşaklı 0e5e47f410 fix: parseInt cutoff 6 years ago
Barış Soner Uşaklı e020b85bf5 feat: add filter:topics.unreadCutoff 6 years ago
Opliko 989107d9b5 feat: Add filter:topic.delete and filter:topic.restore (#7946) (#7989)
* Add filter:topic.delete

* Don't return undefined data

* add topic.restore and pass canRestore to filter

* fix some bugs created by conflict resolution and new changes

* more readable hook

* fix styling for TravisCI

* literally just two newlines so that TravisCI builds again
6 years ago
Julian Lam cf7e0cfd2d
feat: no more session cookie for guests (#7982)
* feat: no more session cookie for guests

* fix(tests): added additional tests and fixed the broken test
6 years ago
Opliko df1efe5f96 feat: Implement WICG change-password-url (#7072) (#7990)
* feat:  Implement WICG change-password-url (#7072)

* fix style for TravisCI
6 years ago
uplift 1aa520b7a0 parseInt uid in room users check (#7988)
nodebb-write-api fails this check without parsing into an int
6 years ago
Barış Soner Uşaklı b01a47cbc1 feat: log errors from mubsub 6 years ago
Barış Soner Uşaklı d679218859
feat: upgrade to sitemap5 (#7980) 6 years ago
Barış Soner Uşaklı f9f85fc425
fix: cli/reset.js (#7979) 6 years ago
Julian Lam ddf3812cdc fix: passwords always expiring upon login 6 years ago
Barış Soner Uşaklı d72b0d1616 fix: delete follower/followingCount as well 6 years ago
Baris Usakli 485fbd2f14 feat: #7964, change all categories at once
allow passing cids to setCategoryWatchState and category.exists
6 years ago
Baris Usakli 990508a533 feat: closes #7952, translate widget-settings 6 years ago
Baris Usakli 554e67116f feat: remove ability to delete events from acp 6 years ago
Barış Soner Uşaklı 3775301f24 fix: #7958, give rewards one by one
no need to check group.exists when leaving groups, if group doesn't exists isMember will be false anyways
6 years ago
Barış Soner Uşaklı 88818a5bbf fix: rewards page acp not loading rewards 6 years ago
Baris Usakli f272daaf37 fix: #7960, dont try to save size for non images 6 years ago
Barış Soner Uşaklı 03827fa695 feat: resetting theme will reset skin
async/await cli/reset
6 years ago
Barış Soner Uşaklı 565f9726f7 fix: #7941, validate some input fields 6 years ago
Barış Soner Uşaklı 661a0f5068 fix: don't show deleted topics on unread 6 years ago
Baris Usakli 6b3eb0144e refactor: use arrow function 6 years ago
Baris Usakli c01b0fbd8c fix: #7951, don't send notification for system messages 6 years ago
Baris Usakli 5b458fc7ca fix: #7953, allow icon only group badges 6 years ago
Barış Soner Uşaklı ac4a500402 fix: remove 0 fields 6 years ago
Barış Soner Uşaklı 75bcb0f484 fix: remove unused data from post/topic/user hashes 6 years ago
Barış Soner Uşaklı 205d3f9d12 fix: groups not visible on widget panes 6 years ago
Barış Soner Uşaklı c5f7b66c3a fix: new nav items will show group select 6 years ago
Barış Soner Uşaklı 7823144bd9 fix: #7940, run upgrade scripts on startup 6 years ago
Barış Soner Uşaklı 38322ec308 fix: #7949, delete old user notifs 6 years ago
Barış Soner Uşaklı f983f536c6 fix: check threshold before setting bookmark 6 years ago
Barış Soner Uşaklı 4e28e575cf fix: mongo collection stats 6 years ago
Barış Soner Uşaklı 02d38caf47 refactor: async/await 6 years ago
Baris Usakli 91e8e3905c fix: #7947, disable unused cookie 6 years ago
Barış Soner Uşaklı c9bf6d0fe1 fix: #7945, show watched categories in ignored categories 6 years ago
Barış Soner Uşaklı f8c8038a06 refactor: remove log, topics.exists 6 years ago
Barış Soner Uşaklı 18bf865d83 fix: db.init calls 6 years ago
Barış Soner Uşaklı dc8d721c46 refactor: async/await 6 years ago
Barış Soner Uşaklı 1f0c6f3d60 refactor: async/await mongo 6 years ago
Baris Usakli d5dda26f97 fix: #7938, escape username in registration queue 6 years ago
Barış Soner Uşaklı 603908c10a refactor: async/await socket.io/index 6 years ago
Barış Soner Uşaklı 3455c27a8d fix: #7901, handle group names that are translation keys 6 years ago
Barış Soner Uşaklı c5ffd8cc74 refactor: async/await image.js 6 years ago
Barış Soner Uşaklı 41f8da2e7c fix: fix the order of groups on user profile 6 years ago
Barış Soner Uşaklı b192605450 feat: add new hook to get custom category tids for unread 6 years ago
Barış Soner Uşaklı 05e753c73b refactor: remove var 6 years ago
Aziz Khoury 94810fd637 feat: adding filter:login.check and loginFormEntry[] for the filter:login.build hook (#7861)
* adding filter:login.check and loginFormEntry[] for the filter:login.build hook, related to nodebb-plugin-spam-be-gone/issues/32

* do not exceed 50 lines per function

* spam-be-gone@0.6.4
6 years ago
Barış Soner Uşaklı 10f168b824 fix: #7934, return tids 6 years ago
Barış Soner Uşaklı 3caa387ac6 fix: tests 6 years ago
Barış Soner Uşaklı 2444ed5c88 feat: #7932, redirect to group details after creation
add private/hidden on group creation modal
6 years ago
Baris Usakli b93c826d35 feat: add new hook filteR:topics.getSortedTids
to let plugins replace the logic used to retrieve tids
6 years ago
Barış Soner Uşaklı 13c870597e fix: picture not showing up in change modal 6 years ago
Barış Soner Uşaklı 7effc89291 fix: profile page meta tags getting escaped twice 6 years ago
Barış Soner Uşaklı 9a7560049a feat: bypass cropper for gifs 6 years ago
Barış Soner Uşaklı ffe3670ff5 feat: deprecate file.isFileTypeAllowed
use image.isFileTypeAllowed, this function was always meant for images
6 years ago
Barış Soner Uşaklı ed1223645e feat: send notification to group owners when someone leaves 6 years ago
Baris Usakli 2150701f32 fix: missing await 6 years ago
Baris Usakli ac6eb31c69 refactor: async/await flags.js 6 years ago
Barış Soner Uşaklı 0ced71be39 refactor: async/await flags 6 years ago
Barış Soner Uşaklı 310c6fd33f
properly filter /unread /recent /popular /top (#7927)
* feat: add failing test for pagination

* feat: test

* fix: redis tests

* refactor: remove logs

* fix: add new test

* feat: make sortedSetRangeByScore work with keys on redis

* fix: hardcoded set name

* feat: show topics from readable categories on recent/popular/top

* feat: rewrite unread topics

respect watched categories and followed topics

* fix: term + watched
6 years ago
Barış Soner Uşaklı 7a0f607434 fix: account/categories 6 years ago
Barış Soner Uşaklı 22b02f1407
feat: add failing test for pagination (#7924)
* feat: add failing test for pagination

* feat: test

* fix: redis tests

* refactor: remove logs
6 years ago
Barış Soner Uşaklı 572bc29742 refactor: shorter map 6 years ago
Barış Soner Uşaklı 039710493a refactor: remove logs 6 years ago
Barış Soner Uşaklı b602c04463 feat: refactor getSortedSetRange to allow big arrays 6 years ago
Barış Soner Uşaklı 7e7ea7a697 refactor: dont modify key 6 years ago
Barış Soner Uşaklı 1f054c7ecb fix: redis tests 6 years ago
Baris Usakli a651d154ce fix: #7921, dont create wrong entries in db for flag
upgrade script to remove wrong entries
6 years ago
Barış Soner Uşaklı e32a55460f refactor: remove logs 6 years ago
Barış Soner Uşaklı 9ee1a882ec refactor: async/await flags 6 years ago
Barış Soner Uşaklı 625b0815bb refactor: shorter, new Date doesnt throw 6 years ago
Barış Soner Uşaklı babb9d7c55 fix: #7913, dont allow urls in fullname/location, validate birthday 6 years ago
Barış Soner Uşaklı bd026cb1ae fix: upgrade scripts 6 years ago
Barış Soner Uşaklı b842057f26 refactor: remove temp var 6 years ago
Barış Soner Uşaklı f9d6912b4a refactor: async/await file 6 years ago
Barış Soner Uşaklı 223c108cc6 refactor: async/await analytics 6 years ago
Barış Soner Uşaklı 96ab8d05aa fix: only allow png/jpg/bmp in cover/profile images 6 years ago
Barış Soner Uşaklı 5505628c8d refactor: change to const 6 years ago
Barış Soner Uşaklı 910b9b8864 fix: #7919, add useUnifiedTopology 6 years ago
Barış Soner Uşaklı bbc2e95688 feat: add rss feed url for tags 6 years ago
Barış Soner Uşaklı 873ec51978 fix: crash in feed 6 years ago
Barış Soner Uşaklı 795d4183ca fix: lang key 6 years ago
Barış Soner Uşaklı 5b8550f060 fix: time cutoff and lang string 6 years ago
Barış Soner Uşaklı 86b16629f8 refactor: returned fields 6 years ago
Barış Soner Uşaklı 87f6ac59b1 fix: returned data 6 years ago
Barış Soner Uşaklı 955e00fd9d fix: dont send all category data back to recent&unread etc 6 years ago
Baris Usakli ecf39727cc fix: #7912 6 years ago
Barış Soner Uşaklı 307abaa8cc fix: only return necessary data for categories 6 years ago
Barış Soner Uşaklı 63bd3fc597 refactor: async/await emailer 6 years ago
Opliko b9583ed838 Add privilege for accessing user information (#7859)
* Add view users info global privilege

* Show user ip only to global mods and admins

* fix missing comma

* Hide link for users without correct privilege

* move getting privilege information to getAllData

* Hide the link from Global Moderators as well

* Give Global Moderator view:users:info privilege

* Restrict ip in post menu to view:users:info

* add some trailing commas....

* Add privilege to categories test

* Add group privilege to categories test

* add upgrade script

* fix style for TravisCI

* more styling - change spaces to tabs

* some more styling fixes (hopefully final one)

* fix style for Travis CI

* hide ip in chat messages

* Don't show even hidden ips on user profile page
6 years ago
Barış Soner Uşaklı 71cd602da9 feat: #7090, abililty to hide widgets 6 years ago
Barış Soner Uşaklı de4619689b fix: change params 6 years ago
Barış Soner Uşaklı 9b151b2316 fix: remove dupe code 6 years ago
Barış Soner Uşaklı ec3b5dd95a refactor: async/await routes/feeds 6 years ago
Barış Soner Uşaklı 5de6d8857a feat: #7760, body-parser config 6 years ago
Barış Soner Uşaklı b110aec6ed refactor: async/await rewards 6 years ago
Barış Soner Uşaklı a7d2b8a1fe refactor: async/await socket.io 6 years ago
Barış Soner Uşaklı 52b2d670e5 refactor: async/await 6 years ago
Barış Soner Uşaklı f05c1dae69 feat: actually cache duh 6 years ago
Barış Soner Uşaklı 63bd252fba feat: cache tags:topic:count 6 years ago
Barış Soner Uşaklı 75d7ae9272 refactor: async/await 6 years ago
Barış Soner Uşaklı 5c2afe5eac refactor: async/await socket.io/topics 6 years ago
Barış Soner Uşaklı 3c6c40b177 refactor: async/await controllers/user.js 6 years ago
Barış Soner Uşaklı 5c0266d8c4 refactor: async/await uploads 6 years ago
Barış Soner Uşaklı 3e2ed21d3d refactor: move tos parsing to /tos 6 years ago
Barış Soner Uşaklı b81405a8cc feat: increase size of local cache 6 years ago
Barış Soner Uşaklı ec98945a5f refactor: remove commented out code 6 years ago
Barış Soner Uşaklı b9105ef9c6 refactor: async/await controllers/authentication 6 years ago
Andrew Rodrigues b99279a83c
fix: minor typo 6 years ago
Barış Soner Uşaklı 22f8011686 refactor: remove async from isPasswordValid, function is sync 6 years ago
Barış Soner Uşaklı 6cda369872 refactor: make categories.buildForSelectCategories non async 6 years ago
Barış Soner Uşaklı 09410ff1c5 feat: don't hardcode numberic fields in user search 6 years ago
Barış Soner Uşaklı 0843497dd4 fix: #7893, check private upload setting 6 years ago
Baris Usakli 77cb4b55cb fix: #7892, handle string 'true'/'false' 6 years ago
Barış Soner Uşaklı a4d84a66dd refactor: remove dupe code 6 years ago
Barış Soner Uşaklı e93ef0d7fd refactor: async/await socket.io/posts 6 years ago
Barış Soner Uşaklı 4652c68ba7 fix: dont show deleted topics in digest 6 years ago
Barış Soner Uşaklı 88dfbf213f refactor: async/await socket.io/admin 6 years ago
David Karrick 9b4ae4c04a Added Postgres SSL Support (#7887)
* [Added] Postgres SSL Support

* [Added]Postgres SSL Support

* [Added] Postgres SSL Support
6 years ago
Baris Usakli 71e50bbf4e refactor: socket.io/admin/categories async/await 6 years ago
Barış Soner Uşaklı acd9576489 fix: don't move theme/plugin to top if its already active 6 years ago
Julian Lam 1796b65d34 feat: option to restrict group leaving, closes #7770 6 years ago
Julian Lam 4588a4fdcf refactor: admin groups.join socket async/await 6 years ago
Julian Lam 30a86ed553 fix: #7853, dissociation on post purge 6 years ago
Julian Lam 0c4cd840a0 fix: added comment back 6 years ago
Julian Lam fe452762b7 fix: inability for plugins to actually alter parser sanitization config
/cc @pitaj
6 years ago
Julian Lam 9b8ac89e13 fix: htmlentity instead of url encoding for room rename system message 6 years ago
Baris Usakli dd8386d93d refactor: password async/await 6 years ago
Baris Usakli 3a01e95380 Merge branch 'master' of https://github.com/NodeBB/NodeBB 6 years ago
Julian Lam 2580306db9 feat: html sanitization on all filter:parse.* hooks, closes #7872 6 years ago
Baris Usakli 0164e51f9f refactor: sitemap to async/await 6 years ago
Baris Usakli e291a60964 fix: page count for filters 6 years ago
Barış Soner Uşaklı 547bb4966d fix: #7866, show correct title based on digest interval 6 years ago
Barış Soner Uşaklı aea04de094
feat: update LESS to v3.x, #7855 (#7867)
* feat: #7855

* fix: tests
6 years ago
Barış Soner Uşaklı d372720749 refactor: remove hook assign 6 years ago
Barış Soner Uşaklı f31d30cd02 feat: add client side hook for quick search&normal search 6 years ago
Baris Usakli f9a804e014 refactor: async/await users 6 years ago
Barış Soner Uşaklı 19b63bfaa7 refactor: remove empty line 6 years ago
Barış Soner Uşaklı 69333f59af refactor: remove vars 6 years ago