From 4a3bb5ae9bfb1e5a8d704c85ed188c5de3e021d1 Mon Sep 17 00:00:00 2001
From: CorwinDev <88144943+CorwinDev@users.noreply.github.com>
Date: Thu, 18 Aug 2022 16:19:43 +0200
Subject: [PATCH] Added markdown
---
tailwind.config.js | 18 ++++---
website/index.js | 2 +
website/public/css/style.css | 93 +++++++++++++++++++++++---------
website/routers/api/v1/index.js | 2 +-
website/routers/bot/index.js | 5 +-
website/routers/servers/index.js | 10 +++-
website/views/bot/index.ejs | 14 ++---
website/views/server/index.ejs | 9 ++--
website/views/tags/index.ejs | 44 ++++++++++++++-
website/views/user/index.ejs | 2 +-
10 files changed, 150 insertions(+), 49 deletions(-)
diff --git a/tailwind.config.js b/tailwind.config.js
index 9e3b694..05c2144 100644
--- a/tailwind.config.js
+++ b/tailwind.config.js
@@ -21,16 +21,22 @@ module.exports = {
mono: ["Menlo", "monospace"]
},
- typography: {
+ typography: theme => ({
DEFAULT: {
css: {
- color: '#FFFFFF',
- code:{
- color: '#FFFFFF',
- }
+ color: '#FFF',
+ "code::before": {
+ "content": "unset",
+ },
+ "code::after": {
+ "content": "unset",
+ },
+ "code": {
+ "background-color": "#747174",
+ },
},
},
- },
+ }),
},
},
plugins: [
diff --git a/website/index.js b/website/index.js
index f33721d..1099c45 100644
--- a/website/index.js
+++ b/website/index.js
@@ -158,10 +158,12 @@ app.get('/servers', async (req, res) => {
app.get('/tag/:id', async (req, res) => {
var id = req.params.id.toLowerCase();
var bot = await bots.find({ tags: id });
+ var servers = await server.find({ tags: id});
res.render('tags/index', {
bots: bot,
user: req.user,
tag: id,
+ servers: servers,
});
});
app.get('/i/:id', async (req, res) => {
diff --git a/website/public/css/style.css b/website/public/css/style.css
index a294d7e..a9fc993 100644
--- a/website/public/css/style.css
+++ b/website/public/css/style.css
@@ -586,7 +586,7 @@ video {
}
.prose {
- color: #FFFFFF;
+ color: #FFF;
max-width: 65ch;
}
@@ -599,15 +599,11 @@ video {
}
.prose :where(a):not(:where([class~="not-prose"] *)) {
- color: #3182ce;
+ color: var(--tw-prose-links);
text-decoration: underline;
font-weight: 500;
}
-.prose :where(a):not(:where([class~="not-prose"] *)):hover {
- color: #2c5282;
-}
-
.prose :where(strong):not(:where([class~="not-prose"] *)) {
color: var(--tw-prose-bold);
font-weight: 600;
@@ -784,17 +780,18 @@ video {
}
.prose :where(code):not(:where([class~="not-prose"] *)) {
- color: #FFFFFF;
+ color: var(--tw-prose-code);
font-weight: 600;
font-size: 0.875em;
+ background-color: #747174;
}
.prose :where(code):not(:where([class~="not-prose"] *))::before {
- content: "`";
+ content: unset;
}
.prose :where(code):not(:where([class~="not-prose"] *))::after {
- content: "`";
+ content: unset;
}
.prose :where(a code):not(:where([class~="not-prose"] *)) {
@@ -2117,6 +2114,60 @@ video {
margin-bottom: 0;
}
+.prose-invert {
+ --tw-prose-body: var(--tw-prose-invert-body);
+ --tw-prose-headings: var(--tw-prose-invert-headings);
+ --tw-prose-lead: var(--tw-prose-invert-lead);
+ --tw-prose-links: var(--tw-prose-invert-links);
+ --tw-prose-bold: var(--tw-prose-invert-bold);
+ --tw-prose-counters: var(--tw-prose-invert-counters);
+ --tw-prose-bullets: var(--tw-prose-invert-bullets);
+ --tw-prose-hr: var(--tw-prose-invert-hr);
+ --tw-prose-quotes: var(--tw-prose-invert-quotes);
+ --tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);
+ --tw-prose-captions: var(--tw-prose-invert-captions);
+ --tw-prose-code: var(--tw-prose-invert-code);
+ --tw-prose-pre-code: var(--tw-prose-invert-pre-code);
+ --tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);
+ --tw-prose-th-borders: var(--tw-prose-invert-th-borders);
+ --tw-prose-td-borders: var(--tw-prose-invert-td-borders);
+}
+
+.prose-neutral {
+ --tw-prose-body: #404040;
+ --tw-prose-headings: #171717;
+ --tw-prose-lead: #525252;
+ --tw-prose-links: #171717;
+ --tw-prose-bold: #171717;
+ --tw-prose-counters: #737373;
+ --tw-prose-bullets: #d4d4d4;
+ --tw-prose-hr: #e5e5e5;
+ --tw-prose-quotes: #171717;
+ --tw-prose-quote-borders: #e5e5e5;
+ --tw-prose-captions: #737373;
+ --tw-prose-code: #171717;
+ --tw-prose-pre-code: #e5e5e5;
+ --tw-prose-pre-bg: #262626;
+ --tw-prose-th-borders: #d4d4d4;
+ --tw-prose-td-borders: #e5e5e5;
+ --tw-prose-invert-body: #d4d4d4;
+ --tw-prose-invert-headings: #fff;
+ --tw-prose-invert-lead: #a3a3a3;
+ --tw-prose-invert-links: #fff;
+ --tw-prose-invert-bold: #fff;
+ --tw-prose-invert-counters: #a3a3a3;
+ --tw-prose-invert-bullets: #525252;
+ --tw-prose-invert-hr: #404040;
+ --tw-prose-invert-quotes: #f5f5f5;
+ --tw-prose-invert-quote-borders: #404040;
+ --tw-prose-invert-captions: #a3a3a3;
+ --tw-prose-invert-code: #fff;
+ --tw-prose-invert-pre-code: #d4d4d4;
+ --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
+ --tw-prose-invert-th-borders: #525252;
+ --tw-prose-invert-td-borders: #404040;
+}
+
.sr-only {
position: absolute;
width: 1px;
@@ -2614,14 +2665,6 @@ video {
width: 50%;
}
-.w-2\/3 {
- width: 66.666667%;
-}
-
-.w-1\/4 {
- width: 25%;
-}
-
.min-w-fit {
min-width: -webkit-fit-content;
min-width: -moz-fit-content;
@@ -4188,14 +4231,6 @@ body {
height: 83.333333%;
}
- .lg\:w-1\/2 {
- width: 50%;
- }
-
- .lg\:w-auto {
- width: auto;
- }
-
.lg\:w-2\/3 {
width: 66.666667%;
}
@@ -4204,6 +4239,14 @@ body {
width: 25%;
}
+ .lg\:w-1\/2 {
+ width: 50%;
+ }
+
+ .lg\:w-auto {
+ width: auto;
+ }
+
.lg\:flex-grow {
flex-grow: 1;
}
diff --git a/website/routers/api/v1/index.js b/website/routers/api/v1/index.js
index f45260a..328ce39 100644
--- a/website/routers/api/v1/index.js
+++ b/website/routers/api/v1/index.js
@@ -92,7 +92,7 @@ router.get('/server/banner/:id', function (req, res) {
context.fillText(serverName, canvas.width / 2.7, canvas.height / 1.8);
context.font = '18px sans-serif';
- context.fillText(`🙍♂️ ${serverMembers}`, canvas.width / 2.7, canvas.height / 1.1);
+ context.fillText(`😊 ${serverMembers}`, canvas.width / 2.7, canvas.height / 1.1);
context.fillText(`❤️ ${server.votes}`, canvas.width / 2.1, canvas.height / 1.1);
context.beginPath();
diff --git a/website/routers/bot/index.js b/website/routers/bot/index.js
index f3fd8de..eaa4753 100644
--- a/website/routers/bot/index.js
+++ b/website/routers/bot/index.js
@@ -89,7 +89,7 @@ router.get('/:botID', async function (req, res) {
return res.redirect('/');
}
if (bot.verified == false) {
- if(!req.user) {
+ if (!req.user) {
req.backURL = req.originalUrl;
return res.redirect('/auth');
}
@@ -104,7 +104,8 @@ router.get('/:botID', async function (req, res) {
coowner.push(b)
})
var html = converter.makeHtml(bot.long_description);
- html = sanitizeHtml(html)
+ html = sanitizeHtml(html,
+ { allowedTags: sanitizeHtml.defaults.allowedTags.concat(['img']) })
res.render('bot/index', {
bot: bot,
user: req.user,
diff --git a/website/routers/servers/index.js b/website/routers/servers/index.js
index e7d01ac..087cfd7 100644
--- a/website/routers/servers/index.js
+++ b/website/routers/servers/index.js
@@ -6,7 +6,8 @@ var bots = require('../../../models/bot');
const client = require('../../../index');
const Discord = require('discord.js');
var showdown = require('showdown'),
- converter = new showdown.Converter();
+ converter = new showdown.Converter()
+const sanitizeHtml = require('sanitize-html');
function makeid(length) {
var result = '';
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
@@ -160,10 +161,15 @@ router.get('/:server', async function (req, res) {
[`analytics.${referresURL}`]: 1
}
})
+ var html = converter.makeHtml(server.long_description);
+ console.log(html);
+ html = sanitizeHtml(html,
+ { allowedTags: sanitizeHtml.defaults.allowedTags.concat(['img']) })
res.render('server/index', {
user: req.user,
server: server,
- serverr: global.bsl.guilds.cache.get(server.id)
+ serverr: global.bsl.guilds.cache.get(server.id),
+ description: html,
});
})
})
diff --git a/website/views/bot/index.ejs b/website/views/bot/index.ejs
index 6ae84d8..555ba9c 100644
--- a/website/views/bot/index.ejs
+++ b/website/views/bot/index.ejs
@@ -1,15 +1,15 @@
<%- include('../includes/header.ejs', { title: bot.name, bot: bot}) %>
-
-
-
-
<%- description %>
+
+
+
-
+ <%- description %>
+
-
+
-

+
<%= bot.name %>
diff --git a/website/views/server/index.ejs b/website/views/server/index.ejs
index 6048606..af095e3 100644
--- a/website/views/server/index.ejs
+++ b/website/views/server/index.ejs
@@ -2,12 +2,13 @@
-
-
<%= server.long_description %>
-
+
+
+ <%- description %>
+
-

+
<%= server.name %>
diff --git a/website/views/tags/index.ejs b/website/views/tags/index.ejs
index fec6158..105014e 100644
--- a/website/views/tags/index.ejs
+++ b/website/views/tags/index.ejs
@@ -16,7 +16,7 @@
<% } %>
<% for(let i=0; i < nbots.length; i++) { if (i===3) break; var bot=nbots[i]; if(bot) { %>
-

+
: <%= bot.votes || 0 %> <%if(bot.servers) { %>: <%= bot.servers %><% } %>
@@ -40,4 +40,46 @@
<% } %>
<% } %>
+
+<% var nbots= servers
+ nbots.forEach((val, key) => {
+ randomIndex = Math.ceil(Math.random()*(key + 1));
+ nbots[key] = nbots[randomIndex];
+ nbots[randomIndex] = val;
+ });
+ if(nbots.length > 0) { %>
+
+
+
Servers tagged with <%= tag %>
+
+
These servers are tagged with <%= tag %>
+
+
+ <% } %>
+ <% for(let i=0; i < nbots.length; i++) { if (i===3) break; var bot=nbots[i]; if(bot) { %>
+
+
.iconURL({ format: 'png' }) %>)
+
+
: <%= bot.votes || 0 %> : <%= global.bsl.guilds.cache.get(bot.id).memberCount.toLocaleString().replace(',', '.' ) %>
+
+
+
+
+ <%= bot.name %>
+
+
+ <%= bot.description %>
+
+
+ <% if(bot.tags) {%>
+
+ <% bot.tags.slice(-3).forEach(tag=>{ %>
+
#<%= tag %>
+
+ <% }) %>
+
+ <% } %>
+
+ <% } %>
+ <% } %>
\ No newline at end of file
diff --git a/website/views/user/index.ejs b/website/views/user/index.ejs
index c392c6d..82a717a 100644
--- a/website/views/user/index.ejs
+++ b/website/views/user/index.ejs
@@ -4,7 +4,7 @@
- <% if(typeof users.biography !== 'undefined') { %>
+ <% if(typeof users.biography != 'undefined') { %>
<%= users.biography %>
<% } else { %>
User Has No biography