9734 Commits (7950b254a62fa4af84d58982fa56dcaba921e10f)

Author SHA1 Message Date
Barış Soner Uşaklı 669a5135e1 closes #6768 6 years ago
Barış Soner Uşaklı dff86b1ac9 closes #6740
* flag notifications will go to the flag details page instead of the post or user that was flag
* if you assign a flag to yourself you won't get a notification about it
@benlubar
6 years ago
Barış Soner Uşaklı 089bf5d8bb
closes #6773 6 years ago
Julian Lam 382d06bbb0 fixes #6765 -- no need to have gmods and admins access login sessions page 6 years ago
Barış Soner Uşaklı d996ea27be closes #6763 6 years ago
Barış Soner Uşaklı 6a377568d2 closes #6764 fix typo in notif rescind 6 years ago
Barış Soner Uşaklı 08dfb3470c fix tests 6 years ago
Barış Soner Uşaklı b43bfa3d5b closes #6759
-moved user.blocks.filter from unread controller to getUnreadTopics so
topics are filtered at other places this function is called
- when a new post is made do not send it to uids that have blocked the
poster
- update getUnreadTids so it does not return topics that have new posts
from blocked users
- update hasReadTopics so it does not return false data if topic has new
posts from blocked users
6 years ago
Barış Soner Uşaklı 41aae6f418 closes #6749 6 years ago
Barış Soner Uşaklı 37ca5a1c63 filter falsy teasers 6 years ago
Barış Soner Uşaklı 93d52ef338 default to 'recent' sort 6 years ago
Barış Soner Uşaklı 25fed0aa8d change isPasswordCorrect to return false if user does not have password 7 years ago
Barış Soner Uşaklı 6f18cf368b closes #6741 7 years ago
Barış Soner Uşaklı 446b125c83 escape post content 7 years ago
LudwikJaniuk c7f3b76b4e DRY req props that depend on auth (fix #6727) (#6731)
* DRY req props that depend on auth (fix #6727)

authentication leads to req.loggedIn and req.uid being set. However, a
later authentication event might outdate them. Here, I create one
function for setting those properties, and make sure it also is called
on the `action:middleware.authenticate` hook, which would be such an
authentication event. If there are other places, those should be added
as well.

* fix lint errors

* fix lint error

* change exports
7 years ago
Barış Soner Uşaklı 3e1b007f9f escape title in post queue 7 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 c2c925cacd closes #6678 7 years ago
Julian Lam 29836aaad9 rename session account middleware to sessions, plural, prep for fixing #6678 7 years ago
Baris Usakli 5b45b2f72c closes #6729 7 years ago
Barış Soner Uşaklı 0519f84734
Promisify modules (#6723)
* WIP promisify

* promisify psql

* ability to skip some keys

* dont promisify client object

* remove async

* clone entire module so it has all properties

* add shim for node 6

* ignore sessionStore as well

* ignore pool on psql
7 years ago
Julian Lam c1725442ea added progress bar to username_email_history upgrade script 7 years ago
Julian Lam 545e678e8a fixes #6726 7 years ago
Julian Lam 5c04ec2d63 removed client-side chat message length check in favour of server-side check, firing new hook on messaging.checkContent for hooks to intercept 7 years ago
Julian Lam 1e3cdc99ac fixes #6702 7 years ago
Andrew Rodrigues a06b33a713 fix html characters when cloning children categories 7 years ago
Julian Lam aaa9561b7f Revert "moved filter:post.getPostSummaryByPids to before parsePosts call"
This reverts commit cf82407a8f.
7 years ago
Julian Lam cf82407a8f moved filter:post.getPostSummaryByPids to before parsePosts call
/@pitaj
7 years ago
Barış Soner Uşaklı ae4016d9e0 add getCateries to helpers 7 years ago
Andrew Rodrigues 12940b577b closes #6703 7 years ago
Julian Lam 2ce6a85756 properly closes #6698 7 years ago
Julian Lam f751d21d1e removed debug line 7 years ago
Julian Lam f9d3484ec6 fixes #6543 7 years ago
Julian Lam ed9dc113b0 sanitizing notes in flags details page, fixes #6698 7 years ago
Julian Lam a77630c6be closes #6697 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
Jimb Esser 3cccbbc1f2 Add option to enable/disable HSTS
Also fix HSTS middleware being added twice.
7 years ago
Barış Soner Uşaklı 1c286e4536 not even used 7 years ago
Barış Soner Uşaklı fa499aef18 closes #6680 7 years ago
Baris Usakli e7bd0cea74 fix lint 7 years ago
Baris Usakli bcef32c5af closes #6645 7 years ago
Baris Usakli 546b13b897 fix lint and tests 7 years ago
Baris Usakli 79ffae608e closes #6675 7 years ago
Baris Usakli 4200cff47c closes #6662 7 years ago
Julian Lam 3c6c0ed7a1 restoring passwordExpiry for use in continueLogin, fixed tests, hopefully 7 years ago
Julian Lam 786af5fbb3 derp 7 years ago
Julian Lam b6a5419ca1 closes #6674 7 years ago
Julian Lam 4f8815eb78 closes #6646 7 years ago
Julian Lam ea2bd33bfa fixes #6608, restored template values in widget containers 7 years ago
Julian Lam 7dfe953526 closes #6672 7 years ago
Julian Lam 48197e2d25 this upgrade script was written in 2018, not 2017, heh 7 years ago
Barış Soner Uşaklı c7d6cacd98 closes #6658 7 years ago
Ben Lubar 44373afc52 Fix socket.io not working properly in single-host clusters. (#6669)
This is because we don't use the cluster module, so the master nodejs process doesn't know about any of the clients through the socket API.
7 years ago
Julian Lam 3522ad0e05 Revert "closes #6664"
This reverts commit f27a0d252c.
7 years ago
Julian Lam f27a0d252c closes #6664 7 years ago
Julian Lam 506467ad6f closes #6663 7 years ago
Ben Lubar c1e98eefa7 Allow single-host clusters to not send pubsub and socket.io messages through the database. (#6659)
* Allow single-host clusters to not send pubsub and socket.io messages through the database.

* Fix lint errors.
7 years ago
Barış Soner Uşaklı 87b6808c4e refactor to use getCidsByPrivilege
switch to .includes
7 years ago
Ben Lubar f1a6537fc2 Add notification frequencies from nodebb-plugin-upvote-notifications. (#6640)
* Add notification frequencies from nodebb-plugin-upvote-notifications.

https://github.com/boomzillawtf/nodebb-plugin-upvote-notifications

* Fix editing settings clearing upvote notification preferences.
7 years ago
Sebastian G. Marinescu e35d4a7d85 closes #6283 7 years ago
Peter Jaszkowiak 04d31fe1d4 Precompile all templates
- Benchpress compilation is 33x faster now
- Native module with JS fallback and pre-built binaries
- Dev template build is <1sec now
- Minified template build is ~5sec (uglify accounts for almost all)
7 years ago
Julian Lam 7558046e75 add brute-force protection for change password and email actions 7 years ago
Barış Soner Uşaklı 91f9c60660 closes #6643 7 years ago
Barış Soner Uşaklı 85a55d1740 closes 7 years ago
Barış Soner Uşaklı cfb9784527 closes #6641 7 years ago
Baris Usakli 16a7728ab8 fix redis warnings 7 years ago
Baris Usakli cc6a683bc4 closes #6631 7 years ago
Peter Jaszkowiak 65b4bafb16 Fix @scoped themes 7 years ago
Peter Jaszkowiak 7cd8274c0f Add series flag for `./nodebb build` 7 years ago
Barış Soner Uşaklı 8eea6017fe parseInt uid 7 years ago
Julian Lam 7a53fa9469 Added block and unblock button to profile dropdown menu, #6560 7 years ago
Julian Lam a34584e8f5 fixed blocking cache derp 7 years ago
Julian Lam f09b1acfb7 closes #6627 7 years ago
Barış Soner Uşaklı 4ed079555e Merge remote-tracking branch 'refs/remotes/origin/master' into blocks 7 years ago
Barış Soner Uşaklı 3449cf321b add back cache and pubsub 7 years ago
Barış Soner Uşaklı ae0563375e derp 7 years ago
Julian Lam ad8ac2bdff removed unused checkPassword socket call 7 years ago
Julian Lam fb42862ec7 check password validity in user delete socket call 7 years ago
Julian Lam cb8e62cd7c fixes #6626 7 years ago
Baris Usakli 584f88e092 blocks WIP 7 years ago
Barış Soner Uşaklı c2b0be1f2c if stack is undefined fallback to message and then to hardcoded string 7 years ago
Baris Usakli ee64437f8a fix runJobs 7 years ago
Julian Lam 7e6007e146 revoke all sessions on email change 7 years ago
Julian Lam be0ef799ee closes #6592 7 years ago
Julian Lam 002cde1057 added progress bar to ip hash upgrade script 7 years ago
Barış Soner Uşaklı 9912c400b6 closes #6612 7 years ago
Julian Lam 5cf662e565 closes #6613 7 years ago
Barış Soner Uşaklı 625ab1a46b remove deprecated method 7 years ago
Barış Soner Uşaklı 57b7c7ede4 closes #6607 7 years ago
Barış Soner Uşaklı 82b2a20d0c user tests 7 years ago
Barış Soner Uşaklı d158f79a3b Merge branch 'master' of https://github.com/NodeBB/NodeBB 7 years ago
Barış Soner Uşaklı 95f1a82884 closes #6591 7 years ago
Julian Lam 6485fc3129 removing extra console logging #6596 7 years ago
Julian Lam 68c9c8c5d9 fixes #6596 7 years ago
Barış Soner Uşaklı f72412fa38 Merge branch 'master' of https://github.com/NodeBB/NodeBB 7 years ago
Julian Lam df8c22e9c7 Allow new "withScores" option in batch.processSortedSet (#6602) 7 years ago
Barış Soner Uşaklı fe80186ddf add withscores 7 years ago
Baris Usakli f830322ee9 closes #6597 7 years ago
Barış Soner Uşaklı bc437c8da3 fix popular rss feed url 7 years ago
Barış Soner Uşaklı ccad95cf73 closes #6579 7 years ago
Barış Soner Uşaklı f7a0815b46 fix redis tests 7 years ago
Barış Soner Uşaklı 2c3fd5fbce remove some dupe code 7 years ago
Barış Soner Uşaklı e8d7a23e2e remove deprecated methods 7 years ago
Barış Soner Uşaklı 2fd2accf8c add tests for top topics
fix popular page displaying 18 topics per page
7 years ago
Dravere 956aa55253 Added server hook action:analytics.increment 7 years ago
Barış Soner Uşaklı b71d64e8c3 remove fake pubsub 7 years ago
Julian Lam 1f8b4bf820 closes #6576 7 years ago
Barış Soner Uşaklı 81341e86ee log fired hooks 7 years ago
Dravere 17e7fe3070 Fixed wrong callback given to groups.join 7 years ago
Barış Soner Uşaklı e7cd552e33 closes #6568 7 years ago
Julian Lam 9e90d1ea5d closes #6557 7 years ago
Peter Jaszkowiak 70ff2d9b88 Support scoped theme packages 7 years ago
Barış Soner Uşaklı d656c65c9a closes #6567 prevent crash if category is undefined 7 years ago
Barış Soner Uşaklı 274b33e9e1 move addPostData before modifyPostPrivilege 7 years ago
Barış Soner Uşaklı acf2f2a776 move modifyPostByPrivilege call before filtering posts so index is correct 7 years ago
Julian Lam cb3b2bd27b closes #6562 7 years ago
Barış Soner Uşaklı a37dc1856f #6561 7 years ago
Barış Soner Uşaklı 0c60351960 add error log for invalid clientIP 7 years ago
Julian Lam 99dc3feeb2 Edit history is now a category-level privilege
Closes #6425
7 years ago
Barış Soner Uşaklı b2d7455f72 set isPrimary to true if its undefined
isPrimary was undefined if you are using clustering by adding
isCluster:true to config.json, run 1 nodebb process on each virtual
machine and use app.js instead of loader.js
7 years ago
Barış Soner Uşaklı 0630915cad when settings are saved publish it to all nodes
add runJobs value to nconf, only true on nodes that should run jobs ie
isPrimary and jobs are not disabled
7 years ago
Barış Soner Uşaklı 779d03cf57 move timestamp to server 7 years ago
Barış Soner Uşaklı 5287c2ea08 #6554 7 years ago
Barış Soner Uşaklı 14f6e74bad closes #6556 7 years ago
Julian Lam ec91ef1c64 closes #6553 7 years ago
Barış Soner Uşaklı f3c8074668 closes #6552 7 years ago
Barış Soner Uşaklı 908b77fe28 closes #6250 7 years ago
Barış Soner Uşaklı b7f5995aab closes #6550 7 years ago
Barış Soner Uşaklı 0b0ce1df8a closes #6549 7 years ago
Barış Soner Uşaklı 25ebd306cc closes #6548 7 years ago
Barış Soner Uşaklı 2edd908aee closes #6547 7 years ago
Barış Soner Uşaklı f77e7de285 closes #6067 7 years ago
Barış Soner Uşaklı d5e85c2eb3 closes #6476, closes #6546 7 years ago
Julian Lam 6ce635deb5 closes #6539 7 years ago
Barış Soner Uşaklı d31d8fa806 move category pageview to controllers
so topic views are tracked as category views
7 years ago
Barış Soner Uşaklı 7df57ba7a7 remove dupe code 7 years ago
Julian Lam 4e7fdf3e12 Saving flag filters into session object
Closes #6533
7 years ago
Barış Soner Uşaklı 4f893d2aff closes #6535 7 years ago
Barış Soner Uşaklı b0dad9bd7f closes #6369 7 years ago
Barış Soner Uşaklı 4f4290b15d rename upgrade folder 7 years ago
Barış Soner Uşaklı 81328806a0 closes #6511 7 years ago
Barış Soner Uşaklı 7a1888dfbf closes #6514 7 years ago
Barış Soner Uşaklı 11bb2f1560 closes #6528 7 years ago
Barış Soner Uşaklı d7acec260f closes #6530 7 years ago
Barış Soner Uşaklı 6eea11a4fd closes #6529 7 years ago
Barış Soner Uşaklı a7267df404 closes #6464 7 years ago
Barış Soner Uşaklı c1fb3c2da4 closes #6525 7 years ago
Barış Soner Uşaklı 4504bbae52 2 diff test 7 years ago
Barış Soner Uşaklı fc56347c22 closes #6520 7 years ago
Barış Soner Uşaklı 229e49cf8f closes #6523, closes #6524 7 years ago