Skip to content

Commit cb22173

Browse files
committed
Added AddonHandler#getConfigs returns every config in addon's folder
1 parent 2cca31d commit cb22173

File tree

1 file changed

+43
-54
lines changed

1 file changed

+43
-54
lines changed

Modules/Handlers/AddonHandler.js

Lines changed: 43 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -2,39 +2,31 @@ const fs = require("fs"),
22
YAML = require("yaml"),
33
chalk = require("chalk"),
44
Utils = require("../Utils"),
5-
{ SlashCommandBuilder } = require("@discordjs/builders"),
65
{ client, config, lang, commands } = require("../../index");
76

87
module.exports = {
98
getConfig: (name, config, extension = "yml") => {
10-
if (
11-
fs.existsSync("./Addon_Configs") &&
12-
fs.existsSync(`./Addon_Configs/${name}/${config}.${extension}`)
13-
) {
14-
return YAML.parse(
15-
fs.readFileSync(
16-
`./Addon_Configs/${name}/${config}.${extension}`,
17-
"utf-8"
18-
)
19-
);
9+
if (fs.existsSync("./Addon_Configs") && fs.existsSync(`./Addon_Configs/${name}/${config}.${extension}`)) {
10+
return YAML.parse(fs.readFileSync(`./Addon_Configs/${name}/${config}.${extension}`, "utf-8"));
2011
} else {
2112
return false;
2213
}
2314
},
24-
getYAMLConfig: (name, config) => {
25-
if (
26-
fs.existsSync("./Addon_Configs") &&
27-
fs.existsSync(`./Addon_Configs/${name}/${config}.yml`)
28-
) {
29-
return YAML.parse(
30-
fs.readFileSync(
31-
`./Addon_Configs/${name}/${config}.yml`,
32-
"utf-8"
33-
)
34-
);
35-
} else {
36-
return false;
15+
getConfigs: (name, extension = "yml") => {
16+
let configs = {}
17+
18+
if (fs.existsSync("./Addon_Configs") && fs.existsSync(`./Addon_Configs/${name}/`)) {
19+
let allFiles = fs.readdirSync(`./Addon_Configs/${name}/`)
20+
let filtredFiles = allFiles.filter((f) => f.split(".").pop() == extension)
21+
if (filtredFiles && filtredFiles[0]) {
22+
filtredFiles.forEach(x => {
23+
if (fs.readFileSync(`./Addon_Configs/${name}/${x}`, { encoding: "utf-8" }))
24+
configs[x.replace(`.${extension}`, "").toLowerCase()] =
25+
YAML.parse(fs.readFileSync(`./Addon_Configs/${name}/${x}`, "utf-8"))
26+
})
27+
}
3728
}
29+
return configs;
3830
},
3931
init: async () => {
4032
if (fs.existsSync("./Addons")) {
@@ -76,7 +68,7 @@ module.exports = {
7668
if (
7769
addon._customConfigs &&
7870
typeof addon._customConfigs ==
79-
"object"
71+
"object"
8072
) {
8173
if (
8274
!fs.existsSync(
@@ -113,7 +105,7 @@ module.exports = {
113105
chalk
114106
.hex("#007bff")
115107
.bold("[INFO] ") +
116-
addon._log
108+
addon._log
117109
);
118110
} else if (
119111
addon._log &&
@@ -123,22 +115,21 @@ module.exports = {
123115
`${chalk
124116
.hex(
125117
addon._author.color ||
126-
"#007bff"
118+
"#007bff"
127119
)
128120
.bold(
129-
`[${
130-
addon._author
131-
? addon._author
132-
: "[INFO]"
121+
`[${addon._author
122+
? addon._author
123+
: "[INFO]"
133124
}]`
134125
)} ${chalk.bold(
135-
addon._name
136-
? addon._name
137-
: file.replace(
138-
".js",
139-
""
140-
)
141-
)} addon loaded`
126+
addon._name
127+
? addon._name
128+
: file.replace(
129+
".js",
130+
""
131+
)
132+
)} addon loaded`
142133
);
143134
} else if (
144135
addon._log &&
@@ -148,30 +139,28 @@ module.exports = {
148139
`${chalk
149140
.hex(
150141
addon._author.color ||
151-
"#007bff"
142+
"#007bff"
152143
)
153144
.bold(
154145
`[${addon._author.name}]`
155146
)} ${chalk.bold(
156-
addon._name
157-
? addon._name
158-
: file.replace(
159-
".js",
160-
""
161-
)
162-
)} addon loaded`
147+
addon._name
148+
? addon._name
149+
: file.replace(
150+
".js",
151+
""
152+
)
153+
)} addon loaded`
163154
);
164155
}
165156
} else {
166157
Utils.logWarning(
167-
`Unable to execute ${
168-
addon._name
169-
? addon._name
170-
: file.replace(".js", "")
171-
} addon ${
172-
addon._author
173-
? `by ${addon._author}`
174-
: ""
158+
`Unable to execute ${addon._name
159+
? addon._name
160+
: file.replace(".js", "")
161+
} addon ${addon._author
162+
? `by ${addon._author}`
163+
: ""
175164
}`
176165
);
177166
}

0 commit comments

Comments
 (0)