Dash
Items
Liste des applications mise à jour avec succès
JavaScript personnalisé
Enregistrer
Annuler
// ********* AJOUT WIDGET DATE/HEURE ET METEO const sortableElement = document.querySelector('.appheader'); function insertAfter(referenceNode, newNode) { referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling); } function createAndInsertDiv(className, referenceNode) { var newDiv = document.createElement("div"); newDiv.classList.add(className); referenceNode.appendChild(newDiv); return newDiv; } if (sortableElement) { // Création de la div parente 'headerInfos' var headerInfos = document.createElement('div'); headerInfos.classList.add('headerInfos'); insertAfter(sortableElement, headerInfos); // Création de la div 'divDate' à l'intérieur de 'headerInfos' var divDate = createAndInsertDiv('divDate', headerInfos); // Création des éléments <div> pour la date et l'heure à l'intérieur de 'divDate' var timeDiv = createAndInsertDiv('horloge', divDate); var dateDiv = createAndInsertDiv('ladate', divDate); // Création de la div 'meteo' à l'intérieur de 'headerInfos' var meteoDiv = createAndInsertDiv('meteo', headerInfos); function afficherDateHeure() { const maintenant = new Date(); const optionsJour = { weekday: 'long' }; const optionsHeure = { hour: 'numeric', minute: 'numeric' }; const optionsDate = { year: 'numeric', month: 'long', day: 'numeric' }; const jourFormatted = maintenant.toLocaleDateString(undefined, optionsJour); const dateFormatted = maintenant.toLocaleDateString(undefined, optionsDate); const heureFormatted = maintenant.toLocaleTimeString(undefined, optionsHeure); // Effacer le contenu des éléments pour éviter l'accumulation des éléments dateDiv.innerHTML = ''; // Insérer le jour de la semaine dans la balise <span> de la classe '.ladate' var spanJourSemaine = document.createElement('span'); spanJourSemaine.textContent = jourFormatted; dateDiv.appendChild(spanJourSemaine); // Insérer l'heure sans les secondes dans '.horloge' timeDiv.textContent = heureFormatted; // Insérer le reste de la date en dehors de la balise <span> dateDiv.appendChild(document.createTextNode(dateFormatted)); } function afficherMeteo(latitude, longitude) { const apiKey = 'b5407bb02b4cdbe89463d85a331da20d'; // Remplacez ceci par votre clé API OpenWeatherMap fetch(`https://api.openweathermap.org/data/2.5/weather?lat=${latitude}&lon=${longitude}&appid=${apiKey}&units=metric&lang=fr`) .then(response => response.json()) .then(data => { const temperature = Math.round(data.main.temp); // Arrondir la température à l'entier le plus proche const ville = data.name; const icon = data.weather[0].icon; const description = data.weather[0].description; // Affichage de la météo dans la div 'meteo' meteoDiv.innerHTML = `<div class="ville-temp-container"><div class="temperature">${temperature}°C</div><div class="icon"><img src="http://openweathermap.org/img/wn/${icon}.png"></div></div><div class="ville-temp-container"><span class="ville">${ville}</span><span class="description">${description}</span</div>`; }) .catch(error => { console.error('Erreur lors de la récupération des données météo', error); meteoDiv.textContent = 'Impossible de récupérer les données météo'; }); } // Obtenir la géolocalisation de l'utilisateur (exemple ici avec une valeur statique) const latitude = 48.6944; // Latitude de la ville (exemple pour Paris) const longitude = 1.8564; // Longitude de la ville (exemple pour Paris) // Appel initial pour afficher la date, l'heure et la météo afficherDateHeure(); afficherMeteo(latitude, longitude); // Mettre à jour l'heure toutes les secondes setInterval(afficherDateHeure, 1000); } // ********* AJOUT TRIE AUTO DES TAGS // you would change the variable startMenu to the tag that you would like to start on. I start my menu on the 'Home Servers' tag, so I would change "const startMenu = 'change-me'" to "const startMenu = 'Home Servers'". If you don't change anything and run the script as is, you would start on the 'Home dashboard' tag, and the ALL tag will be gone. $(document).ready(function () { const startMenu = 'change-me'; let setTag = ''; if (startMenu === 'change-me') { setTag = '0-dash'; } else { setTag = startMenu.replace(/[^a-zA-Z0-9\s]/g, '').split(' ').join('-').toLowerCase(); } const currentTag = document.querySelector("[data-tag=all]"); const startTag = document.querySelector("[data-tag=tag-" + setTag + "]"); currentTag.classList.remove('current'); startTag.classList.add('current'); startTag.click(); const menuItems = document.querySelectorAll("section"); for (items of menuItems) { if (!items.classList.contains('tag-' + setTag)) { items.setAttribute("style", "display: none;"); } } currentTag.remove(); });
Tableau de bord
Utilisateurs
Liste des applications
Liste des labels
Réglages