Les outils d'administration sont des fonctions de maintenance cachées,
accessibles via Ctrl+Shift+Alt+A.

Un menu contextuel s'affiche avec cinq options : deux pour compléter
les tags manquants et trois pour les entrées orphelines.

1. Compléter les tags entièrement :
   Complète les champs de tags uniquement si LES CINQ champs
   (Titre, Artiste, Album, Genre, Année) sont vides pour un titre.
   Les titres ayant au moins une valeur de tag existante sont ignorés.

2. Compléter les tags granulèrement :
   Complète uniquement les champs individuellement vides de chaque titre.
   Les valeurs existantes restent inchangées.

Les deux modes lisent les valeurs manquantes depuis les fichiers audio
originaux d'une copie locale du serveur (ex. un lecteur réseau E:\).

Déroulement (deux phases) :
Phase 1 — Analyse :
La base de données est analysée pour trouver les titres avec des
champs vides. Pour chaque titre trouvé, le fichier local correspondant
est ouvert et les tags sont lus (Titre, Artiste, Album, Genre, Année).
Les résultats sont mis en cache en mémoire. À la fin, le nombre d'entrées
qui seraient complétées est annoncé et une confirmation Oui/Non est affichée.

Phase 2 — Écriture :
Après confirmation, les valeurs mises en cache sont écrites dans la
base de données. Les fichiers ne sont pas relus dans cette phase.

Progression et annulation :
Une barre de progression indique l'avancement.
Appuyer sur Échap pour annuler l'opération.

Toutes les modifications sont consignées en détail dans le fichier
journal (PLELog).

Saisie du chemin :
Après l'ouverture du menu, le chemin vers la copie locale des fichiers
du serveur est demandé (ex. E:\). La correspondance entre le chemin
en base de données et la copie locale se fait par remplacement
de la lettre de lecteur.

Entrées orphelines de la bibliothèque :

Une entrée orpheline est un titre présent dans la bibliothèque
RadioBOSS dont le fichier ne se trouve plus sur le serveur. Les trois
entrées de menu ci-dessous repèrent et nettoient ces entrées. Elles
agissent uniquement dans la base de données et ne suppriment jamais un
fichier audio.

3. Rechercher et marquer les entrées orphelines :

Vérifie toutes les entrées valides et met sur invalide celles dont le
fichier manque. Cette étape est réversible, rien n'est supprimé.
RemotePLE interroge chaque répertoire une seule fois au lieu de
demander chaque fichier, si bien que même les grandes bibliothèques
sont vérifiées en quelques minutes.

Chaque exécution écrit un rapport sous forme de fichier texte dans le
dossier Backups à côté du programme. Il indique chaque titre concerné
avec son chemin et le motif, puis donne les totaux. Lisez-le avant de
supprimer à l'étape suivante.

4. Vérifier et supprimer les entrées orphelines :

Vérifie de nouveau toutes les entrées marquées invalides et affiche le
résultat dans une liste à cocher. Sont cochées au départ les entrées
dont le fichier manque toujours. Le bouton Supprimer ne retire que
celles-ci de la base de données, le bouton Restaurer remet sur valide
les entrées retrouvées. Les deux n'agissent que sur les lignes cochées
dont l'état correspond et indiquent ensuite combien de lignes elles
ont laissées inchangées. La suppression est précédée d'un
avertissement vocal et d'une demande de confirmation. Un bouton pour
lequel la liste ne contient aucune ligne correspondante est désactivé
et ignoré lors de la tabulation ; c'est pourquoi l'annonce à
l'ouverture indique les deux nombres.

5. Restaurer les entrées d'un répertoire :

Demande un répertoire sur le serveur et ne vérifie que les entrées
invalides qui s'y trouvent. Ici, ce sont les entrées retrouvées qui
sont cochées, c'est-à-dire exactement celles sur lesquelles agit le
bouton Restaurer. Utile lorsque vous avez replacé des fichiers sur le
serveur.

Protection contre les fausses alertes :

Avant chaque exécution, tous les chemins racines sont vérifiés ; si
l'un d'eux est inaccessible, l'exécution ne commence pas. Si la
connexion se coupe en cours de route, rien n'est écrit. Si un
répertoire ne peut pas être listé, RemotePLE le cherche d'abord avec
une autre casse : la base de données provient d'une machine Windows,
alors que le serveur distingue généralement majuscules et minuscules.
Ce n'est que si cela échoue aussi que le répertoire est considéré
comme supprimé ; il apparaît alors séparément dans le rapport.

La suppression retire toutes les lignes du titre : les affectations de
bibliothèque, la ligne de tags et le titre lui-même. Le fichier audio
n'est jamais touché. Échap interrompt la vérification tant qu'elle est
en cours. L'écriture elle-même, c'est-à-dire la suppression et la
restauration, va jusqu'au bout ; pendant ce temps, les boutons et la
fermeture de la fenêtre sont bloqués.
