aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSpp <spp@jorge.gr>2013-08-30 15:53:29 +0200
committerSpp <spp@jorge.gr>2013-08-30 15:53:29 +0200
commit109188a203d1745888596cac3bc78f1a057d934e (patch)
tree138ebbda031a4096bc3ffc954acf02b8c96d8753 /src
parent17e82480703ae8f2a7780e4c1319b81b14d1c8bf (diff)
Core/RBAC: Move account commands to RBAC (using individual permissions)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Accounts/RBAC.h13
-rw-r--r--src/server/scripts/Commands/cs_account.cpp36
2 files changed, 31 insertions, 18 deletions
diff --git a/src/server/game/Accounts/RBAC.h b/src/server/game/Accounts/RBAC.h
index 30902f944df..aa1fa70cc70 100644
--- a/src/server/game/Accounts/RBAC.h
+++ b/src/server/game/Accounts/RBAC.h
@@ -114,6 +114,19 @@ enum RBACPermissions
RBAC_PERM_COMMAND_RBAC_LIST_GROUPS = 214,
RBAC_PERM_COMMAND_RBAC_LIST_ROLES = 215,
RBAC_PERM_COMMAND_RBAC_LIST_PERMS = 216,
+ RBAC_PERM_COMMAND_ACCOUNT = 217,
+ RBAC_PERM_COMMAND_ACCOUNT_ADDON = 218,
+ RBAC_PERM_COMMAND_ACCOUNT_CREATE = 219,
+ RBAC_PERM_COMMAND_ACCOUNT_DELETE = 220,
+ RBAC_PERM_COMMAND_ACCOUNT_LOCK = 221,
+ RBAC_PERM_COMMAND_ACCOUNT_LOCK_COUNTRY = 222,
+ RBAC_PERM_COMMAND_ACCOUNT_LOCK_IP = 223,
+ RBAC_PERM_COMMAND_ACCOUNT_ONLINE_LIST = 224,
+ RBAC_PERM_COMMAND_ACCOUNT_PASSWORD = 225,
+ RBAC_PERM_COMMAND_ACCOUNT_SET = 226,
+ RBAC_PERM_COMMAND_ACCOUNT_SET_ADDON = 227,
+ RBAC_PERM_COMMAND_ACCOUNT_SET_GMLEVEL = 228,
+ RBAC_PERM_COMMAND_ACCOUNT_SET_PASSWORD = 229,
// custom permissions 1000+
RBAC_PERM_MAX
diff --git a/src/server/scripts/Commands/cs_account.cpp b/src/server/scripts/Commands/cs_account.cpp
index dcbc86b19c5..42e33faee1c 100644
--- a/src/server/scripts/Commands/cs_account.cpp
+++ b/src/server/scripts/Commands/cs_account.cpp
@@ -37,33 +37,33 @@ public:
{
static ChatCommand accountSetCommandTable[] =
{
- { "addon", RBAC_PERM_ADMINISTRATOR_COMMANDS, true, &HandleAccountSetAddonCommand, "", NULL },
- { "gmlevel", RBAC_PERM_CONSOLE_COMMANDS, true, &HandleAccountSetGmLevelCommand, "", NULL },
- { "password", RBAC_PERM_CONSOLE_COMMANDS, true, &HandleAccountSetPasswordCommand, "", NULL },
- { NULL, RBAC_PERM_PLAYER_COMMANDS, false, NULL, "", NULL }
+ { "addon", RBAC_PERM_COMMAND_ACCOUNT_SET_ADDON, true, &HandleAccountSetAddonCommand, "", NULL },
+ { "gmlevel", RBAC_PERM_COMMAND_ACCOUNT_SET_GMLEVEL, true, &HandleAccountSetGmLevelCommand, "", NULL },
+ { "password", RBAC_PERM_COMMAND_ACCOUNT_SET_PASSWORD, true, &HandleAccountSetPasswordCommand, "", NULL },
+ { NULL, 0, false, NULL, "", NULL }
};
static ChatCommand accountLockCommandTable[] =
{
- { "country", RBAC_PERM_PLAYER_COMMANDS, true, &HandleAccountLockCountryCommand, "", NULL },
- { "ip", RBAC_PERM_PLAYER_COMMANDS, true, &HandleAccountLockIpCommand, "", NULL },
- { NULL, RBAC_PERM_PLAYER_COMMANDS, false, NULL, "", NULL },
+ { "country", RBAC_PERM_COMMAND_ACCOUNT_LOCK_COUNTRY, true, &HandleAccountLockCountryCommand, "", NULL },
+ { "ip", RBAC_PERM_COMMAND_ACCOUNT_LOCK_IP, true, &HandleAccountLockIpCommand, "", NULL },
+ { NULL, 0, false, NULL, "", NULL }
};
static ChatCommand accountCommandTable[] =
{
- { "addon", RBAC_PERM_MODERATOR_COMMANDS, false, &HandleAccountAddonCommand, "", NULL },
- { "create", RBAC_PERM_CONSOLE_COMMANDS, true, &HandleAccountCreateCommand, "", NULL },
- { "delete", RBAC_PERM_CONSOLE_COMMANDS, true, &HandleAccountDeleteCommand, "", NULL },
- { "onlinelist", RBAC_PERM_CONSOLE_COMMANDS, true, &HandleAccountOnlineListCommand, "", NULL },
- { "lock", RBAC_PERM_PLAYER_COMMANDS, false, NULL, "", accountLockCommandTable },
- { "set", RBAC_PERM_ADMINISTRATOR_COMMANDS, true, NULL, "", accountSetCommandTable },
- { "password", RBAC_PERM_PLAYER_COMMANDS, false, &HandleAccountPasswordCommand, "", NULL },
- { "", RBAC_PERM_PLAYER_COMMANDS, false, &HandleAccountCommand, "", NULL },
- { NULL, RBAC_PERM_PLAYER_COMMANDS, false, NULL, "", NULL }
+ { "addon", RBAC_PERM_COMMAND_ACCOUNT_ADDON, false, &HandleAccountAddonCommand, "", NULL },
+ { "create", RBAC_PERM_COMMAND_ACCOUNT_CREATE, true, &HandleAccountCreateCommand, "", NULL },
+ { "delete", RBAC_PERM_COMMAND_ACCOUNT_DELETE, true, &HandleAccountDeleteCommand, "", NULL },
+ { "onlinelist", RBAC_PERM_COMMAND_ACCOUNT_ONLINE_LIST, true, &HandleAccountOnlineListCommand, "", NULL },
+ { "lock", RBAC_PERM_COMMAND_ACCOUNT_LOCK, false, NULL, "", accountLockCommandTable },
+ { "set", RBAC_PERM_COMMAND_ACCOUNT_SET, true, NULL, "", accountSetCommandTable },
+ { "password", RBAC_PERM_COMMAND_ACCOUNT_PASSWORD, false, &HandleAccountPasswordCommand, "", NULL },
+ { "", RBAC_PERM_COMMAND_ACCOUNT, false, &HandleAccountCommand, "", NULL },
+ { NULL, 0, false, NULL, "", NULL }
};
static ChatCommand commandTable[] =
{
- { "account", RBAC_PERM_PLAYER_COMMANDS, true, NULL, "", accountCommandTable },
- { NULL, RBAC_PERM_PLAYER_COMMANDS, false, NULL, "", NULL }
+ { "account", RBAC_PERM_COMMAND_ACCOUNT, true, NULL, "", accountCommandTable },
+ { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}