Commit Graph

1333 Commits

Author SHA1 Message Date
Barış Soner Uşaklı
7e4d2852f6 fix: #10528, gray out disabled nav items
use enabled property if present
change default to true, so added nav items are enabled by default
2022-05-20 20:23:16 -04:00
Barış Soner Uşaklı
b860c2605c feat: paginaton for admins-mods, closes #10610
ability to select categoriest to see children
2022-05-13 19:52:19 -04:00
Barış Soner Uşaklı
a583141252 feat: add button to see category children, closes #10606 2022-05-12 20:48:57 -04:00
Barış Soner Uşaklı
d20b07cfea Webpack5 (#10311)
* feat: webpack 5 part 1

* fix: gruntfile fixes

* fix: fix taskbar warning

add app.importScript
copy public/src/modules to build folder

* refactor: remove commented old code

* feat: reenable admin

* fix: acp settings pages, fix sortable on manage categories

embedded require in html not allowed

* fix: bundle serialize/deserizeli so plugins dont break

* test: fixe util tests

* test: fix require path

* test: more test fixes

* test: require correct utils module

* test: require correct utils

* test: log stack

* test: fix db require blowing up tests

* test: move and disable bundle test

* refactor: add aliases

* test: disable testing route

* fix: move webpack modules necessary for build, into `dependencies`

* test: fix one more test

remove 500-embed.tpl

* fix: restore use of assets/nodebb.min.js, at least for now

* fix: remove unnecessary line break

* fix: point to proper ACP bundle

* test: maybe fix build test

* test: composer

* refactor: dont need dist

* refactor: more cleanup

use everything from build/public folder

* get rid of conditional import in app.js

* fix: ace

* refactor: cropper alias

* test: lint and test fixes

* lint: fix

* refactor: rename function to app.require

* refactor: go back to using app.require

* chore: use github branch

* chore: use webpack branch

* feat: webpack webinstaller

* feat: add chunkFile name with contenthash

* refactor: move hooks to top

* refactor: get rid of template500Function

* fix(deps): use webpack5 branch of 2factor plugin

* chore: tagging v2.0.0-beta.0 pre-release version 💥 :shipit: 🎉 🚀

* refactor: disable cache on templates

loadTemplate is called once by benchpress and the result is cache internally

* refactor: add server side helpers.js

* feat: deprecate /plugins shorthand route, closes #10343

* refactor: use build/public for webpack

* test: fix filename

* fix: more specific selector

* lint: ignore

* refactor: fix comments

* test: add debug for random failing test

* refactor: cleanup

remove test page, remove dupe functions in utils.common

* lint: use relative path  for now

* chore: bump prerelease version

* feat: add translateKeys

* fix: optional params

* fix: get rid of extra timeago files

* refactor: cleanup, require timeago locale earlier

remove translator.prepareDOM, it is in header.tpl html tag

* refactor: privileges system to use a Map in the backend instead of separate objects for keys and labels (#10378)

* refactor: privileges system to use a Map in the backend instead of separate objects for keys and labels

- Existing hooks are preserved (to be deprecated at a later date, possibly)
- New init hooks are called on NodeBB start, and provide a one-stop shop to add new privileges, instead of having to add to four different hooks

* docs: fix typo in comment

* test: spec changes

* refactor: privileges system to use a Map in the backend instead of separate objects for keys and labels (#10378)

* refactor: privileges system to use a Map in the backend instead of separate objects for keys and labels

- Existing hooks are preserved (to be deprecated at a later date, possibly)
- New init hooks are called on NodeBB start, and provide a one-stop shop to add new privileges, instead of having to add to four different hooks

* docs: fix typo in comment

* test: spec changes

* feat: allow app.require('bootbox'/'benchpressjs')

* refactor: require server side utils

* test: jquery ready

* change istaller to use build/public

* test: use document.addEventListener

* refactor: closes #10301

* refactor: generateTopicClass

* fix: column counts for other privileges

* fix: #10443, regression where sorted-list items did not render into the DOM in the predicted order [breaking]

* fix: typo in hook name

* refactor: introduce a generic autocomplete.init() method that can be called to add nodebb-style autocompletion but using different data sources (e.g. not user/groups/tags)

* fix: crash if `delay` not passed in (as it cannot be destructured)

* refactor: replace substr

* feat: set --panel-offset style in html element based on stored value in localStorage

* refactor: addDropupHandler() logic to be less naive

- Take into account height of the menu
- Don't apply dropUp logic if there's nothing in the dropdown
- Remove 'hidden' class (added by default in Persona for post tools) when menu items are added

closes #10423

* refactor: simplify utils.params [breaking]

Retrospective analysis of the usage of this method suggests that the options passed in are superfluous, and that only `url` is required. Using a browser built-in makes more sense to accomplish what this method sets out to do.

* feat: add support for returning full URLSearchParams for utils.params

* fix: utils.params() fallback handling

* fix: default empty obj for params()

* fix: remove \'loggedin\' and \'register\' qs parameters once they have been used, delay invocation of messages until ajaxify.end

* fix: utils.params() not allowing relative paths to be passed in

* refactor(DRY): new assertPasswordValidity utils method

* fix: incorrect error message returned on insufficient privilege on flag edit

* fix: read/update/delete access to flags API should be limited for moderators to only post flags in categories they moderate

- added failing tests and patched up middleware.assert.flags to fix

* refactor: flag api v3 tests to create new post and flags on every round

* fix: missing error:no-flag language key

* refactor: flags.canView to check flag existence, simplify middleware.assert.flag

* feat: flag deletion API endpoint, #10426

* feat: UI for flag deletion, closes #10426

* chore: update plugin versions

* chore: up emoji

* chore: update markdown

* chore: up emoji-android

* fix: regression caused by utils.params() refactor, supports arrays and pipes all values through utils.toType, adjusts tests to type check

Co-authored-by: Julian Lam <julian@nodebb.org>
2022-04-29 21:39:33 -04:00
Barış Soner Uşaklı
b28f9f776a feat: closes #10501, minimum reputation to chat 2022-04-16 21:37:54 -04:00
Julian Lam
2b9b2b4a25 fix: column counts for other privileges 2022-03-17 13:38:40 -04:00
Julian Lam
cd687cff06 fix: #10393, move 'Create User' control to overflow menu 2022-03-15 13:57:09 -04:00
Barış Soner Uşaklı
7d063d731e fix: global privs 2022-03-11 23:42:06 -05:00
Barış Soner Uşaklı
be6bbabd0e feat: ability to mute users
new mute privilege
2022-03-11 23:07:20 -05:00
Barış Soner Uşaklı
3414a23bce feat: min:rep:upvote, and other limits similar to downvotes
closes #10380
2022-03-11 13:34:36 -05:00
gasoved
62187caa67 feat: post auto flagging on downvotes #10029 (#10367)
* feat: post auto flagging on downvotes

* fix: just get one admin
2022-03-04 15:38:16 -05:00
Barış Soner Uşaklı
6b22d0e15f fix: #10334, use the correct env vars for web install 2022-02-21 20:12:45 -05:00
Julian Lam
84dfda59e6 fix: #10144, automatically delete uploads from disk on post purge, ACP option to keep uploads on disk if desired 2022-02-14 15:02:07 -05:00
Julian Lam
ea27eaf166 feat: no more sending emails to banned users, + feature flag 2022-01-28 15:16:41 -05:00
Julian Lam
d91aeea3c3 feat: add ACP toggles for COEP and CORP headers 2022-01-21 16:47:55 -05:00
Barış Soner Uşaklı
d1eb21c56d fix: #10173, don't show optional message if email is required 2022-01-16 18:34:05 -05:00
Barış Soner Uşaklı
cc27a324b5 fix: notice links in subfolder installs 2021-12-30 23:06:43 -05:00
Barış Soner Uşaklı
10e890e41f fix: targetBlank/dropdown not getting cleared
show caret if nav item is dropdown
2021-12-13 16:24:17 -05:00
Barış Soner Uşaklı
69c96078ea breaking: #10077, store nav items in objects 2021-12-13 16:00:22 -05:00
Barış Soner Uşaklı
7aa85882d5 chore: right dropdown 2021-11-23 18:25:30 -05:00
Barış Soner Uşaklı
a998cc1c47 chore: right dropdown 2021-11-23 18:25:01 -05:00
Julian Lam
01bd8a8694 remove email only login (#10030)
* feat: remove ACP option for email-only logins

* feat: remove email-only login, upgrade script to fix config
2021-11-23 14:46:24 -05:00
Julian Lam
09e0c6d503 feat: add feature flag to disable verification emails, closes #9996 2021-11-12 14:58:56 -05:00
Julian Lam
1719bff89c feat: use auto-generated meta and link tags in ACP, closes #9991 2021-11-09 10:39:48 -05:00
Barış Soner Uşaklı
4b738c8cd3 refactor: cleanup info, better cpu usage % 2021-11-06 22:07:06 -04:00
Barış Soner Uşaklı
2e623dd271 feat: #9967, allow dropdowns in navigation 2021-11-03 16:01:32 -04:00
Barış Soner Uşaklı
b916e42f40 feat: show number of events per type in acp 2021-11-01 19:36:18 -04:00
Barış Soner Uşaklı
8c67031609 feat: show posts previews if enabled on mouse over 2021-11-01 15:09:05 -04:00
Barış Soner Uşaklı
c428ba80aa refactor: wider value field 2021-10-26 16:20:24 -04:00
Julian Lam
80ea12c1c1 feat: new ACP option emailPrompt
... which allows administrators to disable the client-side prompt to
encourage users to enter or confirm their email addresses
2021-10-26 14:28:42 -04:00
Barış Soner Uşaklı
f4cf482a87 feat: show popular searches 2021-10-25 16:26:50 -04:00
Barış Soner Uşaklı
f7967bdf68 feat: #8053, biweekly digest option 2021-10-18 20:10:14 -04:00
gasoved
3acaac4c7c fix: html attributes (#9877)
* fix: some empty xml tag bodies

* fix: missing/wrong attributing of label tags

* fix: attribute fixes

* fix: misassociated label

* fix: missing alt attributes

* fix: some more missing associated labels
2021-10-08 10:36:51 -04:00
Barış Soner Uşaklı
5aea6c6aa1 feat: #9855, allow uid for post queue notifications 2021-10-03 15:05:30 -04:00
Julian Lam
be43cd2597 Topic Linkbacks (#9825)
* feat: WIP topic linkbacks, + failing tests

* test: don't accidentally comment out all of the post tests

* fix: rename to "backlinks"

* feat: more stub code, more failing tests

* feat: backend methods and passing tests for topic backlinks

* test: uncomment test/posts.js again

* fix: missing quotation mark in topic event helper

* fix: superfluous usage of Promise.all

* test: fix broken test -- used hardcoded (and incorrect) url

* test: parseInt shenanigans
2021-09-29 12:26:15 -04:00
Julian Lam
a9645475fe feat: duplicate requireEmailAddress settings block to Settings > User 2021-09-24 10:34:13 -04:00
psychobunny
1ed62aa82f fix: missing microdata in category data 2021-09-20 23:03:24 -04:00
gasoved
84ff1152f7 feat: headers for global privs #9717 (#9762)
* feat: headers for global privs #9717

* fix: don't spoil headers to adminPrivs

Co-authored-by: Julian Lam <julian@nodebb.org>
2021-09-08 17:17:25 -04:00
Julian Lam
006fc700dd feat: add ACP option to require email address on new registration 2021-09-08 14:18:20 -04:00
Julian Lam
34afb74762 fix: browsers autocompleting smtp fields when they should not 2021-09-08 14:05:56 -04:00
psychobunny
bf0c02a71e feat: a slightly less ugly rewards panel 2021-09-07 11:49:43 -04:00
psychobunny
a7855c4cc4 fix: dashboard graph controls 2021-09-07 10:48:03 -04:00
gasoved
3df79683f5 feat: create folders in ACP uploads #9638 (#9750)
* feat: create folders in ACP uploads #9638

* fix: openapi

* test: missing tests

* fix: eslint

* fix: tests
2021-08-31 09:27:00 -04:00
gasoved
61f02f17d8 feat: column based view on wide priv. tables (#9699)
* feat: column based view on wide priv. tables

* fix: add group/user

* feat: copy buttons to work on visible privs

* feat: show what's being copied in modal

* feat: optional title and message for category selector modal
2021-08-30 10:42:58 -04:00
Barış Soner Uşaklı
794bf01b21 feat: allow changing default search in 2021-08-18 20:35:39 -04:00
opliko
093ac1c09a fix: remove unnecessary quote 2021-08-06 19:39:33 -04:00
opliko
41762e6603 feat: update to FontAwesome 5.15, resolve #6976 2021-08-06 19:39:33 -04:00
Julian Lam
824a72b220 fix: updated ACP > Manage > Users to handle users with no email address 2021-07-30 13:29:13 -04:00
Julian Lam
3bcd1f1438 fix: email validation flow, so that it actually works, fixed event logging bug, new email verification template 2021-07-30 13:29:13 -04:00
Julian Lam
f52919990b feat(emails): display current email in interstitial form 2021-07-30 13:29:13 -04:00