Remove test.php and enhance null safety and sorting across components

- Deleted `test.php` as it was no longer in use.
- Enhanced null safety checks in `Inventory.php`, `StdOut-detail.php`, `Backups.php`, and `SwitchsSAN.php` to prevent potential warnings.
- Refactored `SwitchsSAN.php` to improve sorting logic for ports based on errors, vFabric, and Port ID.
- Added seasonal snow effect script in `all.php` with toggle functionality for user engagement.
- Updated navigation bar (`navbar.html`) to include a new VIO page link.
- Introduced a new `VIO.php` page to display VIO monitoring details with table export and sorting features.
This commit is contained in:
2026-03-31 11:33:57 +02:00
parent d5b45dbc22
commit 10c228f255
47 changed files with 950 additions and 702 deletions

View File

@@ -1,6 +1,18 @@
<?php
// LANGUAGE MANAGEMENT
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
$lang = $_GET['lang'] ?? $_SESSION['lang'] ?? 'fr'; // "en" as default
$allowed_langs = ['en', 'fr'];
if (!in_array($lang, $allowed_langs)) {
$lang = 'fr'; // DEFAULT failback
}
$_SESSION['lang'] = $lang;
include $_SERVER['DOCUMENT_ROOT'] . "/include/" . $lang . ".php";
// CONSTANTS //
$BaseUrl = "http://".$_SERVER['SERVER_NAME'];
$BaseUrl = "https://".$_SERVER['SERVER_NAME'];
$root = $_SERVER['DOCUMENT_ROOT'];
$bdnuss = "http://web-bdnuss-sys-dev.appliarmony.net";
$opwsinf = "https://wsopinf.appliarmony.net";
@@ -323,7 +335,7 @@
}
// --- exposer des constantes pour le reste du code ---
// Priorité: si on a REMOTE_USER on lutilise; sinon on retombe sur le cookie existant; sinon vide/anonyme.
// Priorité: si on a REMOTE_USER, on lutilise; sinon on retombe sur le cookie existant; sinon vide/anonyme.
$currentUser = $hasUser ? $user : ($cookie['user'] ?? 'Anonymous');
$currentIp = $hasUser ? $ip : ($cookie['ip'] ?? ($_SERVER['HTTP_X_FORWARDED_FOR'] ?? $_SERVER['REMOTE_ADDR'] ?? ''));
@@ -404,7 +416,7 @@
const month = now.getMonth() + 1; // JS compte les mois de 0 à 11, donc on ajoute 1
const day = now.getDate();
// La condition : (Mois = 12 ET Jour >= 15) OU (Mois = 1 ET Jour <= 5)
// La condition : (Mois = 12 ET Jour >= 15) OU (Mois = 1 ET Jour 5)
const isSeason = (month === 12 && day >= 15) || (month === 1 && day <= 5);
const canvas = document.getElementById('snow-canvas');
@@ -556,3 +568,5 @@

144
include/en.php Normal file
View File

@@ -0,0 +1,144 @@
<?php
// navbar
$nav_home = "Home";
$nav_1 = "Active Directory";
$nav_1_1 = "Group Review";
$nav_1_2 = "Group Membership";
$nav_2 = "Global Crossover";
$nav_3 = "Hyper-V";
$nav_3_1 = "Clusters";
$nav_3_2 = "VMs Backup";
$nav_3_3 = "VMs Mem hunt";
$nav_3_4 = "Hosts Mem hunt";
$nav_4 = "Shared Folders";
$nav_4_1 = "Projects & Teams";
$nav_4_2 = "HomeDirectories";
$nav_5_1 = "Inventory";
$nav_5_2 = "SVA/SCU Accounts";
$nav_5_3 = "Autoremediation Logs";
$nav_5_4 = "Script results";
$nav_6 = "Rollups";
$nav_6_1 = "Yearly Calendar";
$nav_7 = "Storage";
$nav_7_1 = "Dashboard";
$nav_7_2 = "Switchs FC";
$nav_8 = "Workstations";
$nav_9 = "Clusters";
$nav_9_1 ="Resources";
$nav_10 = "SecureBoot";
$nav_10_1 = "Servers";
$nav_10_2 = "Workstations";
$nav_links = "Links";
$nav_search = "Server Search...";
// titles
$ti_1 = "Group Review";
$ti_2 = "Group Membership";
$ti_3 = "Global Crossover";
$ti_4 = "Hyper-V Clusters";
$ti_5 = "Memory Hunt - Hyper-V Only";
$ti_6 = "Memory Hunt - All but Hyper-V";
$ti_7 = "Project and Team folders";
$ti_8 = "Home Directories";
$ti_9 = "AIX / Linux inventory";
$ti_10 = "SVA & SCU Accounts Attributes";
$ti_11 = "Autoremediation Logs";
$ti_12 = "Script Execution Follow-up";
$ti_13 = "VIO Monitoring";
$ti_14 = "Rollup Yearly Calendar";
$ti_15 = "SVC Storage Dashboard";
$ti_16 = "Workstation Global Crossover";
$ti_17 = "HeartBeat Map for servers NOT in maintenance";
$ti_18 = "Cluster Resources";
// words
$w_server = "Server";
$w_name = "Name";
$w_groupMembership = "Group Membership";
$w_groupSearch = "Find group in Active Directory";
$w_startToType = "Start to type ...";
$w_seeMembers = "See Members";
$w_os = "Operating System";
$w_crit = "Criticality";
$w_ad = "Active Directory";
$w_adlu = "AD last update";
$w_filu = "FI last update";
$w_sccmlu = "SCCM last update";
$w_backup = "Backup";
$w_backuplu = "Last Backup";
$w_s1lu = "S1 last update";
$w_allDevice = "All Devices";
$w_supportedOS = "Supported OS";
$w_nonCompliant = "Non-compliant";
$w_filter ="Filter";
$w_submit = "Submit";
$w_days = "days";
$w_devices = "Devices";
$w_inactives = "Inactives";
$w_enabled = "Enabled";
$w_lastLogon = "Last Logon";
$w_VMleft = "VMs left";
$w_VMs = "VMs";
$w_nodes = "Nodes";
$w_freeMem = "Free Mem";
$w_freeCSV = "Free CSV";
$w_unclustered = "Unclustered";
$w_wrongOwner = "Wrong Owner";
$w_worstScenario = "Worst Failover scenario available memory";
$w_lastResult = "Last Result";
$w_lastGoodBackup = "Last Good Backup";
$w_size = "Size";
$w_host = "Host";
$w_policy = "Policy";
$w_vmBackup = "VMs Backup";
$w_success = "Success";
$w_issues = "Issues";
$w_outdated = "Outdated";
$w_excluded = "Excluded";
$w_vmAssignedGB = "VMs assigned GB";
$w_vmMaxUsedGB = "VMs max used GB";
$w_potentialSavingsGB = "Potential Savings GB";
$w_assignedGB = "Assigned GB";
$w_minUsedGB = "Min Used GB";
$w_maxUsedGB = "Max Used GB";
$w_avgUsedGB = "Avg Used GB";
$w_hardware = "Hardware";
$w_entries = "Entries";
$w_folder = "Folder";
$w_users = "Users";
$w_inAD = "In AD";
$w_accountEnabled = "Account Enabled";
$w_heartbeat = "Heartbeat";
$w_lastReboot = "Last Reboot";
$w_account = "Account";
$w_homeDirectory = "Home Directory";
$w_loginShell = "Login Shell";
$w_command = "Command";
$w_other = "Other";
$w_all = "All";
$w_location = "Location";
$w_physicalCapacity = "Physical Capacity";
$w_volumeCapacity = "Volume Capacity";
$w_capacityGain = "Capacity Gain";
$w_thin ="Thin Provisioning";
$w_unassignedLUNs = "Unassigned LUNs";
$w_hostsWoLUNs = "Hosts w/o LUNs";
$w_resource = "Resource";
$w_owner = "Owner";
$w_state = "State";
$w_memory = "Memory";
$w_lastUpdate = "Last Update";
$w_nextRollup = "Next Rollup";
$w_storageTotalGB = "Storage Total GB";
$w_storageUsedGB = "Storage Used GB";

Binary file not shown.

Before

Width:  |  Height:  |  Size: 851 B

After

Width:  |  Height:  |  Size: 3.2 MiB

144
include/fr.php Normal file
View File

@@ -0,0 +1,144 @@
<?php
// navbar
$nav_home = "Accueil";
$nav_1 = "Service d'annuaire";
$nav_1_1 = "Revue des Groupes";
$nav_1_2 = "Membres des Groupes";
$nav_2 = "<small>Consolid. Multiple</small>";
$nav_3 = "Hyper-V";
$nav_3_1 = "Grappes de Serveurs";
$nav_3_2 = "Sauvegardes MVs";
$nav_3_3 = "Chasse Mem MVs";
$nav_3_4 = "Chasse Mem Hôtes";
$nav_4 = "Dossiers Partagés";
$nav_4_1 = "Projets & Equipes";
$nav_4_2 = "Dossiers Personnels";
$nav_5_1 = "Inventaire";
$nav_5_2 = "Comptes SVA/SCU";
$nav_5_3 = "Journaux d'autorépar.";
$nav_5_4 = "Résultat des Scripts";
$nav_6 = "Cumulatifs";
$nav_6_1 = "Calendrier annuel";
$nav_7 = "Disques Réseau";
$nav_7_1 = "Tableau de Bord";
$nav_7_2 = "Commutateurs FC";
$nav_8 = "Postes de travail";
$nav_9 = "Grappes de Serveurs";
$nav_9_1 ="Ressources";
$nav_10 = "Démarrage Sécurisé";
$nav_10_1 = "Serveurs";
$nav_10_2 = "Postes de Travail";
$nav_links = "Liens";
$nav_search = "Recherche Serveur...";
// titles
$ti_1 = "Revue des Groupes";
$ti_2 = "Membres des Groupes";
$ti_3 = "Consolidation Multisources";
$ti_4 = "Grappes de Serveurs Hyper-V";
$ti_5 = "Chasse à la mémoire - Hôtes Hyper-V";
$ti_6 = "Chasse à la mémoire - Tout sauf les Hyper-V";
$ti_7 = "Dossiers Projets et Equipes";
$ti_8 = "Dossiers Utilisateurs";
$ti_9 = "Inventaire AIX / Linux";
$ti_10 = "Détails des comptes SVA & SCU";
$ti_11 = "Journaux de remédiation automatique";
$ti_12 = "Suivi d'exécution des Scripts";
$ti_13 = "Surveillance VIO";
$ti_14 = "Calendrier Annuel des Cumulatifs";
$ti_15 = "Tableau de Bord SVC";
$ti_16 = "Consolidation Multisources des Postes de Travail";
$ti_17 = "Carte des signes de présence pour les Serveurs qui ne sont pas en maintenance";
$ti_18 = "Ressources des Grappes de Serveurs";
// words
$w_server = "Serveur";
$w_name = "Nom";
$w_groupMembership = "Membres du groupe";
$w_groupSearch = "Trouver un groupe dans le Service d'Annuaire";
$w_startToType = "Commencez à taper ...";
$w_seeMembers = "Voir les membres";
$w_os = "Système d'Exploitation";
$w_crit = "Criticité";
$w_ad = "Service d'annuaire";
$w_adlu = "Dernière connexion à l'Annuaire";
$w_filu = "Dernier inventaire FI";
$w_sccmlu = "Dernier inventaire SCCM";
$w_backup = "Sauvegarde";
$w_backuplu = "Dernière Sauvegarde";
$w_s1lu = "Dernier inventaire S1";
$w_allDevice = "Tous les appareils";
$w_supportedOS = "Systèmes supportés";
$w_nonCompliant ="Non-conforme";
$w_filter = "Filtre";
$w_submit = "Soumettre";
$w_days = "jours";
$w_devices = "Appareils";
$w_inactives = "Inactifs";
$w_enabled = "Actif";
$w_lastLogon = "Dernière connexion";
$w_VMleft = "MVs restantes";
$w_VMs = "MVs";
$w_nodes = "Nœuds";
$w_freeMem = "Mém. libre";
$w_freeCSV = "CSV libre";
$w_unclustered = "Pas en ressource";
$w_wrongOwner = "Mauvais Nœud";
$w_worstScenario = "Mémoire disponible en cas de pire basculement";
$w_lastResult = "Dernier Résultat";
$w_lastGoodBackup = "Dernière Sauvegarde Réussie";
$w_size = "Taille";
$w_host = "Hôte";
$w_policy = "Politique";
$w_vmBackup = "Sauvegarde des MVs";
$w_success = "Succès";
$w_issues = "Problème";
$w_outdated = "En retard";
$w_excluded = "Exclusion";
$w_vmAssignedGB = "GB Assignés aux MVs";
$w_vmMaxUsedGB = "GB Max utilisés par MVs";
$w_potentialSavingsGB = "Gain de GB potentiel";
$w_assignedGB = "GB assignés";
$w_minUsedGB = "Utilisation Min GB";
$w_maxUsedGB = "Utilisation Max GB";
$w_avgUsedGB = "Utilisation Moyenne GB";
$w_hardware = "Matériel";
$w_entries = "Entrées";
$w_folder = "Dossier";
$w_users = "Utilisateurs";
$w_inAD = "Dans l'annuaire";
$w_accountEnabled = "Compte Actif";
$w_heartbeat = "Signe de Présence";
$w_lastReboot = "Dernier Redémarrage";
$w_account = "Compte";
$w_homeDirectory = "Dossier Personnel";
$w_loginShell = "Interpéteur de connexion";
$w_command = "Commande";
$w_other = "Autre";
$w_all = "Tous";
$w_location = "Emplacement";
$w_physicalCapacity = "Capacité Physique";
$w_volumeCapacity = "Capacité du Volume";
$w_capacityGain = "Gain de Capacité";
$w_thin = "Provisionnement dynamique";
$w_unassignedLUNs = "LUNs non assignées";
$w_hostsWoLUNs = "Hôtes sans LUNs";
$w_resource = "Ressource";
$w_owner = "Propriétaire";
$w_state = "Etat";
$w_memory = "Mémoire";
$w_lastUpdate = "Dernière Mise à Jour";
$w_nextRollup = "Prochain Cumulatif";
$w_storageTotalGB = "Stockage Total GB";
$w_storageUsedGB = "Stockage Utilisé GB";