Commit Graph

8618 Commits (ff2aa17bbc5b74cfd59e55ee477f209644aebe98)

Author SHA1 Message Date
psychobunny d40779a4ba feat(acp): autocomplete user search for welcome notifications
Barış Soner Uşaklı 715775a707 feat: , add login clientside hooks
same as logout
Misty (Bot) 841cbcc3e3 Latest translations and fallbacks
Julian Lam a08fb8e53b fix: removed superfluous assignment
Julian Lam 0b6ef61e40 fix: createNewPosts to build tpl with ajaxify.data
If the post template contains references to items outside of the scope of the post, then when the post is loaded via IS, the expected values are empty.

This was due to createNewPosts calling app.parseAndTranslate with a subset of the page payload. This works fine in Persona (and most other themes)
because they do not refer to properties outside of the post object, but it may be helpful to include the rest of the ajaxify data as well.
Julian Lam bff53de03f fix: handle ACP category enable/disable states after call success
Julian Lam aa8faf58a0 refactor: remove /users/{uid}/settings/{setting} route
@baris Also, I am now allowing the following properties to be saved in User.saveSettings:
- categoryTopicSort
- topicPostSort
- setCategorySort
- setTopicSort
Barış Soner Uşaklı 9082062e90 fix: sort setting not using correct field name
Misty (Bot) 2baccd3ce2 Latest translations and fallbacks
Barış Soner Uşaklı 6ac73ccb7e feat: , disable express compression by default
Julian Lam cc1c722092 fix: breaking test from 0db0231cff
Also lowered export timeout to 5s
Julian Lam 14e5c24ec5 fix(openapi): final fixes to schemas
Julian Lam b2e9e3e048 fix(writeapi): more tweaks to schema files
Julian Lam 9f9e3c1582 fix(writeapi): fix components, + tag object schema
Julian Lam a4f3270fc5 fix(writeapi): missing files for tests
Julian Lam b092f65d95 fix(writeapi): tests
Julian Lam 93f65f89e7 fix(writeapi): added examples to all parameter objects in schema
Barış Soner Uşaklı a512d99472 refactor: remove unnecessary wrapper
Misty (Bot) 5605a0d1b7 Latest translations and fallbacks
Barış Soner Uşaklı a05905f196
performance improvements ()
* perf: nconf/winston/render

cache nconf.get calls
modify middleware.pageView to call next earlier
don't call winston.verbose on every hook see https://github.com/winstonjs/winston/issues/1669
translate header/footer separately and cache results for guests

* fix: copy paste fail

* refactor: style and fire hook only log in dev mode

* fix: cache key, header changes based on template

* perf: change replace

* fix: add missing await

* perf: category

* perf: lodash clone

* perf: remove escapeRegexChars
Misty (Bot) 822c13f199 Latest translations and fallbacks
Misty (Bot) 89a1f481e0 Latest translations and fallbacks
Barış Soner Uşaklı 0db0231cff feat: move postercount to topic hash
Barış Soner Uşaklı 7a3183520f fix: spec
Julian Lam 63e07c9433 fix: tests
Julian Lam c26f2b6599 feat(writeapi): user settings API
Baris Usakli 1a4c0decb7 fix: reset button loading html
Misty (Bot) c31cab3457 Latest translations and fallbacks
Barış Soner Uşaklı e6440c0d21 fix: , fix move all
add new language keys
Misty (Bot) df1cfc4caf Latest translations and fallbacks
Barış Soner Uşaklı 3ee4936db6 fix: keep sortBy while searching
Barış Soner Uşaklı 85cfe49d65 fix: autocomplete.user on search page
Barış Soner Uşaklı cf474ab246 fix: spec
Misty (Bot) 1b50e1a062 Latest translations and fallbacks
Julian Lam ff4fcc23b6
Update bundled logos with new branding ()
* feat: updating logo assets, square logos missing still

* fix: squared logo for touch icon and notification fallback

* fix: update link to favicon

* feat: add default touch icon sizes, if one isn't uploaded

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
Barış Soner Uşaklı c107649b40 fix:
Barış Soner Uşaklı d9a16855d0 refactor: posts api
Barış Soner Uşaklı 272e73da53 refactor: post restore/delete/purge
Barış Soner Uşaklı 9738e20207 refactor: merge post.edit
fix: dont fadeout/fadeint if title/post didnt change
Barış Soner Uşaklı 2279e37261 refactor: deprecate socket.emit('users.search') use api route
Barış Soner Uşaklı 083c74e059 refactor: api categories
Misty (Bot) 854d61a257 Latest translations and fallbacks
Barış Soner Uşaklı 51a60d3d46 fix: handler for group.join
Julian Lam 20bb9c7ec8 fix: csrf token only on non-GET routes
Barış Soner Uşaklı 3673accdb8 refactor: api module
only return promise if callback is undefined
dont append baseUrl if url already starts with api
correctly handle writeapi readapi response for data/error
remove unused onError
dont append empty ? to url for get routes
Julian Lam a784d10fff refactor: api module returns promise, error-first cb if cb passed in
no more separate onSuccess onError callbacks

/cc @baris
Misty (Bot) d52992de1b Latest translations and fallbacks
Barış Soner Uşaklı 4b9444f1a5 fix: avatar selector
Barış Soner Uşaklı 872bacf1c4
Admin/users ()
* feat: wip admin/users

* feat: more work

* feat: more fixes

* feat: , 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
Julian Lam bfaeb27c11 Merge branch 'write-api-csrf'
Julian Lam 1e07886f30 feat: require csrf token if not using bearer token
psychobunny 0e0f1506d2 fix: update server param to /api/v3
psychobunny c68653d035 fix: typo
psychobunny 7aa4d104af fix: testing openapi write tests
psychobunny 16873800a6 fix(openapi): users.yaml
psychobunny 54e6003a7c fix: test fix for write API
need to rewrite users.yaml to fix properly
Barış Soner Uşaklı ba2e1c4c7e fix: show more lines
Barış Soner Uşaklı 01265d08f3 feat: add stack to deprecate message
Misty (Bot) 0a4fd50aac Latest translations and fallbacks
Barış Soner Uşaklı dc29f4dca2 refactor: switch to using slugify module
Barış Soner Uşaklı bddfcb5867 feat: , add slugify module, deprecate utils.slugify
Barış Soner Uşaklı f16c8268cf feat: , move bootstrap-tagsinput to package.json
Barış Soner Uşaklı eab7489ec5 feat: , move deserialize/serialize to package.json
Barış Soner Uşaklı 948f26143c feat: , remove colorpicker
Barış Soner Uşaklı c954db84e4 refactor: require style
Barış Soner Uşaklı 931d44b5e2 fix: undefined api require, @julianlam
Barış Soner Uşaklı e2d407b769 fix: watch tooltip
Barış Soner Uşaklı aedd28e0a6 fix: module name
Barış Soner Uşaklı c721625a95 feat: remove unused files
Barış Soner Uşaklı cc705e5e2b feat: , move sortable to package.json
Barış Soner Uşaklı 75c9668656 fix: admin jquerui requires
Barış Soner Uşaklı 8c019a6a3b fix: timeago locale switch
Barış Soner Uşaklı 300a87559f feat: , move bootbox to package.json
Barış Soner Uşaklı 420a312982 Merge branch 'master' of https://github.com/NodeBB/NodeBB
Barış Soner Uşaklı 3b231360d3 feat: load jquery-form before using
Barış Soner Uşaklı fda2aedfd8
feat: , jquery-ui, jquery-form, timeago ()
* feat: , jquery-ui, jquery-form, timeago

get rid of forum/footer.js move that code to app.js & wait for app to load before calling ajaxify.end
make sockets.js a requirejs module
move jquery-ui to node_modules and load via requirejs
move jquery-form to node_modules and load via requirejs
move timeago to node_modules and load via requirejs
only include the css for needed jquery-ui widgets

* feat: keep socket/io global for backwards compat

* refactor: move socket listener to chat
Misty (Bot) ea830871c2 Latest translations and fallbacks
Barış Soner Uşaklı 59311a63a0 feat: remove unused textcomplete file
Barış Soner Uşaklı ae3a231fce feat: , remove semver.browser
use compare-versions as a module
Barış Soner Uşaklı 1531536d46 Merge branch 'master' of https://github.com/NodeBB/NodeBB
Barış Soner Uşaklı 2c1897b373 feat: , move slideout to package.json
psychobunny dbb4cfe9d6 style(openapi): break write API routes into individual files
psychobunny ffac3c7902 style(openapi): move schemas and responses out of write.yaml
Barış Soner Uşaklı 9c157de05d feat: , move tinycon to package.json
Barış Soner Uşaklı 45e8a4d588 fix: make nprogress module
Barış Soner Uşaklı 43589a744d feat: , move visibilityjs to package.json
Barış Soner Uşaklı a46cbb623d feat: , move nprogress to package.json
Barış Soner Uşaklı aa08f8826c feat: move r.js to package.json
Misty (Bot) d5d05e17af Latest translations and fallbacks
Barış Soner Uşaklı 12c8b1c2bc fix: dont allow adding duplicates to privileges page
hightlight uid/group if it is added again from autocomplete
Barış Soner Uşaklı f259063f08 fix: , dont add admins to table
cryptoethic b3ed26ac2c
feat: revoke user sessions above threshold ()
* feat: revoke user sessions above threshold

* fix: removed translations from en-US

* fix: defined default maxUserSessions in install\data\defaults.json
Julian Lam f870721fca feat(writeapi): file deletion route
Julian Lam a55b381791 feat(writeapi): admin settings update route
Julian Lam 2ec838fc59 feat(writeapi): token generation/delete routes, ACP updates
Julian Lam 2928b9b87a style: updates to openapi files
Julian Lam 3ea1aa4780 refactor(writeapi): update route prefix to api/v3, default error option
Julian Lam 0973feea16 feat(writeapi): post bookmarking
Julian Lam 9942c248eb feat(writeapi): post voting
Julian Lam 414169fdfa feat(writeapi): post delete/restore/purge
Julian Lam f66c2fb60f feat(writeapi): post editing
Julian Lam 1605e5e443 feat(writeapi): topic tags
Julian Lam 9be5629458 feat(writeapi): topic follow/ignore
Julian Lam da25ce4d09 feat: topic delete/restore/purge/(un)pin/(un)lock
Julian Lam 49652e6f1b feat: management of API tokens via ACP
Julian Lam adcadbb2b5 fix: tests
Julian Lam cb9369f10e fix: bad merge w/ category ACP page
Julian Lam a905d7f022 refactor: rewrite modules/api.js in AMD style
Julian Lam 4c833d0bf0 feat(writeapi): topic posting and replying
Julian Lam 40dc1c38d3 feat(writeapi): added DELETE /groups/:slug/membership/:uid route
Julian Lam 68ecf41ecf fix(writeapi): client-side group join API call
Julian Lam e1c40b2792 style: allowing some es6 features client-side
Julian Lam 952dc211dd feat(writeapi): added group joining and deletion
Julian Lam d044c3223e feat(writeapi): abstracted ajax calls out to new api module
Julian Lam ba345e53e8 feat(writeapi): added POST /api/v1/groups
Julian Lam 49994f3a15 fix(openapi): moved write-api to public/openapi
Julian Lam 3072de4812 feat: added DELETE /api/v1/categories/:cid route
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
Julian Lam a5af2dc819 feat: added PUT/DELETE /api/v1/users/:uid/ban routes
Julian Lam db5c5b2cfb fix: follow route to match spec
Julian Lam b5bbcbaeaa feat: added POST and DELETE /api/v1/users/:uid/follow routes
Julian Lam 7aed174ebc feat: added PUT /api/v1/users/:uid/password route
Julian Lam a1ddc210b2 feat: added DELETE /api/v1/users/:uid and DELETE /api/v1/users
Julian Lam d8879d21db fix: error handling with POST /api/v1/users
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
Barış Soner Uşaklı dc152a558c Merge branch 'master' of https://github.com/NodeBB/NodeBB
Barış Soner Uşaklı 7138d433b1 fix: selector, so it doesnt effect suggested topics
Misty (Bot) af90b99706 Latest translations and fallbacks
Julian Lam fc603a5368 fix: use app.parseAndTranslate instead of benchpress.parse
psychobunny 20e0cc5cbb fix: sorted list delete button
Misty (Bot) 174e239332 Latest translations and fallbacks
Barış Soner Uşaklı b955fd363d fix: dont allow sorting pinned topics on recent
Julian Lam 3c7f79cb8a fix: use console.info instead of console.log for sw registration
Barış Soner Uşaklı 1542a5d7e5 feat: remove post/header selector
Barış Soner Uşaklı 7cd83b9a6a fix: spec
Barış Soner Uşaklı 6924eb6c52 fix: spec
Misty (Bot) d93315e3ee Latest translations and fallbacks
psychobunny 60afb110ef fix: prevent mutiple highlighted rows on category/topic pages
Misty (Bot) 6ee0cad289 Latest translations and fallbacks
Barış Soner Uşaklı fbd85680fb fix: spec
Barış Soner Uşaklı 5d9a868142
feat: category filter on post queue ()
* feat: category filter on post queue

category filter module

* feat: add spec
Julian Lam f1de084da3 fix: do not show TOC if fewer than 2 headings
psychobunny caa8c00f89 fix: params cached in autocomplete module
Misty (Bot) c65ea5bfa6 Latest translations and fallbacks
Barış Soner Uşaklı e60357d20d
feat: , add top/popular sections to digest email ()
Peter Jaszkowiak 55d5cccf2e
Document deprecations and remove old ones ()
* chore: document deprecation removal versions

* chore: remove deprecations 2+ versions old
Misty (Bot) 39b51707ce Latest translations and fallbacks
Barış Soner Uşaklı 72e82c4aca Merge branch 'master' of https://github.com/NodeBB/NodeBB
psychobunny 1761e13dbd feat: dedicated sorting buttons for plugin ordering in ACP
Barış Soner Uşaklı c33dc90562 Merge branch 'master' of https://github.com/NodeBB/NodeBB
Barış Soner Uşaklı 54737d3076 feat: , search sub categories
psychobunny c56236f081 fix: overflow on submitPluginUsage field
psychobunny f4d76f1edd feat: move service-worker.js into its own file
Julian Lam 8437130ec2 fix: early button/anchor clicks do nothing
This reverts commit a395324b52, and
fixes the issue where the ACP became unusable because of the earlier
variant of this code.

Thanks @psychobunny for spotting.
Misty (Bot) f693ce97bf Latest translations and fallbacks
Barış Soner Uşaklı a395324b52 Revert "fix: early button/anchor clicks do nothing"
This reverts commit 966d3f7654.
psychobunny 14ba1a6dbb feat: analytics:maxCache setting in ACP
I removed a TODO from core. Watch your head as flying pigs are abound
psychobunny ffbf2d6d63 feat(openapi): refactor into indiv. files to match API & tpl routing
psychobunny c7d27731b3 Revert "feat(openapi): refactor into indiv. files to match API & tpl routing"
This reverts commit 84f5e4cf3d.
Julian Lam 966d3f7654 fix: early button/anchor clicks do nothing
This solves a small UX issue where clicking on a button (or anchor
that is not meant to be ajaxified) before ajaxify.end is called
leads to nothing happening because the appropriate click handler
has not been added.

This code will intercept premature clicks, wait until ajaxify.end
is called, and then re-send the click.
Barış Soner Uşaklı ea0f3262f4 feat: , allow sort for guests
psychobunny 84f5e4cf3d feat(openapi): refactor into indiv. files to match API & tpl routing
psychobunny 9c5b690799 feat: up recommended size to 512x512 + ACP labels for PWA
psychobunny 6478b32d0e feat: upload maskable icon for PWA
Julian Lam 3fbddbe2ca fix(openapi): test for new trending plugins in ACP
Julian Lam b12e8d6312 feat: show top 5 trending plugins in new tab in Extend > Plugins
psychobunny aa268d5eeb feat: register service worker,
psychobunny 4c1e717b2b fix: update notification delay ACP help text
psychobunny 5b427a0c3b feat: option in ACP to configure notification/email delay for chats
Misty (Bot) f66cb05fcf Latest translations and fallbacks
Timothy Fike f85fe7faff
don't invite an already invited email ()
* don't invite an already invited email

* add email-invited translation string
Misty (Bot) 852ec92e93 Latest translations and fallbacks
psychobunny b6f2f0e5d0 fix: change owner modal's search should check if user is banned
psychobunny 611f3c6155 feat: allow autocomplete to pass optional params to user.search
Julian Lam f8032cd09b fix: add img-responsive to post queue post items
Misty (Bot) 7fa61fafbf Latest translations and fallbacks
Julian Lam 5ddf70221c feat: upon plugin installation via ACP, check against nbbpm first
Misty (Bot) 8b855720f8 Latest translations and fallbacks
psychobunny 2ad3305879 fix: language key in reset password
Julian Lam 0fffe28941 fix: issue where the last flag filter could not be removed
psychobunny 2cd5f959a0 feat: add row highlighting for popular and unread
psychobunny 48a8ec4ab2 feat: return to previous page and/or category after marking topic unread
... also return to category if pagination is active and previous page was another page in the thread
Misty (Bot) 6ebd2c80e7 Latest translations and fallbacks
Barış Soner Uşaklı bd9b6c99e6 feat: add missing lang key
Barış Soner Uşaklı 83d4e7efaa feat: add number of posters to topic
Barış Soner Uşaklı f2f3ba49b6 feat: hightlight matches in quick search
fix title hightlights
Barış Soner Uşaklı f8ef380b34 fix: multiword match highlight
Barış Soner Uşaklı d38c872259 feat: add loading indicator
psychobunny 82ab6cd3b1 fix: tooltip placement on navbar search
psychobunny 683c01b0d3 fix: rogue tooltip on navbar profile icon
Barış Soner Uşaklı 445a840b88 fix: , @julianlam
psychobunny 703ac1b685 fix: match api when modifying ajaxify.data.deleted (int, not bool)
Barış Soner Uşaklı 9a7c3c689f fix: lock/unlock toggle issue
Barış Soner Uşaklı 654d583059 fix: api spec
Barış Soner Uşaklı 02a48e1c64 fix: change user tooltip container to content
Barış Soner Uşaklı af43f0e48e fix: , rename /api/me to /api/self
Misty (Bot) 9e7f5b9403 Latest translations and fallbacks
Misty (Bot) bd10559121 Latest translations and fallbacks
Barış Soner Uşaklı 95c65e2da0 Merge branch 'master' of https://github.com/NodeBB/NodeBB
Barış Soner Uşaklı 23de5613bd feat: add x-posts/x-votes keys