Version 1.0.0 - Finalisation du composant Servers
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
import DefaultSplash from '@/components/Layout/DefaultSplash.vue';
|
||||
|
||||
const defaultMessage = "On s'accorde et on prépare le concert !";
|
||||
const connectMsg = "Erreur de connexion au serveur : xhr poll error"
|
||||
|
||||
const props = defineProps({
|
||||
interuptionMessage: {
|
||||
@@ -15,8 +16,12 @@ const props = defineProps({
|
||||
<template>
|
||||
<DefaultSplash>
|
||||
<h1 v-if="!interuptionMessage" class="separate"><Icon spin-pulse icon="fa-solid fa-spinner"/> Chargement de l'interface</h1>
|
||||
<h1 v-else-if="interuptionMessage == connectMsg">Echec de connexion</h1>
|
||||
<h1 v-else><Icon icon="fa-solid fa-warning"/> Connexion interrompue</h1>
|
||||
<p v-if="interuptionMessage" class="retry"><Icon spin-pulse icon="fa-solid fa-spinner"/> Tentative de reconnexion en cours</p>
|
||||
<div class="separate-col">
|
||||
<p v-if="interuptionMessage" class="retry"><Icon spin-pulse icon="fa-solid fa-spinner"/> Tentative de reconnexion en cours</p>
|
||||
<p v-if="interuptionMessage" class="second">Contactez Raphix (raphixscrap) en cas de problème prolongé.</p>
|
||||
</div>
|
||||
<p v-if="interuptionMessage" class="error"><Icon icon="fa-solid fa-circle-xmark"/> {{ interuptionMessage }}</p>
|
||||
<p v-else>{{ defaultMessage }}</p>
|
||||
</DefaultSplash>
|
||||
@@ -37,4 +42,22 @@ const props = defineProps({
|
||||
justify-content: center;
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
.separate-col {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 10px;
|
||||
|
||||
}
|
||||
|
||||
.separate-col p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.second {
|
||||
font-size: 0.8em;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
</style>
|
@@ -75,13 +75,16 @@ import { useGlobalStore } from '@/stores/globalStore';
|
||||
interuptionMessage.value = null;
|
||||
return;
|
||||
}
|
||||
setInterval(() => {
|
||||
const intervalId = setInterval(() => {
|
||||
console.log("Tentative de reconnexion au serveur...");
|
||||
if(!socket.connected || !needReload.value) {
|
||||
socket.auth.token = loginStore.token;
|
||||
socket.disconnect()
|
||||
// Avoid multiple connections attempts at the same time
|
||||
socket.connect();
|
||||
} else {
|
||||
clearInterval(this);
|
||||
console.log("Already connected, no need to reconnect.");
|
||||
clearInterval(intervalId);
|
||||
}
|
||||
}, 3000); // Essai de reconnexion après 5 secondes
|
||||
}
|
||||
|
Reference in New Issue
Block a user