Add subcommand property to determine if ignored users can run the command
This commit is contained in:
parent
b301cefcae
commit
2a79b41ad0
1 changed files with 9 additions and 3 deletions
|
|
@ -27,6 +27,7 @@ interface subcommandMetadata {
|
||||||
|
|
||||||
const subcommands: {[index: string]: any} = {
|
const subcommands: {[index: string]: any} = {
|
||||||
"add": {
|
"add": {
|
||||||
|
allowIgnored: false,
|
||||||
argc: 1,
|
argc: 1,
|
||||||
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
||||||
// args: !cmd add <counter:string> [delta:integer]
|
// args: !cmd add <counter:string> [delta:integer]
|
||||||
|
|
@ -44,9 +45,10 @@ const subcommands: {[index: string]: any} = {
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"sub": { argc: 1, handler: subtractHandler, },
|
"sub": { allowIgnored: false, argc: 1, handler: subtractHandler, },
|
||||||
"remove": { argc: 1, handler: subtractHandler, },
|
"remove": { allowIgnored: false, argc: 1, handler: subtractHandler, },
|
||||||
"new": {
|
"new": {
|
||||||
|
allowIgnored: false,
|
||||||
argc: 1,
|
argc: 1,
|
||||||
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
||||||
// args: !cmd new <counter:string>
|
// args: !cmd new <counter:string>
|
||||||
|
|
@ -60,6 +62,7 @@ const subcommands: {[index: string]: any} = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"get": {
|
"get": {
|
||||||
|
allowIgnored: true,
|
||||||
argc: 1,
|
argc: 1,
|
||||||
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
||||||
const { channel } = meta;
|
const { channel } = meta;
|
||||||
|
|
@ -79,6 +82,7 @@ const subcommands: {[index: string]: any} = {
|
||||||
},
|
},
|
||||||
"default": {
|
"default": {
|
||||||
argc: 0,
|
argc: 0,
|
||||||
|
allowIgnored: false,
|
||||||
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
async handler(request: Request, meta: subcommandMetadata, args: string[]) {
|
||||||
// args: !cmd <counter:string> [delta:number]
|
// args: !cmd <counter:string> [delta:number]
|
||||||
let { channel } = meta;
|
let { channel } = meta;
|
||||||
|
|
@ -133,7 +137,9 @@ const route: ServerRoute = {
|
||||||
return `The channel isn't setup to use the counter system`;
|
return `The channel isn't setup to use the counter system`;
|
||||||
};
|
};
|
||||||
|
|
||||||
if (await database.isUserIgnored(channel, user)) { return `Invalid permissions`; };
|
if (!sc.allowIgnored && await database.isUserIgnored(channel, user)) {
|
||||||
|
return `Invalid permission`;
|
||||||
|
};
|
||||||
|
|
||||||
try {
|
try {
|
||||||
var { message, value } = await sc.handler(
|
var { message, value } = await sc.handler(
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue