From 5b2b444b02c9993121e1f21c9c3fa94e60a85dd3 Mon Sep 17 00:00:00 2001 From: Raphix Date: Thu, 24 Aug 2023 22:51:40 +0200 Subject: [PATCH] Version 0.3.0 - Ajout de l'interface Web - First Steps to it --- data/betas.json | 1 + package-lock.json | 16 +- package.json | 6 +- src/modules/discord-bot.js | 18 +- src/modules/global-variables.js | 5 +- src/modules/sub-auth.js | 46 +- src/modules/sub-list.js | 5 + src/modules/sub-player.js | 146 +++++- src/modules/sub-web.js | 121 ++++- src/web/public/images/black-image.svg | 3 + src/web/public/images/discord-logo-white.png | Bin 0 -> 32637 bytes src/web/public/images/logo.ico | Bin 0 -> 208802 bytes src/web/public/images/logo.png | Bin 0 -> 63795 bytes src/web/public/images/title.png | Bin 0 -> 12916 bytes src/web/public/javascript/IO.js | 26 +- src/web/public/javascript/__index_script.js | 237 +++++++++- src/web/public/stylesheets/gunship.ttf | Bin 0 -> 21992 bytes src/web/public/stylesheets/style.css | 451 +++++++++++++++++++ src/web/routes/index.js | 1 + src/web/routes/internal.js | 6 + src/web/routes/login.js | 34 +- src/web/templates/error.ejs | 56 ++- src/web/templates/index.ejs | 78 +++- src/web/templates/login.ejs | 20 +- 24 files changed, 1233 insertions(+), 43 deletions(-) create mode 100644 data/betas.json create mode 100644 src/web/public/images/black-image.svg create mode 100644 src/web/public/images/discord-logo-white.png create mode 100644 src/web/public/images/logo.ico create mode 100644 src/web/public/images/logo.png create mode 100644 src/web/public/images/title.png create mode 100644 src/web/public/stylesheets/gunship.ttf diff --git a/data/betas.json b/data/betas.json new file mode 100644 index 0000000..f75b76e --- /dev/null +++ b/data/betas.json @@ -0,0 +1 @@ +["486943594893017119","442290526545510421"] \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index a222773..2bb0654 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,7 +6,7 @@ "packages": { "": { "name": "subsonics-web", - "version": "0.2.2", + "version": "0.2.3", "dependencies": { "cookie": "^0.5.0", "cookie-parser": "^1.4.6", @@ -14,6 +14,7 @@ "ejs": "^3.1.9", "erela.js": "^2.4.0", "express": "^4.18.2", + "express-favicon": "^2.0.4", "nodemon": "^2.0.22", "socket.io": "^4.6.1", "uuid": "^9.0.0", @@ -704,6 +705,14 @@ "node": ">= 0.10.0" } }, + "node_modules/express-favicon": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/express-favicon/-/express-favicon-2.0.4.tgz", + "integrity": "sha512-JDGzumJdwF+WcJf+qwyhdpF1yzducuMCxZa+G6hxR3hor7ae/1CqpAPj8FXCGaGtqBA6ExDMfeszjuYRw5GUuQ==", + "engines": { + "node": ">=4" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -2250,6 +2259,11 @@ "vary": "~1.1.2" } }, + "express-favicon": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/express-favicon/-/express-favicon-2.0.4.tgz", + "integrity": "sha512-JDGzumJdwF+WcJf+qwyhdpF1yzducuMCxZa+G6hxR3hor7ae/1CqpAPj8FXCGaGtqBA6ExDMfeszjuYRw5GUuQ==" + }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", diff --git a/package.json b/package.json index f84a7b2..752045a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "subsonics-web", "author": "Raphix", - "version": "0.2.3", + "version": "0.3.0", "nodemonConfig": { "ext": "js, html", "ignore": [ @@ -18,6 +18,7 @@ "ejs": "^3.1.9", "erela.js": "^2.4.0", "express": "^4.18.2", + "express-favicon": "^2.0.4", "nodemon": "^2.0.22", "socket.io": "^4.6.1", "uuid": "^9.0.0", @@ -26,5 +27,6 @@ "scripts": { "start": "nodemon src/main.js", "dev": "set DEV=true& nodemon src/main.js" - } + }, + "beta_on": true } diff --git a/src/modules/discord-bot.js b/src/modules/discord-bot.js index 53358ff..fefebfd 100644 --- a/src/modules/discord-bot.js +++ b/src/modules/discord-bot.js @@ -6,6 +6,7 @@ const { __glob } = require("./global-variables") const { LogType } = require("../modules/sub-log") const { List } = require("./sub-list") const nodeFinder = require("./nodes-finder") +const subplayer = require("./sub-player") const client = new Client({ intents:[GatewayIntentBits.Guilds, GatewayIntentBits.GuildVoiceStates, GatewayIntentBits.GuildMembers], @@ -13,6 +14,11 @@ const client = new Client({ const membersVoices = new Map() +module.exports.getClient = function () { + + return client +} + module.exports.DiscordBot = class { constructor(config, dlog) { @@ -192,6 +198,9 @@ function startErelaManager(dlog, config) { client.channels.fetch(player.options.voiceChannel).then(channel => { plog.log("Nouveau Player instancié dans : " + channel.name) }) + + + process.emit("MUSIC_UPDATE_STATE") }) @@ -201,13 +210,16 @@ function startErelaManager(dlog, config) { client.channels.fetch(player.options.voiceChannel).then(channel => { plog.log("Player supprimé dans : " + channel.name) }) - + + process.emit("MUSIC_UPDATE_STATE") }) client.manager.on("trackStart", (song) => { plog.log("Lecture de '" + song.queue.current.title + "' de '" + song.queue.current.author + "'") list.setCurrent(song) + + process.emit("MUSIC_UPDATE_STATE") }) @@ -222,6 +234,9 @@ function startErelaManager(dlog, config) { } } + + + process.emit("MUSIC_UPDATE_STATE") }) // Emitted whenever a node connects @@ -235,6 +250,7 @@ function startErelaManager(dlog, config) { }) + // THIS IS REQUIRED. Send raw events to Erela.js client.on("raw", d => client.manager.updateVoiceState(d)); } \ No newline at end of file diff --git a/src/modules/global-variables.js b/src/modules/global-variables.js index 4adf0f0..fb47b8f 100644 --- a/src/modules/global-variables.js +++ b/src/modules/global-variables.js @@ -5,12 +5,14 @@ const root = path.resolve(__dirname, '../../') const __glob = { CONFIG: root + path.sep + "data" + path.sep + "config.json", USERS: root + path.sep + "data" + path.sep + "users.json", + BETA_USERS: root + path.sep + "data" + path.sep + "betas.json", ROOT: root, WEB_DIR: root + path.sep + "src" + path.sep + "web", COMMANDS: root + path.sep + "src" + path.sep + "commands", SUBLOG: root + path.sep + "src" + path.sep + "modules" + path.sep + "sub-log.js", SUBPLAYER: root + path.sep + "src" + path.sep + "modules" + path.sep + "sub-player.js", SUBLIST: root + path.sep + "src" + path.sep + "modules" + path.sep + "sub-list.js", + DISCORDBOT: root + path.sep + "src" + path.sep + "modules" + path.sep + "discord-bot.js", PACKAGE: root + path.sep + "package.json", DATA: root + path.sep + "data" + path.sep, NODES: root + path.sep + "data" + path.sep + "nodes.json", @@ -21,7 +23,8 @@ const __web = { ROUTER: webroot + "routes" + path.sep, PUBLIC: webroot + "public", - TEMPLATES: webroot + "templates" + TEMPLATES: webroot + "templates", + ICON: webroot + "public" + path.sep + "images" + path.sep + "logo.ico" } module.exports = { __glob, __web }; diff --git a/src/modules/sub-auth.js b/src/modules/sub-auth.js index 8d979c1..5b4ac09 100644 --- a/src/modules/sub-auth.js +++ b/src/modules/sub-auth.js @@ -1,5 +1,5 @@ const { resolve } = require("path"); -const { __glob } = require("../modules/global-variables"); +const { __glob, __web } = require("../modules/global-variables"); const { LogType } = require('./sub-log'); const fs = require("fs") @@ -7,6 +7,9 @@ const alog = new LogType("Authentification") var users = new Map() var sessions = new Array() +var betausers = new Array() + +var packageJson = JSON.parse(fs.readFileSync(__glob.PACKAGE)) updateUsers() @@ -78,11 +81,31 @@ module.exports.getDiscordUser = function (code, session) { reject("MIGRATE_ACCOUNT_ONLY") } else { - user.auth = authorizationKey - Object.assign(user, userInfo) + + if(packageJson.beta_on == false) { + user.auth = authorizationKey + Object.assign(user, userInfo) + + + resolve(user) + + } else { + + if(betausers.includes(userInfo.user.id)) { + + user.beta = true + Object.assign(user, userInfo) + + + resolve(user) - - resolve(user) + } else { + + reject("NOT_IN_BETA") + } + + } + } @@ -172,18 +195,31 @@ module.exports.removeUser = function (token) { function updateUsers() { + + if(!fs.existsSync(__glob.BETA_USERS)){ + + fs.writeFileSync(__glob.BETA_USERS, '[]') + } if(!fs.existsSync(__glob.USERS)){ fs.writeFileSync(__glob.USERS, '[]') } + const userDB = JSON.parse(fs.readFileSync(__glob.USERS)) + const betausersDB = JSON.parse(fs.readFileSync(__glob.BETA_USERS)) for (const user of userDB) { users.set(user.token, user) } + for (const id of betausersDB) { + + betausers.push(id) + } + alog.log("Actualisation de " + userDB.length + " utilisateurs depuis : " + __glob.USERS) + alog.log("Actualisation de " + betausersDB.length + " utilisateurs bêtas depuis : " + __glob.BETA_USERS) } \ No newline at end of file diff --git a/src/modules/sub-list.js b/src/modules/sub-list.js index 3c25d20..99cc733 100644 --- a/src/modules/sub-list.js +++ b/src/modules/sub-list.js @@ -14,6 +14,11 @@ module.exports.List = class { } + getList() { + + return next + } + destroy() { next = new Array() diff --git a/src/modules/sub-player.js b/src/modules/sub-player.js index aa68c72..8cb341c 100644 --- a/src/modules/sub-player.js +++ b/src/modules/sub-player.js @@ -2,7 +2,9 @@ const { SlashCommandBuilder, EmbedBuilder, DefaultWebSocketManagerOptions } = re const { __glob } = require("../modules/global-variables"); const { LogType } = require("./sub-log"); const { List } = require("./sub-list") -var ytfps = require("ytfps") +const discord = require("./discord-bot") +var ytfps = require("ytfps"); + const list = new List() @@ -70,7 +72,8 @@ module.exports.play = async function (client, interaction) { // [A FINIR POUR WEB] } - + + process.emit("MUSIC_UPDATE_STATE") } @@ -116,9 +119,29 @@ module.exports.pause = function (client, interaction) { } else { - // [A FINIR POUR WEB] + if(!client) { + + client = discord.getClient() + } + + let player = client.manager.players.get("137291455336022018") + + if(player) { + + if(player.playing) { + player.pause(true) + } else { + + player.pause(false) + } + + } + + } + process.emit("MUSIC_UPDATE_STATE") + } module.exports.getState = function(client, interaction) { @@ -149,6 +172,7 @@ module.exports.getState = function(client, interaction) { } + } @@ -193,12 +217,41 @@ module.exports.skip = function (client, interaction) { } else { - // [A FINIR POUR WEB] + if(!client) { + + client = discord.getClient() + } + + let player = client.manager.players.get("137291455336022018") + + if(list.haveSongs()) { + player.stop() + } + + } + process.emit("MUSIC_UPDATE_STATE") +} + +module.exports.seek = function (data) { + + + + client = discord.getClient() + + + let player = client.manager.players.get("137291455336022018") + + player.seek(data) + + process.emit("MUSIC_UPDATE_STATE") + + } + module.exports.previous = function (client, interaction) { if(interaction) { @@ -238,8 +291,91 @@ module.exports.previous = function (client, interaction) { } + } else { + + if(!client) { + + client = discord.getClient() + } + + let player = client.manager.players.get("137291455336022018") + + if(list.havePreviousSongs()){ + list.__next_add(player.queue.current) + player.play(list.previous()) + } + + + } + process.emit("MUSIC_UPDATE_STATE") +} + +const clog = new LogType("Actualisation") + +module.exports.updateMusicState = function (client, action) { + + if(!client) { + + client = discord.getClient() } + let player = client.manager.players.get("137291455336022018") + var currentTitle = "null" + + const data = { + "playing": 0, + "current":null, + "isOnline": false, + "queue": null, + "loop": false, + "durationNow": null, + "durationAll": null, + "volume": null + } + + if(player) { + + data["current"] = player.queue.current + + if(player.queueRepeat == true) { + + data["loop"] = true + } + + data["volume"] = player.volume * 10 + + + if(player.queue.current) { + data["durationNow"] = player.position + data["durationAll"] = player.queue.current.duration + currentTitle = player.queue.current.title + } + + + if(player.playing == true && player.paused == false) { + + data["playing"] = 1 + } else { + data["playing"] = 0 + + } + + data["queue"] = list.getList(); + data["isOnline"] = true + + } + + + if(action == "end") { + + data["current"] = null; + data["isOnline"] = false + } + + clog.log("Actualisation de tous les clients - Titre : " + currentTitle) + return data + + } // FINI @@ -284,7 +420,9 @@ module.exports.leave = function (client, interaction) { } + process.emit("MUSIC_UPDATE_STATE") + } diff --git a/src/modules/sub-web.js b/src/modules/sub-web.js index 19f44aa..f0476e4 100644 --- a/src/modules/sub-web.js +++ b/src/modules/sub-web.js @@ -5,7 +5,7 @@ const log = require("./sub-log"); const auth = require("./sub-auth"); const cook = require("cookie") const wlog = new LogType("Web") - +const subplayer = require(__glob.SUBPLAYER); module.exports.WebServer = class { constructor() { @@ -23,6 +23,7 @@ function init() { const path = require('path'); const cookieParser = require('cookie-parser'); const http = require("http"); + const favicon = require('express-favicon'); const app = express(); @@ -49,7 +50,7 @@ function init() { app.use('/', indexRouter); app.use('/login', loginRouter); app.use("/internal", internalRouter) - + app.use(favicon(__web.ICON)); app.use(function (req, res, next) { next(createError(404)); @@ -134,15 +135,26 @@ function IOConnection(io) { const alog = log.getInstance("Authentification") + process.on("MUSIC_UPDATE_STATE", () => { + + const data = subplayer.updateMusicState() + + io.sockets.emit("/ALWAYS/MUSIC_STATE", data) + + }) + io.on("connection", (socket) => { wlog.log("[SOCKET] - Nouvelle session : " + socket.id) socket.on("disconnect", () => { - + wlog.log("[SOCKET] - Fin de session : " + socket.id) + }) + // SPECIAL + socket.on("GET/DISCORD_LOGIN_LINK", () => { @@ -160,8 +172,54 @@ function IOConnection(io) { io.emit("ANSWER/GET/DISCORD_LOGIN_LINK", discordlink ) }) + GetRequest(socket, "USER_INFO", () => { + var cookies = socket.handshake.headers.cookie + cookies = cook.parse(cookies) + var token = cookies.token + - socket.on("GET/USER_INFO", () => { + const user = auth.getUser(token) + alog.log("Envoi des informations Discord de '" + user.user.username + "' à '" + socket.id + "'" ) + socket.emit("ANSWER/GET/USER_INFO",user) + }) + + GetRequest(socket, "MUSIC_STATE", () => { + var cookies = socket.handshake.headers.cookie + cookies = cook.parse(cookies) + var token = cookies.token + + + const data = subplayer.updateMusicState() + const user = auth.getUser(token) + socket.emit("ANSWER/GET/MUSIC_STATE", "Bienvenue " + user.user.username + " ! ") + io.sockets.emit("/ALWAYS/MUSIC_STATE", data) + }) + + + + + GetRequest(socket, "PAUSE", () => { + + subplayer.pause() + io.emit("ANSWER/GET/PAUSE", "OK") + }) + + + GetRequest(socket, "BACKWARD", () => { + + subplayer.previous() + io.emit("ANSWER/GET/BACKWARD", "OK") + }) + + GetRequest(socket, "FORWARD", () => { + + subplayer.skip() + io.emit("ANSWER/GET/FORWARD", "OK") + }) + + // SEND REQUEST + + socket.on("SEND/SEEK", (data) => { var cookies = socket.handshake.headers.cookie @@ -173,24 +231,67 @@ function IOConnection(io) { if(auth.checkUser(token)) { - const user = auth.getUser(token) - alog.log("Envoi des informations Discord de '" + user.user.username + "' à '" + socket.id + "'" ) - socket.emit("ANSWER/GET/USER_INFO",user) + subplayer.seek(data) } else { - io.emit("ANSWER/GET/USER_INFO", {"error":"USER_DONT_EXIST"}) + io.emit("ANSWER/SEND/SEEK", {"error":"USER_DONT_EXIST"}) } } else { - io.emit("ANSWER/GET/USER_INFO", {"error":"TOKEN_NOT_FINDED"}) + io.emit("ANSWER/SEND/SEEK", {"error":"TOKEN_NOT_FINDED"}) } }) + + + + + + }) + +} + + + + + +function GetRequest (socket, name, func) { + + + socket.on("GET/" + name, () => { + + + var cookies = socket.handshake.headers.cookie + + if(cookies) { + + cookies = cook.parse(cookies) + var token = cookies.token + + if(auth.checkUser(token)) { + + func() + + } else { + + io.emit("ANSWER/GET/" + name, {"error":"USER_DONT_EXIST"}) + } + } else { + io.emit("ANSWER/GET/" + name, {"error":"TOKEN_NOT_FINDED"}) + + } + + + + }) + + +} + -} \ No newline at end of file diff --git a/src/web/public/images/black-image.svg b/src/web/public/images/black-image.svg new file mode 100644 index 0000000..fad9438 --- /dev/null +++ b/src/web/public/images/black-image.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/web/public/images/discord-logo-white.png b/src/web/public/images/discord-logo-white.png new file mode 100644 index 0000000000000000000000000000000000000000..22ef91af1ba3f864dee7066c171223337bf67f03 GIT binary patch literal 32637 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≻XSP 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 literal 0 HcmV?d00001 diff --git a/src/web/public/images/logo.ico b/src/web/public/images/logo.ico new file mode 100644 index 0000000000000000000000000000000000000000..d90e833f2a54a7fc8ea62a68d10fb6409b53573c GIT binary patch literal 208802 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 literal 0 HcmV?d00001 diff --git a/src/web/public/images/title.png b/src/web/public/images/title.png new file mode 100644 index 0000000000000000000000000000000000000000..7097877f61219a961db72273e611e3ca551a527e GIT binary patch literal 12916 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 { socket.emit("GET/" + request) - console.log("Envoi de la requête : " + request) + console.log("Envoi de la requête GET : " + request) socket.once("ANSWER/GET/" + request, (answer) => { @@ -28,3 +28,27 @@ function get(request) { }) } + +function send(request, data) { + + return new Promise((resolve, reject) => { + + socket.emit("SEND/" + request, data) + console.log("Envoi de la requête SEND : " + request) + + socket.once("ANSWER/SEND/" + request, (answer) => { + + console.log("Réponse pour la requête : " + request) + + resolve(answer) + + }) + + }) + +} + +function getSocket() { + + return socket +} diff --git a/src/web/public/javascript/__index_script.js b/src/web/public/javascript/__index_script.js index 7c81acf..e983052 100644 --- a/src/web/public/javascript/__index_script.js +++ b/src/web/public/javascript/__index_script.js @@ -1,8 +1,243 @@ const userInfoDiv = document.getElementById("userInfo") +const userInfoPopup = document.getElementById("userPopup") +const userInfoglobal = document.getElementById("userInfoglobal") + +const musicTitle = document.getElementById("music_title") +const musicURL = document.getElementById("music_img") + +const durationBar = document.getElementById("duration") +const durationTextAct = document.getElementById("durationTextAct") +const durationTextTotal = document.getElementById("durationTextTotal") + +const backward = document.getElementById("backward") +const play = document.getElementById("play") +const forward = document.getElementById("forward") + +const settings_dialog = document.getElementById("SETTINGS_dialog") +const settings_close = document.getElementById("SETTINGS_close") +const settingsBtn = document.getElementById("settingsBtn") + const userInfo = get("USER_INFO") +settingsBtn.addEventListener("click", () => { + + settings_dialog.showModal() +}) + +settings_close.addEventListener("click",() => { + + settings_dialog.close() +}) + +var durationAll = 0 +var durationProgress = 0 +var isPlaying = false +let interval; + +durationBar.addEventListener("change", () => { + + send("SEEK", durationBar.value) + +}) + + userInfo.then(user => { - userInfoDiv.innerHTML = "

" + user.user.global_name + "

" + user.user.username + "

" + var betastar = "" + + if(user.beta) { + + betastar = "

BETA

" + } + + userInfoDiv.innerHTML = "

" + user.user.global_name + "

" + user.user.username + "

" + betastar + "
" }) + +userInfoDiv.addEventListener("click", () => { + + + userInfoPopup.classList.add("INDEX_userPopup_Visible") + userInfoPopup.classList.remove("INDEX_userPopup") +}) + +userInfoglobal.addEventListener("mouseleave", () => { + + userInfoPopup.classList.add("INDEX_userPopup") + userInfoPopup.classList.remove("INDEX_userPopup_Visible") +}) + +get("MUSIC_STATE").then(data => { + console.log(data) +}) + +play.addEventListener('click', () => { + + get("PAUSE") +}) + +backward.addEventListener('click', () => { + + get("BACKWARD") +}) + + +forward.addEventListener("click", () => { + + get("FORWARD") +}) + +socket.on("/ALWAYS/MUSIC_STATE", (data) => { + + + stopInterval() + console.log(data) + + durationAll = 0 + durationProgress = 0 + isPlaying = false + + if(data.current == null) { + + musicURL.innerHTML = '' + musicTitle.innerHTML = "

Aucun titre joué

" + } else { + + musicURL.innerHTML = '' + musicTitle.innerHTML = "

" + data.current.title + "

" + } + + if(data.durationAll) { + durationBar.disabled = false + durationBar.classList.remove("grised") + setTime() + + durationAll = data.durationAll + durationProgress = data.durationNow + durationBar.value = durationProgress + setTime() + + } else { + + + isPlaying = false + durationAll = 0 + durationProgress = 0 + durationBar.disabled = true + durationBar.classList.add("grised") + durationBar.value = 0 + durationTextAct.innerHTML = "-:--" + durationTextTotal.innerHTML = "-:--" + + } + + + if(data.playing == 1) { + play.innerHTML = '' + isPlaying = true + startInterval() + } else { + + play.innerHTML = '' + isPlaying = false + + } + + + + if(data.current && data.playing == 0) { + setTime() + + } + + + + + +}) + +function startInterval() { + interval = setInterval(() => { + + + if(isPlaying == true) { + setTime() + + } + + }, 1000) + +} + +function stopInterval() { + clearInterval(interval); +} + + + + + + +function setTime() { + + + durationBar.max = durationAll + durationProgress += 1000 + durationBar.value = durationProgress + + + const maxhours = Math.floor(durationAll / 3600000); + const nowhours = Math.floor(durationProgress / 3600000); + + + + var maxmin = Math.trunc(durationAll / 60000) - (Math.floor(durationAll / 60000 / 60) * 60); + var maxsec = Math.floor(durationAll / 1000) - (Math.floor(durationAll / 1000 / 60) * 60); + var nowmin = Math.trunc(durationProgress / 60000) - (Math.floor(durationProgress / 60000 / 60) * 60); + var nowsec = Math.floor(durationProgress / 1000) - (Math.floor(durationProgress / 1000 / 60) * 60); + + console.log(durationAll) + console.log(durationProgress) + console.log("---------------------") + + var now = "" + var max = "" + + + if (maxmin < 10) { + maxmin = `0${maxmin}`; + } + + if (nowmin < 10) { + nowmin = `0${nowmin}`; + } + + if (maxsec < 10) { + maxsec = `0${maxsec}`; + } + + if (nowsec < 10) { + nowsec = `0${nowsec}`; + } + + if(maxhours != 0) { + + max = maxhours + ":" + maxmin + ":" + maxsec + } else { + max = maxmin + ":" + maxsec + + } + + if(nowhours != 0) { + + now = nowhours + ":" + nowmin + ":" + nowsec + } else { + now = nowmin + ":" + nowsec + + } + + + + durationTextAct.innerHTML = now + durationTextTotal.innerHTML = max +} \ No newline at end of file diff --git a/src/web/public/stylesheets/gunship.ttf b/src/web/public/stylesheets/gunship.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f9dd5a129fd412053a180e04ec166397b22f9c29 GIT binary patch literal 21992 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 a{d!HmUemAF^y@YKdQHDx)32|eCH@otc(#H7 literal 0 HcmV?d00001 diff --git a/src/web/public/stylesheets/style.css b/src/web/public/stylesheets/style.css index e69de29..fc51fa0 100644 --- a/src/web/public/stylesheets/style.css +++ b/src/web/public/stylesheets/style.css @@ -0,0 +1,451 @@ +@font-face { + font-family: 'Gunship'; + src: url(Gunship.ttf); +} + +html { + + min-height: 100%; + min-width: 100%; + margin: 0; + +} + +body { + + background-color: black; + color: white; + font-family: 'Roboto', sans-serif; + background: linear-gradient(90deg, rgba(76,72,140,1) 0%, rgba(0,0,0,1) 100%), + linear-gradient(90deg, rgb(101, 95, 185) 0%, rgb(48, 48, 48) 100%); + +} + +/*LOGIN PAGE*/ + +.LOGIN_Connexion { + + font-family: 'Gunship'; + font-size: 20px; +} + +.LOGIN_box { + + text-align: center; + margin-top: 15vw; + border-radius: 12px; + + /* + background-color: #106f8b; + opacity: 0.8; + background-size: 6px 6px; + background-image: linear-gradient(0deg, #106f8b 50%, #1F859E 50%);*/ + background: linear-gradient(90deg, #515151 0%, #2e2e2e 100%); + align-items: center; + padding: 5%; + width: 500px; + margin-right: auto; + margin-left: auto; + +} + +.LOGIN_logopng { + + width: 60px; + height: 60px; +} + +.LOGIN_DiscordBtn { + + padding: 8px; + border-style: solid; + border-color: #2c3df4; + border-radius: 12px; + background-color: #2c3df4; + color: white; + width: 160px; + transition: all 0.2s ease 0s + +} + + + +.LOGIN_DiscordBtn:hover { + box-shadow: #2c3df4 0px 0px 10px; +} + +.LOGIN_DiscordBtn:active { + background-color: transparent; + box-shadow: #2c3df4 0px 0px 10px; +} + +.LOGIN_DiscordBtn img { + + width: 125px; + +} + +/*Index Page*/ + + +.INDEX_userInfo { + + display: flex; + align-items: center; + flex-direction: row; + text-align: right; +} + +.INDEX_userInfo:hover { + + cursor: pointer; +} + +.INDEX_title { + + color:white; + display: flex; + justify-content: space-between; + + +} + +.INDEX_usrname { + + opacity: 0.8; + font-size: 12px; + margin: 0; +} + + +.INDEX_gbname { + + margin: 0; +} + + +.INDEX_userInfo img { + + + width: 60px; + + +} + +.INDEX_Content { + + padding: 2%; +} + + + +.INDEX_userPopup { + + display: none; +} + +.INDEX_userPopup_Visible { + + display: flex; + flex-direction: column; + background-color: #2e2e2e; + margin-top: 20px; + font-size: 12px; + text-align: center; + color: white; + +} + +#userInfoglobal { + + align-items: right; +} + +.INDEX_signout { + + width: 100%; + color: red; + text-decoration: none; + outline: none; + padding: 10%; +} + +.INDEX_signout:hover { + + background-color: red; + color: white; + cursor: pointer; +} + +.INDEX_line { + + width: 100%; + color: rgb(155, 155, 155); + text-decoration: none; + outline: none; + padding: 10%; +} + +.INDEX_line:hover { + + background-color: rgb(255, 255, 255); + color: rgb(0, 0, 0); + cursor: pointer; +} + + +/*PLAYER*/ + + +.PLAYER_box { + + + background-color: rgba(0, 0, 0, 0.655); + display: flex; + flex-direction: row; + justify-content: space-between; + padding: 1.5%; + align-items: center; + position: absolute; + width: 100%; + bottom: 0; + color: white; + +} + +.PLAYER_middle { + + display: flex; + text-align: center; + align-items: center; + flex-direction: column; +} + +p { + + margin: 0 !important; +} + +.PLAYER_durationbar { + + margin-top: 1vh; + display: flex; + flex-direction: row; + align-items: center; + +} + +.PLAYER_title { + + display: flex; + flex-direction: row; + align-items: center; + width: 30vw; +} + +#duration { + + width: 25vw; + margin-right: 0.5vw; + margin-left: 0.5vw; +} + +#music_img { + + margin-right: 1vw; +} + + +.third { + + color: rgb(47, 47, 47); + background-color: transparent; + border: none; + border-radius: 100%; + text-shadow: 1px 1px 10px white; + font-size: 0.9vw; + margin-left: 0.8vw; + +} + +.primary { + + display: inline-block; + background-color: #ffffff; + color: rgb(0, 0, 0); + border: none; + border-radius: 100%; + width: 50px; + height: 50px; + font-size: 1vw; + + +} + +.primary:active { + + scale: 0.95; +} + +.secondary { + + color: rgb(178, 178, 178); + border: none; + background-color: transparent; + width: 50px; + height: 50px; + font-size: 1vw; + +} + +.secondary:hover { + + color: white; +} + + +.showPicture { + + margin: 0 !important; + margin-bottom: 10px; + width: 4vw; + height: 4vw; +} + +.title { + + width: 100%; +} + +.PLAYER_actionbar { + text-align: right; + width: 30vw; + +} + +.grised { + + filter : invert(50%); +} + +/*SETTINGS*/ + +.SETTINGS_dialog { + + width: 40vw; + height: 25vw; + padding: 0; + background: linear-gradient(90deg, #515151 0%, #2e2e2e 100%); + border: none; + border-radius: 12px; +} + +.SETTINGS_content { + + display: flex; + width: 100%; + flex-direction: row; + +} + +.ssidebar { + width: 12vw; + position: sticky; + height: 25vw; + background-color: #2d2d2d; + border-radius: 12px 0 0 12px; + display: flex; /* Ajout : pour aligner les éléments verticalement à l'intérieur */ + flex-direction: column; /* Ajout : pour aligner les éléments verticalement à l'intérieur */ +} + +.scontent { + flex: 1; + padding: 1vw; + border-radius: 0 12px 12px 0; + + +} + +.slineclose { + + width: 100%; + text-align: right; + +} + +.SETTINGS_close { + + +} + +.dialogTitle { + + color: white; + font-family: 'Gunship', sans-serif; + font-size: 0.85vw; +} + +.ssidebar_line { + + color: white; + width: 100%; + text-align: left; + transition: all 0.1s ease 0s; + padding: 8%; +} + +.ssidebar_line:hover { + + background-color: white; + color: black; + +} + + +.ssidebar_content { + + height: 100%; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + cursor: pointer; +} + +.beta { + + font-family: 'Gunship', sans-serif; + font-size: 10px; + position: fixed; + width: 60px; + transform: translateY(300%); + background-color: rgb(48, 5, 77); + +} + + +.INDEX_picture { + padding-left: 10%; + display: flex; + flex-direction: column; + text-align: center; +} + +.SETTINGS_close { + color: red; + background-color: transparent; + border-radius: 50vw; + border-color: red; + border-style: solid; + padding: 5px; + width: 40px; + height: 40px; + transition: all 0.2s ease 0s; +} + +.SETTINGS_close:hover { + + color: white; + background-color: red; + cursor: pointer; +} \ No newline at end of file diff --git a/src/web/routes/index.js b/src/web/routes/index.js index d53f407..fdd869e 100644 --- a/src/web/routes/index.js +++ b/src/web/routes/index.js @@ -18,4 +18,5 @@ router.get('/', function(req, res, next) { }); + module.exports = router; \ No newline at end of file diff --git a/src/web/routes/internal.js b/src/web/routes/internal.js index 8bc3a6c..2f69a07 100644 --- a/src/web/routes/internal.js +++ b/src/web/routes/internal.js @@ -44,10 +44,16 @@ router.get('/redirect', function(req, res, next) { alog.step.error("get_discord_info_" + req.cookies.session) console.log(error) + + if(error == "MIGRATE_ACCOUNT_ONLY") { res.redirect('/login?error=MIGRATE_ACCOUNT_ONLY') + } else if(error == "NOT_IN_BETA") { + + res.redirect('/login?error=NOT_IN_BETA') + } else { res.redirect('/login?error=CANCEL_LOGIN') diff --git a/src/web/routes/login.js b/src/web/routes/login.js index 8bcc18e..846f942 100644 --- a/src/web/routes/login.js +++ b/src/web/routes/login.js @@ -20,8 +20,40 @@ router.get('/', function(req, res, next) { res.cookie("session", session) } + + var error = "" + + if(req.query.error == "CANCEL_LOGIN") { + + error = "

Une erreur est survenue lors de l'authentification !

" + + } + + if(req.query.error == "MIGRATE_ACCOUNT_ONLY") { + + error = "

Uniquement les comptes migrés sont accéptés !

" + + } + + if(req.query.error == "IS_NOT_IN_CLP") { + + error = "

Que fais-tu là ? Seul les membres du CLP peuvent contrôler le Bot

" + + } + + if(req.query.error == "ACCOUNT_BANNED") { + + error = "

Ton compte a été banni !

" + + } + + if(req.query.error == "NOT_IN_BETA") { + + error = "

Demande à Raphix pour t'inscrire à la Beta !

" + + } - res.render("login") + res.render("login", {login: error}) } }); diff --git a/src/web/templates/error.ejs b/src/web/templates/error.ejs index 16f2fe7..15fdcb3 100644 --- a/src/web/templates/error.ejs +++ b/src/web/templates/error.ejs @@ -1,11 +1,49 @@ - - - - + + Subsonics - Error - - -

ERROR !

- - \ No newline at end of file + + + + +
+

Erreur

+

<%= message %> - <%= error.status %>

+
<%= error.stack %>
+ +
+
+
+ + + diff --git a/src/web/templates/index.ejs b/src/web/templates/index.ejs index f82fa53..3e87ba5 100644 --- a/src/web/templates/index.ejs +++ b/src/web/templates/index.ejs @@ -7,11 +7,83 @@ Subsonics - Web -

Subsonics

-
- +
+
+ +
+
+
+
Paramètres
+ Déconnexion +
+
+
+ +
+ + +
+
+ +

Aucun titre joué

+
+ +
+
+ + + +
+
+

0:00

+ +

0:00

+
+
+ +
+ + + + + +
+ +
+ + + +
+
+

Paramètres

+
+
Logs
+
Connexions
+
Gestion d'accès
+
Bêta
+
+ +
+
+
+ + +
+ +

NOT WORKING

+ +
+
+
+ + + + \ No newline at end of file diff --git a/src/web/templates/login.ejs b/src/web/templates/login.ejs index 15ceb0e..552cb3d 100644 --- a/src/web/templates/login.ejs +++ b/src/web/templates/login.ejs @@ -4,14 +4,26 @@ Subsonics - Login + -

Subsonics Login

- -

Fait avec le 💖 par Raphix

+ + - + + \ No newline at end of file