From 3ceedbb7be17558285142629679da819406dcb31 Mon Sep 17 00:00:00 2001 From: Tutur33 Date: Fri, 15 Mar 2024 19:04:16 +0100 Subject: [PATCH 1/2] add code command --- commands/utils/code.js | 56 ++++++++++++++++++++++++++++++++++++++++++ permissions.json | 3 ++- 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 commands/utils/code.js diff --git a/commands/utils/code.js b/commands/utils/code.js new file mode 100644 index 0000000..12776a1 --- /dev/null +++ b/commands/utils/code.js @@ -0,0 +1,56 @@ +const http = require("https"); + +module.exports = { + name: 'code', + aliases: [], + description: 'Génére du code.', + category: 'utils', + emote: '📌', + utilisation: 'code ', + + async execute(message, args) { + const lenguage = args[0] + const prompt = args.slice(1).join(' '); + const options = { + "method": "POST", + "hostname": "api.textcortex.com", + "port": null, + "path": "/v1/codes", + "headers": { + "Content-Type": "application/json", + "Authorization": "Bearer gAAAAABl8hnwXg-FXY1t5PNCTcEGvcN86UaaXycbse_6ZhdlEt_lBbkieBh3QTxjxu5ii1rs--YeoSu-GIh4GwLx2ADp5WtHX867wedEEkYji3kdInL-qgyeayGEODhUQyYd-x8XESZq" + } + }; + + const req = http.request(options, function (res) { + const chunks = []; + + res.on("data", function (chunk) { + chunks.push(chunk); + }); + + res.on("end", function () { + const body = Buffer.concat(chunks); + const response = JSON.parse(body.toString()); + if (response.status === "success") { + const output = response.data.outputs[0].text; + message.reply(`\`\`\`${lenguage}\n${output}\`\`\``); + } else { + console.log("Error: Request failed with API"); + message.reply("Erreur lors de l'execution de l'API.\n le premier parametre est le lengage de pregramation exemple : python, javascript, php, java...") + } + }); + }); + + req.write(JSON.stringify({ + max_tokens: 2048, + mode: lenguage, + model: 'icortex-1', + n: 1, + temperature: 0, + text: prompt + })); + req.end(); + + } +}; \ No newline at end of file diff --git a/permissions.json b/permissions.json index 5d134e8..ad97b39 100644 --- a/permissions.json +++ b/permissions.json @@ -174,5 +174,6 @@ "setconfession": 3, "presetlog": 3, "blword": 3, - "wiki": 3 + "wiki": 3, + "code": 0 } \ No newline at end of file From 35bb1521c58c6eb4262d4d247d1a71b4ad9f8d11 Mon Sep 17 00:00:00 2001 From: Tutur33 Date: Wed, 27 Mar 2024 15:14:08 +0100 Subject: [PATCH 2/2] add soutien --- commands/gestion/soutien.js | 25 +++++++++++++++++++++++++ events/auto/presenceUpdate.js | 32 ++++++++++++++++++++++++++++++++ events/client/ready.js | 8 ++++++++ yourDatabase.db | 0 4 files changed, 65 insertions(+) create mode 100644 commands/gestion/soutien.js create mode 100644 events/auto/presenceUpdate.js delete mode 100644 yourDatabase.db diff --git a/commands/gestion/soutien.js b/commands/gestion/soutien.js new file mode 100644 index 0000000..f716d5c --- /dev/null +++ b/commands/gestion/soutien.js @@ -0,0 +1,25 @@ +const sqlite3 = require('sqlite3').verbose(); +const db = new sqlite3.Database('myDatabase.db'); + +module.exports = { + name: 'soutien', + aliases: ['soutiens'], + description: 'régle le message de soutiens a avoir en status', + emote: '📧', + utilisation: 'soutien <@role> ', + category: 'gestion', + + async execute(message, args) { + const guildID = message.member.guild.id; + const roleID = args[0].replace('<@&', '').replace('>', ''); + const messageSoutien = args.slice(1).join(' '); + + db.run(`INSERT OR REPLACE INTO soutiens (guildID, roleID, message) VALUES (?, ?, ?)`, [guildID, roleID, messageSoutien], function(err) { + if (err) { + console.error(err.message); + return; + } + message.channel.send(`Le soutien a été mis à jour avec succès !`); + }); + }, +}; diff --git a/events/auto/presenceUpdate.js b/events/auto/presenceUpdate.js new file mode 100644 index 0000000..4400991 --- /dev/null +++ b/events/auto/presenceUpdate.js @@ -0,0 +1,32 @@ +const { Events } = require("discord.js"); +const sqlite3 = require('sqlite3').verbose(); +const db = new sqlite3.Database('myDatabase.db'); + +module.exports = { + name: Events.PresenceUpdate, + + async execute(oldPresence, newPresence) { + db.get(`SELECT * FROM soutiens WHERE guildID = ?`, [newPresence.guild.id], (err, row) => { + if (err) { + console.error(err); + return; + } + if (row) { + const roleSoutien = row.roleID; + const messageSoutien = row.message; + + if (newPresence.activities[0].state.includes(messageSoutien)) { + const role = newPresence.guild.roles.cache.find(role => role.id === roleSoutien); + if (role) { + newPresence.member.roles.add(role); + } + } else if (!newPresence.activities[0].state.includes(messageSoutien)) { + const role = newPresence.guild.roles.cache.find(role => role.id === roleSoutien); + if (role) { + newPresence.member.roles.remove(role); + } + } + } + }); + } +}; \ No newline at end of file diff --git a/events/client/ready.js b/events/client/ready.js index 80b08cc..d644336 100644 --- a/events/client/ready.js +++ b/events/client/ready.js @@ -36,6 +36,14 @@ module.exports = { } else { } }); + db.run('CREATE TABLE IF NOT EXISTS soutiens (guildID TEXT PRIMARY KEY, message TEXT, roleID TEXT)', (err) => { + if (err) { + console.error(err.message); + reject(err); + } else { + } + }); + backupdb.run(`CREATE TABLE IF NOT EXISTS backups ( id INTEGER PRIMARY KEY AUTOINCREMENT, botId TEXT NOT NULL, diff --git a/yourDatabase.db b/yourDatabase.db deleted file mode 100644 index e69de29..0000000