{"action":"created","issue":{"url":"https://api.github.com/repos/NodeBB/NodeBB/issues/3914","repository_url":"https://api.github.com/repos/NodeBB/NodeBB","labels_url":"https://api.github.com/repos/NodeBB/NodeBB/issues/3914/labels{/name}","comments_url":"https://api.github.com/repos/NodeBB/NodeBB/issues/3914/comments","events_url":"https://api.github.com/repos/NodeBB/NodeBB/issues/3914/events","html_url":"https://github.com/NodeBB/NodeBB/issues/3914","id":119405730,"number":3914,"title":"Moderation Permission Changes","user":{"login":"Ktar5","id":1613876,"avatar_url":"https://avatars.githubusercontent.com/u/1613876?v=3","gravatar_id":"","url":"https://api.github.com/users/Ktar5","html_url":"https://github.com/Ktar5","followers_url":"https://api.github.com/users/Ktar5/followers","following_url":"https://api.github.com/users/Ktar5/following{/other_user}","gists_url":"https://api.github.com/users/Ktar5/gists{/gist_id}","starred_url":"https://api.github.com/users/Ktar5/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ktar5/subscriptions","organizations_url":"https://api.github.com/users/Ktar5/orgs","repos_url":"https://api.github.com/users/Ktar5/repos","events_url":"https://api.github.com/users/Ktar5/events{/privacy}","received_events_url":"https://api.github.com/users/Ktar5/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":13,"created_at":"2015-11-30T02:00:53Z","updated_at":"2016-03-11T17:19:10Z","closed_at":null,"body":"# Intro\r\nNot *too* long ago, I created a basic issue about the current permissions system in NodeBB and what I would like improved in it. ( #2462 ) Some of it *did* in fact get implemented, but there's more that desperately needs to be done to turn this into a major player in the forums board industries. Here are my few troubles/wishes for NodeBB's permission system. The ideas I propose would launch NodeBB, in this aspect, far ahead of it's competition (Discourse, Flarum, esoTalk)\r\n\r\n# Why Change?\r\nAs far as permissions for staff on NodeBB go, we currently only get two options:\r\n- Admin: Do everything, everywhere, always, +management panel\r\n- Moderator: Do everything, where specified, always.\r\n\r\nIn this current system, I'm expected to trust the absolute lowest staff member on my forums with the ability to unstick/stick, delete/undelete, edit, and move ANY TOPIC/COMMENT where they have the moderator permission in that category. This is extremely annoying for me, as I find it hard to give that much power to an untrusted individual. You may say *\"Why are you giving those permissions to someone who you don't trust?\"*, and my answer to that is: because I need moderators, and I can't take the time to trust each and every moderator on a personal level, and if they decide to do stupid things, the effort it would take to revert their changes is absurdly high.\r\n\r\n\r\n# Proposition\r\n- Assign groups a rank hierarchy index\r\n  - As an example, an admin would have index 0, meaning no one is higher than them\r\n  - One of my moderator groups could have an index of 3, which means index's <3 are higher, and >3 are lower\r\n- Split moderator permissions up into more nodes (heh)\r\n  - Change from \"moderate\" permission node to splitting it into separate \"*actions*\"\r\n    - Delete / Undelete\r\n    - Sticky / Unstick\r\n    - Move topic\r\n    - Edit topic\r\n    - Etc (ban user, mute user from posting for a time, spy in conversations, and more)\r\n  - Each \"*action*\" be split up into 3 nodes\r\n    - Can do action to those of higher index\r\n    - Can do action to those of equal index\r\n    - Can do action to those of lower index"},"comment":{"url":"https://api.github.com/repos/NodeBB/NodeBB/issues/comments/195462883","html_url":"https://github.com/NodeBB/NodeBB/issues/3914#issuecomment-195462883","issue_url":"https://api.github.com/repos/NodeBB/NodeBB/issues/3914","id":195462883,"user":{"login":"Dynosore","id":8236819,"avatar_url":"https://avatars.githubusercontent.com/u/8236819?v=3","gravatar_id":"","url":"https://api.github.com/users/Dynosore","html_url":"https://github.com/Dynosore","followers_url":"https://api.github.com/users/Dynosore/followers","following_url":"https://api.github.com/users/Dynosore/following{/other_user}","gists_url":"https://api.github.com/users/Dynosore/gists{/gist_id}","starred_url":"https://api.github.com/users/Dynosore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dynosore/subscriptions","organizations_url":"https://api.github.com/users/Dynosore/orgs","repos_url":"https://api.github.com/users/Dynosore/repos","events_url":"https://api.github.com/users/Dynosore/events{/privacy}","received_events_url":"https://api.github.com/users/Dynosore/received_events","type":"User","site_admin":false},"created_at":"2016-03-11T17:19:10Z","updated_at":"2016-03-11T17:19:10Z","body":":+1: NodeBB needs fine-grained access permissions."}}