From c058ab2e553df16e4046118cb070f6d22fa4ce78 Mon Sep 17 00:00:00 2001 From: CorwinDev <88144943+CorwinDev@users.noreply.github.com> Date: Mon, 8 Aug 2022 10:55:08 +0200 Subject: [PATCH] Update --- bot/config.js | 11 --- bot/index.js | 23 ----- bot/package.json | 12 --- bsl/index.js | 50 ++++++++++ config.js | 56 ++++++----- index.js | 8 +- models/server.js | 3 +- package-lock.json | 14 +++ package.json | 1 + website/bot/index.js | 19 +++- website/index.js | 5 +- website/public/css/style.css | 12 ++- website/public/img/android-chrome-192x192.png | Bin 0 -> 15240 bytes website/public/img/android-chrome-512x512.png | Bin 0 -> 52698 bytes website/public/img/apple-touch-icon.png | Bin 0 -> 13841 bytes website/public/img/favicon-16x16.png | Bin 0 -> 749 bytes website/public/img/favicon-32x32.png | Bin 0 -> 1619 bytes website/public/img/favicon.ico | Bin 0 -> 15406 bytes website/public/img/site.webmanifest | 1 + website/routers/servers/index.js | 90 ++++++++++++++++-- website/views/includes/footer.ejs | 19 +--- website/views/includes/header.ejs | 3 + website/views/server/edit.ejs | 44 +++++++++ website/views/server/index.ejs | 13 +-- 24 files changed, 270 insertions(+), 114 deletions(-) delete mode 100644 bot/config.js delete mode 100644 bot/index.js delete mode 100644 bot/package.json create mode 100644 bsl/index.js create mode 100644 website/public/img/android-chrome-192x192.png create mode 100644 website/public/img/android-chrome-512x512.png create mode 100644 website/public/img/apple-touch-icon.png create mode 100644 website/public/img/favicon-16x16.png create mode 100644 website/public/img/favicon-32x32.png create mode 100644 website/public/img/favicon.ico create mode 100644 website/public/img/site.webmanifest create mode 100644 website/views/server/edit.ejs diff --git a/bot/config.js b/bot/config.js deleted file mode 100644 index e99c710..0000000 --- a/bot/config.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - "mongodb": "mongodb+srv://root:@cluster0.jo9hd.mongodb.net/?retryWrites=true&w=majority", - "bot": { - token: "ODcwMDAxMjM0NTgzNjIxNzEz.GHwzsE.tvU0FJG9c7HFkLaqDMqp6wTaSBZbFdH6wuaLO0", - channels: { - login: "868065455628234780", - vote: "937643610541793300", - error: "1003947531543269507", - } - }, -} \ No newline at end of file diff --git a/bot/index.js b/bot/index.js deleted file mode 100644 index 93723cb..0000000 --- a/bot/index.js +++ /dev/null @@ -1,23 +0,0 @@ -// Create discord.js client -const { Client, GatewayIntentBits } = require('discord.js'); -const client = new Client({ - intents: [ - GatewayIntentBits.Guilds, - GatewayIntentBits.GuildMessages, - GatewayIntentBits.GuildMessageReactions, - GatewayIntentBits.GuildMessageTyping, - GatewayIntentBits.DirectMessages, - - ] -}); -client.config = require('./config'); -// Set intents -client.on('ready', () => { - console.log('Bot is ready!'); - // Log server count - setTimeout(() => { - console.log(`${client.guilds.cache.size} servers`); - }, 1000); -}); -// Login -client.login(client.config.bot.token); \ No newline at end of file diff --git a/bot/package.json b/bot/package.json deleted file mode 100644 index 40d3add..0000000 --- a/bot/package.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "bot", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "keywords": [], - "author": "", - "license": "ISC" -} diff --git a/bsl/index.js b/bsl/index.js new file mode 100644 index 0000000..170ac7d --- /dev/null +++ b/bsl/index.js @@ -0,0 +1,50 @@ +const client = require('../index.js').bsl; +const servers = require('../models/server'); +const bots = require('../models/bot'); +var config = client.config +const colors = require('colors'); +const bsl = colors.blue("BSL: "); +// Set intents +client.on('ready',async () => { + const bot = await bots.find(); + client.user.setPresence({ activity: { type: 'WATCHING', name: 'botscord.xyz | '+bot.length+' bots' }, status: "online" }); + console.log(bsl, 'Bot is ready!'); + // Log server count + setTimeout(() => { + console.log(bsl, + `${client.guilds.cache.size} servers`); + }, 1000); +}); +const { SlashCommandBuilder, Routes } = require('discord.js'); +const { REST } = require('@discordjs/rest'); +const commands = [ + new SlashCommandBuilder().setName('ping').setDescription('Replies with pong!'), + new SlashCommandBuilder().setName('topserver').setDescription('Replies with highest server!'), + new SlashCommandBuilder().setName('user').setDescription('Replies with user info and connected bots/servers!'), +] + .map(command => command.toJSON()); + +const rest = new REST({ version: '10' }).setToken(config.bot.token); + +rest.put(Routes.applicationCommands(config.bot.id), { body: commands }) + .then(() => console.log(bsl, 'Successfully registered application commands.')) + .catch(console.error); + +client.on('interactionCreate', async interaction => { + if (!interaction.isChatInputCommand()) return; + const { commandName } = interaction; + if (commandName === 'ping') { + await interaction.reply(`🏓Latency is ${Date.now() - interaction.createdTimestamp}ms. API Latency is ${Math.round(client.ws.ping)}ms`); + } else if (commandName === 'topserver') { + + const topServer = await servers.find({}).sort({ votes: -1 }); + console.log(bsl, topServer); + await interaction.reply(`The top server is ${topServer[0].name} with ${topServer[0].votes} votes!`); + } else if (commandName === 'user') { + const { user } = interaction; + await interaction.reply(`${user.username}#${user.discriminator} has ${user.bot ? 'a bot' : 'no bot'} and is connected to ${user.guilds.size} servers!`); + + } else { + await interaction.reply('Command not found!'); + } +}); diff --git a/config.js b/config.js index cfffb67..2ffd050 100644 --- a/config.js +++ b/config.js @@ -1,34 +1,40 @@ module.exports = { - "mongodb": "mongodb+srv://root:RzIhDff90LKkOOjw@cluster0.jo9hd.mongodb.net/?retryWrites=true&w=majority", - "bot": { - "id": "934087523649609768", - "token": "OTM0MDg3NTIzNjQ5NjA5NzY4.GV-g1-.Eggw57JNtsrLPbakg-_yr8fn8oBAbh0nKfK-lk", - "channels":{ - "login": "868065455628234780", - "vote": "937643610541793300", - "error": "1003947531543269507", - "info": "1005178285124239510", + mongodb: "mongodb+srv://root:RzIhDff90LKkOOjw@cluster0.jo9hd.mongodb.net/?retryWrites=true&w=majority", + bot: { + id: "934087523649609768", + token: "OTM0MDg3NTIzNjQ5NjA5NzY4.GV-g1-.Eggw57JNtsrLPbakg-_yr8fn8oBAbh0nKfK-lk", + channels:{ + login: "868065455628234780", + vote: "937643610541793300", + error: "1003947531543269507", + info: "1005178285124239510", }, - "bsl" : { - "id": "870001234583621713", - "token": "ODcwMDAxMjM0NTgzNjIxNzEz.GfMe5Y.USVO8IBvKkPIX0PFbYFRgfpctT-wW8sBVmFLQc", - "channels":{ - "vote":"937643610541793300", - "error":"1003947531543269507", + bsl : { + id: "870001234583621713", + token: "ODcwMDAxMjM0NTgzNjIxNzEz.GfMe5Y.USVO8IBvKkPIX0PFbYFRgfpctT-wW8sBVmFLQc", + channels:{ + vote:"937643610541793300", + error:"1003947531543269507", }, - "invite":"https://discord.com/api/oauth2/authorize?client_id=870001234583621713&permissions=314433&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fcallback&response_type=code&scope=applications.commands%20bot" + invite:"https://discord.com/api/oauth2/authorize?client_id=870001234583621713&permissions=314433&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fcallback&response_type=code&scope=applications.commands%20bot" } }, - "discord":{ - "id": "868065454940385291", - "invite":"", + discord:{ + id: "868065454940385291", + invite:"", + roles: { + admin: "868065454940385291", + mod: "868065454940385291", + user: "868065454940385293", + bot: "1006120950045098034" + } }, - "server": { - "port": 3000, - "host": "http://localhost:3000", + server: { + port: 3000, + host: "http://localhost:3000", }, - "users": { - "owner": [""], - "verificator": [""], + users: { + owner: [""], + verificator: [""], } } \ No newline at end of file diff --git a/index.js b/index.js index 94fbfa2..f8a32a7 100644 --- a/index.js +++ b/index.js @@ -1,12 +1,13 @@ // Import config and export const config = require('./config'); const mongoose = require('mongoose'); +const colors = require('colors'); // Connect to mongoDB try { mongoose.connect(config.mongodb); } catch (err) { console.log(err); - console.log('Error connecting to mongoDB'); + console.log(colors.red("MongoDB: "), 'Error connecting to mongoDB'); process.exit(1); } // Create discord.js client @@ -32,12 +33,13 @@ client.config = config; bsl.config = config // Set intents client.on('ready', () => { - console.log('Website bot is ready!'); + console.log(colors.green("Website: "), 'Website bot is ready!'); require('./website') require('./website/bot') + require('./bsl') }); bsl.on('ready', () => { - console.log('BSL Started!'); + console.log(colors.blue("BSL: "), 'BSL ready'); }); // Login client.login(client.config.bot.token); diff --git a/models/server.js b/models/server.js index f59feab..731560d 100644 --- a/models/server.js +++ b/models/server.js @@ -8,7 +8,8 @@ let hm = new mongoose.Schema({ tags: [String], premium: Boolean, icon: String, - members: String, + members: Number, + votes: Number, }); module.exports = mongoose.model("servers", hm); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 7e55c9f..d15842c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "dependencies": { "autoprefixer": "^10.4.8", "body-parser": "^1.20.0", + "colors": "^1.4.0", "cookie-session": "^2.0.0", "discord.js": "^14.1.1", "ejs": "^3.1.8", @@ -612,6 +613,14 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "engines": { + "node": ">=0.1.90" + } + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -3236,6 +3245,11 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==" + }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", diff --git a/package.json b/package.json index 468a4dc..65d60d7 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "dependencies": { "autoprefixer": "^10.4.8", "body-parser": "^1.20.0", + "colors": "^1.4.0", "cookie-session": "^2.0.0", "discord.js": "^14.1.1", "ejs": "^3.1.8", diff --git a/website/bot/index.js b/website/bot/index.js index 590d18a..89667e8 100644 --- a/website/bot/index.js +++ b/website/bot/index.js @@ -3,6 +3,7 @@ const servers = require('../../models/server'); var config = client.config const { SlashCommandBuilder, Routes } = require('discord.js'); const { REST } = require('@discordjs/rest'); +const colors = require('colors'); const commands = [ new SlashCommandBuilder().setName('ping').setDescription('Replies with pong!'), new SlashCommandBuilder().setName('topserver').setDescription('Replies with highest server!'), @@ -13,7 +14,7 @@ const commands = [ const rest = new REST({ version: '10' }).setToken(config.bot.token); rest.put(Routes.applicationGuildCommands(config.bot.id, config.discord.id), { body: commands }) - .then(() => console.log('Successfully registered application commands.')) + .then(() => console.log(colors.green("Website: "),'Successfully registered application commands.')) .catch(console.error); client.on('interactionCreate', async interaction => { @@ -31,4 +32,20 @@ client.on('interactionCreate', async interaction => { await interaction.reply(`${user.username}#${user.discriminator} has ${user.bot ? 'a bot' : 'no bot'} and is connected to ${user.guilds.size} servers!`); } +}); +client.on("guildMemberAdd", async (member) => { + let guild = client.guilds.cache.get(config.discord.id); + if (member.user.bot) { + try { + guild.member(member.id).roles.add(config.server.roles.botlist.bot); + } catch (error) { + + } + }else{ + try { + guild.member(member.id).roles.add(config.server.roles.botlist.user); + } catch (error) { + + } + } }); \ No newline at end of file diff --git a/website/index.js b/website/index.js index 4be7eac..41726c7 100644 --- a/website/index.js +++ b/website/index.js @@ -8,6 +8,7 @@ const passport = require('passport'); var DiscordStrategy = require('passport-discord').Strategy; var MemoryStore = require('memorystore')(session); const bodyParser = require('body-parser'); +const colors = require('colors'); var showdown = require('showdown'), converter = new showdown.Converter(); var bot = require('./routers/bot'); @@ -25,7 +26,7 @@ passport.deserializeUser(function (obj, done) { const Banned = require('../models/site-ban'); const bots = require('../models/bot'); const server = require('../models/server'); -var scopes = ['identify', 'email', 'guilds', 'guilds.join']; +var scopes = ['identify', 'guilds', 'guilds.join']; var prompt = 'consent' passport.use(new DiscordStrategy({ clientID: '934087523649609768', @@ -138,6 +139,6 @@ app.use((req, res, next) => { } }) app.listen(port, () => { - console.log('Your app is listening on port ' + port); + console.log(colors.green("Website: "),'Your app is listening on port ' + port); }); module.exports.client = client; \ No newline at end of file diff --git a/website/public/css/style.css b/website/public/css/style.css index 3469db5..49b9cab 100644 --- a/website/public/css/style.css +++ b/website/public/css/style.css @@ -856,8 +856,8 @@ video { .w-2\/3 { width: 66.666667%; } -.w-1\/3 { - width: 33.333333%; +.w-1\/4 { + width: 25%; } .max-w-7xl { max-width: 80rem; @@ -1966,6 +1966,14 @@ body { display: inline; } + .sm\:flex { + display: flex; + } + + .sm\:grid { + display: grid; + } + .sm\:min-h-min { min-height: -webkit-min-content; min-height: -moz-min-content; diff --git a/website/public/img/android-chrome-192x192.png b/website/public/img/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..adf8d62d6e20bb815447a9052a3afe5b6fef0856 GIT binary patch literal 15240 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 T1`KsV00000NkvXXu0mjf$LQ8o literal 0 HcmV?d00001 diff --git a/website/public/img/favicon-16x16.png b/website/public/img/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..7b9d53ca1f1bedaccbb7faebbe18c49524913a8b GIT binary patch literal 749 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 xqryEHA0Tn+))Do{Qu~I{{b?G`XvAW literal 0 HcmV?d00001 diff --git a/website/public/img/site.webmanifest b/website/public/img/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/website/public/img/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/website/routers/servers/index.js b/website/routers/servers/index.js index dc64b81..d3f2755 100644 --- a/website/routers/servers/index.js +++ b/website/routers/servers/index.js @@ -12,7 +12,7 @@ router.get('/add', function (req, res) { if (req.user) { res.render('server/add', { user: req.user, - botscord: client + serverscord: client }); return } else { @@ -25,7 +25,7 @@ router.post('/add', async function (req, res) { if (req.user) { var checkServer = await client.bsl.guilds.cache.get(req.body.serverid); if (!checkServer) { - return res.redirect(client.config.bot.bsl.invite + "&guild_id=" + req.body.serverid); + return res.redirect(client.config.server.bsl.invite + "&guild_id=" + req.body.serverid); } else { let checkGuild = await servers.findOne({ id: checkServer.id }); if (checkGuild) { @@ -66,7 +66,7 @@ router.post('/add', async function (req, res) { .setTimestamp() .setThumbnail(checkServer.iconURL({ format: 'png', dynamic: true })) .setFooter({ text: 'New Server', iconURL: "https://cdn.discordapp.com/avatars/" + req.user.id + "/" + req.user.avatar + ".png" }); - client.client.channels.cache.get(client.client.config.bot.channels.info).send({ embeds: [embed] }); + client.client.channels.cache.get(client.client.config.server.channels.info).send({ embeds: [embed] }); server.save(function (err) { if (err) { console.log(err); @@ -85,20 +85,94 @@ router.post('/add', async function (req, res) { }); router.get('/:server', function (req, res) { - servers.findOne({ id: req.params.server }, function (err, bot) { + servers.findOne({ id: req.params.server }, function (err, server) { if (err) { console.log(err); return res.redirect('/'); } - if (!bot) { - req.session.error = "No bot found"; + if (!server) { + req.session.error = "No server found"; return res.redirect('/'); } res.render('server/index', { user: req.user, - server: bot, - serverr: global.client.guilds.cache.get(bot.id) + server: server, + serverr: global.client.guilds.cache.get(server.id) }); }) }) + +router.get('/:server/edit', function (req, res) { + if(!req.user){ + req.session.backURL = req.originalUrl; + res.redirect('/auth'); + } + servers.findOne({ id: req.params.server }, function (err, server) { + if (err) { + console.log(err); + return res.redirect('/'); + } + if (!server) { + req.session.error = "No server found"; + return res.redirect('/'); + } + var serverr = global.client.guilds.cache.get(server.id) + if (serverr.members.cache.get(req.user.id)) { + if (serverr.members.cache.get(req.user.id).permissions.has('ADMINISTRATOR')) { + res.render('server/edit', { + user: req.user, + server: server, + serverr: serverr + }); + } else { + req.session.error = "You don't have permission to edit this server"; + return res.redirect('/'); + } + } else { + req.session.error = "You don't have permission to edit this server"; + return res.redirect('/'); + } + }) +}) + +router.post('/:server/edit', async function (req, res) { + if(!req.user){ + req.session.backURL = req.originalUrl; + res.redirect('/auth'); + } + servers.findOne({ id: req.params.server }, function (err, server) { + if (err) { + console.log(err); + return res.redirect('/'); + } + if (!server) { + req.session.error = "No server found"; + return res.redirect('/'); + } + var serverr = global.client.guilds.cache.get(server.id) + if (serverr.members.cache.get(req.user.id)) { + if (serverr.members.cache.get(req.user.id).permissions.has('ADMINISTRATOR')) { + server.description = req.body.server_short; + server.long_description = req.body.server_description; + server.tags = req.body.tags; + server.save(function (err) { + if (err) { + console.log(err); + req.session.error = "Something went wrong"; + res.redirect('/'); + } else { + req.session.message = "Server edited"; + res.redirect('/'); + } + }); + } else { + req.session.error = "You don't have permission to edit this server"; + return res.redirect('/'); + } + } else { + req.session.error = "You don't have permission to edit this server"; + return res.redirect('/'); + } + }) +}) module.exports = router; \ No newline at end of file diff --git a/website/views/includes/footer.ejs b/website/views/includes/footer.ejs index 90ec201..7b2f17b 100644 --- a/website/views/includes/footer.ejs +++ b/website/views/includes/footer.ejs @@ -33,21 +33,4 @@ class="text-blue-400 hover:text-white">Corwin.

- - - - \ No newline at end of file + \ No newline at end of file diff --git a/website/views/includes/header.ejs b/website/views/includes/header.ejs index 7c27e9c..8c41a8e 100644 --- a/website/views/includes/header.ejs +++ b/website/views/includes/header.ejs @@ -14,6 +14,9 @@ + + + diff --git a/website/views/server/edit.ejs b/website/views/server/edit.ejs new file mode 100644 index 0000000..3dad2d8 --- /dev/null +++ b/website/views/server/edit.ejs @@ -0,0 +1,44 @@ +<%- include("../includes/header.ejs", {title: "Edit " + server.name}) %> + +
+
+
+ + +
+
+ + +
+
+ +
+ +
+
\ No newline at end of file diff --git a/website/views/server/index.ejs b/website/views/server/index.ejs index 6169d91..ad44ed7 100644 --- a/website/views/server/index.ejs +++ b/website/views/server/index.ejs @@ -1,22 +1,19 @@ <%- include('../includes/header.ejs', { title: server.name}) %> - -




+



- <%= server.description %> - + <%= server.long_description %>
-
+

<%= server.name %>

- - + Join <% if(user) { if(serverr.members.cache.get(user.id)) { if(serverr.members.cache.get(user.id).permissions.has('ADMINISTRATOR')) { %>
- Owner Options + Owner Options