Avertissement
Sommaire
Sélectionner les critères
Mode opératoire – Inclure une nouvelle session ePlaneur
Version : 1.1 (outil au 23/08/2025)
- Objectif
L’outil permet d’envoyer au serveur une paire de fichiers décrivant une session de vol en réseau :
- un fichier .fpl
- un fichier .csv
Les deux fichiers doivent porter exactement la même base de nom (hors extension), au format :
• Race <sessid> on YYYY.MM.DD
• DSRace <sessid> on YYYY.MM.DD
Exemples : « Race 20414418 on 2024.11.05.fpl » et « Race 20414418 on 2024.11.05.csv »,
ou « DSRace 20414418 on 2024.11.05.fpl » et « DSRace 20414418 on 2024.11.05.csv ».
Remarque : <sessid> est une chaîne de longueur variable (on ne la convertit pas en nombre).
- Étapes côté page (ce que l’utilisateur doit faire)
Étape 1 – Sélectionner les 2 fichiers
• Cliquer sur le champ « Sélectionner un fichier » et choisir exactement 2 fichiers en une seule fois : 1 .fpl et 1 .csv.
• Ils doivent avoir la même base (même nom hors extension) et respecter le format montré ci-dessus.
Étape 2 – Vérification automatique
• La page contrôle automatiquement qu’il y a bien un .fpl et un .csv au même nom.
• Si le .fpl contient une section [Description] avec Text=…, le champ « Description » peut être prérempli (facultatif pour la suite).
Étape 3 – Choisir la version Condor
• Sélectionner « C2 » ou « C3 ». Cette info détermine le dossier de dépôt et le préfixe attendu du code FPL.
Étape 4 – Vérifier/ajuster le code FPL
• Le champ « fpl » doit respecter strictement le format suivant :
- 1–2 : « C2 » ou « C3 » (C majuscule)
- 3 : un tiret « - »
- 4 : une lettre minuscule parmi c, d ou s
- 5–7 : trois chiffres entre 001 et 200 (avec zéros obligatoires)
- 8 (optionnel) : une lettre minuscule entre a et j
Exemples valides : C2-s036, C3-c115a, C2-d200j.
Exemples invalides : c2-s036 (C minuscule), C2s036 (manque le tiret), C2-x036 (x non autorisé), C2-s000 (hors borne), C2-s036k (suffixe > j).
Étape 5 – Envoyer
• Le bouton « Envoyer » n’apparaît que lorsque :
- les deux fichiers sont valides (même base, .fpl + .csv),
- la version Condor (C2 ou C3) est sélectionnée,
- le champ « fpl » n’est pas vide et respecte le format.
• Cliquer sur « Envoyer ». La page passe alors sur un écran de retour serveur qui récapitule l’action réalisée.
- Messages d’erreur possibles côté navigateur (pourquoi le bouton n’apparaît pas ou l’envoi est bloqué)
Sélection de fichiers
• « Sélectionnez exactement deux fichiers : un .fpl et un .csv. »
• « Extensions autorisées : .fpl et .csv uniquement. »
• « Les deux fichiers doivent avoir exactement le même nom (hors extension). »
• « Il faut un fichier .fpl et un fichier .csv. »
Code FPL (au clic sur Envoyer)
• « FPL doit commencer par "C2" » ou « "C3". »
• « Le 3e caractère de FPL doit être un tiret "-". »
• « Le 4e caractère de FPL doit être une lettre parmi c, d ou s (minuscule). »
• « Les caractères 5 à 7 doivent être trois chiffres (ex. 001, 057, 200). »
• « Index numérique hors borne (001..200). »
• « La longueur de FPL doit être de 7 ou 8 caractères. »
• « Le 8e caractère (suffixe) doit être une lettre minuscule. »
• « Suffixe hors limite (a..j). »
Dans tous ces cas, corriger la cause indiquée puis recommencer.
- Ce que fait le serveur (partie technique, pour compréhension et support)
Réception
• Le serveur reçoit 2 fichiers (.fpl et .csv) et 2 champs : condor (C2/C3) et fpl (code validé côté navigateur).
• Les fichiers doivent partager la même base de nom au format « Race|DSRace <sessid> on YYYY.MM.DD ».
• Le serveur extrait :
- orig_sess = Race ou DSRace (le préfixe),
- sessid = la chaîne située entre le préfixe et « on » (conservée telle quelle, format texte),
- date_sess = la date « YYYY.MM.DD » convertie en « YYYY-MM-DD ».
Renommage et dépôt des fichiers
• La base de nom est normalisée : espaces et points sont remplacés par des tirets (sans toucher au point de l’extension).
Exemple : « DSRace 20414418 on 2024.11.05 » devient « DSRace-20414418-on-2024-11-05 ».
• Les fichiers sont déposés de façon atomique dans VolsReseau/Depot/C2 ou VolsReseau/Depot/C3 (selon condor). Atomicité = les deux ou aucun.
• En cas de collision sur un nom cible existant, l’opération est refusée avec un message de collision.
Calcul du nombre de participants
• Le serveur lit le .csv pour compter nb_participants = (nombre de lignes non vides) − 1 (pour enlever la ligne d’entête).
• Si le résultat est négatif, il est ramené à 0.
Écriture/maj en base de données (table vols_reseau, référence des noms de colonnes strictement respectée)
• On cherche l’enregistrement par sessid (clé primaire).
• Si aucune ligne n’existe :
- on dépose les 2 fichiers dans Depot/{C2|C3},
- on INSERT les champs suivants a minima : sessid, orig_sess, date_sess, condor_sess, fpl_sess, fpl_manuel_sess, nb_participants, session (où session = nom normalisé sans extension, ex. DSRace-20414418-on-2024-11-05).
• Si une ligne existe déjà : - si orig_sess = DSRace en base : on abandonne (aucun changement),
- si orig_sess = Race en base :
• si la paire reçue est Race : on abandonne (aucun changement),
• si la paire reçue est DSRace : on remplace :- suppression de l’ancienne paire Race-… (les 2 fichiers .fpl et .csv) dans Depot/{C2|C3},
- dépôt de la nouvelle paire DSRace-…,
- UPDATE de la ligne :
orig_sess = DSRace,
date_sess = valeur du nom,
condor_sess = condor,
fpl_sess = fpl,
fpl_manuel_sess = fpl,
nb_participants = calculé depuis le csv,
session = nom normalisé (sans extension),
et remise à NULL/DEFAULT de tous les autres champs de la table (hors ceux listés ci-dessus).
Retour affiché
• Le serveur affiche une page de confirmation :
- Action : INSERT, REPLACE_RACE_BY_DSRACE ou un message d’information « aucun changement »,
- Récapitulatif : condor_sess, orig_sess, sessid, date_sess, nb_participants, session, dossier de dépôt et noms déposés.
• En phase de mise au point, les erreurs PHP sont affichées (display_errors activé). En production, elles seront masquées et loguées.
Bonnes pratiques
• Vérifier que les deux fichiers portent exactement le même nom hors extension.
• Choisir la bonne version Condor (C2/C3) avant d’envoyer.
• Respecter le format du code FPL (voir Étape 4).
• Si un message de collision apparaît, c’est qu’un fichier du même nom existe déjà en dépôt. Prendre contact pour investiguer.
- En cas de difficulté
• Noter le sessid, la version Condor choisie, et le message exact affiché.
• Joindre une capture d’écran du message et le nom complet des fichiers (avec extensions).
• Contacter l’animateur ePlaneur avec ces éléments pour diagnostic rapide.
Fin du mode opératoire.

