Compare commits

..

No commits in common. "960cbeabc36608f8773ebf3024ba017e1f9392ce" and "9a235e2602f99ade31498dec78fde834a1491de4" have entirely different histories.

12 changed files with 77 additions and 145 deletions

5
.gitignore vendored
View File

@ -41,12 +41,7 @@ bower_components
build/Release build/Release
# Dependency directories # Dependency directories
node_modules/ node_modules/
!node_modules/moonlink.js/
!node_modules/moonlink.js/dist/
jspm_packages/ jspm_packages/
# Snowpack dependency directory (https://snowpack.dev/) # Snowpack dependency directory (https://snowpack.dev/)

View File

View File

@ -1,8 +1,8 @@
[ [
{ {
"host": "localhost", "host": "omega.raphix.fr",
"port": 2333, "port": 2333,
"password": "youshallnotpass", "password": "youshallnotpass",
"retryAmount": 5 "retryAmount": 1
} }
] ]

View File

@ -481,8 +481,7 @@
"e18b2d89-2494-4cfe-af55-dad6dfbc0c60", "e18b2d89-2494-4cfe-af55-dad6dfbc0c60",
"0a0b75f3-6a42-4ccf-92f9-d992a63545a4", "0a0b75f3-6a42-4ccf-92f9-d992a63545a4",
"419a246f-e7b3-4aa4-9fa0-816dffc22a19", "419a246f-e7b3-4aa4-9fa0-816dffc22a19",
"471c4c81-b8bc-42e7-af1a-d33df30cff2b", "471c4c81-b8bc-42e7-af1a-d33df30cff2b"
"9f299250-6017-457b-87b6-23181288150a"
], ],
"picture": "/userspictures/486943594893017119.png", "picture": "/userspictures/486943594893017119.png",
"banned": false, "banned": false,

14
package-lock.json generated
View File

@ -16,7 +16,7 @@
"express-favicon": "^2.0.4", "express-favicon": "^2.0.4",
"loguix": "^1.4.2", "loguix": "^1.4.2",
"markdown-it": "^13.0.1", "markdown-it": "^13.0.1",
"moonlink.js": "^3.6.4", "moonlink.js": "^3.6.0",
"nodemon": "^2.0.22", "nodemon": "^2.0.22",
"pm2": "^5.3.0", "pm2": "^5.3.0",
"request": "^2.88.2", "request": "^2.88.2",
@ -2271,9 +2271,9 @@
"integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==" "integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="
}, },
"node_modules/moonlink.js": { "node_modules/moonlink.js": {
"version": "3.6.4", "version": "3.6.0",
"resolved": "https://registry.npmjs.org/moonlink.js/-/moonlink.js-3.6.4.tgz", "resolved": "https://registry.npmjs.org/moonlink.js/-/moonlink.js-3.6.0.tgz",
"integrity": "sha512-qaL/FxrWtwLLJmUHyFIh+kQauM1TUEb1qeK1oeoPxQ175SXPFgGySCV01h/RGc0Ki4Erke5rKAERt/aP1xVA4w==", "integrity": "sha512-uzXCc8G+bl87TqgoLV1pJZ0WMcGVY5RyjUJpegvKhF5lhqShIPREiH60ZORi832VQoVyg3KCBJLMSKv0D3j8wQ==",
"engines": { "engines": {
"node": ">=16.6.0" "node": ">=16.6.0"
} }
@ -5536,9 +5536,9 @@
"integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==" "integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="
}, },
"moonlink.js": { "moonlink.js": {
"version": "3.6.4", "version": "3.6.0",
"resolved": "https://registry.npmjs.org/moonlink.js/-/moonlink.js-3.6.4.tgz", "resolved": "https://registry.npmjs.org/moonlink.js/-/moonlink.js-3.6.0.tgz",
"integrity": "sha512-qaL/FxrWtwLLJmUHyFIh+kQauM1TUEb1qeK1oeoPxQ175SXPFgGySCV01h/RGc0Ki4Erke5rKAERt/aP1xVA4w==" "integrity": "sha512-uzXCc8G+bl87TqgoLV1pJZ0WMcGVY5RyjUJpegvKhF5lhqShIPREiH60ZORi832VQoVyg3KCBJLMSKv0D3j8wQ=="
}, },
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",

View File

@ -20,7 +20,7 @@
"express-favicon": "^2.0.4", "express-favicon": "^2.0.4",
"loguix": "^1.4.2", "loguix": "^1.4.2",
"markdown-it": "^13.0.1", "markdown-it": "^13.0.1",
"moonlink.js": "^3.6.4", "moonlink.js": "^3.6.0",
"nodemon": "^2.0.22", "nodemon": "^2.0.22",
"pm2": "^5.3.0", "pm2": "^5.3.0",
"request": "^2.88.2", "request": "^2.88.2",

View File

@ -194,14 +194,11 @@ function startErelaManager(dlog, config) {
const list = new List() const list = new List()
client.manager.on("playerCreate", async (player) => { client.manager.on("playerCreate", async (player) => {
await client.channels.fetch(player.options.voiceChannel).then(channel => { await client.channels.fetch(player.options.voiceChannel).then(channel => {
plog.log("Nouveau Player instancié dans : " + channel.name) plog.log("Nouveau Player instancié dans : " + channel.name)
}) })
player.setVolume(100) player.setVolume(100)
process.emit("MUSIC_UPDATE_STATE") process.emit("MUSIC_UPDATE_STATE")
@ -245,7 +242,6 @@ function startErelaManager(dlog, config) {
client.manager.on("queueEnd", async () => { client.manager.on("queueEnd", async () => {
let player = await client.manager.players.get("137291455336022018") let player = await client.manager.players.get("137291455336022018")
console.log("END OF QUEUE")
if(player) { if(player) {
await list.addCurrentToPrevious() await list.addCurrentToPrevious()
@ -260,33 +256,9 @@ function startErelaManager(dlog, config) {
process.emit("MUSIC_UPDATE_STATE") process.emit("MUSIC_UPDATE_STATE")
}) })
let events = [ client.manager.on("playerUpdate", (player) => {
"playerConnected", require("./sub-player").updateMusicState(client)
"playerCreated", })
"playerPaused",
"playerRestarted",
"playerResume",
"playerStopped",
"playerSetVoiceChannel",
"playerAutoPlayTriggered",
"playerAutoLeaveTriggered",
"playerSetTextChannel",
"playerVolumeChanged",
"playerSkipped",
"playerSeeking",
"playerLoopSet",
"playerShuffled",
"playerMove",
"playerDisconnect",
"playerDestroyed",
"playerUpdate"
];
events.forEach(event => {
client.manager.on(event, (player) => {
process.emit("MUSIC_UPDATE_STATE");
});
});
// Emitted whenever a node connects // Emitted whenever a node connects
client.manager.on("nodeReady", node => { client.manager.on("nodeReady", node => {

View File

@ -119,13 +119,11 @@ module.exports.List = class {
setCurrent(song) { setCurrent(song) {
current = song.queue.current
current = song.current
} }
addCurrentToPrevious() { addCurrentToPrevious() {
if(current) { if(current) {
var previousList = getPreviousFile() var previousList = getPreviousFile()
previousList.unshift(current) previousList.unshift(current)

View File

@ -92,7 +92,7 @@ module.exports.play = async function (client, interaction) {
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -117,7 +117,6 @@ module.exports.pause = function (client, interaction) {
interaction.reply({embeds: [embed]}) interaction.reply({embeds: [embed]})
player.pause() player.pause()
process.emit("MUSIC_UPDATE_STATE")
} else { } else {
const embed = new EmbedBuilder() const embed = new EmbedBuilder()
@ -130,7 +129,6 @@ module.exports.pause = function (client, interaction) {
interaction.reply({embeds: [embed]}) interaction.reply({embeds: [embed]})
player.resume() player.resume()
process.emit("MUSIC_UPDATE_STATE")
} }
} else { } else {
@ -164,6 +162,7 @@ module.exports.pause = function (client, interaction) {
} }
} }
module.exports.getState = function(client, interaction) { module.exports.getState = function(client, interaction) {
@ -194,7 +193,7 @@ module.exports.getState = function(client, interaction) {
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -205,7 +204,7 @@ module.exports.playPlaylist = function (id, data, quick) {
playlist.videos = data playlist.videos = data
list.playlistAdd(playlist, null, id, quick) list.playlistAdd(playlist, null, id, quick)
process.emit("MUSIC_UPDATE_STATE")
} }
@ -271,7 +270,7 @@ module.exports.addSong = async function (data, userId, quick, playlist) {
process.emit("MUSIC_UPDATE_STATE")
} }
@ -294,7 +293,7 @@ module.exports.addSongsFromPlaylist = async function (data, userId, quick) {
process.emit("MUSIC_UPDATE_STATE")
} }
@ -357,7 +356,7 @@ module.exports.skip = function (client, interaction) {
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -367,21 +366,19 @@ module.exports.seek = function (data) {
client = discord.getClient() client = discord.getClient()
/**
* @type {import("moonlink.js").MoonlinkPlayer}
*/
let player = client.manager.players.get("137291455336022018") let player = client.manager.players.get("137291455336022018")
if(player) { if(player) {
player.seek((Number(data) - 1000)) player.seek(data)
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -400,7 +397,7 @@ module.exports.setVol = function (data) {
} }
process.emit("MUSIC_UPDATE_STATE")
@ -415,24 +412,20 @@ module.exports.loop = function (client) {
client = discord.getClient() client = discord.getClient()
} }
/**
* @type {import("moonlink.js").MoonlinkPlayer}
*/
let player = client.manager.players.get("137291455336022018") let player = client.manager.players.get("137291455336022018")
if(player) { if(player) {
if(player.loop == 1) { if(player.queueRepeat == true) {
player.setLoop(0) player.setQueueRepeat(false)
} else { } else {
player.setLoop(1) player.setQueueRepeat(true)
} }
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -458,7 +451,7 @@ module.exports.changeShuffle = function (client) {
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -493,7 +486,7 @@ module.exports.search = async function (data, client) {
} }
return answer return answer
process.emit("MUSIC_UPDATE_STATE")
} }
@ -554,7 +547,7 @@ module.exports.previous = function (client, interaction) {
} }
process.emit("MUSIC_UPDATE_STATE")
} }
const clog = new LogType("Actualisation") const clog = new LogType("Actualisation")
@ -629,7 +622,7 @@ module.exports.report = async function (client, interaction, data) {
interaction.reply({embeds: [membed]}) interaction.reply({embeds: [membed]})
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -668,7 +661,7 @@ module.exports.updateMusicState = function (client, action) {
data["current"] = player.current data["current"] = player.current
if(player.loop == 1) { if(player.queueRepeat == true) {
data["loop"] = true data["loop"] = true
} }
@ -682,6 +675,7 @@ module.exports.updateMusicState = function (client, action) {
currentTitle = player.current.title currentTitle = player.current.title
} }
console.log(player.paused)
if(player.paused) { if(player.paused) {
data["playing"] = 0 data["playing"] = 0
@ -706,7 +700,6 @@ module.exports.updateMusicState = function (client, action) {
clog.log("Actualisation Clients - Titre : " + currentTitle + " - Loop : " + data.loop + " - Shuffle : " + data.shuffle + " - Playing : " + data.playing + " - Volume : " + Math.trunc(data.volume / 10) ) clog.log("Actualisation Clients - Titre : " + currentTitle + " - Loop : " + data.loop + " - Shuffle : " + data.shuffle + " - Playing : " + data.playing + " - Volume : " + Math.trunc(data.volume / 10) )
return data return data
@ -760,7 +753,7 @@ module.exports.leave = function (client, interaction) {
} }
process.emit("MUSIC_UPDATE_STATE")
} }
@ -782,7 +775,7 @@ module.exports.moveOut = function(userId) {
} }
} }
process.emit("MUSIC_UPDATE_STATE")
} }
// FINI // FINI

View File

@ -29,7 +29,7 @@ var durationTotal = 0
var interval = null var interval = null
var currentTitle = null var currentTitle = ""
var playerState = "DISCONNECTED" var playerState = "DISCONNECTED"
@ -37,7 +37,7 @@ AlwaysRequest("MUSIC_STATE", async (data) => {
durationAct = 0 durationAct = 0
durationTotal = 0 durationTotal = 0
playerState = "DISCONNECTED" playerState = "DISCONNECTED"
currentTitle = null currentTitle = ""
stopInterval() stopInterval()
console.log(data) console.log(data)
@ -131,7 +131,7 @@ AlwaysRequest("MUSIC_STATE", async (data) => {
play.classList.add("disabled") play.classList.add("disabled")
currentTitle = null currentTitle = ""
} }
if(data.queue) { if(data.queue) {
@ -153,7 +153,7 @@ AlwaysRequest("MUSIC_STATE", async (data) => {
if(data.volume) { if(data.volume) {
volume.step = 1 volume.step = 1
volume.max = 150 volume.max = 200
volume.min = 1 volume.min = 1
volume.value = Math.trunc(data.volume / 10) volume.value = Math.trunc(data.volume / 10)
volTxt.innerHTML = Math.trunc(data.volume / 10) + "%" volTxt.innerHTML = Math.trunc(data.volume / 10) + "%"
@ -305,7 +305,7 @@ lyrics.addEventListener('click', (e) => {
} else { } else {
if(currentTitle) { if(currentTitle != "") {
showLyrics(currentTitle) showLyrics(currentTitle)
} else { } else {
@ -406,7 +406,7 @@ function startInterval() {
interval = setInterval(() => { interval = setInterval(() => {
if(playerState == "PLAYING" && currentTitle) { if(playerState == "PLAYING") {
setTime() setTime()
} }

View File

@ -9,7 +9,7 @@
body { body {
flex-direction: column; flex-direction: column;
align-items: flex-start; align-items: flex-start;
background: #19001e; background: #160120;
display: flex; display: flex;
color: #FFF; color: #FFF;
font-family: 'Inter', sans-serif; font-family: 'Inter', sans-serif;
@ -351,21 +351,11 @@ button:hover {
padding: 20px 20px 20px 20px; padding: 20px 20px 20px 20px;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
gap: 7px; gap: 20px;
align-self: stretch; align-self: stretch;
background: #131313; background: #131313;
} }
hr {
width: 100%;
display: block;
height: 1px;
border: 0;
border-top: 1px solid #cccccc87;
margin: 1em 0;
padding: 0;
}
/*Title*/ /*Title*/
.title { .title {
@ -403,11 +393,11 @@ hr {
.homeselector { .homeselector {
display: flex; display: flex;
width: 344px; width: 344px;
padding: 20px;
justify-content: space-around; justify-content: space-around;
align-items: flex-start; align-items: flex-start;
border-radius: 5px; border-radius: 10px;
background: #2F2F2F;
} }
.homeselector_div:hover { .homeselector_div:hover {
@ -430,7 +420,7 @@ hr {
.homeselector_icon { .homeselector_icon {
border: 2px solid #ffffff; border: 2px solid #ffffff;
border-radius: 5px; border-radius: 10px;
font-size: 23px; font-size: 23px;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
@ -442,7 +432,7 @@ hr {
} }
.homeselector_icon:hover { .homeselector_icon:hover {
/* background-color: #ffffff; */ background-color: #ffffff;
color: #000000; color: #000000;
transform: scale(0.95); transform: scale(0.95);
} }
@ -451,14 +441,14 @@ hr {
.playlist { .playlist {
display: flex; display: flex;
padding: 20px;
flex-direction: column; flex-direction: column;
align-items: flex-start; align-items: flex-start;
gap: 20px; gap: 20px;
flex: 1 0 0; flex: 1 0 0;
align-self: stretch; align-self: stretch;
border-radius: 5px; border-radius: 10px;
background: #2F2F2F;
} }
@ -529,9 +519,9 @@ hr {
align-items: center; align-items: center;
flex: 1 0 0; flex: 1 0 0;
align-self: stretch; align-self: stretch;
padding: 20px;
border-radius: 5px; border-radius: 10px;
background: rgba(217, 217, 217, 0.30);
} }
.view-other { .view-other {
@ -559,7 +549,7 @@ hr {
align-items: flex-start; align-items: flex-start;
gap: 10px; gap: 10px;
align-self: stretch; align-self: stretch;
border-radius: 5px; border-radius: 10px;
height: 30%; height: 30%;
background: rgba(217, 217, 217, 0.30); background: rgba(217, 217, 217, 0.30);
@ -609,7 +599,7 @@ hr {
flex: 1; flex: 1;
min-height: 0; min-height: 0;
align-self: stretch; align-self: stretch;
border-radius: 5px; border-radius: 10px;
background: rgba(217, 217, 217, 0.30); background: rgba(217, 217, 217, 0.30);
} }
@ -1074,7 +1064,7 @@ hr {
.playlist-add { .playlist-add {
background-color: #545454; background-color: #545454;
padding: 5px; padding: 5px;
border-radius: 5px; border-radius: 10px;
cursor: pointer; cursor: pointer;
transition: 0.2s; transition: 0.2s;
font-size: 14px; font-size: 14px;
@ -1118,7 +1108,7 @@ hr {
border: 2px solid #ffffff; border: 2px solid #ffffff;
border-radius: 5px; border-radius: 10px;
font-size: 20px; font-size: 20px;
width: 56px; width: 56px;
height: 56px; height: 56px;
@ -1201,7 +1191,7 @@ hr {
gap: 10px; gap: 10px;
align-self: stretch; align-self: stretch;
border-radius: 5px; border-radius: 10px;
@ -1457,12 +1447,6 @@ hr {
width: 100px !important; width: 100px !important;
} }
.vol_px {
display: flex;
gap: 5px !important;
}
.oobe-list { .oobe-list {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@ -1470,7 +1454,7 @@ hr {
align-items: flex-start; align-items: flex-start;
align-self: stretch; align-self: stretch;
padding: 20px; padding: 20px;
border-radius: 5px; border-radius: 10px;
background: rgba(217, 217, 217, 0.30); background: rgba(217, 217, 217, 0.30);
width: 30%; width: 30%;
@ -1507,7 +1491,7 @@ hr {
align-items: flex-start; align-items: flex-start;
align-self: stretch; align-self: stretch;
padding: 20px; padding: 20px;
border-radius: 5px; border-radius: 10px;
background: #2F2F2F; background: #2F2F2F;
width: 30%; width: 30%;
} }
@ -1519,7 +1503,7 @@ hr {
align-items: flex-start; align-items: flex-start;
align-self: stretch; align-self: stretch;
padding: 20px; padding: 20px;
border-radius: 5px; border-radius: 10px;
background: #2F2F2F; background: #2F2F2F;
} }
@ -1567,7 +1551,7 @@ hr {
.oobe-search { .oobe-search {
background: #2d2d2d; background: #2d2d2d;
padding: 20px; padding: 20px;
border-radius: 5px; border-radius: 10px;
} }
@ -1623,20 +1607,15 @@ input[type="range"] {
} }
/*Scrollbar */ /*Scrollbar */
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 5px; width: 10px;
margin-right: 20px; margin-right: 20px;
} }
::-webkit-scrollbar-track { ::-webkit-scrollbar-track {
border-radius: 12px; border-radius: 12px;
} }
::-webkit-scrollbar-thumb { ::-webkit-scrollbar-thumb {
background: #ffffff56;
border-radius: 5px;
transition: 0.2s;
}
::-webkit-scrollbar-thumb:hover {
background: #ffffffa8; background: #ffffffa8;
border-radius: 10px;
} }
@ -1647,7 +1626,7 @@ input[type="range"] {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 150px; width: 150px;
border-radius: 5px; border-radius: 10px;
z-index: 3; z-index: 3;
height: auto; height: auto;
} }
@ -1697,7 +1676,7 @@ input[type="range"] {
padding: 20px; padding: 20px;
box-shadow: 4px 5px 12px 5px rgba(0,0,0,0.6); box-shadow: 4px 5px 12px 5px rgba(0,0,0,0.6);
width: 50%; width: 50%;
border-radius: 5px; border-radius: 10px;
color: #FFF; color: #FFF;
} }

View File

@ -28,7 +28,6 @@
<span class="homeselector_text">Soundboard</span> <span class="homeselector_text">Soundboard</span>
</div> --> </div> -->
</div> </div>
<hr>
<div class="playlist"> <div class="playlist">
<div class="wintitle"> <div class="wintitle">
<p>Playlists</p> <p>Playlists</p>
@ -43,7 +42,6 @@
</div> </div>
<button class="playlist-add-btn" id="playlist-add"><i class="fa fa-plus"></i> Ajouter une playlist</button> <button class="playlist-add-btn" id="playlist-add"><i class="fa fa-plus"></i> Ajouter une playlist</button>
</div> </div>
<hr>
<div class="usercard"> <div class="usercard">
<div class="usercard_div"> <div class="usercard_div">
<img id="user-img" class="usercard_image" src="/images/default.jpg"></img> <img id="user-img" class="usercard_image" src="/images/default.jpg"></img>
@ -128,11 +126,9 @@
</div> </div>
<div> <div>
<div class="vol_px">
<span id="volIcon"><i class="fa fa-volume-up"></i></span>
<span id="volTxt"></span>
</div> <span id="volIcon"><i class="fa fa-volume-up"></i></span>
<span id="volTxt"></span>
<input id="volume" type="range" value="100" max="100"> <input id="volume" type="range" value="100" max="100">
</div> </div>