V1.0.0.beta-15 Update
All checks were successful
continuous-integration/drone/push Build is passing

Note: We appreciate your feedback and bug reports to continue improving our platform. Thank you for your continued support!
This commit is contained in:
2024-07-26 19:41:22 +02:00
parent 44631acfc6
commit 74850e5a4a
12 changed files with 319 additions and 354 deletions

View File

@@ -126,6 +126,9 @@
</style>
<body class="light-mode animate">
<div class="alert alert-primary text-center" role="alert">
Un nouveau look sera bientôt disponible pour la page de connexion. Myaxrin Labs va améliorer son application pour la rendre plus rapide et plus facile à utiliser.
</div>
<div class="container mt-4 animate">
<h1 class="title text-center animate">Connexion</h1>
<% if (currentUrl === '/auth/activedirectory' || (setupData[0] && setupData[0].hasOwnProperty('ldap'))) { %>

View File

@@ -21,6 +21,20 @@
</head>
<style>
body {
background-image: url('<%= user.wallpaper %>');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
background-attachment: fixed;
margin: 0;
height: 100vh;
overflow: hidden;
}
</style>
<body class="light-mode">
<nav class="navbar navbar-expand-md navbar-light bg-light header">
<a class="navbar-brand">
@@ -54,21 +68,27 @@
</li>
<li class="nav-item dropdown">
<a class="btn dropdown-toggle" id="accountDropdownBtn" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<img src="https://api.dicebear.com/7.x/initials/svg?seed=<%= user.name %>" alt="User Icon" class="rounded-circle" style="width: 30px; height: 30px;" />
<img
src="<%= user.profilePicture || 'https://api.dicebear.com/7.x/initials/svg?seed=' + user.name %>"
alt="User Icon"
class="rounded-circle"
style="width: 30px; height: 30px;"
/>
</a>
<div class="dropdown-menu dropdown-menu-right p-4 bg-dark text-white" id="accountDropdownMenu">
<div class="mb-3 text-center">
<h6 class="text-lg font-semibold"><%= user.name %></h6>
<p class="mb-0">ID: <%= user.id %></p>
<p class="mb-0">Role: <%= user.role %></p>
<a class="dropdown-item text-center text-white no-hover custom-btn" href="/dpanel/dashboard/profil" id="logoutLink">
<i class="fas fa-sign-out-alt text-white"></i> Mon profile
</a>
</div>
<div class="dropdown-divider mb-2"></div>
<% if (user.role === 'admin') { %>
<a class="dropdown-item text-center text-white no-hover custom-btn" href="/dpanel/dashboard/admin" id="adminLink">
<i class="fas fa-user-shield"></i> Administration du site
</a>
</a><br>
<% } %>
<br><br><a class="dropdown-item text-center text-white no-hover custom-btn" href="/auth/logout" id="logoutLink">
<br><a class="dropdown-item text-center text-white no-hover custom-btn" href="/auth/logout" id="logoutLink">
<i class="fas fa-sign-out-alt text-white"></i> Déconnexion
</a>
</div>
@@ -76,6 +96,9 @@
</ul>
</div>
</nav>
<div class="alert alert-primary text-center" role="alert">
Un nouveau look sera bientôt disponible pour le tableau de bord. Myaxrin Labs va améliorer son application pour la rendre plus rapide et plus facile à utiliser.
</div>
<div class="container mt-4 table-container">
<div class="table-responsive">
@@ -164,43 +187,52 @@
<div class="modal fade" id="patchNoteModal" tabindex="-1" role="dialog" aria-labelledby="patchNoteModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg rounded-lg" role="document">
<div class="modal-content dark-mode">
<div class="modal-header">
<h5 class="modal-title" id="patchNoteModalLabel">Patch Note<span class="badge badge-info ml-1">v1.0.0-beta.14</span></h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="patch-note-item pl-3">
<p><i class="fas fa-tools"></i> Améliorations :</p>
<ul>
<li>Améliorations mineures et corrections mineures sur tous les niveaux de l'application.<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
<li>Déplacement de fichier d'un dossier à la racine.<span class="badge badge-success ml-1">AMÉLIORATION MAJEURE</span></li>
<li>Suppression chargement login avec la connexion active directory.<span class="badge badge-success ml-1">AMÉLIORATION MAJEURE</span></li>
<li>Modification de la suppression des fichiers à la racine.<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
<li>Modification déplacement fichier sans destination.<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
</ul>
</div>
<div class="patch-note-item pl-3">
<p><i class="fas fa-wrench"></i> Modifications :</p>
<ul>
<li>Correction majeure d'un bug de sécurité.<span class="badge badge-success ml-1">MODIFICATION MAJEURE</span></li>
<li>Modification du message "move file" réponse JSON.<span class="badge badge-success ml-1">MODIFICATION MINEURE</span></li>
</ul>
</div>
<div class="patch-note-item pl-3">
<p>Remarque : Nous apprécions vos retours d'expérience et vos rapports de bogues pour continuer à améliorer notre plateforme. Merci pour votre soutien continu !</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button>
<button type="button" class="btn btn-primary" onclick="displayMetadata()">Afficher les métadonnées</button>
</div>
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="patchNoteModalLabel">Patch Note<span class="badge badge-info ml-1">v1.0.0-beta.15</span></h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="patch-note-item">
<p><i class="fas fa-tools"></i> Nouvelles Fonctionnalités :</p>
<ul>
<li>Intégration de l'authentification Discord<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
<li>Personnalisation de l'arrière-plan de l'application<span class="badge badge-success ml-1">AMÉLIORATION MAJEURE</span></li>
<li>Nouveau design pour l'affichage du token dans le panneau administrateur<span class="badge badge-success ml-1">AMÉLIORATION MAJEURE</span></li>
</ul>
</div>
<div class="patch-note-item">
<p><i class="fas fa-wrench"></i> Améliorations :</p>
<ul>
<li>Optimisation des performances de l'application<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
<li>Amélioration de l'interface utilisateur pour une meilleure expérience<span class="badge badge-success ml-1">AMÉLIORATION MAJEURE</span></li>
<li>Mise à jour des dépendances pour une meilleure stabilité<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
</ul>
</div>
<div class="patch-note-item">
<p><i class="fas fa-bug"></i> Corrections de Bugs :</p>
<ul>
<li>Correction des erreurs d'affichage dans certains navigateurs<span class="badge badge-success ml-1">CORRECTION MINEURE</span></li>
</ul>
</div>
<div class="patch-note-item">
<p><i class="fas fa-lock"></i> Sécurité :</p>
<ul>
<li>Renforcement de la sécurité de l'authentification<span class="badge badge-success ml-1">AMÉLIORATION MAJEURE</span></li>
<li>Mise à jour des protocoles de chiffrement<span class="badge badge-success ml-1">AMÉLIORATION MINEURE</span></li>
</ul>
</div>
<p class="note">Remarque : Nous sommes toujours à l'écoute de vos retours pour améliorer notre plateforme. N'hésitez pas à nous faire part de vos commentaires et suggestions !</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button>
<button type="button" class="btn btn-primary" onclick="displayMetadata()">Afficher les métadonnées</button>
</div>
</div>
</div>
</div>
</div>
@@ -234,7 +266,7 @@
<ul class="nav justify-content-center border-bottom pb-3 mb-3">
<li class="nav-item">
<a class="nav-link px-2 text-muted" href="#" data-toggle="modal" data-target="#patchNoteModal">
Version: 1.0.0-beta.14
Version: 1.0.0-beta.15
</a>
</li>
</ul>
@@ -247,4 +279,4 @@
</div>
</body>
</html>
</html>

View File

@@ -18,6 +18,20 @@
<link rel="icon" href="/public/assets/homelab_logo.png" />
</head>
<style>
body {
background-image: url('<%= user.wallpaper %>');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
background-attachment: fixed;
margin: 0;
height: 100vh;
overflow: hidden;
}
</style>
<body class="light-mode">
<nav class="navbar navbar-expand-lg navbar-light bg-light header">
<a class="navbar-brand">
@@ -49,6 +63,9 @@
</ul>
</div>
</nav>
<div class="alert alert-primary text-center" role="alert">
Un nouveau look sera bientôt disponible pour le tableau de bord. Myaxrin Labs va améliorer son application pour la rendre plus rapide et plus facile à utiliser.
</div>
<nav aria-label="breadcrumb">
<ol class="breadcrumb custom-breadcrumb">
<li class="breadcrumb-item"><a href="/dpanel/dashboard">Accueil</a></li>
@@ -174,7 +191,7 @@
<div class="container">
<footer class="py-3 my-4">
<ul class="nav justify-content-center border-bottom pb-3 mb-3">
<li class="nav-item"><a class="nav-link px-2 text-muted">Version: 1.0.0-beta.14</a></li>
<li class="nav-item"><a class="nav-link px-2 text-muted">Version: 1.0.0-beta.15</a></li>
</ul>
<p class="text-center text-muted">&copy; 2024 Myaxrin Labs</p>
</footer>

View File

@@ -126,55 +126,29 @@
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script>
const body = document.body;
document.addEventListener('DOMContentLoaded', function () {
const darkModeSwitch = document.getElementById('darkModeSwitch');
const darkModeMediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
document.body.classList.toggle('dark-mode', darkModeMediaQuery.matches);
darkModeMediaQuery.addListener(function (e) {
document.body.classList.toggle('dark-mode', e.matches);
});
});
document.getElementById('themeSwitcher').addEventListener('click', function () {
body.classList.toggle('dark-mode');
document.body.classList.toggle('dark-mode');
});
document.getElementById('usersPerPage').addEventListener('change', function () {
window.location.href = "/dpanel/dashboard/admin/users?page=1&limit=" + this.value;
});
window.onload = function() {
var urlParams = new URLSearchParams(window.location.search);
var limit = urlParams.get('limit');
window.onload = function () {
const urlParams = new URLSearchParams(window.location.search);
const limit = urlParams.get('limit');
document.getElementById('usersPerPage').value = limit;
}
document.addEventListener('DOMContentLoaded', function () {
const darkModeSwitch = document.getElementById('darkModeSwitch');
const darkModeMediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
body.classList.toggle('dark-mode', darkModeMediaQuery.matches);
darkModeMediaQuery.addListener(function (e) {
body.classList.toggle('dark-mode', e.matches);
});
});
function searchUsers() {
var input = document.getElementById('searchInput');
var filter = input.value.toUpperCase();
var table = document.querySelector('.table');
var tr = table.getElementsByTagName('tr');
for (var i = 0; i < tr.length; i++) {
var tdName = tr[i].getElementsByTagName('td')[1];
var tdId = tr[i].getElementsByTagName('td')[0];
if (tdName || tdId) {
var txtValueName = tdName.textContent || tdName.innerText;
var txtValueId = tdId.textContent || tdId.innerText;
if (txtValueName.toUpperCase().indexOf(filter) > -1 || txtValueId.toUpperCase().indexOf(filter) > -1) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
}
}
}
document.getElementById('searchButton').addEventListener('click', function (e) {
e.preventDefault();
searchUsers();
@@ -187,19 +161,32 @@
}
});
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
var searchInput = document.getElementById('searchInput');
searchInput.placeholder = isMac ? 'Rechercher par nom ou ID (Cmd + K)' : 'Rechercher par nom ou ID (Ctrl + K)';
function searchUsers() {
const input = document.getElementById('searchInput');
const filter = input.value.toUpperCase();
const table = document.querySelector('.table');
const tr = table.getElementsByTagName('tr');
for (let i = 0; i < tr.length; i++) {
const tdName = tr[i].getElementsByTagName('td')[1];
const tdId = tr[i].getElementsByTagName('td')[0];
if (tdName || tdId) {
const txtValueName = tdName.textContent || tdName.innerText;
const txtValueId = tdId.textContent || tdId.innerText;
tr[i].style.display = txtValueName.toUpperCase().indexOf(filter) > -1 || txtValueId.toUpperCase().indexOf(filter) > -1 ? "" : "none";
}
}
}
document.getElementById('generate-token-form').addEventListener('submit', function(e) {
// Ajout d'un événement pour les formulaires de génération de token
document.querySelectorAll('form[id="generate-token-form"]').forEach(form => {
form.addEventListener('submit', function (e) {
e.preventDefault();
var url = this.getAttribute('action');
var method = this.getAttribute('method');
var name = this.querySelector('input[name="name"]').value;
var id = this.querySelector('input[name="id"]').value;
var data = { name: name, id: id };
const url = this.getAttribute('action');
const method = this.getAttribute('method');
const name = this.querySelector('input[name="name"]').value;
const id = this.querySelector('input[name="id"]').value;
const data = { name: name, id: id };
fetch(url, {
method: method,
@@ -212,7 +199,7 @@
.then(response => {
Swal.fire({
title: 'Votre Token',
html: `<input type="text" id="swal-input1" class="swal2-input" value="${response.token}">`,
html: `<input type="text" id="swal-input1" class="swal2-input" value="${response.token}" readonly>`,
confirmButtonText: 'Copier le Token',
footer: '<div style="text-align: center;">Gardez ce token en sécurité. Il ne sera pas possible de le récupérer sans le régénérer.</div>',
focusConfirm: false,
@@ -226,9 +213,10 @@
});
})
.catch(error => {
Swal.fire('Error', error.message, 'error');
Swal.fire('Erreur', error.message, 'error');
});
});
});
</script>
</body>

View File

@@ -12,7 +12,24 @@
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@10"></script>
</head>
<style>
body {
background-image: url('<%= user.wallpaper %>');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
background-attachment: fixed;
margin: 0;
height: 100vh;
overflow: hidden;
}
</style>
<body class="light-mode">
<div class="alert alert-primary text-center" role="alert">
Un nouveau look sera bientôt disponible pour la page de téléversement. Myaxrin Labs va améliorer son application pour la rendre plus rapide et plus facile à utiliser.
</div>
<div class="container mt-4 flex-column">
<h1 class="mb-4">Upload de Fichiers</h1>
<form id="uploadForm" enctype="multipart/form-data">