mirror of https://github.com/thaldrin/thaldrin.git
add command lock feature
This commit is contained in:
parent
25d452293d
commit
070fdabb82
|
@ -4,7 +4,7 @@ import Logger from "../utils/logger";
|
||||||
import supabase from "../utils/database";
|
import supabase from "../utils/database";
|
||||||
import { Server, Usage } from "../utils/types";
|
import { Server, Usage } from "../utils/types";
|
||||||
import config from "../../config";
|
import config from "../../config";
|
||||||
import { Shortlink, SourceFinder } from "../utils/wrapper.features";
|
import { Commands, Shortlink, SourceFinder } from "../utils/wrapper.features";
|
||||||
|
|
||||||
export = {
|
export = {
|
||||||
name: "message",
|
name: "message",
|
||||||
|
@ -32,9 +32,12 @@ export = {
|
||||||
// ? Get Server Config
|
// ? Get Server Config
|
||||||
let { data: server_data, error: server_error } = await supabase.from<Server>("servers").select().eq(`server_id`, message.guild.id).limit(1)
|
let { data: server_data, error: server_error } = await supabase.from<Server>("servers").select().eq(`server_id`, message.guild.id).limit(1)
|
||||||
|
|
||||||
// ? Check if Message includes shortlinks
|
// ? Check if Message includes Shortlinks
|
||||||
await Shortlink(message, server_data[0].shortlinks)
|
await Shortlink(message, server_data[0].shortlinks)
|
||||||
|
// ? Check if Message includes E621 Image Links
|
||||||
await SourceFinder(message, server_data[0].sourcefinder)
|
await SourceFinder(message, server_data[0].sourcefinder)
|
||||||
|
// ? Check if Channel Topic allows Commands
|
||||||
|
if (await Commands(message)) return;
|
||||||
|
|
||||||
// ! Prefix
|
// ! Prefix
|
||||||
let PrefixArray: string[] = [...config.variables.prefix, [(server_data[0].prefix ? server_data[0].prefix : [])]].flat(Infinity)
|
let PrefixArray: string[] = [...config.variables.prefix, [(server_data[0].prefix ? server_data[0].prefix : [])]].flat(Infinity)
|
||||||
|
|
|
@ -8,9 +8,9 @@ const sourcefinder = new Sourcefinder(`Thaldrin/v${config.pkg.version} (t8.pm/bo
|
||||||
|
|
||||||
let SL = /(nosl|no-?short(link(s|ing)?)?)/gmi
|
let SL = /(nosl|no-?short(link(s|ing)?)?)/gmi
|
||||||
let SF = /(nosf|no-?source(find(er|ing)?)?)/gmi
|
let SF = /(nosf|no-?source(find(er|ing)?)?)/gmi
|
||||||
|
let CMD = /(nocmd|no-?command(s)?)/gmi
|
||||||
|
|
||||||
|
function disabled(message: Message, feature: "sf" | "sl" | "cmd") {
|
||||||
function disabled(message: Message, feature: "sf" | "sl") {
|
|
||||||
|
|
||||||
switch (feature) {
|
switch (feature) {
|
||||||
case 'sl':
|
case 'sl':
|
||||||
|
@ -19,6 +19,9 @@ function disabled(message: Message, feature: "sf" | "sl") {
|
||||||
case 'sf':
|
case 'sf':
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
return SF.test((message.channel as TextChannel).topic)
|
return SF.test((message.channel as TextChannel).topic)
|
||||||
|
case 'cmd':
|
||||||
|
// @ts-ignore
|
||||||
|
return CMD.test((message.channel as TextChannel).topic)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new Error("No Feature was defined.")
|
throw new Error("No Feature was defined.")
|
||||||
|
@ -43,4 +46,8 @@ export async function SourceFinder(message: Message, setting: boolean) {
|
||||||
let sources = await sourcefinder.find(message.content)
|
let sources = await sourcefinder.find(message.content)
|
||||||
if (!sources) return;
|
if (!sources) return;
|
||||||
return message.channel.send(sources?.join('\n'))
|
return message.channel.send(sources?.join('\n'))
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function Commands(message: Message) {
|
||||||
|
return disabled(message, "cmd")
|
||||||
}
|
}
|
Loading…
Reference in New Issue