-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.js
More file actions
127 lines (122 loc) · 3.23 KB
/
setup.js
File metadata and controls
127 lines (122 loc) · 3.23 KB
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
// Run "npm run init" in console to set up VerifyBot
// Module imports
const program = require("commander");
const { prompt } = require("inquirer");
const { writeFile } = require("fs");
// Create a new array with queries
const questions = [
{
type: "input",
name: "guild",
message: "Primary Guild: "
},
{
type: "input",
name: "prefix",
message: "Bot Prefix: "
},
{
type: "input",
name: "credentials.token",
message: "Bot Token: "
},
{
type: "input",
name: "dashboard.clientSecret",
message: "Client Secret: "
},
{
type: "input",
name: "credentials.sql.host",
message: "Mysql Host: "
},
{
type: "input",
name: "credentials.sql.database",
message: "Mysql Database: "
},
{
type: "input",
name: "credentials.sql.user",
message: "Mysql User: "
},
{
type: "input",
name: "credentials.sql.password",
message: "Mysql Password: "
},
{
type: "input",
name: "credentials.dbans",
message: "DiscordBans Token: "
},
{
type: "input",
name: "dashboard.domain",
message: "Dashboard Domain: "
},
{
type: "input",
name: "dashboard.port",
message: "Dashboard Port: "
},
{
type: "input",
name: "dashboard.secret",
message: "Dashboard Secret: "
},
{
type: "input",
name: "channels.messageUpdates",
message: "Message Updates Log (Channel Name): "
},
{
type: "input",
name: "channels.joins",
message: "Join Log (Channel Name): "
},
{
type: "input",
name: "channels.verification",
message: "Verification Log (Channel Name): "
},
{
type: "input",
name: "channels.modlog",
message: "Moderation Log (Channel Name):"
},
{
type: "input",
name: "channels.staffchat",
message: "Staffchat (Channel Name):"
},
{
type: "input",
name: "channels.announcements",
message: "Announcements (Channel Name):"
}
];
// Load program information
program
.version("1.0.2")
.description("Creates a config file..");
// Init command - initializes config
program
.command("init")
.description("Sets a value in the config.")
.action(() => {
// Prompt for all questions
prompt(questions).then(answers => {
// Log that config values have been stored
console.log("Config values created. Creating config.json...");
// Write to config.json with the new config values
writeFile("config.json", JSON.stringify(answers, null, "\t"), (err) => {
// If error thrown, log in console
if (err) return console.log(`Error creating file:\n${err}`);
// Inform the user that config has been initialized
console.log("Config initalized! Warning: some features may still not be fully functional as some files are removed to maintain security of the data structures.");
});
});
});
// Load commands
program.parse(process.argv);