Commit Graph

1556 Commits

Author SHA1 Message Date
Julian Lam
29f96b199c fix(style): requiring parens in block bodies 2019-08-13 15:12:27 -04:00
Julian Lam
0921230976 fix(style): updated code to follow new eslint recommendations
Squashed commit of the following:

commit f9ce878b26
Author: Julian Lam <julian@nodebb.org>
Date:   Tue Aug 13 14:30:46 2019 -0400

    fix(style): updated code to follow new eslint recommendations

commit 80dd370e41
Author: Julian Lam <julian@nodebb.org>
Date:   Tue Aug 13 14:14:58 2019 -0400

    fix(deps): update dependency sitemap to v4

    Squashed commit of the following:

    commit f4dd9cabb2
    Author: Julian Lam <julian@nodebb.org>
    Date:   Tue Aug 13 11:33:05 2019 -0400

        fix: resolved breaking changes from sitemap v4 upgrade

    commit 9043415ee1
    Merge: e3352b272 72590b346
    Author: Julian Lam <julian@nodebb.org>
    Date:   Tue Aug 13 11:09:55 2019 -0400

        Merge branch 'master' into renovate/sitemap-4.x

    commit e3352b272e
    Author: Renovate Bot <bot@renovateapp.com>
    Date:   Mon Aug 12 07:59:05 2019 +0000

        fix(deps): update dependency sitemap to v4

commit 8e3c0cdcae
Author: Renovate Bot <bot@renovateapp.com>
Date:   Fri Aug 9 00:49:51 2019 +0000

    fix(deps): update dependency commander to v3

commit 2104449d38
Author: Renovate Bot <bot@renovateapp.com>
Date:   Tue Aug 13 15:00:27 2019 +0000

    fix(deps): update dependency mongodb to v3.3.0

commit d2937f446a
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Tue Aug 13 10:36:48 2019 -0400

    feat: async/await admin/controllers

commit 1b97e8b199
Author: Misty (Bot) <deploy@nodebb.org>
Date:   Tue Aug 13 09:28:39 2019 +0000

    Latest translations and fallbacks

commit 69a48957a2
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Mon Aug 12 21:56:09 2019 -0400

    feat: async/await

commit b9b2a7e593
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Mon Aug 12 20:58:29 2019 -0400

    feat: async/await refactor

    controllers/accounts

commit a8d43a1759
Author: Baris Usakli <barisusakli@gmail.com>
Date:   Mon Aug 12 14:49:40 2019 -0400

    feat: async/await controllers/accounts

commit 2f25aae57b
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Sun Aug 11 23:09:50 2019 -0400

    fix: #7831, fix pagination

    convert to async/await

commit c9e83f2374
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Sun Aug 11 00:14:35 2019 -0400

    fix: remove empty line

commit 30be91b26c
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Sun Aug 11 00:13:41 2019 -0400

    fix: remove useless catchs and empty line

commit 2e4a71c0b6
Author: Renovate Bot <bot@renovateapp.com>
Date:   Sat Aug 10 06:51:50 2019 +0000

    chore(deps): update dependency eslint-config-airbnb-base to v14
2019-08-13 15:12:27 -04:00
Barış Soner Uşaklı
b734defbfa feat: rewrite getRawPost to async/await
promisify SocketPosts
2019-08-07 17:38:23 -04:00
Julian Lam
973075cfbc feat: added new filter hook filter:post.getRawPost 2019-08-07 14:10:25 -04:00
Julian Lam
924d332c2c Revert "refactor: rewrote SocketPosts.getRawPost in await style"
This reverts commit 08530bb33f.
2019-08-07 14:10:24 -04:00
Julian Lam
08530bb33f refactor: rewrote SocketPosts.getRawPost in await style
Added new filter hook filter:post.getRawPost
2019-08-07 13:18:53 -04:00
Baris Usakli
9780f5b975 fix: #7809, dont check postDelay if submitting from queue 2019-07-30 13:19:50 -04:00
Julian Lam
756a717eb8 feat: convert src/messaging/* to async/await (#7778)
* feat: src/messaging/create.js, #7743

* feat: src/messaging/data.js, #7743

* feat: src/messaging/delete.js, #7743

* feat: src/messaging/edit.js, index.js, #7743

* fix: added in missing awaits

* feat: wrapped up src/messaging/* rewrite

* refactor: messaging delete/restore similar blocks of code
2019-07-22 11:18:13 -04:00
Barış Soner Uşaklı
fcf8fd51cb feat: #7743 meta/blacklist 2019-07-22 10:37:21 -04:00
Barış Soner Uşaklı
2f0a331f02 fix: don't return promise 2019-07-19 17:02:25 -04:00
Barış Soner Uşaklı
44a3352003 fix: socket.io methods calling callbacks twice if method returns promise 2019-07-19 16:46:40 -04:00
Barış Soner Uşaklı
fe4c048198 feat: #7743
user/index.js
user/info.js
user/invite.js
user/jobs.js
2019-07-16 11:42:24 -04:00
Barış Soner Uşaklı
fcf3e0770b feat: #7743 categories 2019-07-16 00:41:42 -04:00
Barış Soner Uşaklı
46639be32d fix: add flag for change post owner 2019-07-13 23:51:18 -04:00
Barış Soner Uşaklı
53e1b349ae Change post owner (#7752)
* feat: #7749, allow array of keys for setObject

* feat: sortedSetRemoveBulk

* feat: test for bulk remove

* feat: #7083, ability to change post ownership

* feat: #7083, fix tid:<tid>:posters

* feat: #7083, front end

* fix: #7752, psql methods

* fix: add missing await

* fix: maybe psql
2019-07-12 14:06:09 -04:00
Barış Soner Uşaklı
805dcd7ca2 Async refactor in place (#7736)
* feat: allow both callback&and await

* feat: ignore async key

* feat: callbackify and promisify in same file

* Revert "feat: callbackify and promisify in same file"

This reverts commit cea206a9b8.

* feat: no need to store .callbackify

* feat: change getTopics to async

* feat: remove .async

* fix: byScore

* feat: rewrite topics/index and social with async/await

* fix: rewrite topics/data.js

fix issue with async.waterfall, only pass result if its not undefined

* feat: add callbackify to redis/psql

* feat: psql use await

* fix: redis 🌋

* feat: less returns

* feat: more await rewrite

* fix: redis tests

* feat: convert sortedSetAdd

rewrite psql transaction to async/await

* feat: 🐶

* feat: test

* feat: log client and query

* feat: log bind

* feat: more logs

* feat: more logs

* feat: check perform

* feat: dont callbackify transaction

* feat: remove logs

* fix: main functions

* feat: more logs

* fix: increment

* fix: rename

* feat: remove cls

* fix: remove console.log

* feat: add deprecation message to .async usage

* feat: update more dbal methods

* fix: redis :voodoo:

* feat:  fix redis zrem, convert setObject

* feat: upgrade getObject methods

* fix: psql getObjectField

* fix: redis tests

* feat: getObjectKeys

* feat: getObjectValues

* feat: isObjectField

* fix: add missing return

* feat: delObjectField

* feat: incrObjectField

* fix: add missing await

* feat: remove exposed helpers

* feat: list methods

* feat: flush/empty

* feat: delete

* fix: redis delete all

* feat: get/set

* feat: incr/rename

* feat: type

* feat: expire

* feat: setAdd

* feat: setRemove

* feat: isSetMember

* feat: getSetMembers

* feat: setCount, setRemoveRandom

* feat: zcard,zcount

* feat: sortedSetRank

* feat: isSortedSetMember

* feat: zincrby

* feat: sortedSetLex

* feat: processSortedSet

* fix: add mising await

* feat: debug psql

* fix: psql test

* fix: test

* fix: another test

* fix: test fix

* fix: psql tests

* feat: remove logs

* feat: user arrow func

use builtin async promises

* feat: topic bookmarks

* feat: topic.delete

* feat: topic.restore

* feat: topics.purge

* feat: merge

* feat: suggested

* feat: topics/user.js

* feat: topics modules

* feat: topics/follow

* fix: deprecation msg

* feat: fork

* feat: topics/posts

* feat: sorted/recent

* feat: topic/teaser

* feat: topics/tools

* feat: topics/unread

* feat: add back node versions

disable deprecation notice
wrap async controllers in try/catch

* feat: use db directly

* feat: promisify in place

* fix: redis/psql

* feat: deprecation message

logs for psql

* feat: more logs

* feat: more logs

* feat: logs again

* feat: more logs

* fix: call release

* feat: restore travis, remove logs

* fix: loops

* feat: remove .async. usage
2019-07-09 12:46:49 -04:00
Barış Soner Uşaklı
bd640a1107 Topic await errors (#7727)
* feat: derp await

* feat: restore user.getSettings

* feat: cleanup

* feat: make tid const

* feat: cleanup

* fix: tests

* feat: deprecate filter:controllers.topic.get

* feat: rewrite post-index logic

* feat: change calculation to match others

* fix: use .async

* feat: remove try/catch wrapper
2019-07-03 12:48:26 -04:00
Barış Soner Uşaklı
a39f0ef592 fix: #5570, create per category user post zsets 2019-06-24 15:21:43 -04:00
Barış Soner Uşaklı
8c331088ca feat: send new post/topic event in batches 2019-06-12 18:20:07 -04:00
Julian Lam
aee47b299a feat: awaitable websockets (#7645)
* feat: awaitable websockets

Adding in conditionals to check the method to call, and handling
it as a promise vs. a regular function depending on whether the
method itself is an asynchronous function.

* fix: switch to .then-checking for awaitable check

* fix: proper use of .then check
2019-06-10 12:06:26 -04:00
Julian Lam
b32da57faf fix: #7604 shortened CTA text and added custom text for some notifs (#7605)
* fix: #7604 shortened CTA text and added custom text for some notifs

Specifically, new-reply and new-chat have different CTA text as they
do not go to the forum home like other email templates send users to.

* fix: minor optimization as suggested by @barisusakli
2019-05-16 09:43:06 -04:00
Barış Soner Uşaklı
dfab231afd Copy group privs (#7610)
* feat: ability to copy a groups privileges

ability to copy a group's privileges to all categories, or children of current category

* feat: switch to dropdown

added copy from category to groups

* fix: indents
2019-05-15 20:56:23 -04:00
Baris Usakli
3a7e99a503 fix: tests 2019-05-10 12:59:48 -04:00
Baris Usakli
bd94fbc2b1 feat: let theme know downvoting is disabled, closes https://github.com/NodeBB/NodeBB/pull/7568
dont load downvote data if downvoting is disabled
2019-05-10 12:41:56 -04:00
Andrew Rodrigues
50260e137a fix: #7576 "Disable password changes" can be sidestepped 2019-05-09 15:51:36 -04:00
Barış Soner Uşaklı
ba5e1eaa4f feat: #7527 2019-04-13 05:04:06 -04:00
Aziz Khoury
3fbb6faf28 feat: update unban logic/invocation and refactor User.bans module
* auto unban when User.getUsersFields is called and the user is banned but has expired

* cleanups and removal of expiry_readable

* expiry_readable make an alias for backward compatibility

* User.bans.func vs User.*ban*Func

* console.log cleanups, plus todo message added

* use code util.deprecate

* fix: remove ununsed winston require
2019-04-05 14:14:48 -04:00
Baris Usakli
ed91d3f2c8 fix: #7519 2019-04-05 13:44:15 -04:00
Barış Soner Uşaklı
2ee2cd528f feat: #7501 2019-04-02 11:56:03 -04:00
Andrew Rodrigues
24dcae2193 feat: manual password expiry. closes #7471 2019-03-20 16:34:22 -04:00
Julian Lam
c289b904e6 fix: #7473 2019-03-19 15:42:42 -04:00
Julian Lam
745a9589e9 Use topics:read privilege for topic filtering use cases (#7462)
* fix: use topics:read privilege for topic filtering use cases

* fix: tests

* fix: more broken tests
2019-03-16 14:51:46 -04:00
Baris Usakli
f8fa659642 fix don't crash if settings are not passed in 2019-03-15 15:26:41 -04:00
Julian Lam
f32a992237 feat: revamp email templates to be more style agnostic (#7375)
* feat: re-designed digest

Updated design, logic no longer shows "no topics", just doesn't
show the list at all, teaser re-retrieved for digest so that it
always grabs a teaser even if there is no reply, changed default
email background to a light grey.

* fix: minor padding issues in digest

* fix: banned template

* fix: invitation.tpl

* fix: removed unused notif_chat and notif_post email templates

* fix: notification template

* fix: registration_accepted template

* fix: reset tpl

* fix: test tpl

* fix: email verify tpl

* fix: reset notify tpl

* fix: welcome tpl

* fix: additional minor font fixes

* fix: removed unused email header image assets

* fix: internationalised 'your daily digest' string

* fix: broken url in digest 🤦

* feat: added RTL support for emailer

/cc @PostMidnight
2019-02-20 16:13:26 -05:00
Barış Soner Uşaklı
c6ad8fae2a fix: #7354 2019-02-11 14:29:25 -05:00
Julian Lam
0c09b7402d feat: logging password resets and errors into event log
closes #7343, also adds tests for password reset socket calls
2019-02-08 10:51:10 -05:00
Barış Soner Uşaklı
a2f08e7da2 fix: #7240 2019-02-05 15:27:41 -05:00
Barış Soner Uşaklı
9d1fcf4e36 fix: closes #7217 2019-02-04 14:16:47 -05:00
Barış Soner Uşaklı
5353960ae7 fix: #7316 2019-01-29 13:11:45 -05:00
Julian Lam
70a87d4399 feat: support for one-click unsubscribe from email clients (#7203)
* feat: sending notifs via ACP creates real notification

re: #7202

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

* feat: tests for #7202 + bugfix

* feat: added and organized digest unsub tests

closes #7202
2019-01-08 13:56:11 -05:00
Julian Lam
0263b4daec feat: added new hook static:sockets.validateSession (#7189)
* feat: added new hook

* fix: improper .bind() call, +req in static:sockets.validateSession

* fix: restored original sessionStore logic, +hook

original logic to retrieve the sessionStore was not faulty, but
was changed for the sake of changing things, which ultimately
led to issues with tests, etc.
2019-01-03 21:14:30 -05:00
Barış Soner Uşaklı
72afc1806e fix: uid filtering 2018-12-24 16:05:11 -05:00
Baris Usakli
0c1ac4d6a2 feat: #7032 2018-12-18 13:44:03 -05:00
Barış Soner Uşaklı
9f5062682d fix: unread badge
- only increase unread badge if topic or category is watched
- fix logic for "there are new posts/topics" on /unread and /recent
2018-12-15 16:38:30 -05:00
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
2018-12-14 16:24:17 -05:00
Julian Lam
33d4956b76 fix: #7087, server-side protection against guest blocks 2018-12-10 14:14:37 -05:00
Barış Soner Uşaklı
f581c052ee feat: #7023
- add category selector to privileges and category create modals
- allow category selector to work for multiple selectors on same page
2018-12-04 14:32:43 -05:00
Barış Soner Uşaklı
ec0c50d4e0 fix: #7041 2018-12-01 16:59:20 -05:00
Peter Jaszkowiak
ba619c7ec8 style(eslint): match operator-linebreak preferences 2018-11-30 13:38:59 -05:00
Peter Jaszkowiak
89c025d102 feat: close #7002, console message if mismatched origins 2018-11-30 13:38:59 -05:00