mirror of
https://github.com/arthur-pbty/gestion-perso.git
synced 2026-06-03 15:07:27 +02:00
add prefix
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
const { ButtonStyle, ButtonBuilder, ActionRowBuilder } = require('discord.js');
|
||||
const sqlite3 = require('sqlite3').verbose();
|
||||
require('dotenv').config();
|
||||
|
||||
module.exports = {
|
||||
name: 'setprefix',
|
||||
aliases: ['prefixset'],
|
||||
description: 'Changer le préfixe du bot.',
|
||||
emote: '⏱️',
|
||||
utilisation: 'setprefix',
|
||||
category: 'utils',
|
||||
|
||||
async execute(message, args, client) {
|
||||
if (args.length < 1) return message.reply('Veuillez entrer un préfixe.');
|
||||
|
||||
let db = new sqlite3.Database('db.db', sqlite3.OPEN_READWRITE, (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
});
|
||||
|
||||
db.run('INSERT OR REPLACE INTO prefix (serverID, prefix) VALUES (?, ?)', [message.guild.id, args[0]], (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
message.reply('Erreur lors de la modification du préfixe.');
|
||||
} else {
|
||||
message.reply(`Le préfixe a été modifié en ${args[0]}`);
|
||||
}
|
||||
});
|
||||
|
||||
db.close((err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
});
|
||||
},
|
||||
};
|
||||
@@ -1,11 +1,12 @@
|
||||
const { Events } = require("discord.js");
|
||||
const getServerPrefix = require("../fonctions/getServerPrefix");
|
||||
|
||||
module.exports = {
|
||||
name: Events.MessageCreate,
|
||||
async execute(message, client) {
|
||||
const prefix = "+";
|
||||
|
||||
if (message.author.bot) return;
|
||||
|
||||
const prefix = await getServerPrefix(message.guild.id);
|
||||
if (!message.content.startsWith(prefix)) return;
|
||||
|
||||
const args = message.content.slice(prefix.length).trim().split(/ +/);
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
const sqlite3 = require('sqlite3').verbose();
|
||||
require('dotenv').config();
|
||||
|
||||
function getServerPrefix(serverID) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let db = new sqlite3.Database('db.db', sqlite3.OPEN_READWRITE, (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
reject(err);
|
||||
}
|
||||
});
|
||||
|
||||
db.get('SELECT prefix FROM prefix WHERE serverID = ?', [serverID], (err, row) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
reject(err);
|
||||
}
|
||||
if (row) {
|
||||
resolve(row.prefix);
|
||||
} else {
|
||||
resolve(process.env.DEFAULT_PREFIX);
|
||||
}
|
||||
});
|
||||
|
||||
db.close((err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = getServerPrefix;
|
||||
@@ -0,0 +1,52 @@
|
||||
const sqlite3 = require('sqlite3').verbose();
|
||||
require('dotenv').config();
|
||||
|
||||
module.exports = function initDB() {
|
||||
let db = new sqlite3.Database('db.db', sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE, (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
console.log('Connected to the db.db database.');
|
||||
});
|
||||
|
||||
db.run(`PRAGMA foreign_keys = ON;`, (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
console.log('Foreign key constraint enabled');
|
||||
});
|
||||
|
||||
|
||||
db.run(`CREATE TABLE IF NOT EXISTS prefix(
|
||||
prefix TEXT NOT NULL DEFAULT '${process.env.DEFAULT_PREFIX}',
|
||||
serverID TEXT NOT NULL UNIQUE
|
||||
)`, (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
console.log('Created prefix table');
|
||||
});
|
||||
|
||||
db.run(`CREATE TABLE IF NOT EXISTS users(
|
||||
serverID TEXT NOT NULL,
|
||||
userID TEXT NOT NULL,
|
||||
coins INTEGER NOT NULL DEFAULT 0,
|
||||
bank INTEGER NOT NULL DEFAULT 0,
|
||||
xp INTEGER NOT NULL DEFAULT 0,
|
||||
levels INTEGER NOT NULL DEFAULT 0,
|
||||
messages INTEGER NOT NULL DEFAULT 0
|
||||
)`, (err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
console.log('Created users table');
|
||||
});
|
||||
|
||||
|
||||
db.close((err) => {
|
||||
if (err) {
|
||||
console.error(err.message);
|
||||
}
|
||||
console.log('Close the database connection.');
|
||||
});
|
||||
};
|
||||
+1
-1
@@ -12,4 +12,4 @@ module.exports = function run(token) {
|
||||
console.log(`${loadCommands(client, 'commands')} commands loaded`);
|
||||
|
||||
client.login(token);
|
||||
}
|
||||
};
|
||||
@@ -1,7 +1,10 @@
|
||||
require('dotenv').config()
|
||||
const run = require("./fonctions/run");
|
||||
const initDB = require("./fonctions/initDB");
|
||||
tokens = process.env.TOKENS.split(',')
|
||||
|
||||
initDB();
|
||||
|
||||
const runAsync = async () => {
|
||||
Promise.all(tokens.map(token => run(token)));
|
||||
};
|
||||
|
||||
Generated
+1334
-1
File diff suppressed because it is too large
Load Diff
+2
-1
@@ -18,6 +18,7 @@
|
||||
"homepage": "https://github.com/Tutur33/gestion-perso#readme",
|
||||
"dependencies": {
|
||||
"discord.js": "^14.14.1",
|
||||
"dotenv": "^16.4.5"
|
||||
"dotenv": "^16.4.5",
|
||||
"sqlite3": "^5.1.7"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user