diff --git a/package.json b/package.json index c5e9e72..873d8fc 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "subsonics-web", "author": "Raphix", - "version": "2.0.1", + "version": "2.0.2", "nodemonConfig": { "ext": "js, html", "ignore": [ diff --git a/src/modules/discord-bot.js b/src/modules/discord-bot.js index 0e46024..ee164b6 100644 --- a/src/modules/discord-bot.js +++ b/src/modules/discord-bot.js @@ -203,6 +203,7 @@ function startErelaManager(dlog, config) { client.manager.on("playerDestroy",async (player) => { + await list.addCurrentToPrevious() await list.destroy() await client.channels.fetch(player.options.voiceChannel).then(channel => { plog.log("Player supprimé dans : " + channel.name) diff --git a/src/modules/sub-web.js b/src/modules/sub-web.js index 7b29bc3..fdfaaf2 100644 --- a/src/modules/sub-web.js +++ b/src/modules/sub-web.js @@ -19,8 +19,7 @@ const markdownit = require("markdown-it")({ typographer: true }) -const Lyrics = require('song-lyrics-api'); -const lyrics = new Lyrics(); + module.exports.WebServer = class { @@ -479,13 +478,19 @@ function IOConnection(io) { }) PostRequest("LYRICS", async (data) => { - lyrics.getLyrics(data) - .then((response) => { - PostAnswer("LYRICS", response[0].lyrics) + + let url = `https://paxsenixofc.my.id/server/getLyricsMusix.php?q=${data}&type=default`; + + fetch(url, { + method: 'GET', + }) + .then(response => response.text()) + .then(data => { + PostAnswer("LYRICS", data) }) .catch((error) => { - PostAnswer("LYRICS", null) - }) + console.error('Erreur:', error); + }); }) @@ -558,7 +563,7 @@ function IOConnection(io) { }) - + diff --git a/src/web/public/javascript/IO.js b/src/web/public/javascript/IO.js index 34ed8e0..b2e4bd9 100644 --- a/src/web/public/javascript/IO.js +++ b/src/web/public/javascript/IO.js @@ -1,19 +1,16 @@ var socketLink = null + fetch('/internal/socketlink', { method: "GET" }).then(link => {socketLink = link}) +/** + * @type {SocketIOClient.Socket} + */ const socket = io(socketLink); -socket.on("connect", () => { - console.log("Connecté au serveur par le Socket avec l'ID : " + socket.id) - get("MUSIC_STATE") -}); -socket.on("disconnect", () => { - window.location.href = "/" -}); function get(request) { diff --git a/src/web/public/javascript/basics.js b/src/web/public/javascript/basics.js index 4593bec..db65b99 100644 --- a/src/web/public/javascript/basics.js +++ b/src/web/public/javascript/basics.js @@ -138,7 +138,11 @@ class DroppableMenu { } } + class ModalComponent { + /** + * @type {HTMLElement} + */ Element; constructor(properties) { this.title = properties.title @@ -191,7 +195,11 @@ class ModalComponent { } hide() { - this.Element.outerHTML = "" + + if(this.Element && this.Element.parentElement) { + this.Element.outerHTML = "" + } + } diff --git a/src/web/public/javascript/index.js b/src/web/public/javascript/index.js index 6aa6200..1131b66 100644 --- a/src/web/public/javascript/index.js +++ b/src/web/public/javascript/index.js @@ -41,3 +41,29 @@ AlwaysRequest("ALL_CONNECTED_USER", (data) => { website_list_number.innerHTML = userToPush.length }) + +const modalError = new ModalComponent({ + title: "Erreur", + content: ` +
Vous avez été déconnecté du serveur Subsonics.
+En utilisant Subsonics, vous bénéficiez du droit d'accès au service et de l'écoute du contenu. Cependant, veuillez noter que Raphix n'est pas tenu de fournir la provenance ni l'autorisation d'exploitation des musiques par les ayants droits. Il vous incombe donc d'obtenir les autorisations nécessaires des ayants droits pour écouter le contenu.
Les paroles fournies sur ce site sont obtenues auprès de Deezer (c).
-En utilisant Subsonics, vous acceptez de respecter les conditions d'utilisation de Deezer (c) et de ne pas utiliser les paroles à des fins commerciales.
-En utilisant Subsonics, vous acceptez de ne pas utiliser le bot pour diffuser des contenus illégaux, violents, haineux, discriminatoires, ou à caractère sexuel.
En utilisant Subsonics, vous acceptez de ne pas utiliser le bot pour diffuser des contenus à caractère politique, religieux, ou incitant à la haine.
@@ -108,44 +104,44 @@ function oobeStep2() {Appuyez sur ce bouton mettre en pause ou reprendre la lecture de la musique.
+ +Mettre en pause ou reprendre la lecture de la musique.
Appuyez sur ce bouton pour revenir au début de la musique actuelle.
+ +Revenir au début de la musique actuelle.
Appuyez sur ce bouton pour passer à la musique suivante.
+ +Passer à la musique suivante.
Appuyez sur ce bouton pour activer ou désactiver la répétition de la musique actuelle.
+ +Activer ou désactiver la répétition de la musique actuelle.
Appuyez sur ce bouton pour activer ou désactiver la lecture aléatoire des musiques.
+ +Activer ou désactiver la lecture aléatoire des musiques.
Appuyez sur ce bouton pour afficher les paroles - Ctrl + Click Recherche n'importe quelles paroles sur Deezer.
+ +Afficher les paroles - Ctrl + Click pour rechercher n'importe quelles paroles.
Appuyez sur ce bouton pour déconnecter le bot de votre salon vocal.
+ +Déconnecter le bot de votre salon vocal.
Appuyez sur ce bouton pour déplacer le bot dans votre salon vocal.
+ +Déplacer le bot dans votre salon vocal.
Utilisez ce curseur pour régler le volume de la musique.
+ +Régler le volume de la musique.
Utilisez ce curseur pour régler la position de la musique.
+ +Régler la position de la musique.
À suivre
Historique
-Utilisez ces boutons pour changer de liste de lecture.
+Passe entre la liste de lecture et l'historique.
-:--
Vous pouvez déplacer les titres dans l'ordre que vous le souhaitez en glissant et en déposant
+Déplacer des titres dans la liste de lecture en glissant et en déposant
Appuyez sur ce bouton pour vider la liste de lecture.
+Efface la liste de lecture
Appuyez sur ce bouton pour afficher les options de la musique. - Ctrl + Click Permet de supprimer la musique de la liste de lecture.
+Affiche les options de la musique. - Ctrl + Click Permet de supprimer la musique de la liste de lecture.
Appuyez sur ce bouton pour ajouter la playlist à la liste de lecture.
+Ajouter la playlist à la liste de lecture.
Appuyez sur ce bouton pour lire directement la playlist.
+Lire directement la playlist.
Appuyez sur ce bouton pour partager la playlist.
+Partager la playlist.
Appuyez sur ce bouton pour supprimer la playlist.
+Supprimer la playlist.
Appuyez sur ce bouton pour renommer la playlist.
+Renommer la playlist.
Utilisez cette barre de recherche pour trouver des musiques sur Youtube, Soundcloud et Vimeo.
+Trouver des musiques sur Youtube, Soundcloud et Vimeo.
Appuyez sur ce bouton pour ajouter la musique à la liste de lecture.
+Ajouter la musique à la liste de lecture.
Appuyez sur ce bouton pour lire directement la musique.
+Lire directement la musique.
Appuyez sur ce bouton pour sauvegarder la musique dans une playlist.
+Sauvegarder la musique dans une playlist.
Aucune paroles trouvées pour cette musique !
@@ -336,28 +339,16 @@ function showLyrics(title) { const lyricsArray = new Array() - for(var line of res.lyrics.split("\n")) { - // Remove the line if it's start with Paroles de la chanson - if(line.startsWith("Paroles de la chanson")) { - continue - } - if(line == "") { - lyricsArray.push("${lyrics}
`) } + }) - // Bold the line if it's between [] - - if(line.startsWith("[") && line.endsWith("]")) { - lyricsArray.push("" + line + "
") - } else { - lyricsArray.push("" + line + "
") - } - - - } - - - lyricsArray.push("Aucune playlist
+Aucun titre dans cette playlist
" + playlistList.innerHTML = `Aucun titre dans cette playlist
+ +Subsonics est déconnecté
" + listDiv.innerHTML = ` + +Subsonics est déconnecté
+Aucune musique n'a été jouée
" + listDiv.innerHTML = ` +Aucune musique jouée
+Aucune musique n'est en attente
" + listDiv.innerHTML = ` +Aucune musique n'est en attente
+Aucune musique n'a été jouée
" + listDiv.innerHTML = ` +Aucune musique jouée
+Rapport & OOBE
+Rapport & Tutoriel
${contentAdmin}Playlists
- +