234 Commits (326b92687fa5d2b68cc5f55275c565a43bf6a16e)

Author SHA1 Message Date
gasoved 970bd06fd2 refactor: improvements 4 years ago
gasoved 53e0d4d2e0 feat: banned-users group 4 years ago
Barış Soner Uşaklı d1364c3130
Categories refactor (#9233)
* feat: wip categories pagination

* feat: add subCategoriesPerPage setting

* feat: add load more sub categories button to category page

* fix: openapi spec

* feat: show sub categories left on category page

hide button when no more categories left

* breaking: rename categories to allCategories on /search

categories contains the search results

* fix: spec

* refactor: remove cidsPerPage

* fix: tests

* feat: use component for subcategories

* fix: prevent negative subCategoriesLeft
4 years ago
Barış Soner Uşaklı 34c42c6fa3 feat: ability to search categories, #8813 4 years ago
Barış Soner Uşaklı 4fb907875e
fix: don't crash if fullname is not a string
https://community.nodebb.org/topic/15291/upgrade-error-fullname-substr-is-not-a-function
4 years ago
Barış Soner Uşaklı 00ba89b6d6 fix: #9204, bypass groupname length check for system group in upgrade script 4 years ago
Barış Soner Uşaklı da54697075 fix: #9176, limit description size 4 years ago
Barış Soner Uşaklı 33290850ee fix: #9126, skip base64 and long values 4 years ago
Julian Lam 74d73313fd feat: migration of old topic thumbs to new format
closes #9099
4 years ago
Julian Lam 9342d611be fix: enable topic thumbnails across the board [breaking] 4 years ago
Julian Lam 37c367d6ff feat: raise maximum thumb size to 512 4 years ago
Barış Soner Uşaklı 60e7de0d13 feat: move upgrade script and make it shorter 4 years ago
Barış Soner Uşaklı d2888d1d1f
Category tags (#8938)
* feat: wip category tags

* fix: tag search

* feat: remove debug

* fix: returns of searchTags and autocomplete

* fix: alpha sort

* fix: redis

* fix: delete zsets on category purge, fix another test

* fix: test
4 years ago
Barış Soner Uşaklı 80f0750bd4 fix: typo in upgrade script, closes #8990 4 years ago
Barış Soner Uşaklı 5bb5ec4618
fix: #8954, clear purged replies and toPids (#8959)
* fix: #8954, clear purged replies and toPids

* fix: redis test
4 years ago
Barış Soner Uşaklı 93863bb3c6 fix: #8949, faster upgrade script 4 years ago
Barış Soner Uşaklı 76cd5b0fc1 fix: #8836, truncate fullname 4 years ago
Barış Soner Uşaklı 0db0231cff feat: move postercount to topic hash 4 years ago
Barış Soner Uşaklı 872bacf1c4
Admin/users (#8762)
* feat: wip admin/users

* feat: more work

* feat: more fixes

* feat: #8662, verified/unverified user groups

* feat: add filter

* feat: change user search to use filters array

* refactor: remove unused search call

* fix: tests

* fix: cant join system groups

* fix: upgrade script
4 years ago
Barış Soner Uşaklı 948f26143c feat: #5964, #8734 remove colorpicker 4 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
4 years ago
Barış Soner Uşaklı 5f10d67db5
Remove sounds (#8617)
* feat: remove sounds

* feat: remove more sounds

* feat: disable sounds plugin

* fix: openapi
4 years ago
Barış Soner Uşaklı 46ab2711d4 fix: #8432, add CSP frame-ancestors 5 years ago
Barış Soner Uşaklı 91d9333a50 fix: username, email history disappering if content was deleted 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
Barış Soner Uşaklı 31c2b7d946 fix: #8562 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
Barış Soner Uşaklı 326827382a fix: upgrade script for 1.15.0 5 years ago
Barış Soner Uşaklı 335169f2b1 fix: don't process invalid topics, fallback to 0 score 5 years ago
Julian Lam 6c00ec8435 refactor: removed rather redundant flag reporters zset 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
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
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ı 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ı 8627bee541 fix: #8386, use backgroundImage everywhere 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 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ı 6a5e86dc66 fix: #8305, don't use null values 5 years ago
Barış Soner Uşaklı 5ebcdb1806 fix: #8287, fix users:flags as well 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ı e52ecfaf3f fix: don't touch objects that don't have the required fields 5 years ago
Barış Soner Uşaklı d72b0d1616 fix: delete follower/followingCount as well 5 years ago
Barış Soner Uşaklı 75bcb0f484 fix: remove unused data from post/topic/user hashes 5 years ago
Barış Soner Uşaklı 38322ec308 fix: #7949, delete old user notifs 5 years ago
Baris Usakli a651d154ce fix: #7921, dont create wrong entries in db for flag
upgrade script to remove wrong entries
5 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
5 years ago
Baris Usakli accf48f38b fix: upgrade script #7720 6 years ago
Barış Soner Uşaklı 23fb904fa6 feat: removed series from upgrade script 6 years ago
Barış Soner Uşaklı a39f0ef592 fix: #5570, create per category user post zsets 6 years ago
Barış Soner Uşaklı 5fa5e999f8
Plugin metrics (#7626)
* feat: add enable/disable checkbox for plugin usage

* feat: submit plugin data to packages.nodebb.org

only submit in production mode
submit once every 24 hours
dont submit for plugins that have "private": true in plugin.json
enabled on new installs
disabled on existing installs

* fix: hash not working after first send

fix statusCode

* fix: remove url

* feat: show compatibilty

* feat: add install question for submit plugin usage
6 years ago
Barış Soner Uşaklı 4b843ba16f fix: #7567, allow invite and approval at the same time 6 years ago
Barış Soner Uşaklı 8aef689f05 fix: no need for moderate bit for global mods and admins 6 years ago
Barış Soner Uşaklı 035f624758
Remove implicit mod privs. closes #6345 (#7648)
* feat: add upgrade script to give mods privs

* feat: give all privileges when making a moderator

* feat: remove implicit privs

* feat: give global mods default privs

* feat: more priv fixes

* feat: use lodash

* fix: remove implicit mod priv from topic delete

* fix: more privs

* fix: posts.canEdit

* fix: canDelete and canEdit

* fix: tests, remove console.log

* feat: shorter functions

* feat: add tests

* fix: uids

* fix: redis random test fail
6 years ago
Barış Soner Uşaklı 4d9bc30d1f
feat: async3 upgrade (#7639)
* feat: async3 upgrade WIP

* fix: async.doWhilst

* fix: async early exit

* fix: psql doUntil

* fix: psql again
6 years ago
Barış Soner Uşaklı 172e688805 fix: handle missing timestamps 6 years ago
Barış Soner Uşaklı 3d938e7bf8 fix: increase batch size 6 years ago
Barış Soner Uşaklı 4f3ca4d899 fix: upgrade script date 6 years ago
Baris Usakli ed91d3f2c8 fix: #7519 6 years ago
Barış Soner Uşaklı fddb783ee9 fix: #7487 6 years ago
Julian Lam 697a6597f3
fix: #7444 Re-factor handling of og:image tags (#7463)
* fix: display proper site logo or og-image with sizes in head

* fix: refactor og:image logic, #7444

- Updated logic to set additional og:image tags based on more
  factors
- logo.png fallback

* feat: save image sizes on post upload, re: #7444

* fix: awaiting addTags in topic controller

* fix: pass strings to meta tags object

* fix: sending absolute image url to meta tag

* fix: removed unneeded async and requiring sync db

* feat: upgrade to calculate image sizes for all post uploads tracked

* fix: tests
6 years ago
Baris Usakli 8c68780e54 fix: #7350 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ı 9d1fcf4e36 fix: closes #7217 6 years ago
Barış Soner Uşaklı 0eef3e1c27 fix: upgrade script key 6 years ago
Barış Soner Uşaklı eb7ae54f81
Category watch state (#7109)
* feat: wip, category watch change

* feat: pass data to client

* feat: allow changing state

* fix: account page categories

* fix: show in unread if topic is followed or category is watched

* feat: add default watch state to acp

* feat: save user category watch state

* feat: update unread recent pages

* fix: remove dupe code

* fix: flip conditions

* fix: handle empty arrays

* fix: ignore/watch on others profile

* feat: upgrade script for category states

if there are any users ignoring categories set their state in new zset and delete cid:<cid>:ignorers

* fix: upgrade

* fix: tests

* fix: redis count

* fix: more tests
6 years ago
Barış Soner Uşaklı 263c918088
feat: remove uid:<uid>:ignored:cids (#7099)
use cid:<cid>:ignorers instead
6 years ago
Barış Soner Uşaklı c72299ad71 refactor widgets admin
so we dont load the widget-settings.tpl in the upgrade script and only load areas
6 years ago
Barış Soner Uşaklı 21402ba803 check joindate 6 years ago
Barış Soner Uşaklı c593ffd75f
closes #6944 6 years ago
Barış Soner Uşaklı b6771836cf closes #6937 6 years ago
Barış Soner Uşaklı 4724901588 use series 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 😬
6 years ago
Barış Soner Uşaklı 9c03881d5a add threshold for image resizing 6 years ago
Barış Soner Uşaklı 26d4e0852f use includes instead of indexOf
use _.uniq instead of filter&indexOf
6 years ago
Barış Soner Uşaklı 54c638c3c8 fix upgrade script for notification types 6 years ago
Barış Soner Uşaklı 5c7dd54815
fix zsets and update them on post move, closes #6823 (#6827) 6 years ago
Barış Soner Uşaklı 49ba5af5fa
closes #6810 (#6813) 6 years ago
Barış Soner Uşaklı f45d24d351
change if to !== 0 6 years ago
Barış Soner Uşaklı 77beaf2e15
Allow local login,closes #6800 (#6803)
* WIP

* reset groups cache after every suite
6 years ago
Barış Soner Uşaklı 18d0deeccb
update deprecated methods (#6794) 6 years ago
Barış Soner Uşaklı 95501e8fee
closes #6738 closes #6290 (#6785)
* closes #6738 closes #6290

* fix test, delete keys

* delete all bans on user delete

* fix upgrade script to actually read reason
6 years ago
Barış Soner Uşaklı 7787c9b4bb
fix wrong year on upgrade script 6 years ago
Barış Soner Uşaklı 24601694db
fix wrong year on upgrade script 6 years ago
Barış Soner Uşaklı b7ead6dc9c
Replace jimp with sharp (#6774)
* add probe image size and max image size

* replace jimp and image-probe with sharp

* better name for test

* resize with just path

* resize thumb inplace

* use filename
6 years ago
Ben Lubar 97a3079bc0 Optimize PostgreSQL session store.
- Sets session ID to be a constant-sized character field inline in the
  table instead of a variable-length character field compressed outside
  of the row.
- Changes the session data from "json" to "jsonb" which is faster and
  smaller on disk with the drawback of not maintaining key order and
  whitespace (which we don't care about at all)
- Adds a clustered index on the session expiration timestamp, which will
  make periodic session purging much faster.

(For an example, WTDWTF currently has 482355 sessions in the table, and
 because there is no index on the expiration timestamp, PostgreSQL must
 check all the rows in the table every time.)

This upgrade script can run concurrently with a live NodeBB instance,
but any action that touches sessions will wait until the upgrade script
is done.

Does not touch the database if the database driver is not set to
PostgreSQL or if there is a Redis database configured.
7 years ago
Julian Lam c1725442ea added progress bar to username_email_history upgrade script 7 years ago
Julian Lam 1e3cdc99ac fixes #6702 7 years ago
Ben Lubar 33228bb7fe PostgreSQL database driver (#5861)
* [test/database/list] Fix test list 4 being used in two different tests

* [database/postgres] PostgreSQL database driver

* [database/postgres] Make transactions work based on continuation scope.

* [database/postgres] Implement nested transactions

* eslint --fix

* Add database changes from earlier this week to the PostgreSQL driver.

* Fix typo

* Fix postgres.incrObjectFieldBy returning undefined instead of null when given NaN

* [database/postgres] Fix sortedSetsCard returning an array of strings.

* Update socket.io postgres adapter

* Fix PostgreSQL erroring when multiple updates are made to the same sorted set entry in a single operation.

Add a test case to catch this error.

* Fix lint errors.

* Only prune sessions on one instance in a cluster to avoid deadlocks.

They're caught and handled by the database server, but they spam the logs.

* Fix arguments.slice.
7 years ago
Julian Lam 48197e2d25 this upgrade script was written in 2018, not 2017, heh 7 years ago
Julian Lam 002cde1057 added progress bar to ip hash upgrade script 7 years ago
Julian Lam 6485fc3129 removing extra console logging #6596 7 years ago
Julian Lam 68c9c8c5d9 fixes #6596 7 years ago
Dravere 17e7fe3070 Fixed wrong callback given to groups.join 7 years ago
Julian Lam cb3b2bd27b closes #6562 7 years ago
Julian Lam 99dc3feeb2 Edit history is now a category-level privilege
Closes #6425
7 years ago
Barış Soner Uşaklı 4f4290b15d rename upgrade folder 7 years ago
Barış Soner Uşaklı a7267df404 closes #6464 7 years ago
Barış Soner Uşaklı 9ae5946e7a Merge remote-tracking branch 'refs/remotes/origin/master' into develop 7 years ago