749 Commits (546f58bf1ff0328ed2df1af5bb2aa7386b679d88)

Author SHA1 Message Date
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
5 years ago
Julian Lam f1de084da3 fix: do not show TOC if fewer than 2 headings 5 years ago
Peter Jaszkowiak 55d5cccf2e
Document deprecations and remove old ones (#8706)
* chore: document deprecation removal versions

* chore: remove deprecations 2+ versions old
5 years ago
psychobunny 1761e13dbd feat: dedicated sorting buttons for plugin ordering in ACP 5 years ago
psychobunny 6478b32d0e feat: upload maskable icon for PWA 5 years ago
Julian Lam 43571bac38 feat: hotkey "/" to open ACP search 5 years ago
Julian Lam 763cec31bd feat: ctr-s for save on privileges page too 5 years ago
Julian Lam 8093142340 feat: ctrl-s now saves on settingsv1/v2 forms
... because nobody ever uses ctrl-s on a browser window.
5 years ago
Barış Soner Uşaklı 5f10d67db5
Remove sounds (#8617)
* feat: remove sounds

* feat: remove more sounds

* feat: disable sounds plugin

* fix: openapi
5 years ago
Barış Soner Uşaklı 19c448612d feat: remove global RELATIVE_PATH 5 years ago
Barış Soner Uşaklı fddeb5c0f8 feat: remove app.isConnected, use socket.connected 5 years ago
Peter Jaszkowiak 64a457a441
fix(bug): #8611, custom route logic corrected (#8612) 5 years ago
Julian Lam c681b4b2e0 fix: ip-blacklist not working after #8580 5 years ago
Julian Lam dc5bd7601f fix: post-queue not working after #8580 5 years ago
Julian Lam 9cbe9389f5 fix: use promises in privilege save
... instead of jQuery Deferreds
5 years ago
Barış Soner Uşaklı 4216c277d5 feat: focus username when modal is shown 5 years ago
Julian Lam 2ee6248316 refactor: for codeclimate 5 years ago
Julian Lam a7071bb808 fix: map instead of forEach in privileges save 5 years ago
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
5 years ago
Barış Soner Uşaklı e7a502e0aa feat: add ability to search groups in group details page 5 years ago
Barış Soner Uşaklı 9e80a9efdd fix: #8534, dont show modal on search 5 years ago
Barış Soner Uşaklı fb7bb8d400 feat: use category selector in category page
fix privilege shortcuts in group page after search
5 years ago
Barış Soner Uşaklı 91411cc47c feat: add privileges shortcut to groups list
fix issues with escape group names
5 years ago
Barış Soner Uşaklı bbc7737e14 feat: ability to clear cache from acp 5 years ago
Barış Soner Uşaklı 8d8117ffa1 feat: reduce amount of data loaded on acp admin page
get rid of socket call and use ajaxify.data.categories
5 years ago
Julian Lam 8473e165a6 fix: too small sortable handle for ACP>Manage>Categories
The handle was initially just the icon, but now it is the icon
and the category label itself.
5 years ago
Barış Soner Uşaklı 24535a62e7 feat: make category tools in acp a dropdown
add view category, view privileges into dropdown
5 years ago
psychobunny bc26883aed refactor: setting codeclimate to A 5 years ago
psychobunny a6ae69737b Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
psychobunny 10e4ae629c feat: highlight privs row if group is added / navigating from group page 5 years ago
psychobunny 53f6139b8c feat: prevent navigation away from groups page if changes are unsaved 5 years ago
psychobunny 2c83278f97 feat: quick access dropdown on groups page to access privileges page 5 years ago
Barış Soner Uşaklı 844f2b4ed0 feat: #8524, allow editing category of queued topic 5 years ago
Barış Soner Uşaklı 2485a55092 feat: #8521, allow editing title before posting from queue 5 years ago
Barış Soner Uşaklı 1e7397b1b8 feat: allow searching categories in ACP 5 years ago
Barış Soner Uşaklı 00d39fb32c feat: #8460, export groups members as csv 5 years ago
Barış Soner Uşaklı 3dcf538773 feat: #8023, allow wildcard search for uid/email 5 years ago
Barış Soner Uşaklı 4adbf87c6c feat: warn user if whitelisted tags are less than minTags 5 years ago
Julian Lam f3441fce4f fix: admin privileges client-side regression 5 years ago
Barış Soner Uşaklı 2355d9d5dd fix: escape navigation item fields, theme:id, category fields 5 years ago
Barış Soner Uşaklı ed4b5caf2c fix: copy settings showing empty category selection 5 years ago
Julian Lam 2515aa77ba fix: bug where category privs page thought it was on admin 5 years ago
Barış Soner Uşaklı 8591f5d2cc fix: return false 5 years ago
Julian Lam 67aca822e6 feat: account content deletion, closes #8381 5 years ago
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 afdb235f48eb0072d88de45f3a1e0151281095b3.

* 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
5 years ago
Barış Soner Uşaklı 30cc83c033 fix: #8374, revert event delete 5 years ago
Julian Lam 922d49be0b fix(style): switch..case 5 years ago
Julian Lam a51fff8bd1
refactor: remove general menu from ACP (#8347)
* refactor: remove general menu from ACP

* fix: incorrect translation keys, fixed tests
5 years ago
Barış Soner Uşaklı 5781a2dc65
feat: fix session mismatch errors by clearing cookie on logout (#8338)
* feat: fix session mismatch errors by clearing cookie on logout

* feat: remove app.upateHeader

ported from 2.0

* feat: handle if user doesn't click button and just refreshes page
5 years ago
Opliko 4855f1deca
fix:#8274 Don't escape HTML in manage users (#8275)
Perhaps the HTML for managing groups should ba actually rendered as HTML to serve its function. fixes #8274
5 years ago
Julian Lam 1b425ef108 fix: no focus on find user modal 5 years ago
Julian Lam bcbf98aa4c fix: accidental fp precision on flag and acp dash graphs 5 years ago
Barış Soner Uşaklı 080317300a fix: #8221, fix parent selection 5 years ago
Barış Soner Uşaklı 2f9c7c626f fix: #8203, fix user invites refreshing page 5 years ago
Barış Soner Uşaklı bc93b5676c fix: #8175 5 years ago
Julian Lam 14655f8745 fix: no decimal places for category analytics 5 years ago
yossizahn 09d55581d8 Fix: ACP > manage > group: save disableLeave (#8123)
* Fix: ACP > manage > group: save disableLeave

* Fix eslint comma-dangle
5 years ago
Opliko 879acc85ae Add disable/enable category to category edit page (#8118) 5 years ago
Barış Soner Uşaklı 5a8217de01 fix: #8105, fix export json on page load 5 years ago
Barış Soner Uşaklı c1b1ee61f3 fix: create user modal instantly closing 6 years ago
Barış Soner Uşaklı 05c9fe2735 feat: #5272, allow changing user groups from manage users page 6 years ago
Baris Usakli c2cd7de891 fix: #8069, dont show hidden groups in search 6 years ago
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
6 years ago
Baris Usakli 554e67116f feat: remove ability to delete events from acp 6 years ago
Baris Usakli 5b458fc7ca fix: #7953, allow icon only group badges 6 years ago
Barış Soner Uşaklı c5f7b66c3a fix: new nav items will show group select 6 years ago
Barış Soner Uşaklı b19f0a686c fix: 404 on new groups with spaces 6 years ago
Barış Soner Uşaklı 2444ed5c88 feat: #7932, redirect to group details after creation
add private/hidden on group creation modal
6 years ago
Barış Soner Uşaklı 1789ecb45c feat: increase search timeouts 6 years ago
Barış Soner Uşaklı 6f375482a0 refactor: async/await admin/controllers 6 years ago
Julian Lam a0c0ef1ba4
feat: ACP analytics API route (#7725)
* feat: added API route for retrieving analytics via REST API

* feat: sets is now optional, can pass in multiple sets

* fix: moved expand and added json button to panel header

* fix: matching api params to socket method

* fix: update json api button url on graph change

* fix: updated default counts based on passed in units
6 years ago
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
6 years ago
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
6 years ago
Barış Soner Uşaklı 035f624758
Remove implicit mod privs. closes #6345 (#7648)
* feat: add upgrade script to give mods privs

* feat: give all privileges when making a moderator

* feat: remove implicit privs

* feat: give global mods default privs

* feat: more priv fixes

* feat: use lodash

* fix: remove implicit mod priv from topic delete

* fix: more privs

* fix: posts.canEdit

* fix: canDelete and canEdit

* fix: tests, remove console.log

* feat: shorter functions

* feat: add tests

* fix: uids

* fix: redis random test fail
6 years ago
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
6 years ago
Julian Lam c38db4f765 feat: #7515
This reverts commit 81f8cfe3da.
6 years ago
Barış Soner Uşaklı 81f8cfe3da Revert "feat: #7515"
This reverts commit ac889db16b.
6 years ago
Barış Soner Uşaklı ac889db16b feat: #7515 6 years ago
Barış Soner Uşaklı 2ee2cd528f feat: #7501 6 years ago
Barış Soner Uşaklı 1f3554ff00 fix: #7503 6 years ago
Andrew Rodrigues 24dcae2193 feat: manual password expiry. closes #7471 6 years ago
Julian Lam c289b904e6 fix: #7473 6 years ago
Andrew Rodrigues dcdd41c7ce fix: #7454 6 years ago
Baris Usakli 7211dde7b9 feat: #7358 6 years ago
Barış Soner Uşaklı d5ece9a4c3 fix: don't refresh page when enabling/disabling categories 6 years ago
Julian Lam e8f3c25676 fix: re-introducing indeterminate checkbox state to ACP privs 6 years ago
Julian Lam 0fffcb3855 fix: #7231, missing success alert on group name change in ACP 6 years ago
Barış Soner Uşaklı 5353960ae7 fix: #7316 6 years ago
Barış Soner Uşaklı ac655564bb fix: post queue notifs
fix moderators not showing up immediately when adding them
6 years ago
Barış Soner Uşaklı 28459d04c6 fix: #7187 7 years ago
Baris Usakli b47f939bfc fix: lint 7 years ago
Baris Usakli 0c1ac4d6a2 feat: #7032 7 years ago
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
7 years ago
Peter Jaszkowiak ba619c7ec8 style(eslint): match operator-linebreak preferences 7 years ago
Barış Soner Uşaklı 33986f38e3 closes #6954 7 years ago
Barış Soner Uşaklı de14102ee7 Merge branch 'master' of https://github.com/NodeBB/NodeBB 7 years ago
Barış Soner Uşaklı d9452bf3d4 fix: custom navigation item not showing groups 7 years ago
Julian Lam b3f96d28aa fix(acp): hard-to-discover dropdown selector in ACP
Made the dropdown an MDL button fab with better positioning via
a p.lead so that it is more easily discoverable and obvious that
it is a button that can be pressed.

Fixes #6899
7 years ago
Barış Soner Uşaklı b6771836cf closes #6937 7 years ago
Julian Lam f7bd398eb1 style(eslint): newlines in public/src as well 7 years ago