Commit Graph

211 Commits

Author SHA1 Message Date
Julian Lam
4dc6e64a94 refactor: ip-blacklist and post-queue language files
closes #8411
2020-08-26 10:56:06 -04:00
Kyle Farris
2b785628e7 fix: removed invalid options for the sendmail transport (#8576)
* Removed invalid options for the sendmail transport that were causing Nodemailer to return the SMTPTransport instead.

* Removed options for rate limiting in admin email interface. Added new option for toggling whether to use pooled connections.
2020-08-26 10:46:59 -04:00
Julian Lam
334be11382 fix: no-widgets messaging in ACP + copy 2020-08-18 21:39:10 -04:00
Julian Lam
a716a5529c feat: more discrete commit-on-save instead of commit-on-change w/ confirm modals (#8541)
* feat: privileges save button, #8537, WIP

* fix: disable firefox autocomplete on privilege form fields

* feat: closes #8537 privilege changes commit on save

- new language strings for confirmation and success modals/toasts
- indeterminate privilege handling (/cc @psychobunny)
- added new discard button
- both discard and save buttons now have confirmation dialogs

* fix(tests): remove duplicate template helper test

* fix(tests): broken template helper test

* feat: confirm dialogs for all privilege copy actions

Also, ability to add user to a privilege table without needing
to refresh the privilege table.

* feat: group row addition w/o table refresh

breaking: helpers.getUserPrivileges and helpers.getGroupPrivileges
no longer make socket calls to the following hooks:

- filter:privileges.list, filter:privileges.admin.list,
  filter:privileges.global.list, filter:privileges.groups.list,
  filter:privileges.admin.groups.list,
  filter:privileges.gloval.groups.list

The filters are still called, but done before the helper method
is called, and the results are passed in instead. This change
should only affect you if you directly call the helper methods,
otherwise the change is transparent.

* fix: stale ajaxify data on privilege category switch

* fix: implicit privileges not showing for user privs

* fix: groups, not group, also fix tests

* fix(tests): again

* fix: wrong tpl rendered when adding group to global priv table
2020-08-03 20:42:45 -04:00
Barış Soner Uşaklı
91411cc47c feat: add privileges shortcut to groups list
fix issues with escape group names
2020-07-30 12:26:37 -04:00
Barış Soner Uşaklı
fd4c3cda42 fix: #4695, remove new notif alert 2020-07-27 21:34:21 -04:00
Barış Soner Uşaklı
24535a62e7 feat: make category tools in acp a dropdown
add view category, view privileges into dropdown
2020-07-27 12:39:32 -04:00
Barış Soner Uşaklı
23a9a334cd feat: short more info 2020-07-21 18:08:53 -04:00
Barış Soner Uşaklı
1e7397b1b8 feat: allow searching categories in ACP 2020-07-20 13:17:08 -04:00
psychobunny
06143ca7d7 feat: added quick link to edit privileges on the category edit page 2020-07-17 16:27:47 -04:00
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
2020-07-15 17:10:49 -04:00
Barış Soner Uşaklı
00d39fb32c feat: #8460, export groups members as csv 2020-07-10 13:12:14 -04:00
Barış Soner Uşaklı
3dcf538773 feat: #8023, allow wildcard search for uid/email 2020-07-09 23:57:54 -04:00
Barış Soner Uşaklı
c513b88dff feat: #8427, daily downvote limits 2020-07-09 12:51:05 -04:00
Barış Soner Uşaklı
4adbf87c6c feat: warn user if whitelisted tags are less than minTags 2020-07-08 21:36:48 -04:00
Barış Soner Uşaklı
e09ab3dc19 feat: closes #8440, allow configuring max topic count 2020-06-27 18:11:27 -04:00
Barış Soner Uşaklı
bffb830d87 feat: add missing translation key 2020-06-24 16:20:50 -04:00
Barış Soner Uşaklı
a255c8f6fd fix: language 2020-06-09 11:44:04 -04:00
Julian Lam
67aca822e6 feat: account content deletion, closes #8381 2020-06-08 08:43:31 -04:00
Julian Lam
a82e9bd7f6 feat: privileges for Admin Control Panel (#8355)
* feat: acp privileges (WIP)

* fix: restore global privilege hooks

* refactor: using cid 0 in admin privs

* fix: no need for zebrastripe-reset

* feat: manage:categories privilege WIP

* feat: renamed prefix to admin:, settigns and dashboard privs

* fix: nofocus on acp privs group find modal

* refactor: privileges.x.get() to not used hardcoded privs

* fix: crash if unable to get latest version

* feat: setting acp priv

* Revert "fix: crash if unable to get latest version"

This reverts commit afdb235f48.

* feat: user/privilege acp privs

* fix: category selector in manage/privileges

* fix: guests potentially becoming admins

* fix: bug in setting admin privs

* fix: some last minute things + api docs

* fix: some more last minute fixes
2020-06-05 15:26:51 -04:00
Barış Soner Uşaklı
30cc83c033 fix: #8374, revert event delete 2020-06-05 12:56:20 -04:00
Julian Lam
260a482caa fix: remove duplicate link to manage/tags in settings/tags 2020-06-05 10:27:07 -04:00
Julian Lam
0633ad3277 fix: acp menu items
- Shuffled items in settings
- Moved post-queue and ip-blacklist to front-end
- Removed Settings > Sockets, merged with Settings > Advanced
2020-05-29 16:42:09 -04:00
Julian Lam
a83f4259e8 fix: re-jigged tags acp pages 2020-05-29 15:28:34 -04:00
Julian Lam
a51fff8bd1 refactor: remove general menu from ACP (#8347)
* refactor: remove general menu from ACP

* fix: incorrect translation keys, fixed tests
2020-05-29 09:59:22 -04:00
Ali Cihan
256ee45d37 typo (#8334) 2020-05-26 08:09:42 -04:00
Barış Soner Uşaklı
2d07634494 fix: #8283, update gdpr link again 2020-05-02 13:47:49 -04:00
Barış Soner Uşaklı
17d664e098 fix: #8283, point to official site 2020-04-30 13:22:16 -04:00
Opliko
6e5ebb6184 feat: manifest.json improvements from #8126 (#8264)
* feat: manifest.json improvements from #8126

* Fix short title placeholder

* use lowercase letters for hex colors
2020-04-19 13:32:49 -04:00
Barış Soner Uşaklı
0b5fac75b0 fix: #8217, add missing lang key 2020-03-19 10:03:46 -04:00
psychobunny
b67af70da4 fix: hsts max-age missing translation 2020-03-05 13:59:10 -05:00
Barış Soner Uşaklı
5e91a67e78 feat: add user ip to admin/dev/info 2020-03-02 11:18:15 -05:00
Barış Soner Uşaklı
326367556f fix: tag key 2020-02-22 21:16:51 -05:00
Barış Soner Uşaklı
05c9fe2735 feat: #5272, allow changing user groups from manage users page 2019-12-04 11:14:01 -05:00
Baris Usakli
4d66978338 fix: #8073, configurable necroThreshold 2019-12-03 12:11:39 -05:00
Julian Lam
645d647248 feat: wip, better digest handling (+ eventual digest resend logic) (#7995)
* feat: wip, better digest handling (+ eventual digest resend logic)

- await emailer.send call in digest.send method
- save send success to a new sorted set digest:{interval}:byUid

* feat: continuing work on digest tools

- Added ACP page to view digest settings and delivery times per user

* feat: added paginator and stub buttons for resending digest

* feat: wrapping up digest revamp

- New language strings in ACP digest page
- Client-side ACP script for digest ACP page
- Websocket call for ACP page to execute digests
- Broke out logic to retrieve user digest settings to getUsersInterval

* fix: minor cleanup

* fix: #8010 and some style suggestions from baris

* fix: resolve confusing comment
2019-11-02 13:11:02 -04:00
Barış Soner Uşaklı
1cedc4a0d6 feat: #7957, allow post queue based on group
allow multiple select in ACP pages
2019-10-28 14:36:14 -04:00
Baris Usakli
990508a533 feat: closes #7952, translate widget-settings 2019-10-11 11:51:24 -04:00
Baris Usakli
554e67116f feat: remove ability to delete events from acp 2019-10-11 11:32:11 -04:00
Julian Lam
54c9f877a6 fix: #7935, ACP digest wording 2019-10-01 16:39:21 -04:00
Barış Soner Uşaklı
5b8550f060 fix: time cutoff and lang string 2019-09-20 23:03:31 -04:00
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
2019-09-17 14:02:52 -04:00
Julian Lam
1796b65d34 feat: option to restrict group leaving, closes #7770 2019-09-05 12:01:42 -04:00
Barış Soner Uşaklı
3ff6e1bb64 feat: dashboard stats
show
yesterday/today
lastweek/this week
lastmonth/this month
2019-08-21 00:25:38 -04:00
Barış Soner Uşaklı
47e30a67be feat: move group privs above user, add labels 2019-07-30 17:46:18 -04:00
Barış Soner Uşaklı
6a289fbac9 fix: #7789 2019-07-29 18:26:29 -04:00
Julian Lam
8a6a58ee43 feat: added new admin option newbiePostEditDuration (#7737)
* feat: added new admin option newbiePostEditDuration

Also:
  - Grammar-checked a couple language strings
  - Moved a couple form inputs around in new user restrictions
  - Added a test for the new option
  - fix: 'defore' typo
2019-07-04 13:28:36 -04:00
Barış Soner Uşaklı
25ea634787 fix: #7659 add option to change cookie link url 2019-06-13 11:54:39 -04:00
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
2019-06-07 14:10:44 -04:00
Julian Lam
c7f95ccecc feat: design revamp of ACP events page (#7664)
* feat: design revamp of ACP events page

- minor UX changes
- new filter controls, filters moved to sidebar
- form usable without js
- start/end filters NOT programmed yet

* feat: events ACP limit by date and perPage

* feat: pre-fill applied filters on template render

* fix: missing translation for ACP events perPage filter

* fix: added some comments to explain setHours behaviour

* fix: stop - start + 1

* fix: socket tests

* fix: +inf, not just inf

* fix: tests, because I am an idiot
2019-06-04 17:25:09 -04:00