Bienvenue
Cet outil génère le fichier CSV à importer dans Canva pour le bloc de données « Résultats » de votre club.
- Créez d'abord un championnat (saison, catégorie, sexe, format des matchs).
- Créez les équipes de votre club avec leur logo.
- À chaque rencontre : utilisez Nouvelle rencontre pour importer le PDF (feuille de match) et le xlsx (classement), valider les données, et télécharger le CSV.
📥 Import direct depuis Tenup (bookmarklet)
Avec ce favori, tu peux importer une rencontre directement depuis la page tenup en un clic — récupération automatique du PDF + du classement, sans télécharger manuellement.
-
Glisse-dépose ce bouton dans la barre de favoris de ton navigateur (clic-droit + « Ajouter aux favoris » ne marche pas — il faut un drag&drop) :
📥 Importer dans TennisResult - Connecte-toi à tenup et va sur la page d'une rencontre (URL contenant
/rencontre/). - Clique le favori → l'app récupère le PDF + le classement et te propose de les charger ici.
Le favori utilise tes cookies de session tenup (tu dois être connecté). Aucune donnée ne transite par un serveur externe — tout va directement vers {{ settings.public_base_url || 'http://localhost:7272' }}.
Réglages — URL publique pour les logos
Les URLs des logos écrites dans le CSV utilisent cette base. Pour que Canva puisse charger les images, l'URL doit être accessible depuis Internet (ngrok, reverse proxy, serveur public…). Sinon les logos n'apparaîtront pas dans Canva.
Valeur par défaut (depuis env TENNIS_PUBLIC_BASE_URL) : {{ settings.default_public_base_url }}
✅ Réglage enregistré
📤 Connexion Facebook
{{ editingId ? 'Modifier la rencontre #'+editingId : 'Nouvelle rencontre' }}
Glissez-déposez ou collez (Ctrl+V) le PDF et le xlsx ici, ou utilisez les boutons ci-dessous.
{{ error }}
Simples
Doubles
Classement de la poule
Seules les 8 premières équipes sont exportées dans le CSV. Si « ⚠ pas de match » apparaît, va dans Équipes pour créer l'équipe (ou ajouter un alias).
{{ error }}
✅ Rencontre {{ editingId ? 'mise à jour' : 'enregistrée' }}
Rencontre #{{ lastRencontreId }} — Score : {{ lastScore }}
Choisis ce que tu veux faire :
Si un logo manque, ajoute-le dans l'onglet Équipes puis reviens ici.
Aperçu du visuel
L'image est rendue ici à 1080×1080 (taille native). Les logos doivent être présents dans le référentiel Équipes pour apparaître.
Rencontres
{{ calendrierError }}
| J | Date | Heure | Équipe locale | Score | Équipe visiteur | Statut | Publié | Actions |
|---|---|---|---|---|---|---|---|---|
| {{ r.journee || '—' }} | {{ formatDateFr(r.date) }} | {{ r.equipe_visite_nom }} | {{ r.score_visite }} / {{ r.score_visiteur }} — | {{ r.equipe_visiteur_nom }} | ✓ joué ⏳ à venir | — | 🖼 Affiche | Éditer 📣 Annonce | 📥 Saisir le résultat | Suppr | |
| {{ rencontresFilterChampId ? 'Aucune rencontre. Importe le calendrier xlsx pour démarrer.' : 'Aucune rencontre. Choisis un championnat puis importe le xlsx, ou utilise le bookmarklet tenup.' }} | ||||||||
📣 Annonce — J{{ annonceMatch.journee || '?' }}
Championnats
| Nom | Saison | Catégorie | Sexe | Couleurs | Simples | Doubles | Format S | Format D | |
|---|---|---|---|---|---|---|---|---|---|
| {{ c.nom }} | {{ c.saison }} | {{ c.categorie }} | {{ c.sexe }} | {{ c.nb_simples }} | {{ c.nb_doubles }} | {{ c.format_simple }} | {{ c.format_double }} | Éditer | Suppr |
{{ champForm.id ? 'Modifier le championnat' : 'Nouveau championnat' }}
Équipes
Une équipe par ligne. Format :
Nom équipe,
ou Nom équipe | alias1 | alias2,
ou ajouter * en fin de ligne pour marquer ton club.
{{ bulkResult }}
| Logo | Nom | Aliases | Mon club | Logo upload | |
|---|---|---|---|---|---|
|
|
{{ e.nom }} | {{ e.aliases.split('\n').filter(x=>x.trim()).join(' · ') }} — | {{ e.est_mon_club ? '✓' : '' }} | ou déposer / Ctrl+V ici | Éditer | Suppr |
Utilisateurs
Gérez les comptes pouvant se connecter à l'application.
Créer un compte
{{ usersError }}
| Identifiant | Rôle | Actions |
|---|---|---|
| {{ u.username }} vous | Réinit. mot de passe | Suppr |