This repository has been archived by the owner on Dec 1, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathgdelete.js
59 lines (56 loc) · 3.17 KB
/
gdelete.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
const Discord = require("discord.js");
const fs = require('fs');
const request = require("request");
const {encrypt, decrypt} = require("../utils/crypto.js");
function random(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
module.exports.run = async (client, message, args, language) => {
try {
if (!message.member.hasPermission("MANAGE_GUILD") && message.author.id != client.config.ownerId[0]) return message.reply(language.needManageGuildPermission);
request(process.env.php_server_url + "/EconomyManager.php?type=get&token=" + process.env.php_server_token, function(error, response, body) {
if (!error && response.statusCode == 200 && !body.includes("Connection failed")) {
var formerRoles = client.economyManager[message.guild.id].roles;
client.economyManager = JSON.parse(body);
if (!client.economyManager[message.guild.id] || client.economyManager[message.guild.id].roles.length == 0) return message.reply(language.noServerItemsFound);
if (!client.economyManager[message.guild.id].roles[parseInt(args[0]) - 1]) return message.reply(language.invalidItemID);
var role = message.guild.roles.cache.get(client.economyManager[message.guild.id].roles[parseInt(args[0]) - 1].id);
client.economyManager[message.guild.id].roles.splice(parseInt(args[0]) - 1, 1);
request.post({url: process.env.php_server_url + "/EconomyManager.php", formData: {
type: "update",
token: process.env.php_server_token,
id: message.guild.id,
data: JSON.stringify(client.economyManager[message.guild.id])
}}, function(error, response, body) {
if (!error && response.statusCode == 200 && body.includes("Success")) {
const exampleEmbed = new Discord.MessageEmbed()
.setColor(Math.floor(Math.random() * 16777215))
.setAuthor(language.serverRoleDeleted.replace("$role", role ? role.name : "unknown"), message.guild.iconURL({size: 128}))
.setTimestamp()
.setFooter(client.devUsername, client.user.avatarURL({size: 128}));
message.channel.send(exampleEmbed);
}
else {
client.economyManager[message.author.id].roles = formerRoles;
console.error("EconomyManagerError: Cannot connect to the server.\nError Information: " + error + "\nResponse Information: " + body);
return message.reply(language.serverConnectError);
}
});
}
else return message.reply(language.serverConnectError);
});
}
catch (err) {
console.error(err);
return message.reply(language.unexpectedErrorOccurred);
}
}
module.exports.config = {
name: "gdelete",
description: "Delete an item in the server shop",
usage: require("../config.json").prefix + "gdeltete <id>",
accessableby: "Members",
aliases: [],
category: "💰 Economy",
dmAvailable: false
}