Completa i18n IT/EN/FR/DE/ES su sito pubblico, area autenticata e admin.
Tutte le view marketing, legali, viewer, dashboard e admin usano t(); mailer utente-facing e flash localizzati; admin con LocaleResolver e selettore lingua. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,311 @@
|
||||
de:
|
||||
admin:
|
||||
layout:
|
||||
title: "Match Live TV — Admin"
|
||||
nav:
|
||||
dashboard: Dashboard
|
||||
ops: Ops
|
||||
clubs: Vereine & Teams
|
||||
billing: Abrechnung
|
||||
youtube: YouTube
|
||||
sessions: Sitzungen
|
||||
password: Passwort
|
||||
logout: Abmelden
|
||||
flash:
|
||||
login_required: Bitte melde dich an, um fortzufahren
|
||||
login_success: Erfolgreich angemeldet
|
||||
invalid_credentials: Ungültiger Benutzername oder Passwort
|
||||
logout_success: Abgemeldet
|
||||
password_current_incorrect: Das aktuelle Passwort ist falsch
|
||||
password_too_short: Das neue Passwort muss mindestens 8 Zeichen lang sein
|
||||
password_mismatch: Die Passwörter stimmen nicht überein
|
||||
password_updated: Passwort aktualisiert
|
||||
ops_acknowledged: Vorfall übernommen
|
||||
ops_resolved: Vorfall gelöst
|
||||
ops_muted: Benachrichtigungen für 24 Stunden stummgeschaltet
|
||||
comped_granted: "Kostenloses Abonnement %{plan} für %{club} aktiviert."
|
||||
comped_revoked: "Kostenloses Abonnement für %{club} widerrufen."
|
||||
session_already_terminated: "Sitzung bereits beendet (%{status})."
|
||||
session_stopped: Sitzung beendet.
|
||||
session_stop_error: "Fehler beim Beenden: %{error}"
|
||||
session_terminated_no_regia: "Sitzung beendet: Regie-Link kann nicht erzeugt werden."
|
||||
session_regia_generated: Regie-Link erzeugt.
|
||||
invoice_upload_hint: Lade das PDF aus der Liste „Zu berechnende Zahlungen“ hoch.
|
||||
invoice_draft_created: Entwurf erstellt. Lade das PDF auf der Abrechnungsseite oder unten hoch.
|
||||
invoice_issued: "Rechnung %{number} ausgestellt und an %{email} gesendet."
|
||||
invoice_updated: "Rechnung %{number} aktualisiert."
|
||||
invoice_uploaded: "Rechnung hochgeladen und an %{email} gesendet."
|
||||
youtube_not_configured: Konfiguriere YOUTUBE_CLIENT_ID und YOUTUBE_CLIENT_SECRET in .env
|
||||
common:
|
||||
free_plan: Free
|
||||
yes: "Ja"
|
||||
no: "Nein"
|
||||
dash: "—"
|
||||
live_page: Live-Seite
|
||||
auth:
|
||||
new:
|
||||
title: Admin-Anmeldung
|
||||
username_label: Benutzername
|
||||
password_label: Passwort
|
||||
submit: Anmelden
|
||||
initial_credentials_html: "Anfangs-Zugangsdaten: <code>admin</code> / <code>admin</code>. Ändere das Passwort nach der ersten Anmeldung."
|
||||
passwords:
|
||||
edit:
|
||||
title: Passwort ändern
|
||||
current_password_label: Aktuelles Passwort
|
||||
new_password_label: "Neues Passwort (mind. 8 Zeichen)"
|
||||
confirm_password_label: Neues Passwort bestätigen
|
||||
submit: Passwort speichern
|
||||
cancel: Abbrechen
|
||||
dashboard:
|
||||
kpi:
|
||||
active_sessions: Aktive Sitzungen
|
||||
active_sessions_sub: gerade live
|
||||
today: Heute übertragen
|
||||
today_sub: "%{duration} Streaming"
|
||||
month: Diesen Monat übertragen
|
||||
month_sub: "%{duration} insgesamt"
|
||||
teams: Teams
|
||||
teams_sub: "%{count} Nutzer"
|
||||
cpu: CPU
|
||||
cpu_sub: "Last %{one} / %{five} / %{fifteen}"
|
||||
ram: RAM
|
||||
ram_sub: "%{used} / %{total}"
|
||||
network: Bandbreite (gesamt)
|
||||
network_sub: "↑ %{tx} · ↓ %{rx}"
|
||||
recordings: Replays im Archiv
|
||||
recordings_sub: "%{count} Aufnahmen"
|
||||
charts:
|
||||
cpu: CPU (%)
|
||||
ram: RAM (%)
|
||||
ops_panel:
|
||||
title: Plattformstatus (Ops)
|
||||
critical: "%{count} kritische(r) offene(r) Vorfall/Vorfälle"
|
||||
view_dashboard: Ops-Dashboard ansehen
|
||||
warnings: "%{count} Warnung(en)"
|
||||
dashboard_link: Ops-Dashboard
|
||||
none_html: "Keine offenen Vorfälle. %{link}"
|
||||
disk:
|
||||
system_title: Systemfestplatte
|
||||
free_label: "Frei: %{free} (%{percent}% belegt)"
|
||||
not_available: Festplattenmetriken nicht verfügbar
|
||||
recordings_title: Aufnahmearchiv
|
||||
recordings_content: "Inhalt der Aufnahmen: %{size}"
|
||||
recordings_not_mounted: "Pfad %{path} nicht eingebunden"
|
||||
sessions:
|
||||
title: Aktive Sitzungen
|
||||
table:
|
||||
match: Spiel
|
||||
status: Status
|
||||
start: Start
|
||||
link: Link
|
||||
none: Derzeit keine aktive Sitzung.
|
||||
detail: Details
|
||||
stop: Beenden
|
||||
stop_confirm: Diese Sitzung beenden?
|
||||
regia: Regie
|
||||
teams:
|
||||
title: Teams
|
||||
matches_count: "%{count} Spiele"
|
||||
view_all: "Vereine ansehen (%{count} Teams)"
|
||||
ops:
|
||||
kpi:
|
||||
critical: Kritisch offen
|
||||
warning: Warnungen offen
|
||||
total: Insgesamt offen
|
||||
open:
|
||||
title: Offene Vorfälle
|
||||
table:
|
||||
severity: Schweregrad
|
||||
kind: Typ
|
||||
title: Titel
|
||||
occurrences: Anz.
|
||||
last_seen: Zuletzt
|
||||
none: Keine offenen Vorfälle. Die Plattform ist gesund.
|
||||
actions:
|
||||
acknowledge: Übernommen
|
||||
resolve: Lösen
|
||||
mute: Stumm 24h
|
||||
resolved:
|
||||
title: Gelöst (letzte 30 Tage)
|
||||
table:
|
||||
resolved_at: Gelöst
|
||||
none: Kürzlich keine Vorfälle gelöst.
|
||||
clubs:
|
||||
index:
|
||||
title: Vereine & Teams
|
||||
subtitle_html: "Kostenlose Abonnements (Sponsoren / Aktionen) und YouTube-Status pro Team. Stripe-Zahlungen: %{billing_link}."
|
||||
billing_link: Abrechnung
|
||||
table:
|
||||
club: Verein
|
||||
plan: Plan
|
||||
teams: Teams
|
||||
comped: Kostenlos
|
||||
stripe: Stripe
|
||||
manage: Verwalten
|
||||
invoices: Rechnungen
|
||||
show:
|
||||
back: "← Vereine & Teams"
|
||||
sport_label: "Sportart: %{sport}"
|
||||
recordings_archive: Replay-Archiv
|
||||
billing_link: Zahlungen & Rechnungen
|
||||
youtube_platform_link: Plattform-YouTube-Kanal
|
||||
youtube_club_label: "Vereins-YouTube:"
|
||||
youtube_connected: (verbunden)
|
||||
youtube_premium_full_not_connected: Premium Full — Vereinskanal nicht verbunden (nutzt Match Live TV)
|
||||
no_channel_hint_html: "Ohne verbundenen Kanal nutzt die App den Match-Live-TV-Kanal. %{link}."
|
||||
link_channel: Kanal verbinden (Vereinsseite)
|
||||
teams_title: Teams
|
||||
no_teams: Keine Teams registriert.
|
||||
table:
|
||||
team: Team
|
||||
sport: Sportart
|
||||
matches_and_details: Spiele & Details
|
||||
replay: Replays
|
||||
comped:
|
||||
title: Kostenloses Abonnement
|
||||
description: "Sponsor oder Aktion: Vergib Premium Light/Full ohne Stripe-Zahlung. Jederzeit widerrufbar."
|
||||
active_label: "Aktiv:"
|
||||
since_label_html: "Seit %{date}"
|
||||
by_admin: "· Admin %{username}"
|
||||
stripe_note: "Hinweis: Es existiert auch ein verknüpftes Stripe-Abo; das kostenlose Abo hat Vorrang vor dem Plan."
|
||||
revoke_button: Kostenloses Abo widerrufen (zurück zu Free oder Stripe wiederherstellen)
|
||||
revoke_confirm: "Das kostenlose Abonnement für %{club} widerrufen?"
|
||||
current_plan: "Aktueller Plan: %{plan}"
|
||||
stripe_active: "· aktive Stripe-Zahlung"
|
||||
plan_label: Plan
|
||||
reason_label: "Grund (z. B. Sponsor 2026)"
|
||||
reason_placeholder: "Sponsor, Aktion…"
|
||||
grant_button: Kostenloses Abo gewähren
|
||||
teams:
|
||||
show:
|
||||
back: "← %{club}"
|
||||
sport_label: "Sportart: %{sport}"
|
||||
club_label_html: "Verein: %{club} · %{replay_link} · %{billing_link}"
|
||||
replay_link: Team-Replays
|
||||
billing_link: Zahlungen & Rechnungen
|
||||
youtube_label: "YouTube:"
|
||||
youtube_platform_default_no_oauth: ", Standard ohne Vereins-OAuth"
|
||||
youtube_platform_channel: "(Plattformkanal%{suffix})"
|
||||
youtube_club_channel: (Vereinskanal)
|
||||
youtube_not_ready: nicht bereit
|
||||
no_channel_hint_html: "Ohne verbundenen Kanal nutzt die App den Match-Live-TV-Kanal. %{link}."
|
||||
link_channel: Kanal verbinden (Vereinsseite)
|
||||
matches_title: Spiele
|
||||
sessions:
|
||||
index:
|
||||
title: Stream-Sitzungen
|
||||
table:
|
||||
match: Spiel
|
||||
status: Status
|
||||
disconnects: Verbindungsabbrüche
|
||||
link: Link
|
||||
detail: Details
|
||||
regia: Regie
|
||||
show:
|
||||
title: "Sitzung %{id}"
|
||||
status_label: "Status:"
|
||||
stop_button: Sitzung beenden
|
||||
stop_confirm: "Übertragung beenden? Der RTMP-Pfad wird entfernt und der Status wechselt zu beendet."
|
||||
match_label: "Spiel: %{team} gegen %{opponent}"
|
||||
youtube_studio: YouTube Studio
|
||||
broadcast: Übertragung
|
||||
rtmp_ingest: "RTMP-Ingest:"
|
||||
events_title: Ereignisse
|
||||
table:
|
||||
type: Typ
|
||||
when: Wann
|
||||
meta: Meta
|
||||
links:
|
||||
watch_title: Live-Link
|
||||
none: Kein Video-Link für diese Sitzung verfügbar.
|
||||
regia_title: Regie-Link
|
||||
terminated: Sitzung beendet — Regie-Link nicht verfügbar.
|
||||
regia_label: Regie
|
||||
valid_until: "Gültig bis %{date}"
|
||||
active_exists: Es existiert bereits ein aktiver Regie-Link (die URL kann nicht abgerufen werden). Erzeuge einen neuen, wenn du ihn erneut teilen musst.
|
||||
none_active: Kein aktiver Regie-Link. Erzeuge einen Link zum Teilen mit der Person, die den Spielstand verwaltet.
|
||||
generate_button: Regie-Link erzeugen
|
||||
billing:
|
||||
index:
|
||||
title: Zu berechnende Zahlungen
|
||||
description: Bezahlte Stripe-Zahlungen ohne Rechnungs-PDF. Erstelle das PDF in deinen Systemen und lade es hier hoch — es wird der Zahlung zugeordnet und dem Kunden per E-Mail gesendet.
|
||||
filter_label: "Vereine filtern:"
|
||||
filter_all: Alle
|
||||
incomplete_profile_warning: Rechnungsdaten unvollständig
|
||||
no_billing_data: Keine Rechnungsdaten — der Kunde muss sein Profil vervollständigen.
|
||||
pdf_label: Rechnungs-PDF
|
||||
upload_button: PDF hochladen und an Kunden senden
|
||||
none_pending: "Keine Zahlungen warten auf eine Rechnung%{club}."
|
||||
none_pending_for_club: " für %{club}"
|
||||
uploaded_title: Bereits hochgeladene Rechnungen
|
||||
table:
|
||||
date: Datum
|
||||
club: Verein
|
||||
description: Beschreibung
|
||||
amount: Betrag
|
||||
invoice: Rechnung
|
||||
status: Status
|
||||
back_dashboard: "← Dashboard"
|
||||
billing_invoices:
|
||||
index:
|
||||
title: "Abrechnung — %{club}"
|
||||
back_dashboard: "← Dashboard"
|
||||
new_invoice: Neue Rechnung (ohne Zahlung)
|
||||
payments_title: Zahlungen
|
||||
table:
|
||||
date: Datum
|
||||
description: Beschreibung
|
||||
amount: Betrag
|
||||
invoice: Rechnung
|
||||
pdf_suffix: " (PDF)"
|
||||
edit_send_pdf: Bearbeiten / PDF senden
|
||||
create_invoice: Rechnung erstellen
|
||||
no_payments: Keine Zahlungen für diesen Verein erfasst.
|
||||
all_invoices_title: Alle Rechnungen
|
||||
table2:
|
||||
number: Nummer
|
||||
date: Datum
|
||||
amount: Betrag
|
||||
status: Status
|
||||
payment: Zahlung
|
||||
edit: Bearbeiten
|
||||
no_invoices: Keine Rechnungen.
|
||||
new:
|
||||
title: "Neue Rechnung — %{club}"
|
||||
linked_payment: "Verknüpft mit der Zahlung vom %{date} (%{amount})."
|
||||
number_label: Rechnungsnummer
|
||||
issued_on_label: Ausstellungsdatum
|
||||
amount_label: "Betrag (€)"
|
||||
notes_label: Interne Notizen (optional)
|
||||
hint: Speichere den Entwurf, lade dann das PDF hoch und sende es dem Kunden vom nächsten Bildschirm aus.
|
||||
submit: Rechnungsentwurf erstellen
|
||||
back: "← Zahlungen & Rechnungen"
|
||||
edit:
|
||||
title: "Rechnung %{number} — %{club}"
|
||||
status_label: "Status:"
|
||||
sent_at: "· Gesendet am %{date}"
|
||||
number_label: Rechnungsnummer
|
||||
issued_on_label: Ausstellungsdatum
|
||||
amount_label: "Betrag (€)"
|
||||
payment_info: "Zahlung: %{description} — %{amount}"
|
||||
pdf_label: Rechnungs-PDF
|
||||
pdf_already: "PDF bereits hochgeladen: %{filename}"
|
||||
notes_label: Interne Notizen
|
||||
save_draft: Entwurf speichern
|
||||
issue_send: Ausstellen und per E-Mail senden
|
||||
issue_confirm: "Die Rechnung an %{email} senden?"
|
||||
back: "← Zahlungen & Rechnungen"
|
||||
youtube:
|
||||
platform_token:
|
||||
title: Token für den Match-Live-TV-Kanal
|
||||
page_title: "YouTube-Token — Match Live TV"
|
||||
channel_label: "Kanal: %{title}"
|
||||
success: "Verbindung erfolgreich. Kopiere diese Zeile sofort:"
|
||||
env_hint_html: "Füge zu <code>/opt/matchlivetv/infra/.env</code> hinzu:"
|
||||
not_shown_again_html: "Wird nicht erneut angezeigt. Danach: <code>docker compose -f docker-compose.prod.yml restart rails sidekiq</code>"
|
||||
no_refresh_token_html: "Google hat keinen Refresh-Token zurückgegeben. Widerrufe in deinem <a href=\"https://myaccount.google.com/permissions\" target=\"_blank\" rel=\"noopener\">Google-Konto → App-Zugriff</a> „Match Live TV“ und wiederhole den Vorgang ab <a href=\"/admin/youtube/platform\">/admin/youtube/platform</a>."
|
||||
back_dashboard: "← Admin-Dashboard"
|
||||
club_recordings:
|
||||
index:
|
||||
title: "Replays — %{club}"
|
||||
@@ -0,0 +1,311 @@
|
||||
en:
|
||||
admin:
|
||||
layout:
|
||||
title: "Match Live TV — Admin"
|
||||
nav:
|
||||
dashboard: Dashboard
|
||||
ops: Ops
|
||||
clubs: Clubs & teams
|
||||
billing: Billing
|
||||
youtube: YouTube
|
||||
sessions: Sessions
|
||||
password: Password
|
||||
logout: Log out
|
||||
flash:
|
||||
login_required: Please log in to continue
|
||||
login_success: Signed in successfully
|
||||
invalid_credentials: Invalid username or password
|
||||
logout_success: Signed out
|
||||
password_current_incorrect: Current password is incorrect
|
||||
password_too_short: The new password must be at least 8 characters long
|
||||
password_mismatch: Passwords do not match
|
||||
password_updated: Password updated
|
||||
ops_acknowledged: Incident acknowledged
|
||||
ops_resolved: Incident resolved
|
||||
ops_muted: Notifications muted for 24 hours
|
||||
comped_granted: "%{plan} complimentary subscription activated for %{club}."
|
||||
comped_revoked: "Complimentary subscription revoked for %{club}."
|
||||
session_already_terminated: "Session already ended (%{status})."
|
||||
session_stopped: Session ended.
|
||||
session_stop_error: "Error while stopping: %{error}"
|
||||
session_terminated_no_regia: "Session ended: unable to generate the control link."
|
||||
session_regia_generated: Control link generated.
|
||||
invoice_upload_hint: Upload the PDF from the "Payments to invoice" list.
|
||||
invoice_draft_created: Draft created. Upload the PDF from the Billing page or below.
|
||||
invoice_issued: "Invoice %{number} issued and sent to %{email}."
|
||||
invoice_updated: "Invoice %{number} updated."
|
||||
invoice_uploaded: "Invoice uploaded and sent to %{email}."
|
||||
youtube_not_configured: Configure YOUTUBE_CLIENT_ID and YOUTUBE_CLIENT_SECRET in .env
|
||||
common:
|
||||
free_plan: Free
|
||||
yes: "Yes"
|
||||
no: "No"
|
||||
dash: "—"
|
||||
live_page: Live page
|
||||
auth:
|
||||
new:
|
||||
title: Admin login
|
||||
username_label: Username
|
||||
password_label: Password
|
||||
submit: Log in
|
||||
initial_credentials_html: "Initial credentials: <code>admin</code> / <code>admin</code>. Change the password after the first login."
|
||||
passwords:
|
||||
edit:
|
||||
title: Change password
|
||||
current_password_label: Current password
|
||||
new_password_label: "New password (min. 8 characters)"
|
||||
confirm_password_label: Confirm new password
|
||||
submit: Save password
|
||||
cancel: Cancel
|
||||
dashboard:
|
||||
kpi:
|
||||
active_sessions: Active sessions
|
||||
active_sessions_sub: live right now
|
||||
today: Streamed today
|
||||
today_sub: "%{duration} of streaming"
|
||||
month: Streamed this month
|
||||
month_sub: "%{duration} total"
|
||||
teams: Teams
|
||||
teams_sub: "%{count} users"
|
||||
cpu: CPU
|
||||
cpu_sub: "load %{one} / %{five} / %{fifteen}"
|
||||
ram: RAM
|
||||
ram_sub: "%{used} / %{total}"
|
||||
network: Bandwidth (total)
|
||||
network_sub: "↑ %{tx} · ↓ %{rx}"
|
||||
recordings: Recordings in archive
|
||||
recordings_sub: "%{count} recordings"
|
||||
charts:
|
||||
cpu: CPU (%)
|
||||
ram: RAM (%)
|
||||
ops_panel:
|
||||
title: Platform status (Ops)
|
||||
critical: "%{count} critical incident(s) open"
|
||||
view_dashboard: View Ops dashboard
|
||||
warnings: "%{count} warning(s)"
|
||||
dashboard_link: Ops dashboard
|
||||
none_html: "No open incidents. %{link}"
|
||||
disk:
|
||||
system_title: System disk
|
||||
free_label: "Free: %{free} (%{percent}% used)"
|
||||
not_available: Disk metrics not available
|
||||
recordings_title: Recordings archive
|
||||
recordings_content: "Recordings content: %{size}"
|
||||
recordings_not_mounted: "Path %{path} not mounted"
|
||||
sessions:
|
||||
title: Active sessions
|
||||
table:
|
||||
match: Match
|
||||
status: Status
|
||||
start: Start
|
||||
link: Link
|
||||
none: No active session right now.
|
||||
detail: Details
|
||||
stop: Stop
|
||||
stop_confirm: End this session?
|
||||
regia: Control
|
||||
teams:
|
||||
title: Teams
|
||||
matches_count: "%{count} matches"
|
||||
view_all: "View clubs (%{count} teams)"
|
||||
ops:
|
||||
kpi:
|
||||
critical: Critical open
|
||||
warning: Warnings open
|
||||
total: Total open
|
||||
open:
|
||||
title: Open incidents
|
||||
table:
|
||||
severity: Severity
|
||||
kind: Type
|
||||
title: Title
|
||||
occurrences: Occ.
|
||||
last_seen: Last seen
|
||||
none: No open incidents. The platform looks healthy.
|
||||
actions:
|
||||
acknowledge: Acknowledge
|
||||
resolve: Resolve
|
||||
mute: Mute 24h
|
||||
resolved:
|
||||
title: Resolved (last 30 days)
|
||||
table:
|
||||
resolved_at: Resolved
|
||||
none: No incidents resolved recently.
|
||||
clubs:
|
||||
index:
|
||||
title: Clubs & teams
|
||||
subtitle_html: "Complimentary subscriptions (sponsors / promotions) and YouTube status per team. Stripe payments: %{billing_link}."
|
||||
billing_link: Billing
|
||||
table:
|
||||
club: Club
|
||||
plan: Plan
|
||||
teams: Teams
|
||||
comped: Comp
|
||||
stripe: Stripe
|
||||
manage: Manage
|
||||
invoices: Invoices
|
||||
show:
|
||||
back: "← Clubs & teams"
|
||||
sport_label: "Sport: %{sport}"
|
||||
recordings_archive: Recordings archive
|
||||
billing_link: Payments & invoices
|
||||
youtube_platform_link: Platform YouTube channel
|
||||
youtube_club_label: "Club YouTube:"
|
||||
youtube_connected: (connected)
|
||||
youtube_premium_full_not_connected: Premium Full — club channel not connected (using Match Live TV)
|
||||
no_channel_hint_html: "Without a connected channel, the app uses the Match Live TV channel. %{link}."
|
||||
link_channel: Connect channel (club page)
|
||||
teams_title: Teams
|
||||
no_teams: No teams registered.
|
||||
table:
|
||||
team: Team
|
||||
sport: Sport
|
||||
matches_and_details: Matches & details
|
||||
replay: Replays
|
||||
comped:
|
||||
title: Complimentary subscription
|
||||
description: "Sponsor or promotion: grant Premium Light/Full without a Stripe payment. Revocable at any time."
|
||||
active_label: "Active:"
|
||||
since_label_html: "Since %{date}"
|
||||
by_admin: "· admin %{username}"
|
||||
stripe_note: "Note: a linked Stripe subscription also exists; the comp takes priority over the plan."
|
||||
revoke_button: Revoke comp (revert to Free or restore Stripe)
|
||||
revoke_confirm: "Revoke the complimentary subscription for %{club}?"
|
||||
current_plan: "Current plan: %{plan}"
|
||||
stripe_active: "· active Stripe payment"
|
||||
plan_label: Plan
|
||||
reason_label: "Reason (e.g. 2026 sponsor)"
|
||||
reason_placeholder: "Sponsor, promotion…"
|
||||
grant_button: Grant comp
|
||||
teams:
|
||||
show:
|
||||
back: "← %{club}"
|
||||
sport_label: "Sport: %{sport}"
|
||||
club_label_html: "Club: %{club} · %{replay_link} · %{billing_link}"
|
||||
replay_link: Team replays
|
||||
billing_link: Payments & invoices
|
||||
youtube_label: "YouTube:"
|
||||
youtube_platform_default_no_oauth: ", default without club OAuth"
|
||||
youtube_platform_channel: "(platform channel%{suffix})"
|
||||
youtube_club_channel: (club channel)
|
||||
youtube_not_ready: not ready
|
||||
no_channel_hint_html: "Without a connected channel, the app uses the Match Live TV channel. %{link}."
|
||||
link_channel: Connect channel (club page)
|
||||
matches_title: Matches
|
||||
sessions:
|
||||
index:
|
||||
title: Stream sessions
|
||||
table:
|
||||
match: Match
|
||||
status: Status
|
||||
disconnects: Disconnects
|
||||
link: Link
|
||||
detail: Details
|
||||
regia: Control
|
||||
show:
|
||||
title: "Session %{id}"
|
||||
status_label: "Status:"
|
||||
stop_button: End session
|
||||
stop_confirm: "End the broadcast? The RTMP path will be removed and the status will move to ended."
|
||||
match_label: "Match: %{team} vs %{opponent}"
|
||||
youtube_studio: YouTube Studio
|
||||
broadcast: Broadcast
|
||||
rtmp_ingest: "RTMP ingest:"
|
||||
events_title: Events
|
||||
table:
|
||||
type: Type
|
||||
when: When
|
||||
meta: Meta
|
||||
links:
|
||||
watch_title: Live link
|
||||
none: No video link available for this session.
|
||||
regia_title: Control link
|
||||
terminated: Session ended — control link not available.
|
||||
regia_label: Control
|
||||
valid_until: "Valid until %{date}"
|
||||
active_exists: An active control link already exists (the URL cannot be retrieved). Generate a new one if you need to share it again.
|
||||
none_active: No active control link. Generate a link to share with whoever manages the score.
|
||||
generate_button: Generate control link
|
||||
billing:
|
||||
index:
|
||||
title: Payments to invoice
|
||||
description: Stripe payments that are paid but have no invoice PDF yet. Generate the PDF in your systems, then upload it here — it will be linked to the payment and emailed to the customer.
|
||||
filter_label: "Filter clubs:"
|
||||
filter_all: All
|
||||
incomplete_profile_warning: Billing details incomplete
|
||||
no_billing_data: No billing details — the customer must complete their profile.
|
||||
pdf_label: Invoice PDF
|
||||
upload_button: Upload PDF and send to customer
|
||||
none_pending: "No payments awaiting an invoice%{club}."
|
||||
none_pending_for_club: " for %{club}"
|
||||
uploaded_title: Invoices already uploaded
|
||||
table:
|
||||
date: Date
|
||||
club: Club
|
||||
description: Description
|
||||
amount: Amount
|
||||
invoice: Invoice
|
||||
status: Status
|
||||
back_dashboard: "← Dashboard"
|
||||
billing_invoices:
|
||||
index:
|
||||
title: "Billing — %{club}"
|
||||
back_dashboard: "← Dashboard"
|
||||
new_invoice: New invoice (no payment)
|
||||
payments_title: Payments
|
||||
table:
|
||||
date: Date
|
||||
description: Description
|
||||
amount: Amount
|
||||
invoice: Invoice
|
||||
pdf_suffix: " (PDF)"
|
||||
edit_send_pdf: Edit / send PDF
|
||||
create_invoice: Create invoice
|
||||
no_payments: No payments recorded for this club.
|
||||
all_invoices_title: All invoices
|
||||
table2:
|
||||
number: Number
|
||||
date: Date
|
||||
amount: Amount
|
||||
status: Status
|
||||
payment: Payment
|
||||
edit: Edit
|
||||
no_invoices: No invoices.
|
||||
new:
|
||||
title: "New invoice — %{club}"
|
||||
linked_payment: "Linked to the payment of %{date} (%{amount})."
|
||||
number_label: Invoice number
|
||||
issued_on_label: Issue date
|
||||
amount_label: "Amount (€)"
|
||||
notes_label: Internal notes (optional)
|
||||
hint: Save the draft, then upload the PDF and send it to the customer from the next screen.
|
||||
submit: Create invoice draft
|
||||
back: "← Payments & invoices"
|
||||
edit:
|
||||
title: "Invoice %{number} — %{club}"
|
||||
status_label: "Status:"
|
||||
sent_at: "· Sent on %{date}"
|
||||
number_label: Invoice number
|
||||
issued_on_label: Issue date
|
||||
amount_label: "Amount (€)"
|
||||
payment_info: "Payment: %{description} — %{amount}"
|
||||
pdf_label: Invoice PDF
|
||||
pdf_already: "PDF already uploaded: %{filename}"
|
||||
notes_label: Internal notes
|
||||
save_draft: Save draft
|
||||
issue_send: Issue and send by email
|
||||
issue_confirm: "Send the invoice to %{email}?"
|
||||
back: "← Payments & invoices"
|
||||
youtube:
|
||||
platform_token:
|
||||
title: Match Live TV channel token
|
||||
page_title: "YouTube token — Match Live TV"
|
||||
channel_label: "Channel: %{title}"
|
||||
success: "Connection successful. Copy this line right away:"
|
||||
env_hint_html: "Add to <code>/opt/matchlivetv/infra/.env</code>:"
|
||||
not_shown_again_html: "It won't be shown again. Then run: <code>docker compose -f docker-compose.prod.yml restart rails sidekiq</code>"
|
||||
no_refresh_token_html: "Google did not return a refresh token. In your <a href=\"https://myaccount.google.com/permissions\" target=\"_blank\" rel=\"noopener\">Google account → app access</a>, revoke «Match Live TV», then repeat from <a href=\"/admin/youtube/platform\">/admin/youtube/platform</a>."
|
||||
back_dashboard: "← Admin dashboard"
|
||||
club_recordings:
|
||||
index:
|
||||
title: "Replays — %{club}"
|
||||
@@ -0,0 +1,311 @@
|
||||
es:
|
||||
admin:
|
||||
layout:
|
||||
title: "Match Live TV — Admin"
|
||||
nav:
|
||||
dashboard: Panel
|
||||
ops: Ops
|
||||
clubs: Clubes y equipos
|
||||
billing: Facturación
|
||||
youtube: YouTube
|
||||
sessions: Sesiones
|
||||
password: Contraseña
|
||||
logout: Salir
|
||||
flash:
|
||||
login_required: Inicia sesión para continuar
|
||||
login_success: Sesión iniciada correctamente
|
||||
invalid_credentials: Usuario o contraseña no válidos
|
||||
logout_success: Sesión cerrada
|
||||
password_current_incorrect: La contraseña actual no es correcta
|
||||
password_too_short: La nueva contraseña debe tener al menos 8 caracteres
|
||||
password_mismatch: Las contraseñas no coinciden
|
||||
password_updated: Contraseña actualizada
|
||||
ops_acknowledged: Incidencia asumida
|
||||
ops_resolved: Incidencia resuelta
|
||||
ops_muted: Notificaciones silenciadas durante 24 horas
|
||||
comped_granted: "Suscripción de cortesía %{plan} activada para %{club}."
|
||||
comped_revoked: "Suscripción de cortesía revocada para %{club}."
|
||||
session_already_terminated: "La sesión ya ha finalizado (%{status})."
|
||||
session_stopped: Sesión finalizada.
|
||||
session_stop_error: "Error al cerrar la sesión: %{error}"
|
||||
session_terminated_no_regia: "Sesión finalizada: no se puede generar el enlace de regie."
|
||||
session_regia_generated: Enlace de regie generado.
|
||||
invoice_upload_hint: Sube el PDF desde la lista «Pagos por facturar».
|
||||
invoice_draft_created: Borrador creado. Sube el PDF desde la página de Facturación o aquí abajo.
|
||||
invoice_issued: "Factura %{number} emitida y enviada a %{email}."
|
||||
invoice_updated: "Factura %{number} actualizada."
|
||||
invoice_uploaded: "Factura subida y enviada a %{email}."
|
||||
youtube_not_configured: Configura YOUTUBE_CLIENT_ID y YOUTUBE_CLIENT_SECRET en .env
|
||||
common:
|
||||
free_plan: Free
|
||||
yes: "Sí"
|
||||
no: "No"
|
||||
dash: "—"
|
||||
live_page: Página en directo
|
||||
auth:
|
||||
new:
|
||||
title: Acceso admin
|
||||
username_label: Usuario
|
||||
password_label: Contraseña
|
||||
submit: Acceder
|
||||
initial_credentials_html: "Credenciales iniciales: <code>admin</code> / <code>admin</code>. Cambia la contraseña después del primer acceso."
|
||||
passwords:
|
||||
edit:
|
||||
title: Cambiar contraseña
|
||||
current_password_label: Contraseña actual
|
||||
new_password_label: "Nueva contraseña (mín. 8 caracteres)"
|
||||
confirm_password_label: Confirma la nueva contraseña
|
||||
submit: Guardar contraseña
|
||||
cancel: Cancelar
|
||||
dashboard:
|
||||
kpi:
|
||||
active_sessions: Sesiones activas
|
||||
active_sessions_sub: en directo ahora
|
||||
today: Emitidas hoy
|
||||
today_sub: "%{duration} de emisión"
|
||||
month: Emitidas este mes
|
||||
month_sub: "%{duration} en total"
|
||||
teams: Equipos
|
||||
teams_sub: "%{count} usuarios"
|
||||
cpu: CPU
|
||||
cpu_sub: "carga %{one} / %{five} / %{fifteen}"
|
||||
ram: RAM
|
||||
ram_sub: "%{used} / %{total}"
|
||||
network: Ancho de banda (total)
|
||||
network_sub: "↑ %{tx} · ↓ %{rx}"
|
||||
recordings: Repeticiones archivadas
|
||||
recordings_sub: "%{count} grabaciones"
|
||||
charts:
|
||||
cpu: CPU (%)
|
||||
ram: RAM (%)
|
||||
ops_panel:
|
||||
title: Estado de la plataforma (Ops)
|
||||
critical: "%{count} incidencia(s) crítica(s) abierta(s)"
|
||||
view_dashboard: Ver panel de Ops
|
||||
warnings: "%{count} aviso(s)"
|
||||
dashboard_link: Panel de Ops
|
||||
none_html: "No hay incidencias abiertas. %{link}"
|
||||
disk:
|
||||
system_title: Disco del sistema
|
||||
free_label: "Libre: %{free} (%{percent}% usado)"
|
||||
not_available: Métricas de disco no disponibles
|
||||
recordings_title: Archivo de grabaciones
|
||||
recordings_content: "Contenido de las grabaciones: %{size}"
|
||||
recordings_not_mounted: "Ruta %{path} no montada"
|
||||
sessions:
|
||||
title: Sesiones activas
|
||||
table:
|
||||
match: Partido
|
||||
status: Estado
|
||||
start: Inicio
|
||||
link: Enlace
|
||||
none: No hay ninguna sesión activa en este momento.
|
||||
detail: Detalle
|
||||
stop: Finalizar
|
||||
stop_confirm: "¿Finalizar esta sesión?"
|
||||
regia: Regie
|
||||
teams:
|
||||
title: Equipos
|
||||
matches_count: "%{count} partidos"
|
||||
view_all: "Ver clubes (%{count} equipos)"
|
||||
ops:
|
||||
kpi:
|
||||
critical: Críticas abiertas
|
||||
warning: Avisos abiertos
|
||||
total: Total abiertas
|
||||
open:
|
||||
title: Incidencias abiertas
|
||||
table:
|
||||
severity: Gravedad
|
||||
kind: Tipo
|
||||
title: Título
|
||||
occurrences: N.º
|
||||
last_seen: Última vez
|
||||
none: No hay incidencias abiertas. La plataforma parece estar sana.
|
||||
actions:
|
||||
acknowledge: Asumida
|
||||
resolve: Resolver
|
||||
mute: Silenciar 24h
|
||||
resolved:
|
||||
title: Resueltas (últimos 30 días)
|
||||
table:
|
||||
resolved_at: Resuelta
|
||||
none: No se han resuelto incidencias recientemente.
|
||||
clubs:
|
||||
index:
|
||||
title: Clubes y equipos
|
||||
subtitle_html: "Suscripciones de cortesía (patrocinadores / promociones) y estado de YouTube por equipo. Pagos de Stripe: %{billing_link}."
|
||||
billing_link: Facturación
|
||||
table:
|
||||
club: Club
|
||||
plan: Plan
|
||||
teams: Equipos
|
||||
comped: Cortesía
|
||||
stripe: Stripe
|
||||
manage: Gestionar
|
||||
invoices: Facturas
|
||||
show:
|
||||
back: "← Clubes y equipos"
|
||||
sport_label: "Deporte: %{sport}"
|
||||
recordings_archive: Archivo de repeticiones
|
||||
billing_link: Pagos y facturas
|
||||
youtube_platform_link: Canal de YouTube de la plataforma
|
||||
youtube_club_label: "YouTube del club:"
|
||||
youtube_connected: (conectado)
|
||||
youtube_premium_full_not_connected: Premium Full — canal del club no conectado (usa Match Live TV)
|
||||
no_channel_hint_html: "Sin un canal conectado, la app usa el canal de Match Live TV. %{link}."
|
||||
link_channel: Conectar canal (página del club)
|
||||
teams_title: Equipos
|
||||
no_teams: No hay equipos registrados.
|
||||
table:
|
||||
team: Equipo
|
||||
sport: Deporte
|
||||
matches_and_details: Partidos y detalles
|
||||
replay: Repeticiones
|
||||
comped:
|
||||
title: Suscripción de cortesía
|
||||
description: "Patrocinador o promoción: concede Premium Light/Full sin pago en Stripe. Revocable en cualquier momento."
|
||||
active_label: "Activa:"
|
||||
since_label_html: "Desde el %{date}"
|
||||
by_admin: "· admin %{username}"
|
||||
stripe_note: "Nota: también existe una suscripción de Stripe vinculada; la cortesía tiene prioridad sobre el plan."
|
||||
revoke_button: Revocar cortesía (volver a Free o restaurar Stripe)
|
||||
revoke_confirm: "¿Revocar la suscripción de cortesía para %{club}?"
|
||||
current_plan: "Plan actual: %{plan}"
|
||||
stripe_active: "· pago de Stripe activo"
|
||||
plan_label: Plan
|
||||
reason_label: "Motivo (p. ej. patrocinador 2026)"
|
||||
reason_placeholder: "Patrocinador, promoción…"
|
||||
grant_button: Conceder cortesía
|
||||
teams:
|
||||
show:
|
||||
back: "← %{club}"
|
||||
sport_label: "Deporte: %{sport}"
|
||||
club_label_html: "Club: %{club} · %{replay_link} · %{billing_link}"
|
||||
replay_link: Repeticiones del equipo
|
||||
billing_link: Pagos y facturas
|
||||
youtube_label: "YouTube:"
|
||||
youtube_platform_default_no_oauth: ", predeterminado sin OAuth del club"
|
||||
youtube_platform_channel: "(canal de la plataforma%{suffix})"
|
||||
youtube_club_channel: (canal del club)
|
||||
youtube_not_ready: no está listo
|
||||
no_channel_hint_html: "Sin un canal conectado, la app usa el canal de Match Live TV. %{link}."
|
||||
link_channel: Conectar canal (página del club)
|
||||
matches_title: Partidos
|
||||
sessions:
|
||||
index:
|
||||
title: Sesiones de emisión
|
||||
table:
|
||||
match: Partido
|
||||
status: Estado
|
||||
disconnects: Desconexiones
|
||||
link: Enlace
|
||||
detail: Detalle
|
||||
regia: Regie
|
||||
show:
|
||||
title: "Sesión %{id}"
|
||||
status_label: "Estado:"
|
||||
stop_button: Finalizar sesión
|
||||
stop_confirm: "¿Finalizar la emisión? La ruta RTMP se eliminará y el estado pasará a finalizada."
|
||||
match_label: "Partido: %{team} vs %{opponent}"
|
||||
youtube_studio: YouTube Studio
|
||||
broadcast: Emisión
|
||||
rtmp_ingest: "Ingesta RTMP:"
|
||||
events_title: Eventos
|
||||
table:
|
||||
type: Tipo
|
||||
when: Cuándo
|
||||
meta: Meta
|
||||
links:
|
||||
watch_title: Enlace en directo
|
||||
none: No hay ningún enlace de vídeo disponible para esta sesión.
|
||||
regia_title: Enlace de regie
|
||||
terminated: Sesión finalizada — enlace de regie no disponible.
|
||||
regia_label: Regie
|
||||
valid_until: "Válido hasta %{date}"
|
||||
active_exists: Ya existe un enlace de regie activo (la URL no se puede recuperar). Genera uno nuevo si necesitas compartirlo de nuevo.
|
||||
none_active: No hay ningún enlace de regie activo. Genera un enlace para compartir con quien gestione el marcador.
|
||||
generate_button: Generar enlace de regie
|
||||
billing:
|
||||
index:
|
||||
title: Pagos por facturar
|
||||
description: Pagos de Stripe cobrados sin PDF de factura. Genera el PDF en tus sistemas y súbelo aquí; se asociará al pago y se enviará por email al cliente.
|
||||
filter_label: "Filtrar clubes:"
|
||||
filter_all: Todos
|
||||
incomplete_profile_warning: Datos de facturación incompletos
|
||||
no_billing_data: No hay datos de facturación — el cliente debe completar su perfil.
|
||||
pdf_label: PDF de la factura
|
||||
upload_button: Subir PDF y enviar al cliente
|
||||
none_pending: "No hay pagos pendientes de facturar%{club}."
|
||||
none_pending_for_club: " para %{club}"
|
||||
uploaded_title: Facturas ya subidas
|
||||
table:
|
||||
date: Fecha
|
||||
club: Club
|
||||
description: Descripción
|
||||
amount: Importe
|
||||
invoice: Factura
|
||||
status: Estado
|
||||
back_dashboard: "← Panel"
|
||||
billing_invoices:
|
||||
index:
|
||||
title: "Facturación — %{club}"
|
||||
back_dashboard: "← Panel"
|
||||
new_invoice: Nueva factura (sin pago)
|
||||
payments_title: Pagos
|
||||
table:
|
||||
date: Fecha
|
||||
description: Descripción
|
||||
amount: Importe
|
||||
invoice: Factura
|
||||
pdf_suffix: " (PDF)"
|
||||
edit_send_pdf: Editar / enviar PDF
|
||||
create_invoice: Crear factura
|
||||
no_payments: No hay pagos registrados para este club.
|
||||
all_invoices_title: Todas las facturas
|
||||
table2:
|
||||
number: Número
|
||||
date: Fecha
|
||||
amount: Importe
|
||||
status: Estado
|
||||
payment: Pago
|
||||
edit: Editar
|
||||
no_invoices: No hay facturas.
|
||||
new:
|
||||
title: "Nueva factura — %{club}"
|
||||
linked_payment: "Vinculada al pago del %{date} (%{amount})."
|
||||
number_label: Número de factura
|
||||
issued_on_label: Fecha de emisión
|
||||
amount_label: "Importe (€)"
|
||||
notes_label: Notas internas (opcional)
|
||||
hint: Guarda el borrador y luego sube el PDF y envíalo al cliente desde la siguiente pantalla.
|
||||
submit: Crear borrador de factura
|
||||
back: "← Pagos y facturas"
|
||||
edit:
|
||||
title: "Factura %{number} — %{club}"
|
||||
status_label: "Estado:"
|
||||
sent_at: "· Enviada el %{date}"
|
||||
number_label: Número de factura
|
||||
issued_on_label: Fecha de emisión
|
||||
amount_label: "Importe (€)"
|
||||
payment_info: "Pago: %{description} — %{amount}"
|
||||
pdf_label: PDF de la factura
|
||||
pdf_already: "PDF ya subido: %{filename}"
|
||||
notes_label: Notas internas
|
||||
save_draft: Guardar borrador
|
||||
issue_send: Emitir y enviar por email
|
||||
issue_confirm: "¿Enviar la factura a %{email}?"
|
||||
back: "← Pagos y facturas"
|
||||
youtube:
|
||||
platform_token:
|
||||
title: Token del canal de Match Live TV
|
||||
page_title: "Token de YouTube — Match Live TV"
|
||||
channel_label: "Canal: %{title}"
|
||||
success: "Conexión correcta. Copia esta línea ahora mismo:"
|
||||
env_hint_html: "Añade en <code>/opt/matchlivetv/infra/.env</code>:"
|
||||
not_shown_again_html: "No se volverá a mostrar. Luego: <code>docker compose -f docker-compose.prod.yml restart rails sidekiq</code>"
|
||||
no_refresh_token_html: "Google no ha devuelto un refresh token. En tu <a href=\"https://myaccount.google.com/permissions\" target=\"_blank\" rel=\"noopener\">cuenta de Google → acceso de apps</a>, revoca «Match Live TV» y repite el proceso desde <a href=\"/admin/youtube/platform\">/admin/youtube/platform</a>."
|
||||
back_dashboard: "← Panel admin"
|
||||
club_recordings:
|
||||
index:
|
||||
title: "Repeticiones — %{club}"
|
||||
@@ -0,0 +1,311 @@
|
||||
fr:
|
||||
admin:
|
||||
layout:
|
||||
title: "Match Live TV — Admin"
|
||||
nav:
|
||||
dashboard: Tableau de bord
|
||||
ops: Ops
|
||||
clubs: Clubs et équipes
|
||||
billing: Facturation
|
||||
youtube: YouTube
|
||||
sessions: Sessions
|
||||
password: Mot de passe
|
||||
logout: Déconnexion
|
||||
flash:
|
||||
login_required: Connectez-vous pour continuer
|
||||
login_success: Connexion réussie
|
||||
invalid_credentials: Nom d'utilisateur ou mot de passe invalide
|
||||
logout_success: Déconnecté
|
||||
password_current_incorrect: Le mot de passe actuel est incorrect
|
||||
password_too_short: Le nouveau mot de passe doit contenir au moins 8 caractères
|
||||
password_mismatch: Les mots de passe ne correspondent pas
|
||||
password_updated: Mot de passe mis à jour
|
||||
ops_acknowledged: Incident pris en charge
|
||||
ops_resolved: Incident résolu
|
||||
ops_muted: Notifications suspendues pendant 24 heures
|
||||
comped_granted: "Abonnement offert %{plan} activé pour %{club}."
|
||||
comped_revoked: "Abonnement offert révoqué pour %{club}."
|
||||
session_already_terminated: "Session déjà terminée (%{status})."
|
||||
session_stopped: Session terminée.
|
||||
session_stop_error: "Erreur lors de la fermeture : %{error}"
|
||||
session_terminated_no_regia: "Session terminée : impossible de générer le lien de régie."
|
||||
session_regia_generated: Lien de régie généré.
|
||||
invoice_upload_hint: Chargez le PDF depuis la liste « Paiements à facturer ».
|
||||
invoice_draft_created: Brouillon créé. Chargez le PDF depuis la page Facturation ou ci-dessous.
|
||||
invoice_issued: "Facture %{number} émise et envoyée à %{email}."
|
||||
invoice_updated: "Facture %{number} mise à jour."
|
||||
invoice_uploaded: "Facture chargée et envoyée à %{email}."
|
||||
youtube_not_configured: Configurez YOUTUBE_CLIENT_ID et YOUTUBE_CLIENT_SECRET dans .env
|
||||
common:
|
||||
free_plan: Free
|
||||
yes: "Oui"
|
||||
no: "Non"
|
||||
dash: "—"
|
||||
live_page: Page en direct
|
||||
auth:
|
||||
new:
|
||||
title: Connexion admin
|
||||
username_label: Nom d'utilisateur
|
||||
password_label: Mot de passe
|
||||
submit: Se connecter
|
||||
initial_credentials_html: "Identifiants initiaux : <code>admin</code> / <code>admin</code>. Changez le mot de passe après la première connexion."
|
||||
passwords:
|
||||
edit:
|
||||
title: Changer le mot de passe
|
||||
current_password_label: Mot de passe actuel
|
||||
new_password_label: "Nouveau mot de passe (min. 8 caractères)"
|
||||
confirm_password_label: Confirmer le nouveau mot de passe
|
||||
submit: Enregistrer le mot de passe
|
||||
cancel: Annuler
|
||||
dashboard:
|
||||
kpi:
|
||||
active_sessions: Sessions actives
|
||||
active_sessions_sub: en direct maintenant
|
||||
today: Diffusées aujourd'hui
|
||||
today_sub: "%{duration} de diffusion"
|
||||
month: Diffusées ce mois-ci
|
||||
month_sub: "%{duration} au total"
|
||||
teams: Équipes
|
||||
teams_sub: "%{count} utilisateurs"
|
||||
cpu: CPU
|
||||
cpu_sub: "charge %{one} / %{five} / %{fifteen}"
|
||||
ram: RAM
|
||||
ram_sub: "%{used} / %{total}"
|
||||
network: Bande passante (totale)
|
||||
network_sub: "↑ %{tx} · ↓ %{rx}"
|
||||
recordings: Replays archivés
|
||||
recordings_sub: "%{count} enregistrements"
|
||||
charts:
|
||||
cpu: CPU (%)
|
||||
ram: RAM (%)
|
||||
ops_panel:
|
||||
title: État de la plateforme (Ops)
|
||||
critical: "%{count} incident(s) critique(s) ouvert(s)"
|
||||
view_dashboard: Voir le tableau de bord Ops
|
||||
warnings: "%{count} avertissement(s)"
|
||||
dashboard_link: Tableau de bord Ops
|
||||
none_html: "Aucun incident ouvert. %{link}"
|
||||
disk:
|
||||
system_title: Disque système
|
||||
free_label: "Libre : %{free} (%{percent}% utilisé)"
|
||||
not_available: Métriques disque non disponibles
|
||||
recordings_title: Archive des enregistrements
|
||||
recordings_content: "Contenu des enregistrements : %{size}"
|
||||
recordings_not_mounted: "Chemin %{path} non monté"
|
||||
sessions:
|
||||
title: Sessions actives
|
||||
table:
|
||||
match: Match
|
||||
status: Statut
|
||||
start: Début
|
||||
link: Lien
|
||||
none: Aucune session active pour le moment.
|
||||
detail: Détail
|
||||
stop: Arrêter
|
||||
stop_confirm: Terminer cette session ?
|
||||
regia: Régie
|
||||
teams:
|
||||
title: Équipes
|
||||
matches_count: "%{count} matchs"
|
||||
view_all: "Voir les clubs (%{count} équipes)"
|
||||
ops:
|
||||
kpi:
|
||||
critical: Critiques ouverts
|
||||
warning: Avertissements ouverts
|
||||
total: Total ouverts
|
||||
open:
|
||||
title: Incidents ouverts
|
||||
table:
|
||||
severity: Sévérité
|
||||
kind: Type
|
||||
title: Titre
|
||||
occurrences: Occ.
|
||||
last_seen: Dernier
|
||||
none: Aucun incident ouvert. La plateforme semble saine.
|
||||
actions:
|
||||
acknowledge: Pris en charge
|
||||
resolve: Résoudre
|
||||
mute: Muet 24h
|
||||
resolved:
|
||||
title: Résolus (30 derniers jours)
|
||||
table:
|
||||
resolved_at: Résolu
|
||||
none: Aucun incident résolu récemment.
|
||||
clubs:
|
||||
index:
|
||||
title: Clubs et équipes
|
||||
subtitle_html: "Abonnements offerts (sponsors / promotions) et statut YouTube par équipe. Paiements Stripe : %{billing_link}."
|
||||
billing_link: Facturation
|
||||
table:
|
||||
club: Club
|
||||
plan: Forfait
|
||||
teams: Équipes
|
||||
comped: Offert
|
||||
stripe: Stripe
|
||||
manage: Gérer
|
||||
invoices: Factures
|
||||
show:
|
||||
back: "← Clubs et équipes"
|
||||
sport_label: "Sport : %{sport}"
|
||||
recordings_archive: Archive des replays
|
||||
billing_link: Paiements et factures
|
||||
youtube_platform_link: Chaîne YouTube plateforme
|
||||
youtube_club_label: "YouTube du club :"
|
||||
youtube_connected: (connectée)
|
||||
youtube_premium_full_not_connected: Premium Full — chaîne du club non connectée (utilise Match Live TV)
|
||||
no_channel_hint_html: "Sans chaîne connectée, l'application utilise la chaîne Match Live TV. %{link}."
|
||||
link_channel: Connecter la chaîne (page du club)
|
||||
teams_title: Équipes
|
||||
no_teams: Aucune équipe enregistrée.
|
||||
table:
|
||||
team: Équipe
|
||||
sport: Sport
|
||||
matches_and_details: Matchs et détails
|
||||
replay: Replays
|
||||
comped:
|
||||
title: Abonnement offert
|
||||
description: "Sponsor ou promotion : accordez Premium Light/Full sans paiement Stripe. Révocable à tout moment."
|
||||
active_label: "Actif :"
|
||||
since_label_html: "Depuis le %{date}"
|
||||
by_admin: "· admin %{username}"
|
||||
stripe_note: "Remarque : un abonnement Stripe lié existe également ; l'offre est prioritaire sur le forfait."
|
||||
revoke_button: Révoquer l'offre (retour à Free ou restauration Stripe)
|
||||
revoke_confirm: "Révoquer l'abonnement offert pour %{club} ?"
|
||||
current_plan: "Forfait actuel : %{plan}"
|
||||
stripe_active: "· paiement Stripe actif"
|
||||
plan_label: Forfait
|
||||
reason_label: "Motif (ex. sponsor 2026)"
|
||||
reason_placeholder: "Sponsor, promotion…"
|
||||
grant_button: Accorder l'offre
|
||||
teams:
|
||||
show:
|
||||
back: "← %{club}"
|
||||
sport_label: "Sport : %{sport}"
|
||||
club_label_html: "Club : %{club} · %{replay_link} · %{billing_link}"
|
||||
replay_link: Replays de l'équipe
|
||||
billing_link: Paiements et factures
|
||||
youtube_label: "YouTube :"
|
||||
youtube_platform_default_no_oauth: ", par défaut sans OAuth du club"
|
||||
youtube_platform_channel: "(chaîne plateforme%{suffix})"
|
||||
youtube_club_channel: (chaîne du club)
|
||||
youtube_not_ready: non prête
|
||||
no_channel_hint_html: "Sans chaîne connectée, l'application utilise la chaîne Match Live TV. %{link}."
|
||||
link_channel: Connecter la chaîne (page du club)
|
||||
matches_title: Matchs
|
||||
sessions:
|
||||
index:
|
||||
title: Sessions de diffusion
|
||||
table:
|
||||
match: Match
|
||||
status: Statut
|
||||
disconnects: Déconnexions
|
||||
link: Lien
|
||||
detail: Détail
|
||||
regia: Régie
|
||||
show:
|
||||
title: "Session %{id}"
|
||||
status_label: "Statut :"
|
||||
stop_button: Terminer la session
|
||||
stop_confirm: "Terminer la diffusion ? Le chemin RTMP sera supprimé et le statut passera à terminé."
|
||||
match_label: "Match : %{team} contre %{opponent}"
|
||||
youtube_studio: YouTube Studio
|
||||
broadcast: Diffusion
|
||||
rtmp_ingest: "Ingestion RTMP :"
|
||||
events_title: Événements
|
||||
table:
|
||||
type: Type
|
||||
when: Quand
|
||||
meta: Méta
|
||||
links:
|
||||
watch_title: Lien en direct
|
||||
none: Aucun lien vidéo disponible pour cette session.
|
||||
regia_title: Lien de régie
|
||||
terminated: Session terminée — lien de régie non disponible.
|
||||
regia_label: Régie
|
||||
valid_until: "Valide jusqu'au %{date}"
|
||||
active_exists: Un lien de régie actif existe déjà (l'URL n'est pas récupérable). Générez-en un nouveau si vous devez le repartager.
|
||||
none_active: Aucun lien de régie actif. Générez un lien à partager avec la personne qui gère le score.
|
||||
generate_button: Générer le lien de régie
|
||||
billing:
|
||||
index:
|
||||
title: Paiements à facturer
|
||||
description: "Paiements Stripe payés sans PDF de facture. Générez le PDF dans vos systèmes, puis chargez-le ici : il sera associé au paiement et envoyé par email au client."
|
||||
filter_label: "Filtrer par club :"
|
||||
filter_all: Tous
|
||||
incomplete_profile_warning: Données de facturation incomplètes
|
||||
no_billing_data: Aucune donnée de facturation — le client doit compléter son profil.
|
||||
pdf_label: PDF de la facture
|
||||
upload_button: Charger le PDF et envoyer au client
|
||||
none_pending: "Aucun paiement en attente de facturation%{club}."
|
||||
none_pending_for_club: " pour %{club}"
|
||||
uploaded_title: Factures déjà chargées
|
||||
table:
|
||||
date: Date
|
||||
club: Club
|
||||
description: Description
|
||||
amount: Montant
|
||||
invoice: Facture
|
||||
status: Statut
|
||||
back_dashboard: "← Tableau de bord"
|
||||
billing_invoices:
|
||||
index:
|
||||
title: "Facturation — %{club}"
|
||||
back_dashboard: "← Tableau de bord"
|
||||
new_invoice: Nouvelle facture (sans paiement)
|
||||
payments_title: Paiements
|
||||
table:
|
||||
date: Date
|
||||
description: Description
|
||||
amount: Montant
|
||||
invoice: Facture
|
||||
pdf_suffix: " (PDF)"
|
||||
edit_send_pdf: Modifier / envoyer le PDF
|
||||
create_invoice: Créer une facture
|
||||
no_payments: Aucun paiement enregistré pour ce club.
|
||||
all_invoices_title: Toutes les factures
|
||||
table2:
|
||||
number: Numéro
|
||||
date: Date
|
||||
amount: Montant
|
||||
status: Statut
|
||||
payment: Paiement
|
||||
edit: Modifier
|
||||
no_invoices: Aucune facture.
|
||||
new:
|
||||
title: "Nouvelle facture — %{club}"
|
||||
linked_payment: "Liée au paiement du %{date} (%{amount})."
|
||||
number_label: Numéro de facture
|
||||
issued_on_label: Date d'émission
|
||||
amount_label: "Montant (€)"
|
||||
notes_label: Notes internes (facultatif)
|
||||
hint: Enregistrez le brouillon, puis chargez le PDF et envoyez-le au client depuis l'écran suivant.
|
||||
submit: Créer le brouillon de facture
|
||||
back: "← Paiements et factures"
|
||||
edit:
|
||||
title: "Facture %{number} — %{club}"
|
||||
status_label: "Statut :"
|
||||
sent_at: "· Envoyée le %{date}"
|
||||
number_label: Numéro de facture
|
||||
issued_on_label: Date d'émission
|
||||
amount_label: "Montant (€)"
|
||||
payment_info: "Paiement : %{description} — %{amount}"
|
||||
pdf_label: PDF de la facture
|
||||
pdf_already: "PDF déjà chargé : %{filename}"
|
||||
notes_label: Notes internes
|
||||
save_draft: Enregistrer le brouillon
|
||||
issue_send: Émettre et envoyer par email
|
||||
issue_confirm: "Envoyer la facture à %{email} ?"
|
||||
back: "← Paiements et factures"
|
||||
youtube:
|
||||
platform_token:
|
||||
title: Jeton de la chaîne Match Live TV
|
||||
page_title: "Jeton YouTube — Match Live TV"
|
||||
channel_label: "Chaîne : %{title}"
|
||||
success: "Connexion réussie. Copiez immédiatement cette ligne :"
|
||||
env_hint_html: "Ajoutez dans <code>/opt/matchlivetv/infra/.env</code> :"
|
||||
not_shown_again_html: "Elle ne sera plus affichée. Ensuite : <code>docker compose -f docker-compose.prod.yml restart rails sidekiq</code>"
|
||||
no_refresh_token_html: "Google n'a pas renvoyé de refresh token. Dans <a href=\"https://myaccount.google.com/permissions\" target=\"_blank\" rel=\"noopener\">votre compte Google → accès aux applications</a>, révoquez « Match Live TV », puis recommencez depuis <a href=\"/admin/youtube/platform\">/admin/youtube/platform</a>."
|
||||
back_dashboard: "← Tableau de bord admin"
|
||||
club_recordings:
|
||||
index:
|
||||
title: "Replays — %{club}"
|
||||
@@ -0,0 +1,311 @@
|
||||
it:
|
||||
admin:
|
||||
layout:
|
||||
title: "Match Live TV — Admin"
|
||||
nav:
|
||||
dashboard: Dashboard
|
||||
ops: Ops
|
||||
clubs: Società e squadre
|
||||
billing: Fatturazione
|
||||
youtube: YouTube
|
||||
sessions: Sessioni
|
||||
password: Password
|
||||
logout: Esci
|
||||
flash:
|
||||
login_required: Accedi per continuare
|
||||
login_success: Accesso effettuato
|
||||
invalid_credentials: Username o password non validi
|
||||
logout_success: Disconnesso
|
||||
password_current_incorrect: Password attuale non corretta
|
||||
password_too_short: La nuova password deve avere almeno 8 caratteri
|
||||
password_mismatch: Le password non coincidono
|
||||
password_updated: Password aggiornata
|
||||
ops_acknowledged: Incidente preso in carico
|
||||
ops_resolved: Incidente risolto
|
||||
ops_muted: Notifiche sospese per 24 ore
|
||||
comped_granted: "Abbonamento omaggio %{plan} attivato per %{club}."
|
||||
comped_revoked: "Abbonamento omaggio revocato per %{club}."
|
||||
session_already_terminated: "Sessione già terminata (%{status})."
|
||||
session_stopped: Sessione terminata.
|
||||
session_stop_error: "Errore durante la chiusura: %{error}"
|
||||
session_terminated_no_regia: "Sessione terminata: impossibile generare il link regia."
|
||||
session_regia_generated: Link regia generato.
|
||||
invoice_upload_hint: Carica il PDF dalla lista «Pagamenti da fatturare».
|
||||
invoice_draft_created: Bozza creata. Carica il PDF dalla pagina Fatturazione o qui sotto.
|
||||
invoice_issued: "Fattura %{number} emessa e inviata a %{email}."
|
||||
invoice_updated: "Fattura %{number} aggiornata."
|
||||
invoice_uploaded: "Fattura caricata e inviata a %{email}."
|
||||
youtube_not_configured: Configura YOUTUBE_CLIENT_ID e YOUTUBE_CLIENT_SECRET in .env
|
||||
common:
|
||||
free_plan: Free
|
||||
yes: "Sì"
|
||||
no: "No"
|
||||
dash: "—"
|
||||
live_page: Pagina live
|
||||
auth:
|
||||
new:
|
||||
title: Accesso admin
|
||||
username_label: Username
|
||||
password_label: Password
|
||||
submit: Accedi
|
||||
initial_credentials_html: "Credenziali iniziali: <code>admin</code> / <code>admin</code>. Cambia la password dopo il primo accesso."
|
||||
passwords:
|
||||
edit:
|
||||
title: Cambia password
|
||||
current_password_label: Password attuale
|
||||
new_password_label: "Nuova password (min. 8 caratteri)"
|
||||
confirm_password_label: Conferma nuova password
|
||||
submit: Salva password
|
||||
cancel: Annulla
|
||||
dashboard:
|
||||
kpi:
|
||||
active_sessions: Sessioni attive
|
||||
active_sessions_sub: in diretta ora
|
||||
today: Trasmesse oggi
|
||||
today_sub: "%{duration} di streaming"
|
||||
month: Trasmesse questo mese
|
||||
month_sub: "%{duration} totali"
|
||||
teams: Squadre
|
||||
teams_sub: "%{count} utenti"
|
||||
cpu: CPU
|
||||
cpu_sub: "load %{one} / %{five} / %{fifteen}"
|
||||
ram: RAM
|
||||
ram_sub: "%{used} / %{total}"
|
||||
network: Banda (totale)
|
||||
network_sub: "↑ %{tx} · ↓ %{rx}"
|
||||
recordings: Replay in archivio
|
||||
recordings_sub: "%{count} registrazioni"
|
||||
charts:
|
||||
cpu: CPU (%)
|
||||
ram: RAM (%)
|
||||
ops_panel:
|
||||
title: Stato piattaforma (Ops)
|
||||
critical: "%{count} incidente/i critico/i aperto/i"
|
||||
view_dashboard: Vedi dashboard Ops
|
||||
warnings: "%{count} warning"
|
||||
dashboard_link: Dashboard Ops
|
||||
none_html: "Nessun incidente aperto. %{link}"
|
||||
disk:
|
||||
system_title: Disco sistema
|
||||
free_label: "Libero: %{free} (%{percent}% usato)"
|
||||
not_available: Metriche disco non disponibili
|
||||
recordings_title: Archivio registrazioni
|
||||
recordings_content: "Contenuto registrazioni: %{size}"
|
||||
recordings_not_mounted: "Percorso %{path} non montato"
|
||||
sessions:
|
||||
title: Sessioni attive
|
||||
table:
|
||||
match: Partita
|
||||
status: Stato
|
||||
start: Inizio
|
||||
link: Link
|
||||
none: Nessuna sessione attiva in questo momento.
|
||||
detail: Dettaglio
|
||||
stop: Termina
|
||||
stop_confirm: Terminare questa sessione?
|
||||
regia: Regia
|
||||
teams:
|
||||
title: Squadre
|
||||
matches_count: "%{count} partite"
|
||||
view_all: "Vedi società (%{count} squadre)"
|
||||
ops:
|
||||
kpi:
|
||||
critical: Critici aperti
|
||||
warning: Warning aperti
|
||||
total: Totale aperti
|
||||
open:
|
||||
title: Incidenti aperti
|
||||
table:
|
||||
severity: Severità
|
||||
kind: Tipo
|
||||
title: Titolo
|
||||
occurrences: Occ.
|
||||
last_seen: Ultimo
|
||||
none: Nessun incidente aperto. La piattaforma risulta sana.
|
||||
actions:
|
||||
acknowledge: Preso in carico
|
||||
resolve: Risolvi
|
||||
mute: Mute 24h
|
||||
resolved:
|
||||
title: Risolti (ultimi 30 giorni)
|
||||
table:
|
||||
resolved_at: Risolto
|
||||
none: Nessun incidente risolto di recente.
|
||||
clubs:
|
||||
index:
|
||||
title: Società e squadre
|
||||
subtitle_html: "Abbonamenti omaggio (sponsor / promozioni) e stato YouTube per squadra. Pagamenti Stripe: %{billing_link}."
|
||||
billing_link: Fatturazione
|
||||
table:
|
||||
club: Società
|
||||
plan: Piano
|
||||
teams: Squadre
|
||||
comped: Omaggio
|
||||
stripe: Stripe
|
||||
manage: Gestisci
|
||||
invoices: Fatture
|
||||
show:
|
||||
back: "← Società e squadre"
|
||||
sport_label: "Sport: %{sport}"
|
||||
recordings_archive: Archivio replay
|
||||
billing_link: Pagamenti e fatture
|
||||
youtube_platform_link: Canale YouTube piattaforma
|
||||
youtube_club_label: "YouTube società:"
|
||||
youtube_connected: (collegato)
|
||||
youtube_premium_full_not_connected: Premium Full — canale società non collegato (usa Match Live TV)
|
||||
no_channel_hint_html: "Senza canale collegato, l’app usa il canale Match Live TV. %{link}."
|
||||
link_channel: Collega canale (pagina società)
|
||||
teams_title: Squadre
|
||||
no_teams: Nessuna squadra registrata.
|
||||
table:
|
||||
team: Squadra
|
||||
sport: Sport
|
||||
matches_and_details: Partite e dettagli
|
||||
replay: Replay
|
||||
comped:
|
||||
title: Abbonamento omaggio
|
||||
description: "Sponsor o promozione: assegna Premium Light/Full senza pagamento Stripe. Revocabile in qualsiasi momento."
|
||||
active_label: "Attivo:"
|
||||
since_label_html: "Dal %{date}"
|
||||
by_admin: "· admin %{username}"
|
||||
stripe_note: "Nota: esiste anche un abbonamento Stripe collegato; l’omaggio ha priorità sul piano."
|
||||
revoke_button: Revoca omaggio (torna Free o ripristina Stripe)
|
||||
revoke_confirm: "Revocare l’abbonamento omaggio per %{club}?"
|
||||
current_plan: "Piano attuale: %{plan}"
|
||||
stripe_active: "· pagamento Stripe attivo"
|
||||
plan_label: Piano
|
||||
reason_label: "Motivo (es. sponsor 2026)"
|
||||
reason_placeholder: "Sponsor, promozione…"
|
||||
grant_button: Concedi omaggio
|
||||
teams:
|
||||
show:
|
||||
back: "← %{club}"
|
||||
sport_label: "Sport: %{sport}"
|
||||
club_label_html: "Società: %{club} · %{replay_link} · %{billing_link}"
|
||||
replay_link: Replay squadra
|
||||
billing_link: Pagamenti e fatture
|
||||
youtube_label: "YouTube:"
|
||||
youtube_platform_default_no_oauth: ", default senza OAuth società"
|
||||
youtube_platform_channel: "(canale piattaforma%{suffix})"
|
||||
youtube_club_channel: (canale società)
|
||||
youtube_not_ready: non pronto
|
||||
no_channel_hint_html: "Senza canale collegato, l’app usa il canale Match Live TV. %{link}."
|
||||
link_channel: Collega canale (pagina società)
|
||||
matches_title: Partite
|
||||
sessions:
|
||||
index:
|
||||
title: Sessioni di streaming
|
||||
table:
|
||||
match: Match
|
||||
status: Stato
|
||||
disconnects: Disconnessioni
|
||||
link: Link
|
||||
detail: Dettaglio
|
||||
regia: Regia
|
||||
show:
|
||||
title: "Sessione %{id}"
|
||||
status_label: "Stato:"
|
||||
stop_button: Termina sessione
|
||||
stop_confirm: "Terminare la trasmissione? Il path RTMP verrà rimosso e lo stato passerà a ended."
|
||||
match_label: "Match: %{team} vs %{opponent}"
|
||||
youtube_studio: YouTube Studio
|
||||
broadcast: Broadcast
|
||||
rtmp_ingest: "RTMP ingest:"
|
||||
events_title: Eventi
|
||||
table:
|
||||
type: Tipo
|
||||
when: Quando
|
||||
meta: Meta
|
||||
links:
|
||||
watch_title: Link diretta
|
||||
none: Nessun link video disponibile per questa sessione.
|
||||
regia_title: Link regia
|
||||
terminated: Sessione terminata — link regia non disponibile.
|
||||
regia_label: Regia
|
||||
valid_until: "Valido fino a %{date}"
|
||||
active_exists: Esiste già un link regia attivo (l’URL non è recuperabile). Generane uno nuovo se serve condividerlo di nuovo.
|
||||
none_active: Nessun link regia attivo. Genera un link da condividere con chi gestisce il punteggio.
|
||||
generate_button: Genera link regia
|
||||
billing:
|
||||
index:
|
||||
title: Pagamenti da fatturare
|
||||
description: "Pagamenti Stripe pagati senza PDF fattura. Genera il PDF nei tuoi sistemi, poi caricalo qui: viene associato al pagamento e inviato via email al cliente."
|
||||
filter_label: "Filtra società:"
|
||||
filter_all: Tutte
|
||||
incomplete_profile_warning: Dati fatturazione incompleti
|
||||
no_billing_data: Nessun dato di fatturazione — il cliente deve completare il profilo.
|
||||
pdf_label: PDF fattura
|
||||
upload_button: Carica PDF e invia al cliente
|
||||
none_pending: "Nessun pagamento in attesa di fattura%{club}."
|
||||
none_pending_for_club: " per %{club}"
|
||||
uploaded_title: Fatture già caricate
|
||||
table:
|
||||
date: Data
|
||||
club: Società
|
||||
description: Descrizione
|
||||
amount: Importo
|
||||
invoice: Fattura
|
||||
status: Stato
|
||||
back_dashboard: "← Dashboard"
|
||||
billing_invoices:
|
||||
index:
|
||||
title: "Fatturazione — %{club}"
|
||||
back_dashboard: "← Dashboard"
|
||||
new_invoice: Nuova fattura (senza pagamento)
|
||||
payments_title: Pagamenti
|
||||
table:
|
||||
date: Data
|
||||
description: Descrizione
|
||||
amount: Importo
|
||||
invoice: Fattura
|
||||
pdf_suffix: " (PDF)"
|
||||
edit_send_pdf: Modifica / invia PDF
|
||||
create_invoice: Crea fattura
|
||||
no_payments: Nessun pagamento registrato per questa società.
|
||||
all_invoices_title: Tutte le fatture
|
||||
table2:
|
||||
number: Numero
|
||||
date: Data
|
||||
amount: Importo
|
||||
status: Stato
|
||||
payment: Pagamento
|
||||
edit: Modifica
|
||||
no_invoices: Nessuna fattura.
|
||||
new:
|
||||
title: "Nuova fattura — %{club}"
|
||||
linked_payment: "Collegata al pagamento del %{date} (%{amount})."
|
||||
number_label: Numero fattura
|
||||
issued_on_label: Data emissione
|
||||
amount_label: "Importo (€)"
|
||||
notes_label: Note interne (opzionale)
|
||||
hint: Salva la bozza, poi carica il PDF e inviala al cliente dalla schermata successiva.
|
||||
submit: Crea bozza fattura
|
||||
back: "← Pagamenti e fatture"
|
||||
edit:
|
||||
title: "Fattura %{number} — %{club}"
|
||||
status_label: "Stato:"
|
||||
sent_at: "· Inviata il %{date}"
|
||||
number_label: Numero fattura
|
||||
issued_on_label: Data emissione
|
||||
amount_label: "Importo (€)"
|
||||
payment_info: "Pagamento: %{description} — %{amount}"
|
||||
pdf_label: PDF fattura
|
||||
pdf_already: "PDF già caricato: %{filename}"
|
||||
notes_label: Note interne
|
||||
save_draft: Salva bozza
|
||||
issue_send: Emetti e invia via email
|
||||
issue_confirm: "Inviare la fattura a %{email}?"
|
||||
back: "← Pagamenti e fatture"
|
||||
youtube:
|
||||
platform_token:
|
||||
title: Token canale Match Live TV
|
||||
page_title: "Token YouTube — Match Live TV"
|
||||
channel_label: "Canale: %{title}"
|
||||
success: "Collegamento riuscito. Copia subito questa riga:"
|
||||
env_hint_html: "Aggiungi in <code>/opt/matchlivetv/infra/.env</code>:"
|
||||
not_shown_again_html: "Non verrà mostrato di nuovo. Poi: <code>docker compose -f docker-compose.prod.yml restart rails sidekiq</code>"
|
||||
no_refresh_token_html: "Google non ha restituito un refresh token. In <a href=\"https://myaccount.google.com/permissions\" target=\"_blank\" rel=\"noopener\">account Google → accesso app</a> revoca «Match Live TV», poi ripeti da <a href=\"/admin/youtube/platform\">/admin/youtube/platform</a>."
|
||||
back_dashboard: "← Dashboard admin"
|
||||
club_recordings:
|
||||
index:
|
||||
title: "Replay — %{club}"
|
||||
@@ -0,0 +1,786 @@
|
||||
de:
|
||||
club:
|
||||
back_to_club: "← Verein"
|
||||
sport_label: Hauptsportart
|
||||
branding_legend: Logo und Vereinsfarben
|
||||
branding:
|
||||
legend: Erscheinungsbild
|
||||
inherit_hint: Leer lassen, um Logo und Farben des Vereins zu verwenden.
|
||||
logo_file_label: Logo (Bild)
|
||||
logo_preview_alt: Logo-Vorschau
|
||||
no_logo_placeholder: "Kein Logo — wähle eine Datei für die Vorschau"
|
||||
logo_url_label: Logo (alternative URL)
|
||||
primary_color_label: Primärfarbe
|
||||
secondary_color_label: Sekundärfarbe
|
||||
choose_color: Farbe wählen
|
||||
quick_colors: Schnellfarben
|
||||
header_preview_label: Vorschau der Kopfzeile
|
||||
name_placeholder: Name des Vereins / der Mannschaft
|
||||
dashboard:
|
||||
title: "%{name} — Verein"
|
||||
plan_label: "Tarif:"
|
||||
teams_count_label: "Teams:"
|
||||
edit_club: Verein bearbeiten
|
||||
subscription: Abonnement
|
||||
new_team: Neues Team
|
||||
live_streams: Livestreams
|
||||
replay_archive: Replay-Archiv
|
||||
replay_heading: Replay
|
||||
available: verfügbar
|
||||
expiring_soon: "läuft bald ab (7 Tage)"
|
||||
space_used: belegter Speicher
|
||||
views: Aufrufe
|
||||
teams_heading: Teams
|
||||
team_col: Team
|
||||
branding_col: Branding
|
||||
branding_custom: Individuell
|
||||
branding_inherited: Vom Verein übernommen
|
||||
public_page: Öffentliche Seite
|
||||
details: Details
|
||||
matches: Spiele
|
||||
edit: Bearbeiten
|
||||
no_teams_html: "Noch kein Team. %{link}."
|
||||
add_first_team: Erstes Team hinzufügen
|
||||
footer_note: "Jedes Team hat eigene Übertragungsverantwortliche. Der Punktestand von einem zweiten Telefon läuft über den Regie-Link (ohne Konto). Das Abonnement gilt für den gesamten Verein."
|
||||
edit:
|
||||
title: "Verein bearbeiten — %{name}"
|
||||
heading: Verein bearbeiten
|
||||
name_label: Vereinsname
|
||||
save: Speichern
|
||||
new:
|
||||
title: "Verein registrieren — Match Live TV"
|
||||
meta_description: Erstelle deinen Sportverein und das erste Team auf Match Live TV.
|
||||
heading: Dein Verein
|
||||
lead: "Registriere den Verein: du kannst später weitere Teams hinzufügen (U13, U15, Serie C…)."
|
||||
section_club: Verein
|
||||
name_label: Vereinsname / Club
|
||||
name_placeholder: "z. B. Crazy Volley Rozzano"
|
||||
section_first_team: Erstes Team
|
||||
default_first_team_name: Erstes Team
|
||||
first_team_name_label: Teamname
|
||||
first_team_name_placeholder: "z. B. Under 15"
|
||||
plan_label: "Starttarif (für den gesamten Verein)"
|
||||
plan_free: "Free — 1 Übertragungsverantwortlicher pro Team, 1 Livestream"
|
||||
plan_light: Premium Light
|
||||
plan_full: Premium Full
|
||||
interval_label: Premium-Abrechnung
|
||||
interval_yearly: "Jährlich — 40 €/Jahr (Light) oder 200 €/Jahr (Full)"
|
||||
interval_monthly: "Monatlich — 5 €/Monat (Light) oder 20 €/Monat (Full)"
|
||||
submit: Verein erstellen
|
||||
billing:
|
||||
title: "Abonnement — %{name}"
|
||||
comped:
|
||||
title: Kostenloses Match-Live-TV-Abonnement
|
||||
plan_prefix: "— Tarif"
|
||||
no_payment_html: "Es ist keine Zahlung erforderlich. Für Änderungen oder den Wechsel zu einem kostenpflichtigen Tarif wende dich an %{email_link}."
|
||||
youtube:
|
||||
heading: YouTube Live
|
||||
connected_notice: YouTube-Kanal des Vereins erfolgreich verbunden.
|
||||
light_body_html: "Mit dem Tarif <strong>Premium Light</strong> laufen die YouTube-Livestreams aller Teams über den offiziellen Kanal <strong>Match Live TV</strong>. Ein eigener Vereinskanal ist nicht nötig."
|
||||
light_ready: "Kanal bereit · wähle in der mobilen App „YouTube Live“."
|
||||
light_configuring: Match-Live-TV-Kanal wird serverseitig konfiguriert. Wende dich an den Support, falls YouTube in der App nicht erscheint.
|
||||
full_connected_html: "Kanal verbunden für <strong>den gesamten Verein</strong>: <strong>%{channel}</strong>"
|
||||
full_connected_hint: Alle Teams können auf diesen Kanal übertragen, wenn sie in der App den Vereinskanal auswählen.
|
||||
disconnect: Kanal trennen
|
||||
disconnect_confirm: YouTube-Kanal trennen? Die Streams verwenden dann den Match-Live-TV-Kanal, bis du deinen wieder verbindest.
|
||||
full_not_connected_html: "Ohne verbundenen Kanal laufen YouTube-Streams aus der App über den offiziellen Kanal <strong>Match Live TV</strong>. Verbinde hier den YouTube-Kanal des Vereins (gilt für alle Teams)."
|
||||
ready_in_app: "YouTube in der App bereit (Match-Live-TV-Kanal, bis du deinen verbindest)."
|
||||
connect: YouTube-Kanal des Vereins verbinden
|
||||
oauth_not_configured: YouTube-OAuth ist auf dem Server noch nicht konfiguriert.
|
||||
requires_full: YouTube auf dem Vereinskanal erfordert den Tarif Premium Full.
|
||||
see_plans: Tarife ansehen
|
||||
team:
|
||||
back_to_details: "← Team-Details"
|
||||
sport_label: Sportart
|
||||
details:
|
||||
title: "Details — %{name}"
|
||||
meta_description: "Details zum Team %{name} auf Match Live TV."
|
||||
nav_aria: Team-Navigation
|
||||
edit_team: Team bearbeiten
|
||||
plan_label: "Tarif:"
|
||||
plan_scope_club: (Verein)
|
||||
staff_label: "Übertragungsverantwortliche:"
|
||||
active_matches_label: "Aktive Spiele:"
|
||||
unlimited: unbegrenzt
|
||||
no_description: Noch keine Beschreibung.
|
||||
add_description_link: Über „Team bearbeiten“ hinzufügen
|
||||
roster_count_label: im Kader
|
||||
no_photo: Team-Foto noch nicht hochgeladen
|
||||
add_photo_link: Über „Team bearbeiten“ hinzufügen
|
||||
public_page: Öffentliche Seite
|
||||
streaming_managers: Übertragungsverantwortliche
|
||||
schedule_matches: Spiele planen
|
||||
live_streams: Livestreams
|
||||
no_people_in_category: Noch niemand in dieser Kategorie.
|
||||
youtube_hint_html: "Der YouTube-Kanal des Vereins wird auf der Seite %{club_link} konfiguriert (Bereich YouTube Live)."
|
||||
footer_note: Nutze die mobile App mit denselben Zugangsdaten, um Spiele und Livestreams zu starten.
|
||||
edit:
|
||||
title: "Team bearbeiten — %{name}"
|
||||
club_label: "Verein:"
|
||||
name_label: Teamname
|
||||
description_label: Teambeschreibung
|
||||
description_placeholder: "Vorstellung des Teams, Erfolge, Saisonziele…"
|
||||
photo_label: "Team-Foto (Gruppenfoto oder Wappen)"
|
||||
photo_alt: Team-Foto
|
||||
branding_legend: Team-Branding (Überschreibung)
|
||||
slug_label: Adresse der öffentlichen Seite
|
||||
slug_hint_html: "Eltern und Fans finden das Team unter <strong>%{base_url}/squadre/%{slug}</strong>"
|
||||
slug_title: "Nur Kleinbuchstaben, Zahlen und Bindestriche"
|
||||
roster_public_label: Kader auf der öffentlichen Seite anzeigen
|
||||
roster_public_hint: Wenn aktiviert, sind Spieler und Staff für jeden mit dem Link sichtbar. Du kannst es aus Datenschutzgründen deaktiviert lassen.
|
||||
club_colors_label: "Vereinsfarben:"
|
||||
submit: Team speichern
|
||||
new:
|
||||
title: "Neues Team — %{name}"
|
||||
heading: Neues Team
|
||||
club_label: "Verein:"
|
||||
name_label: Teamname
|
||||
name_placeholder: "z. B. Under 13, Serie C"
|
||||
branding_legend: Branding-Überschreibung (optional)
|
||||
submit: Team hinzufügen
|
||||
invite:
|
||||
title: "Übertragungsstaff — %{name}"
|
||||
heading: Übertragungsverantwortliche
|
||||
assigned_label: "Zugewiesen:"
|
||||
per_team_note: (pro Team, jährliche Erneuerung)
|
||||
info: "Der Übertragungsverantwortliche startet den Livestream aus der App (Kamera auf Stativ). Für den Punktestand von einem zweiten Telefon ist kein Konto nötig: Er teilt den <strong>Regie-Link</strong> über den Übertragungsbildschirm (WhatsApp, E-Mail, SMS usw.)."
|
||||
self_assign_hint_html: "<strong>%{email}</strong> — du kannst Kamera und Punktestand selbst übernehmen oder andere zur Übertragung einladen."
|
||||
self_assign_submit: Das mache ich — Übertragungsverantwortlicher
|
||||
invite_other_heading: Eine weitere E-Mail einladen
|
||||
email_label: E-Mail des Übertragungsverantwortlichen
|
||||
submit: Zugangslink erstellen
|
||||
share_hint: "Teilen (7 Tage gültig):"
|
||||
billing:
|
||||
title: "Abonnement — %{name}"
|
||||
team_label: "Team:"
|
||||
current_plan_label: "Aktueller Tarif:"
|
||||
staff_line: "Übertragungsstaff: %{count} / Jahr"
|
||||
matches_line: "Spiele: %{count} gleichzeitig"
|
||||
replay_line: "Replay: %{value}"
|
||||
replay_days: "%{count} Tage"
|
||||
replay_none: "nein"
|
||||
youtube_line: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: Vereinskanal
|
||||
youtube_none: "nein"
|
||||
current_plan: Aktueller Tarif
|
||||
manage_club_subscription: Vereinsabonnement verwalten
|
||||
stripe_not_configured: Stripe nicht konfiguriert
|
||||
contact_lead: "Andere Anforderungen?"
|
||||
contact_cta: Kontaktiere uns
|
||||
contact_trailer: für ein maßgeschneidertes Angebot.
|
||||
club_payments_link: Zahlungen und Rechnungen des Vereins
|
||||
streaming_staff:
|
||||
self_account_heading: "Dein Konto (%{email})"
|
||||
self_account_hint: "Du kannst die Übertragung aus der App verwalten. Für den Punktestand von einem anderen Telefon teile den <strong>Regie-Link</strong> während des Streams (kein zweites Konto nötig)."
|
||||
self_assign_submit: Das mache ich — Übertragungsverantwortlicher
|
||||
staff_heading: Übertragungsverantwortliche (App)
|
||||
col_name: Name
|
||||
col_email: E-Mail
|
||||
col_role: Rolle
|
||||
role_transmission: Übertragung
|
||||
you_suffix: (du)
|
||||
clear_self_staff: Staff-Rolle entfernen
|
||||
clear_self_staff_confirm: Staff-Rolle von deinem Konto entfernen?
|
||||
revoke: Widerrufen
|
||||
revoke_confirm: "Zugriff von %{name} widerrufen?"
|
||||
no_staff: Noch keine Übertragungsverantwortlichen.
|
||||
invite_someone: Jemanden einladen
|
||||
pending_invitations_heading: Ausstehende Einladungen
|
||||
col_email_short: E-Mail
|
||||
col_expires: Läuft ab
|
||||
cancel_invitation: Abbrechen
|
||||
no_pending: Keine ausstehenden Anfragen.
|
||||
archive_heading: Replay-Archiv
|
||||
col_match: Spiel
|
||||
col_date: Datum
|
||||
col_duration: Dauer
|
||||
col_expiry: Ablauf
|
||||
col_status: Status
|
||||
watch: Ansehen
|
||||
manage_all_replays: Alle Replays verwalten
|
||||
no_recordings: Noch keine Replays. Aufnahmen erscheinen hier nach Ende von Premium-Livestreams.
|
||||
matches:
|
||||
back_to_list: "← Spieleliste"
|
||||
opponent_label: Gegner
|
||||
opponent_placeholder: "z. B. Volley Milano"
|
||||
location_label: "Ort (optional)"
|
||||
location_placeholder: "Halle, Stadt"
|
||||
datetime_label: Datum und Uhrzeit
|
||||
form_hint: "Der Livestream startet nicht automatisch: Er erscheint in der App und auf der Website. Du startest das Streaming vom Telefon aus, sobald du vor Ort bist."
|
||||
edit:
|
||||
title: "Spiel bearbeiten — %{name}"
|
||||
heading: Spiel bearbeiten
|
||||
submit: Änderungen speichern
|
||||
new:
|
||||
title: "Spiel planen — %{name}"
|
||||
heading: Spiel planen
|
||||
submit: Im Kalender speichern
|
||||
index:
|
||||
title: "Spiele — %{name}"
|
||||
heading: "Spiele — %{name}"
|
||||
lead: "Plane hier vom PC aus Datum, Gegner und Ort. Sobald du in der Halle bist, öffne die Match-Live-TV-App, wähle dieses Team und starte den Livestream für das Spiel."
|
||||
schedule_match: Spiel planen
|
||||
team_details: Team-Details
|
||||
live_and_schedule: Livestreams und Spielplan
|
||||
col_opponent: Gegner
|
||||
col_datetime: "Datum und Uhrzeit"
|
||||
col_location: Ort
|
||||
col_status: Status
|
||||
no_time: Keine Uhrzeit
|
||||
no_location: "—"
|
||||
edit: Bearbeiten
|
||||
delete: Löschen
|
||||
delete_confirm: Dieses Spiel löschen?
|
||||
empty_html: "Noch kein Spiel geplant. %{link}."
|
||||
schedule_first: Erstes Spiel planen
|
||||
club_new:
|
||||
title: "Spiel planen — %{name}"
|
||||
back_link: "← Livestreams und Spiele"
|
||||
heading: Spiel planen
|
||||
admin_hint: "· Du kannst jedes Team des Vereins auswählen"
|
||||
staff_hint: "· Nur Teams, für die du Übertragungsverantwortlicher bist"
|
||||
team_label: Team
|
||||
submit: Im Kalender speichern
|
||||
status:
|
||||
active: Läuft / fortsetzbar
|
||||
scheduled: Geplant
|
||||
ready: Bereit
|
||||
no_time: Keine Uhrzeit
|
||||
roster:
|
||||
back_to_details: "← Team-Details"
|
||||
category:
|
||||
staff: Staff
|
||||
coach: Trainer
|
||||
manager: Vereinsfunktionäre
|
||||
player: Spieler
|
||||
role:
|
||||
coach: Trainer
|
||||
manager: Vereinsfunktionär
|
||||
staff: Staff
|
||||
player: Spieler
|
||||
player_numbered: "Spieler #%{number}"
|
||||
errors:
|
||||
role_invalid: ist keine gültige Rolle für diese Sportart
|
||||
photo_invalid_type: muss PNG, JPEG oder WebP sein
|
||||
role_select_blank: "— Rolle auswählen —"
|
||||
edit:
|
||||
title: "Bearbeiten — %{name}"
|
||||
member_form:
|
||||
edit_heading: Profil bearbeiten
|
||||
new_heading: Person hinzufügen
|
||||
lead: Fülle die Felder aus und speichere, um den Kader zu aktualisieren.
|
||||
category_label: Gruppe
|
||||
full_name_label: Vor- und Nachname
|
||||
full_name_placeholder: "z. B. Mario Rossi"
|
||||
role_player_label: Position auf dem Feld
|
||||
role_other_label: "Rolle (optional)"
|
||||
role_other_placeholder: "z. B. Cheftrainer, Vorsitzender, Physiotherapeut"
|
||||
jersey_label: Trikotnummer
|
||||
jersey_placeholder: "z. B. 7"
|
||||
bio_label: Kurzbeschreibung
|
||||
bio_placeholder: "Kurze Vorstellung für das Profil…"
|
||||
photo_label: Foto
|
||||
photo_hint: Ohne Foto wird ein Avatar in den Teamfarben angezeigt.
|
||||
submit_edit: Profil speichern
|
||||
submit_new: Zum Kader hinzufügen
|
||||
person_card:
|
||||
edit: Bearbeiten
|
||||
remove: Entfernen
|
||||
remove_confirm: "%{name} aus dem Kader entfernen?"
|
||||
billing:
|
||||
heading: Abonnement
|
||||
entity_types:
|
||||
company: "Verein / Organisation mit USt-IdNr."
|
||||
individual: Privatperson
|
||||
nonprofit: Gemeinnütziger Verein
|
||||
profile_errors:
|
||||
entity_type: Art des Rechnungsempfängers
|
||||
legal_name: Firmenname oder Name des Inhabers
|
||||
email: Rechnungs-E-Mail
|
||||
address: Adresse
|
||||
city: Stadt
|
||||
province: "Provinz (2-Buchstaben-Code)"
|
||||
postal_code: Postleitzahl
|
||||
country: "Land (ISO)"
|
||||
vat_number: USt-IdNr.
|
||||
fiscal_code: Steuernummer
|
||||
vat_or_fiscal: USt-IdNr. oder Steuernummer
|
||||
sdi_or_pec: "SDI-Empfängercode (7 Zeichen) oder zertifizierte E-Mail (PEC)"
|
||||
sdi_invalid: "SDI-Empfängercode (7 Zeichen)"
|
||||
actions:
|
||||
current_plan: Aktueller Tarif
|
||||
contact_for_free: "Um zum Free-Tarif zu wechseln, kontaktiere den Support."
|
||||
stripe_not_configured: Stripe nicht konfiguriert
|
||||
stripe_prices_not_configured: Stripe-Preise nicht konfiguriert
|
||||
complete_billing_prefix: Vervollständige deine Rechnungsdaten, bevor du einen Premium-Tarif aktivierst.
|
||||
profile_incomplete_default: Vervollständige deine Rechnungsdaten, bevor du einen Premium-Tarif aktivierst.
|
||||
profile_missing: "Fehlend: %{fields}."
|
||||
profile:
|
||||
title: "Rechnungsdaten — %{name}"
|
||||
heading: Rechnungsdaten
|
||||
lead: "Verein: %{name}. Gib die Daten für die Rechnungskopfzeile und den Versand per SDI oder PEC ein."
|
||||
required_notice: Erforderlich, um einen Premium-Tarif zu abonnieren.
|
||||
after_save_hint_html: "Nach dem Speichern kannst du mit der Zahlung für <strong>%{plan}</strong> fortfahren."
|
||||
submit: Rechnungsdaten speichern
|
||||
back_to_billing: "← Abonnement"
|
||||
fields:
|
||||
legend: Rechnungsdaten
|
||||
legend_hint: "Alle markierten Felder sind erforderlich, um einen Premium-Tarif zu abonnieren und Rechnungen auszustellen. Vereine benötigen eine USt-IdNr., Privatpersonen eine Steuernummer. Du brauchst entweder SDI oder eine zertifizierte E-Mail (PEC). Die Zahlungen werden weiterhin sicher von Stripe abgewickelt."
|
||||
entity_type_label: "Art des Rechnungsempfängers *"
|
||||
legal_name_label: "Firmenname / Vor- und Nachname *"
|
||||
legal_name_placeholder: "z. B. ASD Tigers Volley"
|
||||
vat_number_label: "USt-IdNr. * (Verein)"
|
||||
fiscal_code_label: "Steuernummer * (Privatperson)"
|
||||
fiscal_code_placeholder: RSSMRA80A01H501U
|
||||
email_label: "Rechnungs-E-Mail *"
|
||||
email_placeholder: verwaltung@verein.de
|
||||
phone_label: "Telefon (optional)"
|
||||
address_label: "Adresse *"
|
||||
address_placeholder: "Musterstraße 1"
|
||||
city_label: "Stadt *"
|
||||
province_label: "Provinz *"
|
||||
province_placeholder: MI
|
||||
postal_code_label: "Postleitzahl *"
|
||||
country_label: "Land (ISO) *"
|
||||
recipient_code_label: "SDI-Empfängercode (7 Zeichen) *"
|
||||
recipient_code_placeholder: XXXXXXX
|
||||
pec_label: "PEC (Alternative zu SDI) *"
|
||||
pec_placeholder: pec@verein.de
|
||||
documents:
|
||||
heading: Zahlungen und Rechnungen
|
||||
lead: Verlauf der Zahlungen des Vereins und der von Match Live TV ausgestellten Rechnungen.
|
||||
incomplete_title: Rechnungsdaten unvollständig.
|
||||
incomplete_body: Gib Firmenname, Adresse, USt-IdNr./Steuernummer und SDI oder PEC ein, um Rechnungen per E-Mail zu erhalten.
|
||||
complete_now: Jetzt vervollständigen
|
||||
holder_label: "Rechnungsempfänger: %{summary}"
|
||||
edit_data: Daten bearbeiten
|
||||
table_heading: Zahlungen und Rechnungen
|
||||
col_date: Datum
|
||||
col_description: Beschreibung
|
||||
col_amount: Betrag
|
||||
col_status: Zahlungsstatus
|
||||
col_invoice: Rechnung
|
||||
download_pdf: PDF herunterladen
|
||||
pdf_preparing: PDF wird vorbereitet
|
||||
no_payments: Noch keine Zahlungen erfasst. Sie erscheinen hier nach einem Premium-Abonnement.
|
||||
subscription_status:
|
||||
club_label: "Verein: %{name}"
|
||||
current_plan_label: "Aktueller Tarif: %{plan}"
|
||||
comped_suffix: (kostenlos von Match Live TV)
|
||||
valid_for_all_teams: (gültig für alle Teams)
|
||||
manage_subscription: Abonnement verwalten
|
||||
cancel_scheduled_html: "Abonnement gültig bis <strong>%{date}</strong>, danach Free-Tarif."
|
||||
change_pending_html: "Ab dem <strong>%{date}</strong> wechselst du zu <strong>%{plan}</strong>%{interval}. Bis dahin bleibt <strong>%{current_plan}</strong> aktiv."
|
||||
end_of_period: Ende des Zeitraums
|
||||
next_renewal: nächste Verlängerung
|
||||
next_renewal_label: "Nächste Verlängerung: %{date}"
|
||||
plan_change_info:
|
||||
trigger_label: Infos zu Tarifwechsel und Abrechnung
|
||||
title: Tarifwechsel und Abrechnung
|
||||
subscription_cancel:
|
||||
scheduled_title: Kündigung geplant.
|
||||
scheduled_body_html: "Der Tarif <strong>%{plan}</strong> bleibt bis zum <strong>%{date}</strong> aktiv. Ab diesem Tag wechselt der Verein automatisch zum Tarif <strong>Free</strong>."
|
||||
scheduled_end_of_period: Ende des bereits bezahlten Zeitraums
|
||||
scheduled_support_hint: Um das Abonnement vor Ablauf wiederherzustellen, wende dich an den Match-Live-TV-Support.
|
||||
info: "Du kannst jederzeit kündigen: Das Abonnement bleibt bis zum Ende des bereits bezahlten Zeitraums gültig, danach wechselst du ohne weitere Kosten zum Free-Tarif."
|
||||
cancel_button: Abonnement kündigen
|
||||
confirm_with_date: "Kündigung bestätigen? Der Tarif %{plan} bleibt bis zum %{date} aktiv, danach wechselst du zu Free."
|
||||
confirm_default: Kündigung des Abonnements bestätigen?
|
||||
stripe_secure:
|
||||
compact_html: "Premium-Zahlungen sicher abgewickelt über <strong>Stripe</strong>."
|
||||
full_html: "Zahlungen für Premium-Tarife werden <strong>sicher</strong> über <strong>Stripe</strong> abgewickelt (PCI-DSS-zertifiziert). Match Live TV speichert niemals vollständige Kartennummern."
|
||||
messages:
|
||||
upgrade_completed_with_amount: "Upgrade auf %{plan} (%{interval}) abgeschlossen. Sofortige Belastung: %{amount}."
|
||||
upgrade_completed_pending_charge: "Upgrade auf %{plan} (%{interval}) abgeschlossen. Die Belastung der Differenz wird auf der gespeicherten Karte verarbeitet."
|
||||
next_renewal: die nächste Verlängerung
|
||||
current_plan_generic: den aktuellen Tarif
|
||||
downgrade_scheduled: "Wechsel zu %{plan} (%{interval}) geplant: Du bleibst bis zum %{when} bei %{current_name}. Jetzt keine zusätzliche Belastung; ab dem nächsten Zyklus zahlst du den neuen Preis."
|
||||
activate_button: "%{plan} aktivieren — %{price}"
|
||||
switch_button: "Zu %{plan} wechseln — %{price}"
|
||||
upgrade_info_line: "Upgrade (höherer Tarif oder Wechsel zur jährlichen Abrechnung): Die Differenz wird sofort von der gespeicherten Stripe-Karte abgebucht."
|
||||
downgrade_info_line: "Downgrade zwischen kostenpflichtigen Tarifen (z. B. Full → Light): Der neue Tarif gilt ab der nächsten Verlängerung; bis dahin bleiben die Funktionen des aktuellen Tarifs ohne zusätzliche Kosten erhalten."
|
||||
already_requested_line: "Du hast %{plan} bereits ab dem %{when} angefordert: Bis dahin bleibt %{current_plan} aktiv."
|
||||
regia:
|
||||
meta_title_fallback: "Regie — Match Live TV"
|
||||
title: "Regie — %{home} vs %{away}"
|
||||
subtitle_prefix: "Regie ·"
|
||||
status:
|
||||
ended: Beendet
|
||||
paused: Pausiert
|
||||
live: Live
|
||||
waiting: Wartet
|
||||
live_share_label: "Live-Link (Zuschauer)"
|
||||
share_live: Livestream teilen
|
||||
copy_link: Link kopieren
|
||||
regia_share_label: "Regie-Link (Punktestand)"
|
||||
share_regia: Regie-Link teilen
|
||||
preview_ended: Livestream beendet
|
||||
preview_waiting: Vorschau wartet auf Signal…
|
||||
pause: Pausieren
|
||||
resume: Livestream fortsetzen
|
||||
stop: Livestream beenden
|
||||
modal:
|
||||
set_won_title: Satz gewonnen
|
||||
confirm: Satz beenden
|
||||
cancel: Abbrechen
|
||||
board:
|
||||
next_period: Nächstes Viertel
|
||||
next_half: Nächste Halbzeit
|
||||
close_set: Satz beenden
|
||||
free_score: Freier Punktestand
|
||||
stopwatch: Stoppuhr
|
||||
generic_score: Punktestand
|
||||
start: Starten
|
||||
pause: Pause
|
||||
reset: Zurücksetzen
|
||||
points_suffix: Pkt.
|
||||
partials_prefix: "Teilergebnisse:"
|
||||
set_label: "Satz %{number}"
|
||||
js:
|
||||
period_updated: Spielabschnitt aktualisiert
|
||||
now_in_period: "Jetzt in %{period}"
|
||||
set_won_body: "%{winner} hat den Satz gewonnen. Satz beenden?"
|
||||
match_won_title: Spiel gewonnen
|
||||
match_won_body: "%{winner} hat das Spiel gewonnen. Übertragung beenden?"
|
||||
close_set_confirm: Bestätigst du das Beenden des aktuellen Satzes?
|
||||
score_update_error: Fehler beim Aktualisieren des Spielstands
|
||||
generic_error: Fehler
|
||||
sets_line: "Satz %{current} · Gewonnene Sätze %{home}-%{away}"
|
||||
quarter_label: "Q%{n}"
|
||||
half_label: "%{n}. Halbzeit"
|
||||
overtime_basket: "VL%{n}"
|
||||
overtime_other: Verlängerung
|
||||
unknown_period: "—"
|
||||
resumed: Übertragung fortgesetzt
|
||||
paused_cover: "Übertragung pausiert — Deckbild auf Sendung"
|
||||
closed: Übertragung beendet
|
||||
resume_error: Fehler beim Fortsetzen der Übertragung
|
||||
pause_error: Fehler beim Pausieren der Übertragung
|
||||
close_error: Fehler beim Beenden
|
||||
close_confirm: Übertragung endgültig beenden?
|
||||
link_unavailable: Link nicht verfügbar
|
||||
link_copied: Link kopiert
|
||||
copy_prompt: "Link kopieren:"
|
||||
share_regia_text: "Öffne diesen Link, um den Live-Spielstand zu verwalten:"
|
||||
share_live_text: "Sieh dir die Übertragung auf Match Live TV an:"
|
||||
recordings:
|
||||
archive:
|
||||
back_prefix: "←"
|
||||
heading: Replay-Archiv
|
||||
admin_suffix: (Admin)
|
||||
lead_html: "Verwalte Aufnahmen, Sichtbarkeit und Downloads. <strong>Privat</strong> = nicht gelisteter Link, erscheint nicht auf der öffentlichen Seite <code>/replay</code>. Beim Löschen eines Replays werden auch die Dateien auf dem Server und das verknüpfte YouTube-Video entfernt."
|
||||
kpi_available: Verfügbare Replays
|
||||
kpi_expiring: "Läuft bald ab (7 Tage)"
|
||||
kpi_space: Belegter Speicherplatz
|
||||
kpi_views: Gesamtaufrufe
|
||||
team_label: Team
|
||||
team_all: Alle
|
||||
status_label: Status
|
||||
status_all: Alle
|
||||
status_ready: Verfügbar
|
||||
status_processing: In Bearbeitung
|
||||
status_expired: Abgelaufen / Fehler
|
||||
col_preview: Vorschau
|
||||
col_match: Spiel
|
||||
col_team: Team
|
||||
col_details: Details
|
||||
col_status: Status und Sichtbarkeit
|
||||
col_actions: Aktionen
|
||||
watch_replay: Replay ansehen
|
||||
processing_title: Verarbeitung läuft
|
||||
not_available_title: Replay nicht verfügbar
|
||||
views_suffix: Aufrufe
|
||||
expires_prefix: Läuft ab am
|
||||
expires_days: "(%{count} Tage)"
|
||||
no_expiry: Kein Ablaufdatum
|
||||
new_expiry_title: Neues Ablaufdatum
|
||||
save: Speichern
|
||||
extend_days: "+%{count} Tage"
|
||||
extend_title: "Ablauf um %{count} Tage verlängern"
|
||||
privacy_public: Öffentlich
|
||||
privacy_private: Privat
|
||||
privacy_hint_public: "Für alle sichtbar — klicken, um privat zu machen"
|
||||
privacy_hint_private: "Nur mit Link — klicken, um öffentlich zu machen"
|
||||
download_mp4: MP4
|
||||
download_mp4_title: MP4 herunterladen
|
||||
publish_youtube: "YT"
|
||||
publish_youtube_title: Auf YouTube veröffentlichen
|
||||
open_youtube_title: Auf YouTube öffnen
|
||||
delete_title: Replay löschen
|
||||
delete_confirm: Wähle, wo das Replay gelöscht werden soll. Der Vorgang ist unwiderruflich.
|
||||
no_recordings: Keine Aufnahmen für die gewählten Filter.
|
||||
confirm:
|
||||
choice_title: Was möchtest du löschen?
|
||||
choice_message: Wähle, wo das Replay entfernt werden soll. Der Vorgang ist unwiderruflich.
|
||||
choice_site_label: Nur von der Website
|
||||
choice_site_hint_with_youtube: Das Video bleibt auf YouTube
|
||||
choice_site_hint_only: Entfernt die Dateien von der Website
|
||||
choice_youtube_label: Nur von YouTube
|
||||
choice_youtube_hint_with_site: Bleibt auf der Website verfügbar
|
||||
choice_youtube_hint_only: Entfernt nur das YouTube-Video
|
||||
choice_both_label: Von Website und YouTube
|
||||
choice_both_hint: Vollständige Löschung
|
||||
youtube_title: Von YouTube löschen?
|
||||
youtube_message: Das Video wird von YouTube entfernt. Das Replay bleibt auf der Website verfügbar.
|
||||
youtube_ok: Von YouTube löschen
|
||||
site_title: Von der Website löschen?
|
||||
site_message_with_youtube: Das Replay wird von der Website entfernt. Das Video auf YouTube bleibt online.
|
||||
site_message_only: Du bist dabei, dieses Replay endgültig von der Website zu löschen. Der Vorgang ist unwiderruflich.
|
||||
site_ok: Von Website löschen
|
||||
status:
|
||||
deleted: Gelöscht
|
||||
expired: Abgelaufen
|
||||
failed: Fehler
|
||||
processing: In Bearbeitung
|
||||
expiring_soon: Läuft bald ab
|
||||
available: Verfügbar
|
||||
flash:
|
||||
web_base:
|
||||
login_required: Bitte melde dich an, um fortzufahren
|
||||
access_denied: Zugriff nicht erlaubt
|
||||
clubs:
|
||||
already_registered: Du hast bereits einen Verein registriert
|
||||
created: Verein und erstes Team erstellt.
|
||||
updated: Verein aktualisiert.
|
||||
complete_billing_first: Vervollständige deine Rechnungsdaten, bevor du einen Premium-Tarif aktivierst.
|
||||
comped_change_denied: "Dieser Tarif ist ein von Match Live TV verwaltetes kostenloses Abonnement. Um zu einem kostenpflichtigen Abonnement zu wechseln, kontaktiere den Support."
|
||||
stripe_not_configured: Zahlungen auf dem Server noch nicht konfiguriert
|
||||
already_on_plan: "Du bist bereits bei %{plan} (%{price})."
|
||||
change_already_scheduled: "Der Wechsel zu %{plan} ist bereits ab dem %{date} geplant."
|
||||
stripe_error: "Stripe-Fehler: %{message}"
|
||||
youtube_oauth_not_configured: YouTube-OAuth auf dem Server nicht konfiguriert
|
||||
youtube_disconnected: YouTube-Kanal des Vereins getrennt
|
||||
portal_not_configured: Zahlungsportal nicht konfiguriert
|
||||
checkout_success: "Zahlung abgeschlossen! Aktiver Plan: %{plan}."
|
||||
checkout_canceled: Zahlung abgebrochen. Es wurde keine Belastung vorgenommen.
|
||||
club_billing:
|
||||
profile_saved_proceed_payment: Daten gespeichert. Fahre mit der Zahlung fort.
|
||||
profile_updated: Rechnungsdaten aktualisiert.
|
||||
stripe_not_configured: Stripe nicht konfiguriert.
|
||||
subscription_canceled: "Abonnement gekündigt. Es bleibt bis zum %{date} aktiv; ab diesem Tag wechselst du zum Free-Tarif."
|
||||
stripe_error: "Stripe-Fehler: %{message}"
|
||||
invoice_pdf_unavailable: Rechnungs-PDF nicht verfügbar.
|
||||
club_recordings:
|
||||
not_authorized: Nicht autorisiert
|
||||
teams:
|
||||
added: "Team „%{name}“ hinzugefügt."
|
||||
updated: Team aktualisiert.
|
||||
now_staff: Dein Konto ist jetzt Übertragungsverantwortlicher.
|
||||
staff_role_removed: Staff-Rolle von deinem Konto entfernt.
|
||||
invite_link_generated: "Einladungslink erstellt (7 Tage gültig)"
|
||||
access_revoked: Zugriff widerrufen
|
||||
invitation_canceled: Einladung storniert
|
||||
youtube_disconnected: YouTube-Kanal des Vereins getrennt
|
||||
matches:
|
||||
scheduled: "Spiel geplant: %{opponent}. Starte das Streaming aus der App, sobald du vor Ort bist."
|
||||
updated: Spiel aktualisiert.
|
||||
close_live_before_delete: Beende den Livestream, bevor du dieses Spiel löschst.
|
||||
deleted: Spiel gelöscht.
|
||||
schedule_denied: Nur ein Übertragungsverantwortlicher oder der Vereinsinhaber kann Spiele planen.
|
||||
club_matches:
|
||||
invalid_team: Wähle ein gültiges Team.
|
||||
scheduled: "Spiel geplant: %{team} gegen %{opponent}."
|
||||
no_schedulable_teams: Du hast keine Berechtigung, Spiele in diesem Verein zu planen.
|
||||
team_roster_members:
|
||||
added: "%{name} zum Kader hinzugefügt."
|
||||
updated: Profil aktualisiert.
|
||||
removed: "%{name} aus dem Kader entfernt."
|
||||
invitations:
|
||||
invalid_or_expired: Einladung ungültig oder abgelaufen
|
||||
invalid: Einladung ungültig
|
||||
wrong_email: "Diese Einladung ist für %{email}"
|
||||
joined_team: Du bist dem Team beigetreten!
|
||||
signup_to_accept: "Registriere dich mit %{email}, um die Einladung anzunehmen"
|
||||
registrations:
|
||||
accept_terms_required: Du musst die Datenschutzerklärung und die Nutzungsbedingungen akzeptieren, um dich zu registrieren.
|
||||
welcome_to_team: Willkommen im Team!
|
||||
account_created: Konto erstellt. Registriere jetzt deinen Verein.
|
||||
sessions:
|
||||
welcome_back: Willkommen zurück!
|
||||
invalid_credentials: E-Mail oder Passwort ungültig
|
||||
logged_out: Abgemeldet
|
||||
password_resets:
|
||||
email_sent: Wenn die E-Mail registriert ist, erhältst du in Kürze einen Link zum Zurücksetzen des Passworts.
|
||||
invalid_or_expired_link: Link ungültig oder abgelaufen. Fordere ein neues Zurücksetzen des Passworts an.
|
||||
password_min_length: Das Passwort muss mindestens 8 Zeichen lang sein
|
||||
password_mismatch: Die Passwörter stimmen nicht überein
|
||||
password_updated: Passwort aktualisiert. Du kannst dich jetzt anmelden.
|
||||
replay:
|
||||
download_unavailable: Download nicht verfügbar
|
||||
not_available: Replay nicht verfügbar
|
||||
live:
|
||||
index:
|
||||
meta_title: "Live-Übertragungen von Jugendspielen jetzt — Match Live TV"
|
||||
meta_description: "Sieh dir Live-Übertragungen von Jugendspielen an, die gerade laufen, sowie kommende geplante Spiele. Suche dein Team und öffne den Link, ohne eine App zu installieren."
|
||||
club_back_link: "← %{name}"
|
||||
club_title: "Live-Übertragungen und Spiele — %{name}"
|
||||
club_hint: "Nur Teams dieses Vereins: laufende Übertragungen und über App oder Website geplante Spiele."
|
||||
club_replay_link: "Wiederholungen von %{name}"
|
||||
default_title: "Live-Übertragungen und geplante Spiele"
|
||||
default_hint: "Suche nach Verein, Team, Gegner oder Ort: finde aktive Übertragungen und geplante Spiele."
|
||||
replay_archive_link: "Vergangene Live-Übertragungen — Wiederholungsarchiv"
|
||||
schedule_match_link: "Spiel planen"
|
||||
search_placeholder_club: "Verein, Team, Gegner oder Ort suchen…"
|
||||
search_placeholder_default: "Z. B. Crazy Volley, Serie D, Gegner…"
|
||||
search_aria_label: "Team suchen"
|
||||
search_button: "Suchen"
|
||||
reset_link: "Zurücksetzen"
|
||||
results_hint: "Ergebnisse für „%{query}“%{club_suffix}: %{live_count} live · %{upcoming_count} geplant"
|
||||
results_hint_club_suffix: " bei %{name}"
|
||||
section_live_now: "Jetzt live"
|
||||
badge_on_air: "On Air"
|
||||
badge_live: "Live"
|
||||
badge_paused: "Pausiert"
|
||||
badge_reconnecting: "Verbindung wird wiederhergestellt"
|
||||
badge_starting: "Startet"
|
||||
badge_scheduled: "Geplant"
|
||||
watch_link: "Live ansehen →"
|
||||
section_upcoming: "Nächste Spiele"
|
||||
upcoming_hint: "Über App oder Website geplant: die Übertragung beginnt, sobald das Team-Personal sendet."
|
||||
empty_soft_title: "Gerade keine Live-Übertragung."
|
||||
empty_soft_body: "Schau zur angegebenen Uhrzeit wieder vorbei: Sobald das Team mit dem Streaming beginnt, erscheint das Spiel unter „Jetzt live“."
|
||||
empty_club_title: "Keine Live-Übertragungen oder geplante Spiele für %{name}."
|
||||
empty_club_schedule_link: "Erstes Spiel planen"
|
||||
empty_club_schedule_suffix: " oder über die Match Live TV App."
|
||||
empty_club_ask_staff: "Bitte den Vereinsinhaber oder eine verantwortliche Person, ein Spiel zu planen."
|
||||
empty_club_add_team_html: "Füge ein Team über die %{club_link} hinzu und plane das erste Spiel."
|
||||
empty_club_page_link: "Vereinsseite"
|
||||
empty_club_back_link: "← Zurück zum Verein"
|
||||
empty_hero_title: "Gerade keine Live-Übertragung — aber du kannst dich schon vorbereiten"
|
||||
empty_hero_body: "Wenn dein Team Match Live TV nutzt, kann das Spiel vom Handy aus mit Datum und Uhrzeit geplant werden. Eltern und Verwandte finden die Übertragung hier, sobald der Anpfiff näher rückt."
|
||||
empty_hero_list_item1: "Plane das Spiel über die App (ohne die Übertragung sofort zu starten)"
|
||||
empty_hero_list_item2: "Das Spiel erscheint unter „Nächste Spiele“ mit Uhrzeit und Spielort"
|
||||
empty_hero_list_item3: "Das Streaming startet erst, wenn du in der Halle auf Start drückst"
|
||||
empty_hero_cta_signup: "Team registrieren"
|
||||
empty_hero_cta_features: "Erfahre, wie es funktioniert"
|
||||
demo_aria_label: "Beispiel einer aktiven Live-Übertragung"
|
||||
demo_label: "Beispiel — so sieht eine aktive Übertragung aus"
|
||||
demo_meta: "PalaTigers · Match Live TV"
|
||||
demo_sets: "Satz 2 · Sätze gewonnen 1-0"
|
||||
show:
|
||||
back_to_all: "← Alle Live-Übertragungen"
|
||||
title: "%{club_name} · %{team_name} vs %{opponent_name} — Live-Übertragung"
|
||||
meta_description: "Verfolge %{club_name} live — %{team_name} vs %{opponent_name}%{location}. Im Browser ansehen, ohne App zu installieren."
|
||||
meta_description_location: " — %{location}"
|
||||
stream_ended_title: "Live-Übertragung beendet"
|
||||
stream_ended_body: "Die Übertragung dieses Spiels wurde beendet."
|
||||
stream_ended_closed_at: "Beendet am %{date}"
|
||||
stream_ended_hint: "Der Spielstand ist im Video sichtbar, falls die Übertragung noch lief."
|
||||
stream_ended_reload_hint: "Lade die Seite neu, um den zuletzt erfassten Status zu sehen."
|
||||
all_live_link: "Alle Live-Übertragungen"
|
||||
youtube_title: "Live auf YouTube"
|
||||
youtube_available_body: "Dieses Spiel wird auf dem YouTube-Kanal von Match Live TV übertragen, nicht im Player der Website."
|
||||
youtube_watch_link: "Auf YouTube ansehen"
|
||||
youtube_preparing_body: "Wir bereiten die Übertragung auf dem YouTube-Kanal vor. Aktualisiere in ein paar Sekunden."
|
||||
youtube_hint: "Teile den YouTube-Link nur mit Fans und dem Verein."
|
||||
play_hint: "▶ Übertragung starten"
|
||||
offline_msg: "Die Übertragung ist noch nicht verfügbar. Sie aktualisiert sich automatisch, sobald sie wieder online ist."
|
||||
awaiting_msg: "Warten auf das Signal vom Telefon — öffne die Kamera in der App und prüfe, ob die Übertragung gestartet ist (nicht pausiert)."
|
||||
paused_msg: "Übertragung pausiert — der Stream läuft weiter (Server-Deckbild)."
|
||||
js_reconnecting_awaiting: "Verbindung wird wiederhergestellt - warten auf Video vom Ereignis"
|
||||
overlays:
|
||||
badge_ended: "Beendet"
|
||||
badge_waiting: "Wartet"
|
||||
replay:
|
||||
index:
|
||||
meta_title: "Wiederholung — Match Live TV"
|
||||
meta_description: "Wiederholungsarchiv der Sport-Live-Übertragungen auf Match Live TV. Suche nach Verein, Team oder Gegner."
|
||||
back_to_live: "← Live-Übertragungen"
|
||||
title: "Vergangene Live-Übertragungen"
|
||||
hint: "Öffentliche Wiederholungen von Sportvereinen — betrifft bereits übertragene Spiele."
|
||||
search_placeholder: "Z. B. Tigers Volley, Gegner, Verein, Ort…"
|
||||
search_aria_label: "Wiederholung suchen"
|
||||
search_button: "Suchen"
|
||||
reset_link: "Zurücksetzen"
|
||||
club_filter_label: "Verein"
|
||||
club_filter_all: "Alle Vereine"
|
||||
results_hint: "Ergebnisse für „%{query}“%{club_suffix}: %{count} Wiederholungen"
|
||||
results_hint_club_suffix: " · %{name}"
|
||||
empty_filtered_title: "Keine Wiederholung gefunden"
|
||||
empty_filtered_suffix: " mit den gewählten Filtern."
|
||||
empty_filtered_show_all: "Alle öffentlichen Wiederholungen anzeigen"
|
||||
empty_default_title: "Derzeit keine öffentlichen Wiederholungen."
|
||||
empty_default_body: "Sobald ein Verein eine Aufnahme veröffentlicht, erscheint sie hier."
|
||||
empty_default_live_link: "Zu den Live-Übertragungen"
|
||||
show:
|
||||
title: "Wiederholung — %{title}"
|
||||
meta_description: "Wiederholung %{title} auf Match Live TV."
|
||||
back_to_replays: "← Vergangene Live-Übertragungen"
|
||||
processing_title: "Wiederholung wird verarbeitet"
|
||||
processing_body: "Die Aufnahme wird vorbereitet. Du erhältst eine E-Mail, sobald sie fertig ist."
|
||||
badge_label: "REPLAY"
|
||||
meta_line_duration: "Dauer %{value}"
|
||||
meta_line_until: "Bis %{date}"
|
||||
meta_line_public: "Öffentlich"
|
||||
meta_line_private: "Privat (Link)"
|
||||
download_link: "MP4 herunterladen"
|
||||
youtube_link: "Auf YouTube öffnen"
|
||||
youtube_only_body: "Wiederholung auf YouTube (keine Serverkopie vorhanden)."
|
||||
file_missing_title: "Datei nicht verfügbar"
|
||||
file_missing_body: "Das Video ist nicht mehr auf dem Server (Archiv entfernt oder in Migration)."
|
||||
file_missing_meta: "Aufgezeichnete Dauer: %{duration} · %{size}"
|
||||
failed_title: "Wiederholung nicht verfügbar"
|
||||
failed_default_body: "Fehler bei der Verarbeitung der Aufnahme."
|
||||
unavailable_title: "Wiederholung nicht verfügbar"
|
||||
unavailable_body: "Diese Aufnahme ist nicht mehr zugänglich."
|
||||
team_pages:
|
||||
index:
|
||||
meta_title: "Teams auf Match Live TV — Live-Übertragungen und Wiederholungen im Jugendsport"
|
||||
meta_description: "Entdecke die Jugendsportteams, die auf Match Live TV übertragen. Suche nach Namen, filtere nach Sportart, finde laufende Live-Übertragungen und Wiederholungsarchive."
|
||||
heading: "Teams auf Match Live TV"
|
||||
hint: "Vereine und Teams mit Live-Übertragungen, öffentlichen Wiederholungen oder geplanten Spielen. Suche dein Team und öffne die Seite, um Kalender und Archiv zu verfolgen."
|
||||
search_placeholder: "Teamname, Verein, Stadt oder Halle…"
|
||||
search_aria_label: "Team suchen"
|
||||
search_button: "Suchen"
|
||||
sport_label: "Sportart"
|
||||
sport_all: "Alle Sportarten"
|
||||
chips_label: "Anzeigen"
|
||||
chip_live: "Live"
|
||||
chip_replays: "Mit Wiederholungen"
|
||||
reset_link: "Zurücksetzen"
|
||||
results_found: "%{count} Teams gefunden"
|
||||
results_active: "%{count} aktive Teams"
|
||||
results_query_suffix: " für „%{query}“"
|
||||
results_sport_suffix: " · %{sport}"
|
||||
badge_live: "Live"
|
||||
badge_upcoming: "%{count} geplant"
|
||||
badge_replay: "%{count} Wiederholungen"
|
||||
empty_filtered_title: "Keine Teams gefunden"
|
||||
empty_filtered_suffix: " mit den gewählten Filtern."
|
||||
empty_filtered_show_all: "Alle aktiven Teams anzeigen"
|
||||
empty_default_title: "Derzeit keine aktiven Teams."
|
||||
empty_default_body: "Sobald ein Verein eine Übertragung startet oder Wiederholungen veröffentlicht, erscheint es hier."
|
||||
empty_default_live_link: "Zu den Live-Übertragungen"
|
||||
footer_live_link: "Laufende Live-Übertragungen"
|
||||
footer_replay_link: "Wiederholungsarchiv"
|
||||
show:
|
||||
title: "%{team} — %{club} | Match Live TV"
|
||||
meta_description: "Verfolge %{team} (%{club}): Live-Übertragungen, Spielplan und Wiederholungen auf Match Live TV."
|
||||
breadcrumb_all_teams: "← Alle Teams"
|
||||
live_now_label: "Jetzt live"
|
||||
watch_live_link: "Live-Übertragung ansehen"
|
||||
all_live_link: "Alle Live-Übertragungen"
|
||||
replay_archive_link: "Wiederholungsarchiv"
|
||||
section_live_now: "Jetzt live"
|
||||
section_upcoming: "Nächste Spiele"
|
||||
upcoming_hint: "Vom Verein geplant: die Übertragung beginnt, sobald das Personal sendet."
|
||||
section_replays: "Neueste Wiederholungen"
|
||||
replays_more_link: "Alle Wiederholungen von %{team} ansehen →"
|
||||
section_roster: "Kader"
|
||||
empty_title: "Derzeit keine Live-Übertragungen oder Wiederholungen."
|
||||
empty_body: "Schau vor den nächsten Spielen wieder vorbei: hier erscheinen Live-Übertragungen, Kalender und das Teamarchiv."
|
||||
empty_link: "Alle Live-Übertragungen ansehen"
|
||||
score:
|
||||
timer_label: "Timer"
|
||||
generic_label: "Punktestand"
|
||||
sets_label: "Satz %{set} · Sätze gewonnen %{home}-%{away}"
|
||||
partial_entry: "Satz %{set} %{home}-%{away}"
|
||||
partial_entry_no_number: "Satz %{home}-%{away}"
|
||||
partials_prefix: "Teilergebnisse: %{value}"
|
||||
points_label: "%{team} %{home} - %{away} %{opponent}"
|
||||
fallback: "—"
|
||||
default_club_name: "Verein"
|
||||
scheduled_date_format: "%d.%m.%Y um %H:%M"
|
||||
scheduled_today: "Heute um %{time}"
|
||||
scheduled_tomorrow: "Morgen um %{time}"
|
||||
@@ -0,0 +1,786 @@
|
||||
en:
|
||||
club:
|
||||
back_to_club: "← Club"
|
||||
sport_label: Main sport
|
||||
branding_legend: Club logo and colors
|
||||
branding:
|
||||
legend: Visual identity
|
||||
inherit_hint: Leave blank to use the club's logo and colors.
|
||||
logo_file_label: Logo (image)
|
||||
logo_preview_alt: Logo preview
|
||||
no_logo_placeholder: "No logo — choose a file for the preview"
|
||||
logo_url_label: Logo (alternative URL)
|
||||
primary_color_label: Primary color
|
||||
secondary_color_label: Secondary color
|
||||
choose_color: Choose color
|
||||
quick_colors: Quick colors
|
||||
header_preview_label: Header preview
|
||||
name_placeholder: Club / team name
|
||||
dashboard:
|
||||
title: "%{name} — Club"
|
||||
plan_label: "Plan:"
|
||||
teams_count_label: "Teams:"
|
||||
edit_club: Edit club
|
||||
subscription: Subscription
|
||||
new_team: New team
|
||||
live_streams: Live streams
|
||||
replay_archive: Replay archive
|
||||
replay_heading: Replay
|
||||
available: available
|
||||
expiring_soon: "expiring soon (7 days)"
|
||||
space_used: storage used
|
||||
views: views
|
||||
teams_heading: Teams
|
||||
team_col: Team
|
||||
branding_col: Branding
|
||||
branding_custom: Custom
|
||||
branding_inherited: Inherits from club
|
||||
public_page: Public page
|
||||
details: Details
|
||||
matches: Matches
|
||||
edit: Edit
|
||||
no_teams_html: "No teams yet. %{link}."
|
||||
add_first_team: Add the first one
|
||||
footer_note: "Each team has its own broadcast managers. The score from a second phone uses the control-room link (no account needed). The subscription covers the whole club."
|
||||
edit:
|
||||
title: "Edit club — %{name}"
|
||||
heading: Edit club
|
||||
name_label: Club name
|
||||
save: Save
|
||||
new:
|
||||
title: "Register a club — Match Live TV"
|
||||
meta_description: Create your sports club and its first team on Match Live TV.
|
||||
heading: Your club
|
||||
lead: "Register the club: you'll be able to add more teams (Under 13, Under 15, Serie C…)."
|
||||
section_club: Club
|
||||
name_label: Club name
|
||||
name_placeholder: "e.g. Crazy Volley Rozzano"
|
||||
section_first_team: First team
|
||||
default_first_team_name: First team
|
||||
first_team_name_label: Team name
|
||||
first_team_name_placeholder: "e.g. Under 15"
|
||||
plan_label: "Starting plan (for the whole club)"
|
||||
plan_free: "Free — 1 broadcast manager per team, 1 live stream"
|
||||
plan_light: Premium Light
|
||||
plan_full: Premium Full
|
||||
interval_label: Premium billing
|
||||
interval_yearly: "Yearly — €40/year (Light) or €200/year (Full)"
|
||||
interval_monthly: "Monthly — €5/month (Light) or €20/month (Full)"
|
||||
submit: Create club
|
||||
billing:
|
||||
title: "Subscription — %{name}"
|
||||
comped:
|
||||
title: Complimentary Match Live TV subscription
|
||||
plan_prefix: "— plan"
|
||||
no_payment_html: "No payment is required. To make changes or switch to a paid plan, contact %{email_link}."
|
||||
youtube:
|
||||
heading: YouTube Live
|
||||
connected_notice: Club YouTube channel connected successfully.
|
||||
light_body_html: "With the <strong>Premium Light</strong> plan, YouTube live streams for all teams go to the official <strong>Match Live TV</strong> channel. You don't need to connect a club channel."
|
||||
light_ready: "Channel ready · select «YouTube Live» in the mobile app."
|
||||
light_configuring: Match Live TV channel being configured server-side. Contact support if YouTube doesn't appear in the app.
|
||||
full_connected_html: "Channel connected for <strong>the whole club</strong>: <strong>%{channel}</strong>"
|
||||
full_connected_hint: All teams can stream to this channel when they choose the club channel in the app.
|
||||
disconnect: Disconnect channel
|
||||
disconnect_confirm: Disconnect the YouTube channel? Streams will use the Match Live TV channel until you reconnect yours.
|
||||
full_not_connected_html: "Without a connected channel, YouTube streams from the app go to the official <strong>Match Live TV</strong> channel. Connect your club's YouTube channel here (applies to all teams)."
|
||||
ready_in_app: "YouTube ready in the app (Match Live TV channel until you connect yours)."
|
||||
connect: Connect the club's YouTube channel
|
||||
oauth_not_configured: YouTube OAuth not configured on the server yet.
|
||||
requires_full: YouTube on the club channel requires the Premium Full plan.
|
||||
see_plans: See plans
|
||||
team:
|
||||
back_to_details: "← Team details"
|
||||
sport_label: Sport
|
||||
details:
|
||||
title: "Details — %{name}"
|
||||
meta_description: "%{name} team details on Match Live TV."
|
||||
nav_aria: Team breadcrumb
|
||||
edit_team: Edit team
|
||||
plan_label: "Plan:"
|
||||
plan_scope_club: (club)
|
||||
staff_label: "Broadcast managers:"
|
||||
active_matches_label: "Active matches:"
|
||||
unlimited: unlimited
|
||||
no_description: No description yet.
|
||||
add_description_link: Add one from edit team
|
||||
roster_count_label: on the roster
|
||||
no_photo: Team photo not uploaded yet
|
||||
add_photo_link: Add one from edit team
|
||||
public_page: Public page
|
||||
streaming_managers: Broadcast managers
|
||||
schedule_matches: Schedule matches
|
||||
live_streams: Live streams
|
||||
no_people_in_category: No one in this category yet.
|
||||
youtube_hint_html: "The club's YouTube channel is set up from the %{club_link} page (YouTube Live section)."
|
||||
footer_note: Use the mobile app with the same credentials to start matches and streams.
|
||||
edit:
|
||||
title: "Edit team — %{name}"
|
||||
club_label: "Club:"
|
||||
name_label: Team name
|
||||
description_label: Team description
|
||||
description_placeholder: "Team introduction, achievements, season goals…"
|
||||
photo_label: "Team photo (group or crest)"
|
||||
photo_alt: Team photo
|
||||
branding_legend: Team branding (override)
|
||||
slug_label: Public page address
|
||||
slug_hint_html: "Parents and fans find the team at <strong>%{base_url}/teams/%{slug}</strong>"
|
||||
slug_title: "Lowercase letters, numbers and hyphens only"
|
||||
roster_public_label: Show the roster on the public page
|
||||
roster_public_hint: When enabled, players and staff are visible to anyone with the link. You can leave it off for privacy.
|
||||
club_colors_label: "Club colors:"
|
||||
submit: Save team
|
||||
new:
|
||||
title: "New team — %{name}"
|
||||
heading: New team
|
||||
club_label: "Club:"
|
||||
name_label: Team name
|
||||
name_placeholder: "e.g. Under 13, Serie C"
|
||||
branding_legend: Branding override (optional)
|
||||
submit: Add team
|
||||
invite:
|
||||
title: "Broadcast staff — %{name}"
|
||||
heading: Broadcast managers
|
||||
assigned_label: "Assigned:"
|
||||
per_team_note: (per team, renewed yearly)
|
||||
info: "The broadcast manager starts the live stream from the app (camera on a tripod). For scoring from a second phone, no account is needed: they share the <strong>control-room link</strong> from the broadcast screen (WhatsApp, email, SMS, etc.)."
|
||||
self_assign_hint_html: "<strong>%{email}</strong> — you can handle both camera and score yourself, or invite others for the broadcast."
|
||||
self_assign_submit: I'll do it — broadcast manager
|
||||
invite_other_heading: Invite another email
|
||||
email_label: Broadcast manager's email
|
||||
submit: Generate access link
|
||||
share_hint: "Share (valid for 7 days):"
|
||||
billing:
|
||||
title: "Subscription — %{name}"
|
||||
team_label: "Team:"
|
||||
current_plan_label: "Current plan:"
|
||||
staff_line: "Broadcast staff: %{count} / year"
|
||||
matches_line: "Matches: %{count} concurrent"
|
||||
replay_line: "Replay: %{value}"
|
||||
replay_days: "%{count} days"
|
||||
replay_none: "no"
|
||||
youtube_line: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: club channel
|
||||
youtube_none: "no"
|
||||
current_plan: Current plan
|
||||
manage_club_subscription: Manage club subscription
|
||||
stripe_not_configured: Stripe not configured
|
||||
contact_lead: "Different needs?"
|
||||
contact_cta: Contact us
|
||||
contact_trailer: for a custom offer.
|
||||
club_payments_link: Club payments and invoices
|
||||
streaming_staff:
|
||||
self_account_heading: "Your account (%{email})"
|
||||
self_account_hint: "You can manage streaming from the app. For scoring from another phone, share the <strong>control-room link</strong> during the stream (no second account needed)."
|
||||
self_assign_submit: I'll do it — broadcast manager
|
||||
staff_heading: Broadcast managers (app)
|
||||
col_name: Name
|
||||
col_email: Email
|
||||
col_role: Role
|
||||
role_transmission: Broadcast
|
||||
you_suffix: (you)
|
||||
clear_self_staff: Remove staff role
|
||||
clear_self_staff_confirm: Remove the staff role from your account?
|
||||
revoke: Revoke
|
||||
revoke_confirm: "Revoke access for %{name}?"
|
||||
no_staff: No broadcast managers yet.
|
||||
invite_someone: Invite someone
|
||||
pending_invitations_heading: Pending invitations
|
||||
col_email_short: Email
|
||||
col_expires: Expires
|
||||
cancel_invitation: Cancel
|
||||
no_pending: No pending requests.
|
||||
archive_heading: Replay archive
|
||||
col_match: Match
|
||||
col_date: Date
|
||||
col_duration: Duration
|
||||
col_expiry: Expiry
|
||||
col_status: Status
|
||||
watch: Watch
|
||||
manage_all_replays: Manage all replays
|
||||
no_recordings: No replays yet. Recordings appear here after Premium live streams end.
|
||||
matches:
|
||||
back_to_list: "← Match list"
|
||||
opponent_label: Opponent
|
||||
opponent_placeholder: "e.g. Volley Milano"
|
||||
location_label: "Location (optional)"
|
||||
location_placeholder: "Gym, city"
|
||||
datetime_label: Date and time
|
||||
form_hint: "The stream doesn't start automatically: it will show up in the app and on the site. You'll start streaming from your phone once you're on site."
|
||||
edit:
|
||||
title: "Edit match — %{name}"
|
||||
heading: Edit match
|
||||
submit: Save changes
|
||||
new:
|
||||
title: "Schedule match — %{name}"
|
||||
heading: Schedule match
|
||||
submit: Save to schedule
|
||||
index:
|
||||
title: "Matches — %{name}"
|
||||
heading: "Matches — %{name}"
|
||||
lead: "Schedule date, opponent and venue here from your computer. Once you're in the gym, open the Match Live TV app, select this team and start streaming the match."
|
||||
schedule_match: Schedule match
|
||||
team_details: Team details
|
||||
live_and_schedule: Streams and schedule
|
||||
col_opponent: Opponent
|
||||
col_datetime: "Date and time"
|
||||
col_location: Location
|
||||
col_status: Status
|
||||
no_time: No time set
|
||||
no_location: "—"
|
||||
edit: Edit
|
||||
delete: Delete
|
||||
delete_confirm: Delete this match?
|
||||
empty_html: "No matches scheduled yet. %{link}."
|
||||
schedule_first: Schedule the first one
|
||||
club_new:
|
||||
title: "Schedule match — %{name}"
|
||||
back_link: "← Streams and matches"
|
||||
heading: Schedule match
|
||||
admin_hint: "· You can pick any team in the club"
|
||||
staff_hint: "· Only teams you're a broadcast manager for"
|
||||
team_label: Team
|
||||
submit: Save to schedule
|
||||
status:
|
||||
active: In progress / resumable
|
||||
scheduled: Scheduled
|
||||
ready: Ready
|
||||
no_time: No time set
|
||||
roster:
|
||||
back_to_details: "← Team details"
|
||||
category:
|
||||
staff: Staff
|
||||
coach: Coaches
|
||||
manager: Managers
|
||||
player: Players
|
||||
role:
|
||||
coach: Coach
|
||||
manager: Manager
|
||||
staff: Staff
|
||||
player: Player
|
||||
player_numbered: "Player #%{number}"
|
||||
errors:
|
||||
role_invalid: is not a valid role for this sport
|
||||
photo_invalid_type: must be PNG, JPEG or WebP
|
||||
role_select_blank: "— Select role —"
|
||||
edit:
|
||||
title: "Edit — %{name}"
|
||||
member_form:
|
||||
edit_heading: Edit profile
|
||||
new_heading: Add person
|
||||
lead: Fill in the fields and save to update the roster.
|
||||
category_label: Group
|
||||
full_name_label: Full name
|
||||
full_name_placeholder: "e.g. Mario Rossi"
|
||||
role_player_label: On-field role
|
||||
role_other_label: "Role (optional)"
|
||||
role_other_placeholder: "e.g. Head coach, President, Physiotherapist"
|
||||
jersey_label: Jersey number
|
||||
jersey_placeholder: "e.g. 7"
|
||||
bio_label: Short description
|
||||
bio_placeholder: "Brief profile description…"
|
||||
photo_label: Photo
|
||||
photo_hint: Without a photo, an avatar with the team's colors will be shown.
|
||||
submit_edit: Save profile
|
||||
submit_new: Add to roster
|
||||
person_card:
|
||||
edit: Edit
|
||||
remove: Remove
|
||||
remove_confirm: "Remove %{name} from the roster?"
|
||||
billing:
|
||||
heading: Subscription
|
||||
entity_types:
|
||||
company: "Club / non-profit with VAT number"
|
||||
individual: Private individual
|
||||
nonprofit: Non-profit association
|
||||
profile_errors:
|
||||
entity_type: Billing entity type
|
||||
legal_name: Legal name or account holder's name
|
||||
email: Billing email
|
||||
address: Address
|
||||
city: City
|
||||
province: "Province (2-letter code)"
|
||||
postal_code: Postal code
|
||||
country: "Country (ISO)"
|
||||
vat_number: VAT number
|
||||
fiscal_code: Fiscal code
|
||||
vat_or_fiscal: VAT number or fiscal code
|
||||
sdi_or_pec: "SDI recipient code (7 characters) or certified email (PEC)"
|
||||
sdi_invalid: "SDI recipient code (7 characters)"
|
||||
actions:
|
||||
current_plan: Current plan
|
||||
contact_for_free: "To switch to the Free plan, contact support."
|
||||
stripe_not_configured: Stripe not configured
|
||||
stripe_prices_not_configured: Stripe prices not configured
|
||||
complete_billing_prefix: Complete your billing details before activating a premium plan.
|
||||
profile_incomplete_default: Complete your billing details before activating a premium plan.
|
||||
profile_missing: "Missing: %{fields}."
|
||||
profile:
|
||||
title: "Billing details — %{name}"
|
||||
heading: Billing details
|
||||
lead: "Club: %{name}. Enter the details for invoice headers and delivery via SDI or certified email (PEC)."
|
||||
required_notice: Required to subscribe to a premium plan.
|
||||
after_save_hint_html: "After saving, you'll be able to proceed with payment for <strong>%{plan}</strong>."
|
||||
submit: Save billing details
|
||||
back_to_billing: "← Subscription"
|
||||
fields:
|
||||
legend: Billing details
|
||||
legend_hint: "All marked fields are required to subscribe to a premium plan and to issue invoices. Clubs need a VAT number; private individuals need a fiscal code. You need either SDI or certified email (PEC). Payments remain securely handled by Stripe."
|
||||
entity_type_label: "Billing entity type *"
|
||||
legal_name_label: "Legal name / full name *"
|
||||
legal_name_placeholder: "e.g. ASD Tigers Volley"
|
||||
vat_number_label: "VAT number * (club)"
|
||||
fiscal_code_label: "Fiscal code * (private individual)"
|
||||
fiscal_code_placeholder: RSSMRA80A01H501U
|
||||
email_label: "Billing email *"
|
||||
email_placeholder: admin@club.com
|
||||
phone_label: "Phone (optional)"
|
||||
address_label: "Address *"
|
||||
address_placeholder: "123 Main Street"
|
||||
city_label: "City *"
|
||||
province_label: "Province *"
|
||||
province_placeholder: MI
|
||||
postal_code_label: "Postal code *"
|
||||
country_label: "Country (ISO) *"
|
||||
recipient_code_label: "SDI recipient code (7 chars) *"
|
||||
recipient_code_placeholder: XXXXXXX
|
||||
pec_label: "Certified email PEC (alternative to SDI) *"
|
||||
pec_placeholder: pec@club.com
|
||||
documents:
|
||||
heading: Payments and invoices
|
||||
lead: History of the club's payments and invoices issued by Match Live TV.
|
||||
incomplete_title: Billing details incomplete.
|
||||
incomplete_body: Fill in legal name, address, VAT/fiscal code and SDI or PEC to receive invoices by email.
|
||||
complete_now: Complete now
|
||||
holder_label: "Account holder: %{summary}"
|
||||
edit_data: Edit details
|
||||
table_heading: Payments and invoices
|
||||
col_date: Date
|
||||
col_description: Description
|
||||
col_amount: Amount
|
||||
col_status: Payment status
|
||||
col_invoice: Invoice
|
||||
download_pdf: Download PDF
|
||||
pdf_preparing: PDF being prepared
|
||||
no_payments: No payments recorded yet. They will appear here after a premium subscription.
|
||||
subscription_status:
|
||||
club_label: "Club: %{name}"
|
||||
current_plan_label: "Current plan: %{plan}"
|
||||
comped_suffix: (complimentary Match Live TV)
|
||||
valid_for_all_teams: (valid for all teams)
|
||||
manage_subscription: Manage subscription
|
||||
cancel_scheduled_html: "Subscription valid until <strong>%{date}</strong>, then the Free plan."
|
||||
change_pending_html: "From <strong>%{date}</strong> you'll switch to <strong>%{plan}</strong>%{interval}. Until then <strong>%{current_plan}</strong> stays active."
|
||||
end_of_period: end of the period
|
||||
next_renewal: next renewal
|
||||
next_renewal_label: "Next renewal: %{date}"
|
||||
plan_change_info:
|
||||
trigger_label: Plan change and billing info
|
||||
title: Plan change and billing
|
||||
subscription_cancel:
|
||||
scheduled_title: Cancellation scheduled.
|
||||
scheduled_body_html: "The <strong>%{plan}</strong> plan stays active until <strong>%{date}</strong>. From that day the club will automatically switch to the <strong>Free</strong> plan."
|
||||
scheduled_end_of_period: end of the already-paid period
|
||||
scheduled_support_hint: To restore the subscription before it expires, contact Match Live TV support.
|
||||
info: "You can cancel at any time: the subscription stays valid until the end of the already-paid period, then you switch to the Free plan with no further charges."
|
||||
cancel_button: Cancel subscription
|
||||
confirm_with_date: "Confirm cancellation? The %{plan} plan will stay active until %{date}, then you'll switch to Free."
|
||||
confirm_default: Confirm subscription cancellation?
|
||||
stripe_secure:
|
||||
compact_html: "Premium payments securely processed via <strong>Stripe</strong>."
|
||||
full_html: "Premium plan payments are processed <strong>securely</strong> via <strong>Stripe</strong> (PCI DSS certified). Match Live TV never stores full card numbers."
|
||||
messages:
|
||||
upgrade_completed_with_amount: "Upgrade to %{plan} (%{interval}) completed. Immediate charge: %{amount}."
|
||||
upgrade_completed_pending_charge: "Upgrade to %{plan} (%{interval}) completed. The charge for the difference is being processed on your saved card."
|
||||
next_renewal: the next renewal
|
||||
current_plan_generic: the current plan
|
||||
downgrade_scheduled: "Switch to %{plan} (%{interval}) scheduled: you stay on %{current_name} until %{when}. No additional charge now; you'll pay the new price from the next cycle."
|
||||
activate_button: "Activate %{plan} — %{price}"
|
||||
switch_button: "Switch to %{plan} — %{price}"
|
||||
upgrade_info_line: "Upgrade (higher plan or switch to annual billing): the difference is charged immediately to the saved Stripe card."
|
||||
downgrade_info_line: "Downgrade between paid plans (e.g. Full → Light): the new plan takes effect from the next renewal; until then the current plan's features remain, with no additional charge now."
|
||||
already_requested_line: "You already requested %{plan} from %{when}: until then %{current_plan} stays active."
|
||||
regia:
|
||||
meta_title_fallback: "Control room — Match Live TV"
|
||||
title: "Control room — %{home} vs %{away}"
|
||||
subtitle_prefix: "Control room ·"
|
||||
status:
|
||||
ended: Ended
|
||||
paused: Paused
|
||||
live: Live
|
||||
waiting: Waiting
|
||||
live_share_label: "Live link (viewers)"
|
||||
share_live: Share live link
|
||||
copy_link: Copy link
|
||||
regia_share_label: "Control room link (score)"
|
||||
share_regia: Share control room link
|
||||
preview_ended: Stream ended
|
||||
preview_waiting: Waiting for signal…
|
||||
pause: Pause stream
|
||||
resume: Resume stream
|
||||
stop: End stream
|
||||
modal:
|
||||
set_won_title: Set won
|
||||
confirm: Close set
|
||||
cancel: Cancel
|
||||
board:
|
||||
next_period: Next quarter
|
||||
next_half: Next half
|
||||
close_set: Close set
|
||||
free_score: Free score
|
||||
stopwatch: Stopwatch
|
||||
generic_score: Score
|
||||
start: Start
|
||||
pause: Pause
|
||||
reset: Reset
|
||||
points_suffix: pts
|
||||
partials_prefix: "Partials:"
|
||||
set_label: "Set %{number}"
|
||||
js:
|
||||
period_updated: Period updated
|
||||
now_in_period: "Now in %{period}"
|
||||
set_won_body: "%{winner} won the set. Close the set?"
|
||||
match_won_title: Match won
|
||||
match_won_body: "%{winner} won the match. Close the stream?"
|
||||
close_set_confirm: Confirm closing the current set?
|
||||
score_update_error: Score update error
|
||||
generic_error: Error
|
||||
sets_line: "Set %{current} · Sets won %{home}-%{away}"
|
||||
quarter_label: "Q%{n}"
|
||||
half_label: "Half %{n}"
|
||||
overtime_basket: "OT%{n}"
|
||||
overtime_other: OT
|
||||
unknown_period: "—"
|
||||
resumed: Stream resumed
|
||||
paused_cover: "Stream paused — cover on air"
|
||||
closed: Stream closed
|
||||
resume_error: Error resuming the stream
|
||||
pause_error: Error pausing the stream
|
||||
close_error: Error closing
|
||||
close_confirm: Permanently close the live stream?
|
||||
link_unavailable: Link not available
|
||||
link_copied: Link copied
|
||||
copy_prompt: "Copy the link:"
|
||||
share_regia_text: "Open this link to manage the live score:"
|
||||
share_live_text: "Watch the live stream on Match Live TV:"
|
||||
recordings:
|
||||
archive:
|
||||
back_prefix: "←"
|
||||
heading: Replay archive
|
||||
admin_suffix: (admin)
|
||||
lead_html: "Manage recordings, visibility and downloads. <strong>Private</strong> = unlisted link, doesn't appear on the public <code>/replay</code> page. Deleting a replay also removes the files on the server and the linked YouTube video."
|
||||
kpi_available: Replays available
|
||||
kpi_expiring: "Expiring soon (7 days)"
|
||||
kpi_space: Storage used
|
||||
kpi_views: Total views
|
||||
team_label: Team
|
||||
team_all: All
|
||||
status_label: Status
|
||||
status_all: All
|
||||
status_ready: Available
|
||||
status_processing: Processing
|
||||
status_expired: Expired / error
|
||||
col_preview: Preview
|
||||
col_match: Match
|
||||
col_team: Team
|
||||
col_details: Details
|
||||
col_status: Status and visibility
|
||||
col_actions: Actions
|
||||
watch_replay: Watch replay
|
||||
processing_title: Processing in progress
|
||||
not_available_title: Replay not available
|
||||
views_suffix: views
|
||||
expires_prefix: Expires
|
||||
expires_days: "(%{count} days)"
|
||||
no_expiry: No expiry
|
||||
new_expiry_title: New expiry date
|
||||
save: Save
|
||||
extend_days: "+%{count} days"
|
||||
extend_title: "Extend the expiry by %{count} days"
|
||||
privacy_public: Public
|
||||
privacy_private: Private
|
||||
privacy_hint_public: "Visible to everyone — click to make private"
|
||||
privacy_hint_private: "Link only — click to make public"
|
||||
download_mp4: MP4
|
||||
download_mp4_title: Download MP4
|
||||
publish_youtube: "YT"
|
||||
publish_youtube_title: Publish to YouTube
|
||||
open_youtube_title: Open on YouTube
|
||||
delete_title: Delete replay
|
||||
delete_confirm: Choose where to delete the replay. This action cannot be undone.
|
||||
no_recordings: No recordings for the selected filters.
|
||||
confirm:
|
||||
choice_title: What do you want to delete?
|
||||
choice_message: Choose where to remove the replay from. This action cannot be undone.
|
||||
choice_site_label: Site only
|
||||
choice_site_hint_with_youtube: The video stays on YouTube
|
||||
choice_site_hint_only: Removes the files from the site
|
||||
choice_youtube_label: YouTube only
|
||||
choice_youtube_hint_with_site: Stays available on the site
|
||||
choice_youtube_hint_only: Removes only the YouTube video
|
||||
choice_both_label: Site and YouTube
|
||||
choice_both_hint: Complete deletion
|
||||
youtube_title: Delete from YouTube?
|
||||
youtube_message: The video will be removed from YouTube. The replay will remain available on the site.
|
||||
youtube_ok: Delete from YouTube
|
||||
site_title: Delete from the site?
|
||||
site_message_with_youtube: The replay will be removed from the site. The video on YouTube will stay online.
|
||||
site_message_only: You're about to permanently delete this replay from the site. This action cannot be undone.
|
||||
site_ok: Delete from site
|
||||
status:
|
||||
deleted: Deleted
|
||||
expired: Expired
|
||||
failed: Error
|
||||
processing: Processing
|
||||
expiring_soon: Expiring soon
|
||||
available: Available
|
||||
flash:
|
||||
web_base:
|
||||
login_required: Please log in to continue
|
||||
access_denied: Access not allowed
|
||||
clubs:
|
||||
already_registered: You've already registered a club
|
||||
created: Club and first team created.
|
||||
updated: Club updated.
|
||||
complete_billing_first: Complete your billing details before activating a premium plan.
|
||||
comped_change_denied: "This plan is a complimentary subscription managed by Match Live TV. To switch to a paid subscription, contact support."
|
||||
stripe_not_configured: Payments not configured on the server yet
|
||||
already_on_plan: "You're already on %{plan} (%{price})."
|
||||
change_already_scheduled: "The switch to %{plan} is already scheduled from %{date}."
|
||||
stripe_error: "Stripe error: %{message}"
|
||||
youtube_oauth_not_configured: YouTube OAuth not configured on the server
|
||||
youtube_disconnected: Club YouTube channel disconnected
|
||||
portal_not_configured: Payment portal not configured
|
||||
checkout_success: "Payment completed! Active plan: %{plan}."
|
||||
checkout_canceled: Payment canceled. No charge was made.
|
||||
club_billing:
|
||||
profile_saved_proceed_payment: Details saved. Proceed with payment.
|
||||
profile_updated: Billing details updated.
|
||||
stripe_not_configured: Stripe not configured.
|
||||
subscription_canceled: "Subscription canceled. It stays active until %{date}; from that day you'll switch to the Free plan."
|
||||
stripe_error: "Stripe error: %{message}"
|
||||
invoice_pdf_unavailable: Invoice PDF not available.
|
||||
club_recordings:
|
||||
not_authorized: Not authorized
|
||||
teams:
|
||||
added: "Team «%{name}» added."
|
||||
updated: Team updated.
|
||||
now_staff: Your account is now a broadcast manager.
|
||||
staff_role_removed: Staff role removed from your account.
|
||||
invite_link_generated: "Invite link generated (valid for 7 days)"
|
||||
access_revoked: Access revoked
|
||||
invitation_canceled: Invitation canceled
|
||||
youtube_disconnected: Club YouTube channel disconnected
|
||||
matches:
|
||||
scheduled: "Match scheduled: %{opponent}. Start streaming from the app once you're at the venue."
|
||||
updated: Match updated.
|
||||
close_live_before_delete: Close the live stream before deleting this match.
|
||||
deleted: Match deleted.
|
||||
schedule_denied: Only a broadcast manager or the club owner can schedule matches.
|
||||
club_matches:
|
||||
invalid_team: Select a valid team.
|
||||
scheduled: "Match scheduled: %{team} vs %{opponent}."
|
||||
no_schedulable_teams: You don't have permission to schedule matches in this club.
|
||||
team_roster_members:
|
||||
added: "%{name} added to the roster."
|
||||
updated: Profile updated.
|
||||
removed: "%{name} removed from the roster."
|
||||
invitations:
|
||||
invalid_or_expired: Invalid or expired invitation
|
||||
invalid: Invalid invitation
|
||||
wrong_email: "This invitation is for %{email}"
|
||||
joined_team: You've joined the team!
|
||||
signup_to_accept: "Sign up with %{email} to accept the invitation"
|
||||
registrations:
|
||||
accept_terms_required: You must accept the privacy policy and terms of service to register.
|
||||
welcome_to_team: Welcome to the team!
|
||||
account_created: Account created. Now register your club.
|
||||
sessions:
|
||||
welcome_back: Welcome back!
|
||||
invalid_credentials: Invalid email or password
|
||||
logged_out: Logged out
|
||||
password_resets:
|
||||
email_sent: If the email is registered, you'll receive a password reset link shortly.
|
||||
invalid_or_expired_link: Invalid or expired link. Request a new password reset.
|
||||
password_min_length: Password must be at least 8 characters
|
||||
password_mismatch: Passwords don't match
|
||||
password_updated: Password updated. You can now log in.
|
||||
replay:
|
||||
download_unavailable: Download not available
|
||||
not_available: Replay not available
|
||||
live:
|
||||
index:
|
||||
meta_title: "Live youth matches happening now — Match Live TV"
|
||||
meta_description: "Watch live streams of youth matches happening right now and upcoming scheduled games. Search for your team and open the link with no app to install."
|
||||
club_back_link: "← %{name}"
|
||||
club_title: "Live streams and matches — %{name}"
|
||||
club_hint: "Only teams from this club: streams in progress and matches scheduled from the app or website."
|
||||
club_replay_link: "%{name} replays"
|
||||
default_title: "Live streams and upcoming matches"
|
||||
default_hint: "Search by club, team, opponent or venue: find active streams and scheduled matches."
|
||||
replay_archive_link: "Past live streams — replay archive"
|
||||
schedule_match_link: "Schedule a match"
|
||||
search_placeholder_club: "Search club, team, opponent or venue…"
|
||||
search_placeholder_default: "E.g. Crazy Volley, Serie D, opponent…"
|
||||
search_aria_label: "Search team"
|
||||
search_button: "Search"
|
||||
reset_link: "Reset"
|
||||
results_hint: "Results for «%{query}»%{club_suffix}: %{live_count} live · %{upcoming_count} upcoming"
|
||||
results_hint_club_suffix: " in %{name}"
|
||||
section_live_now: "Live now"
|
||||
badge_on_air: "On air"
|
||||
badge_live: "Live"
|
||||
badge_paused: "Paused"
|
||||
badge_reconnecting: "Reconnecting"
|
||||
badge_starting: "Starting"
|
||||
badge_scheduled: "Scheduled"
|
||||
watch_link: "Watch live →"
|
||||
section_upcoming: "Upcoming matches"
|
||||
upcoming_hint: "Scheduled from the app or website: the stream will start once staff begin broadcasting."
|
||||
empty_soft_title: "No live stream right now."
|
||||
empty_soft_body: "Check back at the scheduled time: once the team starts streaming, the match will appear under «Live now»."
|
||||
empty_club_title: "No live streams or scheduled matches for %{name}."
|
||||
empty_club_schedule_link: "Schedule the first match"
|
||||
empty_club_schedule_suffix: " or from the Match Live TV app."
|
||||
empty_club_ask_staff: "Ask the club owner or a streaming manager to schedule a match."
|
||||
empty_club_add_team_html: "Add a team from the %{club_link} and schedule the first match."
|
||||
empty_club_page_link: "club page"
|
||||
empty_club_back_link: "← Back to the club"
|
||||
empty_hero_title: "No live stream right now — but you can already get organized"
|
||||
empty_hero_body: "If your team uses Match Live TV, the match can be scheduled from the phone with a date and time. Parents and relatives will find the stream here as kick-off approaches."
|
||||
empty_hero_list_item1: "Schedule the game from the app (without starting the stream right away)"
|
||||
empty_hero_list_item2: "The match appears under «Upcoming matches» with time and venue"
|
||||
empty_hero_list_item3: "Streaming only starts when you press start in the gym"
|
||||
empty_hero_cta_signup: "Register your team"
|
||||
empty_hero_cta_features: "See how it works"
|
||||
demo_aria_label: "Example of an active live stream"
|
||||
demo_label: "Example — this is how an active stream looks"
|
||||
demo_meta: "PalaTigers · Match Live TV"
|
||||
demo_sets: "Set 2 · Sets won 1-0"
|
||||
show:
|
||||
back_to_all: "← All live streams"
|
||||
title: "%{club_name} · %{team_name} vs %{opponent_name} — Live stream"
|
||||
meta_description: "Follow %{club_name} live — %{team_name} vs %{opponent_name}%{location}. Watch from your browser, no app to install."
|
||||
meta_description_location: " — %{location}"
|
||||
stream_ended_title: "Live stream ended"
|
||||
stream_ended_body: "The stream for this match has been closed."
|
||||
stream_ended_closed_at: "Closed on %{date}"
|
||||
stream_ended_hint: "The score is visible in the video if the stream was still in progress."
|
||||
stream_ended_reload_hint: "Reload the page for the last recorded status."
|
||||
all_live_link: "All live streams"
|
||||
youtube_title: "Live on YouTube"
|
||||
youtube_available_body: "This match is broadcast on the Match Live TV YouTube channel, not on the site player."
|
||||
youtube_watch_link: "Watch on YouTube"
|
||||
youtube_preparing_body: "We're preparing the stream on the YouTube channel. Refresh in a few seconds."
|
||||
youtube_hint: "Only share the YouTube link with fans and the club."
|
||||
play_hint: "▶ Start the stream"
|
||||
offline_msg: "The stream isn't available yet. It updates automatically once it's back on air."
|
||||
awaiting_msg: "Waiting for the signal from the phone — open the camera in the app and check the stream has started (not paused)."
|
||||
paused_msg: "Broadcast paused — the stream continues (server cover)."
|
||||
js_reconnecting_awaiting: "Reconnecting - waiting for video from the event"
|
||||
overlays:
|
||||
badge_ended: "Ended"
|
||||
badge_waiting: "Waiting"
|
||||
replay:
|
||||
index:
|
||||
meta_title: "Replay — Match Live TV"
|
||||
meta_description: "Replay archive of sports live streams on Match Live TV. Search by club, team or opponent."
|
||||
back_to_live: "← Live streams"
|
||||
title: "Past live streams"
|
||||
hint: "Public replays from sports clubs — covers matches already broadcast."
|
||||
search_placeholder: "E.g. Tigers Volley, opponent, club, venue…"
|
||||
search_aria_label: "Search replays"
|
||||
search_button: "Search"
|
||||
reset_link: "Reset"
|
||||
club_filter_label: "Club"
|
||||
club_filter_all: "All clubs"
|
||||
results_hint: "Results for «%{query}»%{club_suffix}: %{count} replays"
|
||||
results_hint_club_suffix: " · %{name}"
|
||||
empty_filtered_title: "No replays found"
|
||||
empty_filtered_suffix: " with the selected filters."
|
||||
empty_filtered_show_all: "Show all public replays"
|
||||
empty_default_title: "No public replays right now."
|
||||
empty_default_body: "When a club makes a recording public, it will appear here."
|
||||
empty_default_live_link: "Go to live streams"
|
||||
show:
|
||||
title: "Replay — %{title}"
|
||||
meta_description: "Replay %{title} on Match Live TV."
|
||||
back_to_replays: "← Past live streams"
|
||||
processing_title: "Replay processing"
|
||||
processing_body: "The recording is being prepared. You'll get an email when it's ready."
|
||||
badge_label: "REPLAY"
|
||||
meta_line_duration: "Duration %{value}"
|
||||
meta_line_until: "Until %{date}"
|
||||
meta_line_public: "Public"
|
||||
meta_line_private: "Private (link)"
|
||||
download_link: "Download MP4"
|
||||
youtube_link: "Open on YouTube"
|
||||
youtube_only_body: "Replay on YouTube (no server copy available)."
|
||||
file_missing_title: "File not available"
|
||||
file_missing_body: "The video is no longer on the server (archive removed or migrating)."
|
||||
file_missing_meta: "Recorded duration: %{duration} · %{size}"
|
||||
failed_title: "Replay not available"
|
||||
failed_default_body: "Error processing the recording."
|
||||
unavailable_title: "Replay not available"
|
||||
unavailable_body: "This recording is no longer accessible."
|
||||
team_pages:
|
||||
index:
|
||||
meta_title: "Teams on Match Live TV — Youth sports live streams and replays"
|
||||
meta_description: "Discover the youth sports teams broadcasting on Match Live TV. Search by name, filter by sport, find live streams in progress and replay archives."
|
||||
heading: "Teams on Match Live TV"
|
||||
hint: "Clubs and teams with live streams, public replays or scheduled matches. Search for your team and open the page to follow the schedule and archive."
|
||||
search_placeholder: "Team name, club, city or gym…"
|
||||
search_aria_label: "Search team"
|
||||
search_button: "Search"
|
||||
sport_label: "Sport"
|
||||
sport_all: "All sports"
|
||||
chips_label: "Show"
|
||||
chip_live: "Live"
|
||||
chip_replays: "With replays"
|
||||
reset_link: "Reset"
|
||||
results_found: "%{count} teams found"
|
||||
results_active: "%{count} active teams"
|
||||
results_query_suffix: " for «%{query}»"
|
||||
results_sport_suffix: " · %{sport}"
|
||||
badge_live: "Live"
|
||||
badge_upcoming: "%{count} upcoming"
|
||||
badge_replay: "%{count} replays"
|
||||
empty_filtered_title: "No teams found"
|
||||
empty_filtered_suffix: " with the selected filters."
|
||||
empty_filtered_show_all: "Show all active teams"
|
||||
empty_default_title: "No active teams right now."
|
||||
empty_default_body: "When a club starts streaming or publishes replays, it will appear here."
|
||||
empty_default_live_link: "Go to live streams"
|
||||
footer_live_link: "Live streams in progress"
|
||||
footer_replay_link: "Replay archive"
|
||||
show:
|
||||
title: "%{team} — %{club} | Match Live TV"
|
||||
meta_description: "Follow %{team} (%{club}): live streams, match schedule and replays on Match Live TV."
|
||||
breadcrumb_all_teams: "← All teams"
|
||||
live_now_label: "Live now"
|
||||
watch_live_link: "Watch the live stream"
|
||||
all_live_link: "All live streams"
|
||||
replay_archive_link: "Replay archive"
|
||||
section_live_now: "Live now"
|
||||
section_upcoming: "Upcoming matches"
|
||||
upcoming_hint: "Scheduled by the club: the stream will start once staff begin broadcasting."
|
||||
section_replays: "Recent replays"
|
||||
replays_more_link: "See all %{team} replays →"
|
||||
section_roster: "Roster"
|
||||
empty_title: "No live streams or replays right now."
|
||||
empty_body: "Check back before the next games: live streams, schedule and the team archive will appear here."
|
||||
empty_link: "See all live streams"
|
||||
score:
|
||||
timer_label: "Timer"
|
||||
generic_label: "Score"
|
||||
sets_label: "Set %{set} · Sets won %{home}-%{away}"
|
||||
partial_entry: "Set %{set} %{home}-%{away}"
|
||||
partial_entry_no_number: "Set %{home}-%{away}"
|
||||
partials_prefix: "Partials: %{value}"
|
||||
points_label: "%{team} %{home} - %{away} %{opponent}"
|
||||
fallback: "—"
|
||||
default_club_name: "Club"
|
||||
scheduled_date_format: "%d/%m/%Y at %H:%M"
|
||||
scheduled_today: "Today at %{time}"
|
||||
scheduled_tomorrow: "Tomorrow at %{time}"
|
||||
@@ -0,0 +1,786 @@
|
||||
es:
|
||||
club:
|
||||
back_to_club: "← Club"
|
||||
sport_label: Deporte principal
|
||||
branding_legend: Logo y colores del club
|
||||
branding:
|
||||
legend: Identidad visual
|
||||
inherit_hint: Déjalo vacío para usar el logo y los colores del club.
|
||||
logo_file_label: Logo (imagen)
|
||||
logo_preview_alt: Vista previa del logo
|
||||
no_logo_placeholder: "Sin logo — elige un archivo para la vista previa"
|
||||
logo_url_label: Logo (URL alternativa)
|
||||
primary_color_label: Color principal
|
||||
secondary_color_label: Color secundario
|
||||
choose_color: Elegir color
|
||||
quick_colors: Colores rápidos
|
||||
header_preview_label: Vista previa del encabezado
|
||||
name_placeholder: Nombre del club / equipo
|
||||
dashboard:
|
||||
title: "%{name} — Club"
|
||||
plan_label: "Plan:"
|
||||
teams_count_label: "Equipos:"
|
||||
edit_club: Editar club
|
||||
subscription: Suscripción
|
||||
new_team: Nuevo equipo
|
||||
live_streams: Directos
|
||||
replay_archive: Archivo de repeticiones
|
||||
replay_heading: Repetición
|
||||
available: disponibles
|
||||
expiring_soon: "por caducar (7 días)"
|
||||
space_used: espacio usado
|
||||
views: visualizaciones
|
||||
teams_heading: Equipos
|
||||
team_col: Equipo
|
||||
branding_col: Imagen de marca
|
||||
branding_custom: Personalizado
|
||||
branding_inherited: Hereda del club
|
||||
public_page: Página pública
|
||||
details: Detalles
|
||||
matches: Partidos
|
||||
edit: Editar
|
||||
no_teams_html: "Aún no hay equipos. %{link}."
|
||||
add_first_team: Añade el primero
|
||||
footer_note: "Cada equipo tiene sus propios responsables de transmisión. El marcador desde otro teléfono usa el enlace de control (sin cuenta). La suscripción cubre todo el club."
|
||||
edit:
|
||||
title: "Editar club — %{name}"
|
||||
heading: Editar club
|
||||
name_label: Nombre del club
|
||||
save: Guardar
|
||||
new:
|
||||
title: "Registrar un club — Match Live TV"
|
||||
meta_description: Crea tu club deportivo y su primer equipo en Match Live TV.
|
||||
heading: Tu club
|
||||
lead: "Registra el club: podrás añadir más equipos (Sub-13, Sub-15, Serie C…)."
|
||||
section_club: Club
|
||||
name_label: Nombre del club
|
||||
name_placeholder: "ej. Crazy Volley Rozzano"
|
||||
section_first_team: Primer equipo
|
||||
default_first_team_name: Primer equipo
|
||||
first_team_name_label: Nombre del equipo
|
||||
first_team_name_placeholder: "ej. Sub-15"
|
||||
plan_label: "Plan inicial (para todo el club)"
|
||||
plan_free: "Free — 1 responsable de transmisión por equipo, 1 directo"
|
||||
plan_light: Premium Light
|
||||
plan_full: Premium Full
|
||||
interval_label: Facturación premium
|
||||
interval_yearly: "Anual — 40 €/año (Light) o 200 €/año (Full)"
|
||||
interval_monthly: "Mensual — 5 €/mes (Light) o 20 €/mes (Full)"
|
||||
submit: Crear club
|
||||
billing:
|
||||
title: "Suscripción — %{name}"
|
||||
comped:
|
||||
title: Suscripción de cortesía de Match Live TV
|
||||
plan_prefix: "— plan"
|
||||
no_payment_html: "No se requiere ningún pago. Para cambios o para pasar a un plan de pago, contacta con %{email_link}."
|
||||
youtube:
|
||||
heading: YouTube Live
|
||||
connected_notice: Canal de YouTube del club conectado correctamente.
|
||||
light_body_html: "Con el plan <strong>Premium Light</strong>, los directos de YouTube de todos los equipos se emiten en el canal oficial <strong>Match Live TV</strong>. No es necesario conectar un canal del club."
|
||||
light_ready: "Canal listo · selecciona «YouTube Live» en la app móvil."
|
||||
light_configuring: El canal de Match Live TV se está configurando en el servidor. Contacta con soporte si YouTube no aparece en la app.
|
||||
full_connected_html: "Canal conectado para <strong>todo el club</strong>: <strong>%{channel}</strong>"
|
||||
full_connected_hint: Todos los equipos pueden transmitir a este canal cuando eligen el canal del club en la app.
|
||||
disconnect: Desconectar canal
|
||||
disconnect_confirm: "¿Desconectar el canal de YouTube? Los directos usarán el canal de Match Live TV hasta que vuelvas a conectar el tuyo."
|
||||
full_not_connected_html: "Sin un canal conectado, los directos de YouTube desde la app se emiten en el canal oficial <strong>Match Live TV</strong>. Conecta aquí el canal de YouTube del club (aplica a todos los equipos)."
|
||||
ready_in_app: "YouTube listo en la app (canal de Match Live TV hasta que conectes el tuyo)."
|
||||
connect: Conectar el canal de YouTube del club
|
||||
oauth_not_configured: OAuth de YouTube aún no configurado en el servidor.
|
||||
requires_full: YouTube en el canal del club requiere el plan Premium Full.
|
||||
see_plans: Ver planes
|
||||
team:
|
||||
back_to_details: "← Detalles del equipo"
|
||||
sport_label: Deporte
|
||||
details:
|
||||
title: "Detalles — %{name}"
|
||||
meta_description: "Detalles del equipo %{name} en Match Live TV."
|
||||
nav_aria: Ruta de navegación del equipo
|
||||
edit_team: Editar equipo
|
||||
plan_label: "Plan:"
|
||||
plan_scope_club: (club)
|
||||
staff_label: "Responsables de transmisión:"
|
||||
active_matches_label: "Partidos activos:"
|
||||
unlimited: ilimitados
|
||||
no_description: Sin descripción todavía.
|
||||
add_description_link: Añádela desde editar equipo
|
||||
roster_count_label: en la plantilla
|
||||
no_photo: Foto del equipo aún no cargada
|
||||
add_photo_link: Añádela desde editar equipo
|
||||
public_page: Página pública
|
||||
streaming_managers: Responsables de transmisión
|
||||
schedule_matches: Programar partidos
|
||||
live_streams: Directos
|
||||
no_people_in_category: Nadie en esta categoría todavía.
|
||||
youtube_hint_html: "El canal de YouTube del club se configura desde la página %{club_link} (sección YouTube Live)."
|
||||
footer_note: Usa la app móvil con las mismas credenciales para iniciar partidos y directos.
|
||||
edit:
|
||||
title: "Editar equipo — %{name}"
|
||||
club_label: "Club:"
|
||||
name_label: Nombre del equipo
|
||||
description_label: Descripción del equipo
|
||||
description_placeholder: "Presentación del equipo, palmarés, objetivos de la temporada…"
|
||||
photo_label: "Foto del equipo (grupo o escudo)"
|
||||
photo_alt: Foto del equipo
|
||||
branding_legend: Imagen de marca del equipo (personalización)
|
||||
slug_label: Dirección de la página pública
|
||||
slug_hint_html: "Padres y aficionados encuentran el equipo en <strong>%{base_url}/squadre/%{slug}</strong>"
|
||||
slug_title: "Solo letras minúsculas, números y guiones"
|
||||
roster_public_label: Mostrar la plantilla en la página pública
|
||||
roster_public_hint: Si está activado, jugadores y staff son visibles para cualquiera con el enlace. Puedes dejarlo desactivado por privacidad.
|
||||
club_colors_label: "Colores del club:"
|
||||
submit: Guardar equipo
|
||||
new:
|
||||
title: "Nuevo equipo — %{name}"
|
||||
heading: Nuevo equipo
|
||||
club_label: "Club:"
|
||||
name_label: Nombre del equipo
|
||||
name_placeholder: "ej. Sub-13, Serie C"
|
||||
branding_legend: Personalización de imagen de marca (opcional)
|
||||
submit: Añadir equipo
|
||||
invite:
|
||||
title: "Staff de transmisión — %{name}"
|
||||
heading: Responsables de transmisión
|
||||
assigned_label: "Asignados:"
|
||||
per_team_note: (por equipo, renovación anual)
|
||||
info: "El responsable de transmisión inicia el directo desde la app (cámara en trípode). Para el marcador desde un segundo teléfono no hace falta cuenta: comparte el <strong>enlace de control</strong> desde la pantalla de transmisión (WhatsApp, correo, SMS, etc.)."
|
||||
self_assign_hint_html: "<strong>%{email}</strong> — puedes encargarte tú de la cámara y el marcador, o invitar a otros para la transmisión."
|
||||
self_assign_submit: Yo me encargo — responsable de transmisión
|
||||
invite_other_heading: Invitar a otro correo
|
||||
email_label: Correo del responsable de transmisión
|
||||
submit: Generar enlace de acceso
|
||||
share_hint: "Comparte (válido 7 días):"
|
||||
billing:
|
||||
title: "Suscripción — %{name}"
|
||||
team_label: "Equipo:"
|
||||
current_plan_label: "Plan actual:"
|
||||
staff_line: "Staff de transmisión: %{count} / año"
|
||||
matches_line: "Partidos: %{count} simultáneos"
|
||||
replay_line: "Repetición: %{value}"
|
||||
replay_days: "%{count} días"
|
||||
replay_none: "no"
|
||||
youtube_line: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: canal del club
|
||||
youtube_none: "no"
|
||||
current_plan: Plan actual
|
||||
manage_club_subscription: Gestionar suscripción del club
|
||||
stripe_not_configured: Stripe no configurado
|
||||
contact_lead: "¿Necesidades diferentes?"
|
||||
contact_cta: Contáctanos
|
||||
contact_trailer: para una oferta a medida.
|
||||
club_payments_link: Pagos y facturas del club
|
||||
streaming_staff:
|
||||
self_account_heading: "Tu cuenta (%{email})"
|
||||
self_account_hint: "Puedes gestionar la transmisión desde la app. Para el marcador desde otro teléfono, comparte el <strong>enlace de control</strong> durante el directo (no hace falta una segunda cuenta)."
|
||||
self_assign_submit: Yo me encargo — responsable de transmisión
|
||||
staff_heading: Responsables de transmisión (app)
|
||||
col_name: Nombre
|
||||
col_email: Correo
|
||||
col_role: Rol
|
||||
role_transmission: Transmisión
|
||||
you_suffix: (tú)
|
||||
clear_self_staff: Quitar rol de staff
|
||||
clear_self_staff_confirm: "¿Quitar el rol de staff de tu cuenta?"
|
||||
revoke: Revocar
|
||||
revoke_confirm: "¿Revocar el acceso a %{name}?"
|
||||
no_staff: Aún no hay responsables de transmisión.
|
||||
invite_someone: Invitar a alguien
|
||||
pending_invitations_heading: Invitaciones pendientes
|
||||
col_email_short: Correo
|
||||
col_expires: Caduca
|
||||
cancel_invitation: Cancelar
|
||||
no_pending: No hay solicitudes pendientes.
|
||||
archive_heading: Archivo de repeticiones
|
||||
col_match: Partido
|
||||
col_date: Fecha
|
||||
col_duration: Duración
|
||||
col_expiry: Caducidad
|
||||
col_status: Estado
|
||||
watch: Ver
|
||||
manage_all_replays: Gestionar todas las repeticiones
|
||||
no_recordings: Aún no hay repeticiones. Las grabaciones aparecen aquí al terminar los directos Premium.
|
||||
matches:
|
||||
back_to_list: "← Lista de partidos"
|
||||
opponent_label: Rival
|
||||
opponent_placeholder: "ej. Volley Milano"
|
||||
location_label: "Lugar (opcional)"
|
||||
location_placeholder: "Pabellón, ciudad"
|
||||
datetime_label: Fecha y hora
|
||||
form_hint: "El directo no se inicia solo: aparecerá en la app y en el sitio web. Iniciarás la transmisión desde tu teléfono cuando estés en el lugar."
|
||||
edit:
|
||||
title: "Editar partido — %{name}"
|
||||
heading: Editar partido
|
||||
submit: Guardar cambios
|
||||
new:
|
||||
title: "Programar partido — %{name}"
|
||||
heading: Programar partido
|
||||
submit: Guardar en el calendario
|
||||
index:
|
||||
title: "Partidos — %{name}"
|
||||
heading: "Partidos — %{name}"
|
||||
lead: "Programa aquí desde el ordenador la fecha, el rival y el lugar. Cuando estés en el pabellón, abre la app Match Live TV, selecciona este equipo e inicia el directo del partido."
|
||||
schedule_match: Programar partido
|
||||
team_details: Detalles del equipo
|
||||
live_and_schedule: Directos y calendario
|
||||
col_opponent: Rival
|
||||
col_datetime: "Fecha y hora"
|
||||
col_location: Lugar
|
||||
col_status: Estado
|
||||
no_time: Sin horario
|
||||
no_location: "—"
|
||||
edit: Editar
|
||||
delete: Eliminar
|
||||
delete_confirm: "¿Eliminar este partido?"
|
||||
empty_html: "Aún no hay partidos programados. %{link}."
|
||||
schedule_first: Programa el primero
|
||||
club_new:
|
||||
title: "Programar partido — %{name}"
|
||||
back_link: "← Directos y partidos"
|
||||
heading: Programar partido
|
||||
admin_hint: "· Puedes elegir cualquier equipo del club"
|
||||
staff_hint: "· Solo los equipos donde eres responsable de transmisión"
|
||||
team_label: Equipo
|
||||
submit: Guardar en el calendario
|
||||
status:
|
||||
active: En curso / por reanudar
|
||||
scheduled: Programado
|
||||
ready: Listo
|
||||
no_time: Sin horario
|
||||
roster:
|
||||
back_to_details: "← Detalles del equipo"
|
||||
category:
|
||||
staff: Staff
|
||||
coach: Entrenadores
|
||||
manager: Directivos
|
||||
player: Jugadores
|
||||
role:
|
||||
coach: Entrenador
|
||||
manager: Directivo
|
||||
staff: Staff
|
||||
player: Jugador
|
||||
player_numbered: "Jugador n.º %{number}"
|
||||
errors:
|
||||
role_invalid: no es un rol válido para este deporte
|
||||
photo_invalid_type: debe ser PNG, JPEG o WebP
|
||||
role_select_blank: "— Selecciona un rol —"
|
||||
edit:
|
||||
title: "Editar — %{name}"
|
||||
member_form:
|
||||
edit_heading: Editar ficha
|
||||
new_heading: Añadir persona
|
||||
lead: Completa los campos y guarda para actualizar la plantilla.
|
||||
category_label: Grupo
|
||||
full_name_label: Nombre y apellidos
|
||||
full_name_placeholder: "ej. Mario Rossi"
|
||||
role_player_label: Posición en el campo
|
||||
role_other_label: "Rol (opcional)"
|
||||
role_other_placeholder: "ej. Entrenador principal, Presidente, Fisioterapeuta"
|
||||
jersey_label: Número de camiseta
|
||||
jersey_placeholder: "ej. 7"
|
||||
bio_label: Descripción breve
|
||||
bio_placeholder: "Breve presentación para la ficha…"
|
||||
photo_label: Foto
|
||||
photo_hint: Sin foto se mostrará un avatar con los colores del equipo.
|
||||
submit_edit: Guardar ficha
|
||||
submit_new: Añadir a la plantilla
|
||||
person_card:
|
||||
edit: Editar
|
||||
remove: Quitar
|
||||
remove_confirm: "¿Quitar a %{name} de la plantilla?"
|
||||
billing:
|
||||
heading: Suscripción
|
||||
entity_types:
|
||||
company: "Club / entidad con NIF/CIF"
|
||||
individual: Persona física
|
||||
nonprofit: Asociación sin ánimo de lucro
|
||||
profile_errors:
|
||||
entity_type: Tipo de titular
|
||||
legal_name: Razón social o nombre del titular
|
||||
email: Correo de facturación
|
||||
address: Dirección
|
||||
city: Ciudad
|
||||
province: "Provincia (código de 2 letras)"
|
||||
postal_code: Código postal
|
||||
country: "País (ISO)"
|
||||
vat_number: NIF/CIF
|
||||
fiscal_code: Código fiscal
|
||||
vat_or_fiscal: NIF/CIF o código fiscal
|
||||
sdi_or_pec: "Código destinatario SDI (7 caracteres) o correo certificado (PEC)"
|
||||
sdi_invalid: "Código destinatario SDI (7 caracteres)"
|
||||
actions:
|
||||
current_plan: Plan actual
|
||||
contact_for_free: "Para pasar al plan Free, contacta con soporte."
|
||||
stripe_not_configured: Stripe no configurado
|
||||
stripe_prices_not_configured: Precios de Stripe no configurados
|
||||
complete_billing_prefix: Completa tus datos de facturación antes de activar un plan premium.
|
||||
profile_incomplete_default: Completa tus datos de facturación antes de activar un plan premium.
|
||||
profile_missing: "Faltan: %{fields}."
|
||||
profile:
|
||||
title: "Datos de facturación — %{name}"
|
||||
heading: Datos de facturación
|
||||
lead: "Club: %{name}. Introduce los datos para el encabezado de las facturas y el envío por SDI o PEC."
|
||||
required_notice: Obligatorios para suscribirte a un plan premium.
|
||||
after_save_hint_html: "Después de guardar podrás proceder al pago de <strong>%{plan}</strong>."
|
||||
submit: Guardar datos de facturación
|
||||
back_to_billing: "← Suscripción"
|
||||
fields:
|
||||
legend: Datos de facturación
|
||||
legend_hint: "Todos los campos marcados son obligatorios para suscribirte a un plan premium y para emitir facturas. Los clubes necesitan NIF/CIF; las personas físicas, el código fiscal. Necesitas SDI o correo certificado (PEC). Los pagos siguen gestionados de forma segura por Stripe."
|
||||
entity_type_label: "Tipo de titular *"
|
||||
legal_name_label: "Razón social / nombre y apellidos *"
|
||||
legal_name_placeholder: "ej. ASD Tigers Volley"
|
||||
vat_number_label: "NIF/CIF * (club)"
|
||||
fiscal_code_label: "Código fiscal * (persona física)"
|
||||
fiscal_code_placeholder: RSSMRA80A01H501U
|
||||
email_label: "Correo de facturación *"
|
||||
email_placeholder: administracion@club.es
|
||||
phone_label: "Teléfono (opcional)"
|
||||
address_label: "Dirección *"
|
||||
address_placeholder: "Calle Roma 1"
|
||||
city_label: "Ciudad *"
|
||||
province_label: "Prov. *"
|
||||
province_placeholder: MI
|
||||
postal_code_label: "Código postal *"
|
||||
country_label: "País (ISO) *"
|
||||
recipient_code_label: "Código destinatario SDI (7 car.) *"
|
||||
recipient_code_placeholder: XXXXXXX
|
||||
pec_label: "PEC (alternativa a SDI) *"
|
||||
pec_placeholder: pec@club.es
|
||||
documents:
|
||||
heading: Pagos y facturas
|
||||
lead: Historial de los pagos del club y las facturas emitidas por Match Live TV.
|
||||
incomplete_title: Datos de facturación incompletos.
|
||||
incomplete_body: Completa razón social, dirección, NIF/CIF y SDI o PEC para recibir las facturas por correo.
|
||||
complete_now: Completar ahora
|
||||
holder_label: "Titular: %{summary}"
|
||||
edit_data: Editar datos
|
||||
table_heading: Pagos y facturas
|
||||
col_date: Fecha
|
||||
col_description: Descripción
|
||||
col_amount: Importe
|
||||
col_status: Estado del pago
|
||||
col_invoice: Factura
|
||||
download_pdf: Descargar PDF
|
||||
pdf_preparing: PDF en preparación
|
||||
no_payments: Aún no hay pagos registrados. Aparecerán aquí tras una suscripción premium.
|
||||
subscription_status:
|
||||
club_label: "Club: %{name}"
|
||||
current_plan_label: "Plan actual: %{plan}"
|
||||
comped_suffix: (cortesía de Match Live TV)
|
||||
valid_for_all_teams: (válido para todos los equipos)
|
||||
manage_subscription: Gestionar suscripción
|
||||
cancel_scheduled_html: "Suscripción válida hasta el <strong>%{date}</strong>, luego plan Free."
|
||||
change_pending_html: "Desde el <strong>%{date}</strong> pasarás a <strong>%{plan}</strong>%{interval}. Hasta entonces sigue activo <strong>%{current_plan}</strong>."
|
||||
end_of_period: fin del periodo
|
||||
next_renewal: próxima renovación
|
||||
next_renewal_label: "Próxima renovación: %{date}"
|
||||
plan_change_info:
|
||||
trigger_label: Información sobre cambio de plan y facturación
|
||||
title: Cambio de plan y facturación
|
||||
subscription_cancel:
|
||||
scheduled_title: Cancelación programada.
|
||||
scheduled_body_html: "El plan <strong>%{plan}</strong> sigue activo hasta el <strong>%{date}</strong>. A partir de ese día, el club pasará automáticamente al plan <strong>Free</strong>."
|
||||
scheduled_end_of_period: fin del periodo ya pagado
|
||||
scheduled_support_hint: Para restablecer la suscripción antes de su vencimiento, contacta con el soporte de Match Live TV.
|
||||
info: "Puedes cancelar en cualquier momento: la suscripción sigue siendo válida hasta el final del periodo ya pagado, luego pasas al plan Free sin cargos adicionales."
|
||||
cancel_button: Cancelar suscripción
|
||||
confirm_with_date: "¿Confirmas la cancelación? El plan %{plan} seguirá activo hasta el %{date}, luego pasarás a Free."
|
||||
confirm_default: "¿Confirmas la cancelación de la suscripción?"
|
||||
stripe_secure:
|
||||
compact_html: "Pagos premium procesados de forma segura mediante <strong>Stripe</strong>."
|
||||
full_html: "Los pagos de los planes premium se procesan de forma <strong>segura</strong> mediante <strong>Stripe</strong> (certificación PCI DSS). Match Live TV nunca almacena los números completos de la tarjeta."
|
||||
messages:
|
||||
upgrade_completed_with_amount: "Mejora a %{plan} (%{interval}) completada. Cargo inmediato: %{amount}."
|
||||
upgrade_completed_pending_charge: "Mejora a %{plan} (%{interval}) completada. El cargo de la diferencia se está procesando en la tarjeta guardada."
|
||||
next_renewal: la próxima renovación
|
||||
current_plan_generic: el plan actual
|
||||
downgrade_scheduled: "Cambio a %{plan} (%{interval}) programado: sigues en %{current_name} hasta el %{when}. Sin cargo adicional ahora; desde el próximo ciclo pagarás el nuevo precio."
|
||||
activate_button: "Activar %{plan} — %{price}"
|
||||
switch_button: "Cambiar a %{plan} — %{price}"
|
||||
upgrade_info_line: "Mejora (plan superior o cambio a facturación anual): la diferencia se cobra de inmediato en la tarjeta guardada en Stripe."
|
||||
downgrade_info_line: "Downgrade entre planes de pago (p. ej. Full → Light): el nuevo plan se activa desde la próxima renovación; hasta entonces se mantienen las funciones del plan actual, sin cargo adicional ahora."
|
||||
already_requested_line: "Ya has solicitado %{plan} desde el %{when}: hasta entonces sigue activo %{current_plan}."
|
||||
regia:
|
||||
meta_title_fallback: "Control — Match Live TV"
|
||||
title: "Control — %{home} vs %{away}"
|
||||
subtitle_prefix: "Control ·"
|
||||
status:
|
||||
ended: Finalizada
|
||||
paused: En pausa
|
||||
live: En directo
|
||||
waiting: En espera
|
||||
live_share_label: "Enlace del directo (espectadores)"
|
||||
share_live: Compartir directo
|
||||
copy_link: Copiar enlace
|
||||
regia_share_label: "Enlace de control (marcador)"
|
||||
share_regia: Compartir enlace de control
|
||||
preview_ended: Directo finalizado
|
||||
preview_waiting: Vista previa a la espera de señal…
|
||||
pause: Pausar directo
|
||||
resume: Reanudar directo
|
||||
stop: Finalizar directo
|
||||
modal:
|
||||
set_won_title: Set ganado
|
||||
confirm: Cerrar set
|
||||
cancel: Cancelar
|
||||
board:
|
||||
next_period: Siguiente cuarto
|
||||
next_half: Siguiente parte
|
||||
close_set: Cerrar set
|
||||
free_score: Marcador libre
|
||||
stopwatch: Cronómetro
|
||||
generic_score: Marcador
|
||||
start: Iniciar
|
||||
pause: Pausa
|
||||
reset: Reiniciar
|
||||
points_suffix: pts
|
||||
partials_prefix: "Parciales:"
|
||||
set_label: "Set %{number}"
|
||||
js:
|
||||
period_updated: Periodo actualizado
|
||||
now_in_period: "Ahora en %{period}"
|
||||
set_won_body: "%{winner} ha ganado el set. ¿Cerrar el set?"
|
||||
match_won_title: Partido ganado
|
||||
match_won_body: "%{winner} ha ganado el partido. ¿Cerrar la retransmisión?"
|
||||
close_set_confirm: "¿Confirmas el cierre del set actual?"
|
||||
score_update_error: Error al actualizar el marcador
|
||||
generic_error: Error
|
||||
sets_line: "Set %{current} · Sets ganados %{home}-%{away}"
|
||||
quarter_label: "C%{n}"
|
||||
half_label: "%{n}º tiempo"
|
||||
overtime_basket: "PR%{n}"
|
||||
overtime_other: Prórroga
|
||||
unknown_period: "—"
|
||||
resumed: Retransmisión reanudada
|
||||
paused_cover: "Retransmisión en pausa — cortinilla al aire"
|
||||
closed: Retransmisión finalizada
|
||||
resume_error: Error al reanudar la retransmisión
|
||||
pause_error: Error al pausar la retransmisión
|
||||
close_error: Error al cerrar
|
||||
close_confirm: "¿Cerrar definitivamente la retransmisión?"
|
||||
link_unavailable: Enlace no disponible
|
||||
link_copied: Enlace copiado
|
||||
copy_prompt: "Copia el enlace:"
|
||||
share_regia_text: "Abre este enlace para gestionar el marcador en directo:"
|
||||
share_live_text: "Mira la retransmisión en Match Live TV:"
|
||||
recordings:
|
||||
archive:
|
||||
back_prefix: "←"
|
||||
heading: Archivo de repeticiones
|
||||
admin_suffix: (admin)
|
||||
lead_html: "Gestiona grabaciones, visibilidad y descargas. <strong>Privado</strong> = enlace no indexado, no aparece en la página pública <code>/replay</code>. Al eliminar una repetición también se eliminan los archivos del servidor y el vídeo de YouTube vinculado."
|
||||
kpi_available: Repeticiones disponibles
|
||||
kpi_expiring: "Por caducar (7 días)"
|
||||
kpi_space: Espacio de archivo
|
||||
kpi_views: Visualizaciones totales
|
||||
team_label: Equipo
|
||||
team_all: Todos
|
||||
status_label: Estado
|
||||
status_all: Todos
|
||||
status_ready: Disponibles
|
||||
status_processing: En proceso
|
||||
status_expired: Caducados / error
|
||||
col_preview: Vista previa
|
||||
col_match: Partido
|
||||
col_team: Equipo
|
||||
col_details: Detalles
|
||||
col_status: Estado y visibilidad
|
||||
col_actions: Acciones
|
||||
watch_replay: Ver repetición
|
||||
processing_title: Procesamiento en curso
|
||||
not_available_title: Repetición no disponible
|
||||
views_suffix: vis.
|
||||
expires_prefix: Caduca el
|
||||
expires_days: "(%{count} días)"
|
||||
no_expiry: Sin caducidad
|
||||
new_expiry_title: Nueva fecha de caducidad
|
||||
save: Guardar
|
||||
extend_days: "+%{count} días"
|
||||
extend_title: "Ampliar la caducidad %{count} días"
|
||||
privacy_public: Público
|
||||
privacy_private: Privado
|
||||
privacy_hint_public: "Visible para todos — haz clic para hacerlo privado"
|
||||
privacy_hint_private: "Solo con enlace — haz clic para hacerlo público"
|
||||
download_mp4: MP4
|
||||
download_mp4_title: Descargar MP4
|
||||
publish_youtube: "YT"
|
||||
publish_youtube_title: Publicar en YouTube
|
||||
open_youtube_title: Abrir en YouTube
|
||||
delete_title: Eliminar repetición
|
||||
delete_confirm: Elige dónde eliminar la repetición. La operación es irreversible.
|
||||
no_recordings: No hay grabaciones para los filtros seleccionados.
|
||||
confirm:
|
||||
choice_title: "¿Qué quieres eliminar?"
|
||||
choice_message: Elige de dónde quitar la repetición. La operación es irreversible.
|
||||
choice_site_label: Solo del sitio
|
||||
choice_site_hint_with_youtube: El vídeo permanece en YouTube
|
||||
choice_site_hint_only: Elimina los archivos del sitio
|
||||
choice_youtube_label: Solo de YouTube
|
||||
choice_youtube_hint_with_site: Sigue disponible en el sitio
|
||||
choice_youtube_hint_only: Elimina solo el vídeo de YouTube
|
||||
choice_both_label: Del sitio y de YouTube
|
||||
choice_both_hint: Eliminación completa
|
||||
youtube_title: "¿Eliminar de YouTube?"
|
||||
youtube_message: El vídeo se eliminará de YouTube. La repetición seguirá disponible en el sitio.
|
||||
youtube_ok: Eliminar de YouTube
|
||||
site_title: "¿Eliminar del sitio?"
|
||||
site_message_with_youtube: La repetición se eliminará del sitio. El vídeo de YouTube seguirá en línea.
|
||||
site_message_only: Estás a punto de eliminar definitivamente esta repetición del sitio. La operación es irreversible.
|
||||
site_ok: Eliminar del sitio
|
||||
status:
|
||||
deleted: Eliminado
|
||||
expired: Caducado
|
||||
failed: Error
|
||||
processing: En proceso
|
||||
expiring_soon: Por caducar
|
||||
available: Disponible
|
||||
flash:
|
||||
web_base:
|
||||
login_required: Inicia sesión para continuar
|
||||
access_denied: Acceso no permitido
|
||||
clubs:
|
||||
already_registered: Ya has registrado un club
|
||||
created: Club y primer equipo creados.
|
||||
updated: Club actualizado.
|
||||
complete_billing_first: Completa tus datos de facturación antes de activar un plan premium.
|
||||
comped_change_denied: "Este plan es una suscripción de cortesía gestionada por Match Live TV. Para pasar a una suscripción de pago, contacta con soporte."
|
||||
stripe_not_configured: Pagos aún no configurados en el servidor
|
||||
already_on_plan: "Ya tienes el plan %{plan} (%{price})."
|
||||
change_already_scheduled: "El cambio a %{plan} ya está programado desde el %{date}."
|
||||
stripe_error: "Error de Stripe: %{message}"
|
||||
youtube_oauth_not_configured: OAuth de YouTube no configurado en el servidor
|
||||
youtube_disconnected: Canal de YouTube del club desconectado
|
||||
portal_not_configured: Portal de pagos no configurado
|
||||
checkout_success: "¡Pago completado! Plan activo: %{plan}."
|
||||
checkout_canceled: Pago cancelado. No se realizó ningún cargo.
|
||||
club_billing:
|
||||
profile_saved_proceed_payment: Datos guardados. Procede con el pago.
|
||||
profile_updated: Datos de facturación actualizados.
|
||||
stripe_not_configured: Stripe no configurado.
|
||||
subscription_canceled: "Suscripción cancelada. Sigue activa hasta el %{date}; a partir de ese día pasarás al plan Free."
|
||||
stripe_error: "Error de Stripe: %{message}"
|
||||
invoice_pdf_unavailable: PDF de la factura no disponible.
|
||||
club_recordings:
|
||||
not_authorized: No autorizado
|
||||
teams:
|
||||
added: "Equipo «%{name}» añadido."
|
||||
updated: Equipo actualizado.
|
||||
now_staff: Tu cuenta ahora es responsable de transmisión.
|
||||
staff_role_removed: Rol de staff eliminado de tu cuenta.
|
||||
invite_link_generated: "Enlace de invitación generado (válido 7 días)"
|
||||
access_revoked: Acceso revocado
|
||||
invitation_canceled: Invitación anulada
|
||||
youtube_disconnected: Canal de YouTube del club desconectado
|
||||
matches:
|
||||
scheduled: "Partido programado: %{opponent}. Inicia la transmisión desde la app cuando estés en el lugar."
|
||||
updated: Partido actualizado.
|
||||
close_live_before_delete: Cierra el directo antes de eliminar este partido.
|
||||
deleted: Partido eliminado.
|
||||
schedule_denied: Solo un responsable de transmisión o el titular del club pueden programar partidos.
|
||||
club_matches:
|
||||
invalid_team: Selecciona un equipo válido.
|
||||
scheduled: "Partido programado: %{team} vs %{opponent}."
|
||||
no_schedulable_teams: No tienes permisos para programar partidos en este club.
|
||||
team_roster_members:
|
||||
added: "%{name} añadido a la plantilla."
|
||||
updated: Ficha actualizada.
|
||||
removed: "%{name} eliminado de la plantilla."
|
||||
invitations:
|
||||
invalid_or_expired: Invitación no válida o caducada
|
||||
invalid: Invitación no válida
|
||||
wrong_email: "Esta invitación es para %{email}"
|
||||
joined_team: "¡Te has unido al equipo!"
|
||||
signup_to_accept: "Regístrate con %{email} para aceptar la invitación"
|
||||
registrations:
|
||||
accept_terms_required: Debes aceptar la política de privacidad y los términos de servicio para registrarte.
|
||||
welcome_to_team: "¡Bienvenido al equipo!"
|
||||
account_created: Cuenta creada. Ahora registra tu club.
|
||||
sessions:
|
||||
welcome_back: "¡Bienvenido de nuevo!"
|
||||
invalid_credentials: Correo o contraseña no válidos
|
||||
logged_out: Sesión cerrada
|
||||
password_resets:
|
||||
email_sent: Si el correo está registrado, recibirás en breve un enlace para restablecer la contraseña.
|
||||
invalid_or_expired_link: Enlace no válido o caducado. Solicita un nuevo restablecimiento de contraseña.
|
||||
password_min_length: La contraseña debe tener al menos 8 caracteres
|
||||
password_mismatch: Las contraseñas no coinciden
|
||||
password_updated: Contraseña actualizada. Ya puedes iniciar sesión.
|
||||
replay:
|
||||
download_unavailable: Descarga no disponible
|
||||
not_available: Repetición no disponible
|
||||
live:
|
||||
index:
|
||||
meta_title: "Partidos juveniles en directo ahora — Match Live TV"
|
||||
meta_description: "Mira los partidos juveniles en directo ahora mismo y los próximos partidos programados. Busca tu equipo y abre el enlace sin instalar ninguna app."
|
||||
club_back_link: "← %{name}"
|
||||
club_title: "Directos y partidos — %{name}"
|
||||
club_hint: "Solo los equipos de este club: directos en curso y partidos programados desde la app o el sitio web."
|
||||
club_replay_link: "Repeticiones de %{name}"
|
||||
default_title: "Directos y partidos programados"
|
||||
default_hint: "Busca por club, equipo, rival o lugar: encuentra los directos activos y los partidos programados."
|
||||
replay_archive_link: "Directos pasados — archivo de repeticiones"
|
||||
schedule_match_link: "Programar partido"
|
||||
search_placeholder_club: "Buscar club, equipo, rival o lugar…"
|
||||
search_placeholder_default: "Ej. Crazy Volley, Serie D, rival…"
|
||||
search_aria_label: "Buscar equipo"
|
||||
search_button: "Buscar"
|
||||
reset_link: "Restablecer"
|
||||
results_hint: "Resultados para «%{query}»%{club_suffix}: %{live_count} en directo · %{upcoming_count} programados"
|
||||
results_hint_club_suffix: " en %{name}"
|
||||
section_live_now: "En directo ahora"
|
||||
badge_on_air: "En emisión"
|
||||
badge_live: "Live"
|
||||
badge_paused: "En pausa"
|
||||
badge_reconnecting: "Reconectando"
|
||||
badge_starting: "Iniciando"
|
||||
badge_scheduled: "Programado"
|
||||
watch_link: "Ver directo →"
|
||||
section_upcoming: "Próximos partidos"
|
||||
upcoming_hint: "Programados desde la app o el sitio web: el directo comenzará cuando el staff inicie la transmisión."
|
||||
empty_soft_title: "Ningún directo en este momento."
|
||||
empty_soft_body: "Vuelve a la hora indicada: cuando el equipo inicie la transmisión, el partido aparecerá en «En directo ahora»."
|
||||
empty_club_title: "Ningún directo o partido programado para %{name}."
|
||||
empty_club_schedule_link: "Programar el primer partido"
|
||||
empty_club_schedule_suffix: " o desde la app Match Live TV."
|
||||
empty_club_ask_staff: "Pide al responsable del club o a un encargado de transmisión que programe un partido."
|
||||
empty_club_add_team_html: "Añade un equipo desde la %{club_link} y programa el primer partido."
|
||||
empty_club_page_link: "página del club"
|
||||
empty_club_back_link: "← Volver al club"
|
||||
empty_hero_title: "Ningún directo ahora — pero ya puedes organizarte"
|
||||
empty_hero_body: "Si tu equipo usa Match Live TV, el partido se puede programar desde el teléfono con fecha y hora. Padres y familiares encontrarán aquí el directo cuando se acerque el saque inicial."
|
||||
empty_hero_list_item1: "Programa el partido desde la app (sin iniciar el directo de inmediato)"
|
||||
empty_hero_list_item2: "El partido aparece en «Próximos partidos» con hora y cancha"
|
||||
empty_hero_list_item3: "La transmisión solo comienza cuando pulsas iniciar en el pabellón"
|
||||
empty_hero_cta_signup: "Registra tu equipo"
|
||||
empty_hero_cta_features: "Descubre cómo funciona"
|
||||
demo_aria_label: "Ejemplo de un directo activo"
|
||||
demo_label: "Ejemplo — así se ve un directo activo"
|
||||
demo_meta: "PalaTigers · Match Live TV"
|
||||
demo_sets: "Set 2 · Sets ganados 1-0"
|
||||
show:
|
||||
back_to_all: "← Todos los directos"
|
||||
title: "%{club_name} · %{team_name} vs %{opponent_name} — Directo"
|
||||
meta_description: "Sigue a %{club_name} en directo — %{team_name} vs %{opponent_name}%{location}. Míralo desde el navegador, sin instalar ninguna app."
|
||||
meta_description_location: " — %{location}"
|
||||
stream_ended_title: "Directo finalizado"
|
||||
stream_ended_body: "La transmisión de este partido ha sido cerrada."
|
||||
stream_ended_closed_at: "Cerrado el %{date}"
|
||||
stream_ended_hint: "El marcador es visible en el vídeo si el directo aún estaba en curso."
|
||||
stream_ended_reload_hint: "Recarga la página para ver el último estado registrado."
|
||||
all_live_link: "Todos los directos"
|
||||
youtube_title: "Directo en YouTube"
|
||||
youtube_available_body: "Este partido se transmite en el canal de YouTube de Match Live TV, no en el reproductor del sitio."
|
||||
youtube_watch_link: "Ver en YouTube"
|
||||
youtube_preparing_body: "Estamos preparando el directo en el canal de YouTube. Actualiza en unos segundos."
|
||||
youtube_hint: "Comparte el enlace de YouTube solo con aficionados y el club."
|
||||
play_hint: "▶ Iniciar el directo"
|
||||
offline_msg: "El directo aún no está disponible. Se actualiza automáticamente cuando vuelva a emitir."
|
||||
awaiting_msg: "Esperando la señal del teléfono — abre la cámara en la app y comprueba que el directo esté iniciado (no en pausa)."
|
||||
paused_msg: "Transmisión en pausa — el flujo continúa (portada de servidor)."
|
||||
js_reconnecting_awaiting: "Reconectando - esperando el vídeo del evento"
|
||||
overlays:
|
||||
badge_ended: "Finalizado"
|
||||
badge_waiting: "En espera"
|
||||
replay:
|
||||
index:
|
||||
meta_title: "Repetición — Match Live TV"
|
||||
meta_description: "Archivo de repeticiones de los directos deportivos en Match Live TV. Busca por club, equipo o rival."
|
||||
back_to_live: "← Directos en curso"
|
||||
title: "Directos pasados"
|
||||
hint: "Repeticiones públicas de los clubes deportivos — corresponde a partidos ya transmitidos."
|
||||
search_placeholder: "Ej. Tigers Volley, rival, club, lugar…"
|
||||
search_aria_label: "Buscar repetición"
|
||||
search_button: "Buscar"
|
||||
reset_link: "Restablecer"
|
||||
club_filter_label: "Club"
|
||||
club_filter_all: "Todos los clubes"
|
||||
results_hint: "Resultados para «%{query}»%{club_suffix}: %{count} repeticiones"
|
||||
results_hint_club_suffix: " · %{name}"
|
||||
empty_filtered_title: "No se encontraron repeticiones"
|
||||
empty_filtered_suffix: " con los filtros seleccionados."
|
||||
empty_filtered_show_all: "Mostrar todas las repeticiones públicas"
|
||||
empty_default_title: "No hay repeticiones públicas por el momento."
|
||||
empty_default_body: "Cuando un club haga pública una grabación, aparecerá aquí."
|
||||
empty_default_live_link: "Ir a los directos"
|
||||
show:
|
||||
title: "Repetición — %{title}"
|
||||
meta_description: "Repetición %{title} en Match Live TV."
|
||||
back_to_replays: "← Directos pasados"
|
||||
processing_title: "Repetición en procesamiento"
|
||||
processing_body: "La grabación se está preparando. Recibirás un correo cuando esté lista."
|
||||
badge_label: "REPLAY"
|
||||
meta_line_duration: "Duración %{value}"
|
||||
meta_line_until: "Hasta el %{date}"
|
||||
meta_line_public: "Público"
|
||||
meta_line_private: "Privado (enlace)"
|
||||
download_link: "Descargar MP4"
|
||||
youtube_link: "Abrir en YouTube"
|
||||
youtube_only_body: "Repetición en YouTube (no hay copia disponible en el servidor)."
|
||||
file_missing_title: "Archivo no disponible"
|
||||
file_missing_body: "El vídeo ya no está en el servidor (archivo eliminado o en migración)."
|
||||
file_missing_meta: "Duración grabada: %{duration} · %{size}"
|
||||
failed_title: "Repetición no disponible"
|
||||
failed_default_body: "Error al procesar la grabación."
|
||||
unavailable_title: "Repetición no disponible"
|
||||
unavailable_body: "Esta grabación ya no está accesible."
|
||||
team_pages:
|
||||
index:
|
||||
meta_title: "Equipos en Match Live TV — Directos y repeticiones de deporte juvenil"
|
||||
meta_description: "Descubre los equipos deportivos juveniles que transmiten en Match Live TV. Busca por nombre, filtra por deporte, encuentra directos en curso y archivos de repeticiones."
|
||||
heading: "Equipos en Match Live TV"
|
||||
hint: "Clubes y equipos con directos, repeticiones públicas o partidos programados. Busca tu equipo y abre la página para seguir el calendario y el archivo."
|
||||
search_placeholder: "Nombre del equipo, club, ciudad o pabellón…"
|
||||
search_aria_label: "Buscar equipo"
|
||||
search_button: "Buscar"
|
||||
sport_label: "Deporte"
|
||||
sport_all: "Todos los deportes"
|
||||
chips_label: "Mostrar"
|
||||
chip_live: "En directo"
|
||||
chip_replays: "Con repeticiones"
|
||||
reset_link: "Restablecer"
|
||||
results_found: "%{count} equipos encontrados"
|
||||
results_active: "%{count} equipos activos"
|
||||
results_query_suffix: " para «%{query}»"
|
||||
results_sport_suffix: " · %{sport}"
|
||||
badge_live: "En directo"
|
||||
badge_upcoming: "%{count} programados"
|
||||
badge_replay: "%{count} repeticiones"
|
||||
empty_filtered_title: "No se encontraron equipos"
|
||||
empty_filtered_suffix: " con los filtros seleccionados."
|
||||
empty_filtered_show_all: "Mostrar todos los equipos activos"
|
||||
empty_default_title: "No hay equipos activos por el momento."
|
||||
empty_default_body: "Cuando un club inicie directos o publique repeticiones, aparecerá aquí."
|
||||
empty_default_live_link: "Ir a los directos"
|
||||
footer_live_link: "Directos en curso"
|
||||
footer_replay_link: "Archivo de repeticiones"
|
||||
show:
|
||||
title: "%{team} — %{club} | Match Live TV"
|
||||
meta_description: "Sigue a %{team} (%{club}): directos, calendario de partidos y repeticiones en Match Live TV."
|
||||
breadcrumb_all_teams: "← Todos los equipos"
|
||||
live_now_label: "En directo ahora"
|
||||
watch_live_link: "Ver el directo"
|
||||
all_live_link: "Todos los directos"
|
||||
replay_archive_link: "Archivo de repeticiones"
|
||||
section_live_now: "En directo ahora"
|
||||
section_upcoming: "Próximos partidos"
|
||||
upcoming_hint: "Programados por el club: el directo comenzará cuando el staff inicie la transmisión."
|
||||
section_replays: "Repeticiones recientes"
|
||||
replays_more_link: "Ver todas las repeticiones de %{team} →"
|
||||
section_roster: "Plantilla"
|
||||
empty_title: "Ningún directo o repetición por el momento."
|
||||
empty_body: "Vuelve a comprobar antes de los próximos partidos: aquí aparecerán directos, calendario y el archivo del equipo."
|
||||
empty_link: "Ver todos los directos"
|
||||
score:
|
||||
timer_label: "Cronómetro"
|
||||
generic_label: "Marcador"
|
||||
sets_label: "Set %{set} · Sets ganados %{home}-%{away}"
|
||||
partial_entry: "Set %{set} %{home}-%{away}"
|
||||
partial_entry_no_number: "Set %{home}-%{away}"
|
||||
partials_prefix: "Parciales: %{value}"
|
||||
points_label: "%{team} %{home} - %{away} %{opponent}"
|
||||
fallback: "—"
|
||||
default_club_name: "Club"
|
||||
scheduled_date_format: "%d/%m/%Y a las %H:%M"
|
||||
scheduled_today: "Hoy a las %{time}"
|
||||
scheduled_tomorrow: "Mañana a las %{time}"
|
||||
@@ -0,0 +1,786 @@
|
||||
fr:
|
||||
club:
|
||||
back_to_club: "← Club"
|
||||
sport_label: Sport principal
|
||||
branding_legend: Logo et couleurs du club
|
||||
branding:
|
||||
legend: Identité visuelle
|
||||
inherit_hint: Laissez vide pour utiliser le logo et les couleurs du club.
|
||||
logo_file_label: Logo (image)
|
||||
logo_preview_alt: Aperçu du logo
|
||||
no_logo_placeholder: "Aucun logo — choisissez un fichier pour l'aperçu"
|
||||
logo_url_label: Logo (URL alternative)
|
||||
primary_color_label: Couleur principale
|
||||
secondary_color_label: Couleur secondaire
|
||||
choose_color: Choisir une couleur
|
||||
quick_colors: Couleurs rapides
|
||||
header_preview_label: Aperçu de l'en-tête
|
||||
name_placeholder: Nom du club / de l'équipe
|
||||
dashboard:
|
||||
title: "%{name} — Club"
|
||||
plan_label: "Forfait :"
|
||||
teams_count_label: "Équipes :"
|
||||
edit_club: Modifier le club
|
||||
subscription: Abonnement
|
||||
new_team: Nouvelle équipe
|
||||
live_streams: Directs
|
||||
replay_archive: Archives replay
|
||||
replay_heading: Replay
|
||||
available: disponibles
|
||||
expiring_soon: "bientôt expirés (7 j)"
|
||||
space_used: espace utilisé
|
||||
views: vues
|
||||
teams_heading: Équipes
|
||||
team_col: Équipe
|
||||
branding_col: Image de marque
|
||||
branding_custom: Personnalisée
|
||||
branding_inherited: Hérite du club
|
||||
public_page: Page publique
|
||||
details: Détails
|
||||
matches: Matchs
|
||||
edit: Modifier
|
||||
no_teams_html: "Aucune équipe. %{link}."
|
||||
add_first_team: Ajouter la première
|
||||
footer_note: "Chaque équipe a ses propres responsables diffusion. Le score depuis un autre téléphone utilise le lien régie (sans compte). L'abonnement couvre tout le club."
|
||||
edit:
|
||||
title: "Modifier le club — %{name}"
|
||||
heading: Modifier le club
|
||||
name_label: Nom du club
|
||||
save: Enregistrer
|
||||
new:
|
||||
title: "Inscrire un club — Match Live TV"
|
||||
meta_description: Crée ton club sportif et sa première équipe sur Match Live TV.
|
||||
heading: Ton club
|
||||
lead: "Inscris le club : tu pourras ajouter d'autres équipes (Under 13, Under 15, Serie C…)."
|
||||
section_club: Club
|
||||
name_label: Nom du club
|
||||
name_placeholder: "ex. Crazy Volley Rozzano"
|
||||
section_first_team: Première équipe
|
||||
default_first_team_name: Première équipe
|
||||
first_team_name_label: Nom de l'équipe
|
||||
first_team_name_placeholder: "ex. Under 15"
|
||||
plan_label: "Forfait de départ (pour tout le club)"
|
||||
plan_free: "Gratuit — 1 responsable diffusion par équipe, 1 direct"
|
||||
plan_light: Premium Light
|
||||
plan_full: Premium Full
|
||||
interval_label: Facturation premium
|
||||
interval_yearly: "Annuel — 40 €/an (Light) ou 200 €/an (Full)"
|
||||
interval_monthly: "Mensuel — 5 €/mois (Light) ou 20 €/mois (Full)"
|
||||
submit: Créer le club
|
||||
billing:
|
||||
title: "Abonnement — %{name}"
|
||||
comped:
|
||||
title: Abonnement offert par Match Live TV
|
||||
plan_prefix: "— forfait"
|
||||
no_payment_html: "Aucun paiement n'est requis. Pour toute modification ou passage à un forfait payant, contacte %{email_link}."
|
||||
youtube:
|
||||
heading: YouTube Live
|
||||
connected_notice: Chaîne YouTube du club connectée avec succès.
|
||||
light_body_html: "Avec le forfait <strong>Premium Light</strong>, les directs YouTube de toutes les équipes passent sur la chaîne officielle <strong>Match Live TV</strong>. Pas besoin de connecter une chaîne du club."
|
||||
light_ready: "Chaîne prête · sélectionne « YouTube Live » dans l'application mobile."
|
||||
light_configuring: Chaîne Match Live TV en cours de configuration côté serveur. Contacte le support si YouTube n'apparaît pas dans l'application.
|
||||
full_connected_html: "Chaîne connectée pour <strong>tout le club</strong> : <strong>%{channel}</strong>"
|
||||
full_connected_hint: Toutes les équipes peuvent diffuser sur cette chaîne lorsqu'elles choisissent la chaîne du club dans l'application.
|
||||
disconnect: Déconnecter la chaîne
|
||||
disconnect_confirm: Déconnecter la chaîne YouTube ? Les directs utiliseront la chaîne Match Live TV jusqu'à ce que tu reconnectes la tienne.
|
||||
full_not_connected_html: "Sans chaîne connectée, les directs YouTube depuis l'application passent sur la chaîne officielle <strong>Match Live TV</strong>. Connecte ici la chaîne YouTube du club (valable pour toutes les équipes)."
|
||||
ready_in_app: "YouTube prêt dans l'application (chaîne Match Live TV tant que tu n'as pas connecté la tienne)."
|
||||
connect: Connecter la chaîne YouTube du club
|
||||
oauth_not_configured: OAuth YouTube pas encore configuré sur le serveur.
|
||||
requires_full: YouTube sur la chaîne du club nécessite le forfait Premium Full.
|
||||
see_plans: Voir les forfaits
|
||||
team:
|
||||
back_to_details: "← Détails équipe"
|
||||
sport_label: Sport
|
||||
details:
|
||||
title: "Détails — %{name}"
|
||||
meta_description: "Détails de l'équipe %{name} sur Match Live TV."
|
||||
nav_aria: Fil d'Ariane équipe
|
||||
edit_team: Modifier l'équipe
|
||||
plan_label: "Forfait :"
|
||||
plan_scope_club: (club)
|
||||
staff_label: "Responsables diffusion :"
|
||||
active_matches_label: "Matchs actifs :"
|
||||
unlimited: illimités
|
||||
no_description: Aucune description.
|
||||
add_description_link: Ajoute-en une depuis la modification de l'équipe
|
||||
roster_count_label: dans l'effectif
|
||||
no_photo: Photo d'équipe pas encore ajoutée
|
||||
add_photo_link: Ajoute-la depuis la modification de l'équipe
|
||||
public_page: Page publique
|
||||
streaming_managers: Responsables diffusion
|
||||
schedule_matches: Programmer des matchs
|
||||
live_streams: Directs
|
||||
no_people_in_category: Personne dans cette catégorie pour le moment.
|
||||
youtube_hint_html: "La chaîne YouTube du club se configure depuis la page %{club_link} (section YouTube Live)."
|
||||
footer_note: Utilise l'application mobile avec les mêmes identifiants pour démarrer les matchs et les directs.
|
||||
edit:
|
||||
title: "Modifier l'équipe — %{name}"
|
||||
club_label: "Club :"
|
||||
name_label: Nom de l'équipe
|
||||
description_label: Description de l'équipe
|
||||
description_placeholder: "Présentation de l'équipe, palmarès, objectifs de la saison…"
|
||||
photo_label: "Photo d'équipe (groupe ou écusson)"
|
||||
photo_alt: Photo d'équipe
|
||||
branding_legend: Image de marque de l'équipe (personnalisation)
|
||||
slug_label: Adresse de la page publique
|
||||
slug_hint_html: "Parents et supporters trouvent l'équipe sur <strong>%{base_url}/squadre/%{slug}</strong>"
|
||||
slug_title: "Uniquement des lettres minuscules, des chiffres et des tirets"
|
||||
roster_public_label: Afficher l'effectif sur la page publique
|
||||
roster_public_hint: Si activé, joueurs et staff sont visibles par toute personne ayant le lien. Tu peux le laisser désactivé pour plus de confidentialité.
|
||||
club_colors_label: "Couleurs du club :"
|
||||
submit: Enregistrer l'équipe
|
||||
new:
|
||||
title: "Nouvelle équipe — %{name}"
|
||||
heading: Nouvelle équipe
|
||||
club_label: "Club :"
|
||||
name_label: Nom de l'équipe
|
||||
name_placeholder: "ex. Under 13, Serie C"
|
||||
branding_legend: Personnalisation de l'image de marque (facultatif)
|
||||
submit: Ajouter l'équipe
|
||||
invite:
|
||||
title: "Staff diffusion — %{name}"
|
||||
heading: Responsables diffusion
|
||||
assigned_label: "Assignés :"
|
||||
per_team_note: (par équipe, renouvellement annuel)
|
||||
info: "Le responsable diffusion démarre le direct depuis l'application (caméra sur trépied). Pour le score depuis un second téléphone, aucun compte n'est nécessaire : il partage le <strong>lien régie</strong> depuis l'écran de diffusion (WhatsApp, e-mail, SMS, etc.)."
|
||||
self_assign_hint_html: "<strong>%{email}</strong> — tu peux gérer toi-même la caméra et le score, ou inviter d'autres personnes pour la diffusion."
|
||||
self_assign_submit: C'est moi — responsable diffusion
|
||||
invite_other_heading: Inviter un autre e-mail
|
||||
email_label: E-mail du responsable diffusion
|
||||
submit: Générer le lien d'accès
|
||||
share_hint: "Partage (valable 7 jours) :"
|
||||
billing:
|
||||
title: "Abonnement — %{name}"
|
||||
team_label: "Équipe :"
|
||||
current_plan_label: "Forfait actuel :"
|
||||
staff_line: "Staff diffusion : %{count} / an"
|
||||
matches_line: "Matchs : %{count} en simultané"
|
||||
replay_line: "Replay : %{value}"
|
||||
replay_days: "%{count} jours"
|
||||
replay_none: "non"
|
||||
youtube_line: "YouTube : %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: chaîne du club
|
||||
youtube_none: "non"
|
||||
current_plan: Forfait actuel
|
||||
manage_club_subscription: Gérer l'abonnement du club
|
||||
stripe_not_configured: Stripe non configuré
|
||||
contact_lead: "Besoins différents ?"
|
||||
contact_cta: Contacte-nous
|
||||
contact_trailer: pour une offre sur mesure.
|
||||
club_payments_link: Paiements et factures du club
|
||||
streaming_staff:
|
||||
self_account_heading: "Ton compte (%{email})"
|
||||
self_account_hint: "Tu peux gérer la diffusion depuis l'application. Pour le score depuis un autre téléphone, partage le <strong>lien régie</strong> pendant le direct (pas besoin d'un second compte)."
|
||||
self_assign_submit: C'est moi — responsable diffusion
|
||||
staff_heading: Responsables diffusion (application)
|
||||
col_name: Nom
|
||||
col_email: E-mail
|
||||
col_role: Rôle
|
||||
role_transmission: Diffusion
|
||||
you_suffix: (toi)
|
||||
clear_self_staff: Retirer le rôle staff
|
||||
clear_self_staff_confirm: Retirer le rôle staff de ton compte ?
|
||||
revoke: Révoquer
|
||||
revoke_confirm: "Révoquer l'accès de %{name} ?"
|
||||
no_staff: Aucun responsable diffusion pour le moment.
|
||||
invite_someone: Inviter quelqu'un
|
||||
pending_invitations_heading: Invitations en attente
|
||||
col_email_short: E-mail
|
||||
col_expires: Expire
|
||||
cancel_invitation: Annuler
|
||||
no_pending: Aucune demande en attente.
|
||||
archive_heading: Archives replay
|
||||
col_match: Match
|
||||
col_date: Date
|
||||
col_duration: Durée
|
||||
col_expiry: Expiration
|
||||
col_status: Statut
|
||||
watch: Regarder
|
||||
manage_all_replays: Gérer tous les replays
|
||||
no_recordings: Aucun replay pour le moment. Les enregistrements apparaissent ici à la fin des directs Premium.
|
||||
matches:
|
||||
back_to_list: "← Liste des matchs"
|
||||
opponent_label: Adversaire
|
||||
opponent_placeholder: "ex. Volley Milano"
|
||||
location_label: "Lieu (facultatif)"
|
||||
location_placeholder: "Gymnase, ville"
|
||||
datetime_label: Date et heure
|
||||
form_hint: "Le direct ne démarre pas tout seul : il apparaîtra dans l'application et sur le site. Tu lanceras le streaming depuis ton téléphone une fois sur place."
|
||||
edit:
|
||||
title: "Modifier le match — %{name}"
|
||||
heading: Modifier le match
|
||||
submit: Enregistrer les modifications
|
||||
new:
|
||||
title: "Programmer un match — %{name}"
|
||||
heading: Programmer un match
|
||||
submit: Enregistrer au programme
|
||||
index:
|
||||
title: "Matchs — %{name}"
|
||||
heading: "Matchs — %{name}"
|
||||
lead: "Programme ici depuis ton ordinateur la date, l'adversaire et le lieu. Une fois au gymnase, ouvre l'application Match Live TV, sélectionne cette équipe et lance le direct du match."
|
||||
schedule_match: Programmer un match
|
||||
team_details: Détails équipe
|
||||
live_and_schedule: Directs et programme
|
||||
col_opponent: Adversaire
|
||||
col_datetime: "Date et heure"
|
||||
col_location: Lieu
|
||||
col_status: Statut
|
||||
no_time: Sans horaire
|
||||
no_location: "—"
|
||||
edit: Modifier
|
||||
delete: Supprimer
|
||||
delete_confirm: Supprimer ce match ?
|
||||
empty_html: "Aucun match programmé. %{link}."
|
||||
schedule_first: Programme le premier
|
||||
club_new:
|
||||
title: "Programmer un match — %{name}"
|
||||
back_link: "← Directs et matchs"
|
||||
heading: Programmer un match
|
||||
admin_hint: "· Tu peux choisir n'importe quelle équipe du club"
|
||||
staff_hint: "· Seulement les équipes où tu es responsable diffusion"
|
||||
team_label: Équipe
|
||||
submit: Enregistrer au programme
|
||||
status:
|
||||
active: En cours / à reprendre
|
||||
scheduled: Programmé
|
||||
ready: Prêt
|
||||
no_time: Sans horaire
|
||||
roster:
|
||||
back_to_details: "← Détails équipe"
|
||||
category:
|
||||
staff: Staff
|
||||
coach: Entraîneurs
|
||||
manager: Dirigeants
|
||||
player: Joueurs
|
||||
role:
|
||||
coach: Entraîneur
|
||||
manager: Dirigeant
|
||||
staff: Staff
|
||||
player: Joueur
|
||||
player_numbered: "Joueur n°%{number}"
|
||||
errors:
|
||||
role_invalid: n'est pas un rôle valide pour ce sport
|
||||
photo_invalid_type: doit être au format PNG, JPEG ou WebP
|
||||
role_select_blank: "— Sélectionner un rôle —"
|
||||
edit:
|
||||
title: "Modifier — %{name}"
|
||||
member_form:
|
||||
edit_heading: Modifier la fiche
|
||||
new_heading: Ajouter une personne
|
||||
lead: Remplis les champs et enregistre pour mettre à jour l'effectif.
|
||||
category_label: Groupe
|
||||
full_name_label: Nom et prénom
|
||||
full_name_placeholder: "ex. Mario Rossi"
|
||||
role_player_label: Rôle sur le terrain
|
||||
role_other_label: "Rôle (facultatif)"
|
||||
role_other_placeholder: "ex. Entraîneur principal, Président, Kinésithérapeute"
|
||||
jersey_label: Numéro de maillot
|
||||
jersey_placeholder: "ex. 7"
|
||||
bio_label: Courte description
|
||||
bio_placeholder: "Brève présentation pour la fiche…"
|
||||
photo_label: Photo
|
||||
photo_hint: Sans photo, un avatar aux couleurs de l'équipe sera affiché.
|
||||
submit_edit: Enregistrer la fiche
|
||||
submit_new: Ajouter à l'effectif
|
||||
person_card:
|
||||
edit: Modifier
|
||||
remove: Retirer
|
||||
remove_confirm: "Retirer %{name} de l'effectif ?"
|
||||
billing:
|
||||
heading: Abonnement
|
||||
entity_types:
|
||||
company: "Club / association avec numéro de TVA"
|
||||
individual: Personne physique
|
||||
nonprofit: Association à but non lucratif
|
||||
profile_errors:
|
||||
entity_type: Type de titulaire
|
||||
legal_name: Raison sociale ou nom du titulaire
|
||||
email: E-mail de facturation
|
||||
address: Adresse
|
||||
city: Ville
|
||||
province: "Province (code à 2 lettres)"
|
||||
postal_code: Code postal
|
||||
country: "Pays (ISO)"
|
||||
vat_number: Numéro de TVA
|
||||
fiscal_code: Code fiscal
|
||||
vat_or_fiscal: Numéro de TVA ou code fiscal
|
||||
sdi_or_pec: "Code destinataire SDI (7 caractères) ou PEC"
|
||||
sdi_invalid: "Code destinataire SDI (7 caractères)"
|
||||
actions:
|
||||
current_plan: Forfait actuel
|
||||
contact_for_free: "Pour passer au forfait gratuit, contacte le support."
|
||||
stripe_not_configured: Stripe non configuré
|
||||
stripe_prices_not_configured: Tarifs Stripe non configurés
|
||||
complete_billing_prefix: Complète tes données de facturation avant d'activer un forfait premium.
|
||||
profile_incomplete_default: Complète tes données de facturation avant d'activer un forfait premium.
|
||||
profile_missing: "Manquant(s) : %{fields}."
|
||||
profile:
|
||||
title: "Données de facturation — %{name}"
|
||||
heading: Données de facturation
|
||||
lead: "Club : %{name}. Saisis les données pour l'en-tête des factures et l'envoi via SDI ou PEC."
|
||||
required_notice: Obligatoires pour souscrire à un forfait premium.
|
||||
after_save_hint_html: "Après l'enregistrement, tu pourras procéder au paiement de <strong>%{plan}</strong>."
|
||||
submit: Enregistrer les données de facturation
|
||||
back_to_billing: "← Abonnement"
|
||||
fields:
|
||||
legend: Données de facturation
|
||||
legend_hint: "Tous les champs marqués sont obligatoires pour souscrire à un forfait premium et pour émettre les factures. Les clubs ont besoin d'un numéro de TVA ; les personnes physiques d'un code fiscal. Il faut le SDI ou le PEC. Les paiements restent gérés en toute sécurité par Stripe."
|
||||
entity_type_label: "Type de titulaire *"
|
||||
legal_name_label: "Raison sociale / nom et prénom *"
|
||||
legal_name_placeholder: "ex. ASD Tigers Volley"
|
||||
vat_number_label: "Numéro de TVA * (club)"
|
||||
fiscal_code_label: "Code fiscal * (personne physique)"
|
||||
fiscal_code_placeholder: RSSMRA80A01H501U
|
||||
email_label: "E-mail de facturation *"
|
||||
email_placeholder: administration@club.fr
|
||||
phone_label: "Téléphone (facultatif)"
|
||||
address_label: "Adresse *"
|
||||
address_placeholder: "1 rue de Rome"
|
||||
city_label: "Ville *"
|
||||
province_label: "Prov. *"
|
||||
province_placeholder: MI
|
||||
postal_code_label: "Code postal *"
|
||||
country_label: "Pays (ISO) *"
|
||||
recipient_code_label: "Code destinataire SDI (7 car.) *"
|
||||
recipient_code_placeholder: XXXXXXX
|
||||
pec_label: "PEC (alternative au SDI) *"
|
||||
pec_placeholder: pec@club.fr
|
||||
documents:
|
||||
heading: Paiements et factures
|
||||
lead: Historique des paiements du club et des factures émises par Match Live TV.
|
||||
incomplete_title: Données de facturation incomplètes.
|
||||
incomplete_body: Renseigne la raison sociale, l'adresse, le numéro de TVA/code fiscal et le SDI ou PEC pour recevoir les factures par e-mail.
|
||||
complete_now: Compléter maintenant
|
||||
holder_label: "Titulaire : %{summary}"
|
||||
edit_data: Modifier les données
|
||||
table_heading: Paiements et factures
|
||||
col_date: Date
|
||||
col_description: Description
|
||||
col_amount: Montant
|
||||
col_status: Statut du paiement
|
||||
col_invoice: Facture
|
||||
download_pdf: Télécharger le PDF
|
||||
pdf_preparing: PDF en préparation
|
||||
no_payments: Aucun paiement enregistré. Il apparaîtra ici après un abonnement premium.
|
||||
subscription_status:
|
||||
club_label: "Club : %{name}"
|
||||
current_plan_label: "Forfait actuel : %{plan}"
|
||||
comped_suffix: (offert par Match Live TV)
|
||||
valid_for_all_teams: (valable pour toutes les équipes)
|
||||
manage_subscription: Gérer l'abonnement
|
||||
cancel_scheduled_html: "Abonnement valable jusqu'au <strong>%{date}</strong>, puis forfait gratuit."
|
||||
change_pending_html: "À partir du <strong>%{date}</strong> tu passeras à <strong>%{plan}</strong>%{interval}. D'ici là, <strong>%{current_plan}</strong> reste actif."
|
||||
end_of_period: fin de la période
|
||||
next_renewal: prochain renouvellement
|
||||
next_renewal_label: "Prochain renouvellement : %{date}"
|
||||
plan_change_info:
|
||||
trigger_label: Infos sur le changement de forfait et la facturation
|
||||
title: Changement de forfait et facturation
|
||||
subscription_cancel:
|
||||
scheduled_title: Résiliation programmée.
|
||||
scheduled_body_html: "Le forfait <strong>%{plan}</strong> reste actif jusqu'au <strong>%{date}</strong>. À partir de ce jour, le club passera automatiquement au forfait <strong>Gratuit</strong>."
|
||||
scheduled_end_of_period: fin de la période déjà payée
|
||||
scheduled_support_hint: Pour rétablir l'abonnement avant son expiration, contacte le support Match Live TV.
|
||||
info: "Tu peux résilier à tout moment : l'abonnement reste valable jusqu'à la fin de la période déjà payée, puis tu passes au forfait Gratuit sans frais supplémentaires."
|
||||
cancel_button: Résilier l'abonnement
|
||||
confirm_with_date: "Confirmes-tu la résiliation ? Le forfait %{plan} restera actif jusqu'au %{date}, puis tu passeras au Gratuit."
|
||||
confirm_default: "Confirmes-tu la résiliation de l'abonnement ?"
|
||||
stripe_secure:
|
||||
compact_html: "Paiements premium traités en toute sécurité via <strong>Stripe</strong>."
|
||||
full_html: "Les paiements des forfaits premium sont traités de manière <strong>sécurisée</strong> via <strong>Stripe</strong> (certification PCI DSS). Match Live TV ne stocke jamais les numéros complets de carte."
|
||||
messages:
|
||||
upgrade_completed_with_amount: "Passage à %{plan} (%{interval}) terminé. Débit immédiat : %{amount}."
|
||||
upgrade_completed_pending_charge: "Passage à %{plan} (%{interval}) terminé. Le débit de la différence est en cours de traitement sur la carte enregistrée."
|
||||
next_renewal: le prochain renouvellement
|
||||
current_plan_generic: le forfait actuel
|
||||
downgrade_scheduled: "Passage à %{plan} (%{interval}) programmé : vous restez sur %{current_name} jusqu'au %{when}. Aucun débit supplémentaire maintenant ; à partir du prochain cycle, vous paierez le nouveau prix."
|
||||
activate_button: "Activer %{plan} — %{price}"
|
||||
switch_button: "Passer à %{plan} — %{price}"
|
||||
upgrade_info_line: "Upgrade (forfait supérieur ou passage à la facturation annuelle) : la différence est débitée immédiatement sur la carte Stripe enregistrée."
|
||||
downgrade_info_line: "Downgrade entre forfaits payants (ex. Full → Light) : le nouveau forfait est actif dès le prochain renouvellement ; jusque-là, les fonctionnalités du forfait actuel restent actives, sans débit supplémentaire pour l'instant."
|
||||
already_requested_line: "Vous avez déjà demandé %{plan} à partir du %{when} : jusque-là, %{current_plan} reste actif."
|
||||
regia:
|
||||
meta_title_fallback: "Régie — Match Live TV"
|
||||
title: "Régie — %{home} vs %{away}"
|
||||
subtitle_prefix: "Régie ·"
|
||||
status:
|
||||
ended: Terminé
|
||||
paused: En pause
|
||||
live: En direct
|
||||
waiting: En attente
|
||||
live_share_label: "Lien direct (spectateurs)"
|
||||
share_live: Partager le direct
|
||||
copy_link: Copier le lien
|
||||
regia_share_label: "Lien régie (score)"
|
||||
share_regia: Partager le lien régie
|
||||
preview_ended: Direct terminé
|
||||
preview_waiting: Aperçu en attente du signal…
|
||||
pause: Mettre en pause
|
||||
resume: Reprendre le direct
|
||||
stop: Terminer le direct
|
||||
modal:
|
||||
set_won_title: Set gagné
|
||||
confirm: Terminer le set
|
||||
cancel: Annuler
|
||||
board:
|
||||
next_period: Quart-temps suivant
|
||||
next_half: Mi-temps suivante
|
||||
close_set: Terminer le set
|
||||
free_score: Score libre
|
||||
stopwatch: Chronomètre
|
||||
generic_score: Score
|
||||
start: Démarrer
|
||||
pause: Pause
|
||||
reset: Réinitialiser
|
||||
points_suffix: pts
|
||||
partials_prefix: "Partiels :"
|
||||
set_label: "Set %{number}"
|
||||
js:
|
||||
period_updated: Période mise à jour
|
||||
now_in_period: "Maintenant en %{period}"
|
||||
set_won_body: "%{winner} a remporté le set. Clôturer le set ?"
|
||||
match_won_title: Match remporté
|
||||
match_won_body: "%{winner} a remporté le match. Clôturer le direct ?"
|
||||
close_set_confirm: Confirmez la clôture du set en cours ?
|
||||
score_update_error: Erreur de mise à jour du score
|
||||
generic_error: Erreur
|
||||
sets_line: "Set %{current} · Sets remportés %{home}-%{away}"
|
||||
quarter_label: "Q%{n}"
|
||||
half_label: "%{n}e mi-temps"
|
||||
overtime_basket: "Prol.%{n}"
|
||||
overtime_other: Prol.
|
||||
unknown_period: "—"
|
||||
resumed: Direct repris
|
||||
paused_cover: "Direct en pause — habillage à l'antenne"
|
||||
closed: Direct terminé
|
||||
resume_error: Erreur lors de la reprise du direct
|
||||
pause_error: Erreur lors de la mise en pause du direct
|
||||
close_error: Erreur de clôture
|
||||
close_confirm: Clôturer définitivement le direct ?
|
||||
link_unavailable: Lien non disponible
|
||||
link_copied: Lien copié
|
||||
copy_prompt: "Copiez le lien :"
|
||||
share_regia_text: "Ouvrez ce lien pour gérer le score du direct :"
|
||||
share_live_text: "Regardez le direct sur Match Live TV :"
|
||||
recordings:
|
||||
archive:
|
||||
back_prefix: "←"
|
||||
heading: Archives replay
|
||||
admin_suffix: (admin)
|
||||
lead_html: "Gère les enregistrements, la visibilité et les téléchargements. <strong>Privé</strong> = lien non indexé, n'apparaît pas sur la page publique <code>/replay</code>. La suppression d'un replay supprime aussi les fichiers sur le serveur et la vidéo YouTube associée."
|
||||
kpi_available: Replays disponibles
|
||||
kpi_expiring: "Bientôt expirés (7 j)"
|
||||
kpi_space: Espace d'archive
|
||||
kpi_views: Vues totales
|
||||
team_label: Équipe
|
||||
team_all: Toutes
|
||||
status_label: Statut
|
||||
status_all: Tous
|
||||
status_ready: Disponibles
|
||||
status_processing: En traitement
|
||||
status_expired: Expirés / erreur
|
||||
col_preview: Aperçu
|
||||
col_match: Match
|
||||
col_team: Équipe
|
||||
col_details: Détails
|
||||
col_status: Statut et visibilité
|
||||
col_actions: Actions
|
||||
watch_replay: Regarder le replay
|
||||
processing_title: Traitement en cours
|
||||
not_available_title: Replay non disponible
|
||||
views_suffix: vues
|
||||
expires_prefix: Expire le
|
||||
expires_days: "(%{count} j)"
|
||||
no_expiry: Aucune expiration
|
||||
new_expiry_title: Nouvelle date d'expiration
|
||||
save: Enregistrer
|
||||
extend_days: "+%{count} j"
|
||||
extend_title: "Prolonger l'expiration de %{count} jours"
|
||||
privacy_public: Public
|
||||
privacy_private: Privé
|
||||
privacy_hint_public: "Visible par tous — cliquer pour rendre privé"
|
||||
privacy_hint_private: "Uniquement avec le lien — cliquer pour rendre public"
|
||||
download_mp4: MP4
|
||||
download_mp4_title: Télécharger le MP4
|
||||
publish_youtube: "YT"
|
||||
publish_youtube_title: Publier sur YouTube
|
||||
open_youtube_title: Ouvrir sur YouTube
|
||||
delete_title: Supprimer le replay
|
||||
delete_confirm: Choisis où supprimer le replay. Action irréversible.
|
||||
no_recordings: Aucun enregistrement pour les filtres sélectionnés.
|
||||
confirm:
|
||||
choice_title: Que veux-tu supprimer ?
|
||||
choice_message: Choisis où supprimer le replay. Action irréversible.
|
||||
choice_site_label: Seulement du site
|
||||
choice_site_hint_with_youtube: La vidéo reste sur YouTube
|
||||
choice_site_hint_only: Supprime les fichiers du site
|
||||
choice_youtube_label: Seulement de YouTube
|
||||
choice_youtube_hint_with_site: Reste disponible sur le site
|
||||
choice_youtube_hint_only: Supprime uniquement la vidéo YouTube
|
||||
choice_both_label: Du site et de YouTube
|
||||
choice_both_hint: Suppression complète
|
||||
youtube_title: Supprimer de YouTube ?
|
||||
youtube_message: La vidéo sera retirée de YouTube. Le replay restera disponible sur le site.
|
||||
youtube_ok: Supprimer de YouTube
|
||||
site_title: Supprimer du site ?
|
||||
site_message_with_youtube: Le replay sera retiré du site. La vidéo sur YouTube restera en ligne.
|
||||
site_message_only: Tu es sur le point de supprimer définitivement ce replay du site. Action irréversible.
|
||||
site_ok: Supprimer du site
|
||||
status:
|
||||
deleted: Supprimé
|
||||
expired: Expiré
|
||||
failed: Erreur
|
||||
processing: En traitement
|
||||
expiring_soon: Bientôt expiré
|
||||
available: Disponible
|
||||
flash:
|
||||
web_base:
|
||||
login_required: Connecte-toi pour continuer
|
||||
access_denied: Accès non autorisé
|
||||
clubs:
|
||||
already_registered: Tu as déjà inscrit un club
|
||||
created: Club et première équipe créés.
|
||||
updated: Club mis à jour.
|
||||
complete_billing_first: Complète tes données de facturation avant d'activer un forfait premium.
|
||||
comped_change_denied: "Ce forfait est un abonnement offert géré par Match Live TV. Pour passer à un abonnement payant, contacte le support."
|
||||
stripe_not_configured: Paiements pas encore configurés sur le serveur
|
||||
already_on_plan: "Tu es déjà sur %{plan} (%{price})."
|
||||
change_already_scheduled: "Le passage à %{plan} est déjà programmé à partir du %{date}."
|
||||
stripe_error: "Erreur Stripe : %{message}"
|
||||
youtube_oauth_not_configured: OAuth YouTube non configuré sur le serveur
|
||||
youtube_disconnected: Chaîne YouTube du club déconnectée
|
||||
portal_not_configured: Portail de paiement non configuré
|
||||
checkout_success: "Paiement effectué ! Plan actif : %{plan}."
|
||||
checkout_canceled: Paiement annulé. Aucun débit n'a été effectué.
|
||||
club_billing:
|
||||
profile_saved_proceed_payment: Données enregistrées. Procède au paiement.
|
||||
profile_updated: Données de facturation mises à jour.
|
||||
stripe_not_configured: Stripe non configuré.
|
||||
subscription_canceled: "Abonnement résilié. Il reste actif jusqu'au %{date} ; à partir de ce jour tu passeras au forfait Gratuit."
|
||||
stripe_error: "Erreur Stripe : %{message}"
|
||||
invoice_pdf_unavailable: PDF de la facture non disponible.
|
||||
club_recordings:
|
||||
not_authorized: Non autorisé
|
||||
teams:
|
||||
added: "Équipe « %{name} » ajoutée."
|
||||
updated: Équipe mise à jour.
|
||||
now_staff: Ton compte est maintenant responsable diffusion.
|
||||
staff_role_removed: Rôle staff retiré de ton compte.
|
||||
invite_link_generated: "Lien d'invitation généré (valable 7 jours)"
|
||||
access_revoked: Accès révoqué
|
||||
invitation_canceled: Invitation annulée
|
||||
youtube_disconnected: Chaîne YouTube du club déconnectée
|
||||
matches:
|
||||
scheduled: "Match programmé : %{opponent}. Lance le streaming depuis l'application une fois sur place."
|
||||
updated: Match mis à jour.
|
||||
close_live_before_delete: Termine le direct avant de supprimer ce match.
|
||||
deleted: Match supprimé.
|
||||
schedule_denied: Seul un responsable diffusion ou le titulaire du club peut programmer des matchs.
|
||||
club_matches:
|
||||
invalid_team: Sélectionne une équipe valide.
|
||||
scheduled: "Match programmé : %{team} vs %{opponent}."
|
||||
no_schedulable_teams: Tu n'as pas les autorisations pour programmer des matchs dans ce club.
|
||||
team_roster_members:
|
||||
added: "%{name} ajouté(e) à l'effectif."
|
||||
updated: Fiche mise à jour.
|
||||
removed: "%{name} retiré(e) de l'effectif."
|
||||
invitations:
|
||||
invalid_or_expired: Invitation invalide ou expirée
|
||||
invalid: Invitation invalide
|
||||
wrong_email: "Cette invitation est destinée à %{email}"
|
||||
joined_team: Tu as rejoint l'équipe !
|
||||
signup_to_accept: "Inscris-toi avec %{email} pour accepter l'invitation"
|
||||
registrations:
|
||||
accept_terms_required: Tu dois accepter la politique de confidentialité et les conditions d'utilisation pour t'inscrire.
|
||||
welcome_to_team: Bienvenue dans l'équipe !
|
||||
account_created: Compte créé. Inscris maintenant ton club.
|
||||
sessions:
|
||||
welcome_back: Bon retour !
|
||||
invalid_credentials: E-mail ou mot de passe invalide
|
||||
logged_out: Déconnecté
|
||||
password_resets:
|
||||
email_sent: Si l'e-mail est enregistré, tu recevras bientôt un lien pour réinitialiser le mot de passe.
|
||||
invalid_or_expired_link: Lien invalide ou expiré. Demande une nouvelle réinitialisation du mot de passe.
|
||||
password_min_length: Le mot de passe doit comporter au moins 8 caractères
|
||||
password_mismatch: Les mots de passe ne correspondent pas
|
||||
password_updated: Mot de passe mis à jour. Tu peux maintenant te connecter.
|
||||
replay:
|
||||
download_unavailable: Téléchargement non disponible
|
||||
not_available: Replay non disponible
|
||||
live:
|
||||
index:
|
||||
meta_title: "Matchs jeunes en direct en ce moment — Match Live TV"
|
||||
meta_description: "Regardez les matchs jeunes en direct en ce moment et les prochains matchs programmés. Recherchez votre équipe et ouvrez le lien sans installer d'application."
|
||||
club_back_link: "← %{name}"
|
||||
club_title: "Directs et matchs — %{name}"
|
||||
club_hint: "Uniquement les équipes de ce club : directs en cours et matchs programmés depuis l'application ou le site."
|
||||
club_replay_link: "Replays de %{name}"
|
||||
default_title: "Directs et matchs programmés"
|
||||
default_hint: "Recherchez par club, équipe, adversaire ou lieu : retrouvez les directs actifs et les matchs programmés."
|
||||
replay_archive_link: "Directs passés — archive des replays"
|
||||
schedule_match_link: "Programmer un match"
|
||||
search_placeholder_club: "Rechercher club, équipe, adversaire ou lieu…"
|
||||
search_placeholder_default: "Ex. Crazy Volley, Série D, adversaire…"
|
||||
search_aria_label: "Rechercher une équipe"
|
||||
search_button: "Rechercher"
|
||||
reset_link: "Réinitialiser"
|
||||
results_hint: "Résultats pour «%{query}»%{club_suffix} : %{live_count} en direct · %{upcoming_count} à venir"
|
||||
results_hint_club_suffix: " dans %{name}"
|
||||
section_live_now: "En direct maintenant"
|
||||
badge_on_air: "À l'antenne"
|
||||
badge_live: "Live"
|
||||
badge_paused: "En pause"
|
||||
badge_reconnecting: "Reconnexion"
|
||||
badge_starting: "Démarrage"
|
||||
badge_scheduled: "Programmé"
|
||||
watch_link: "Regarder le direct →"
|
||||
section_upcoming: "Prochains matchs"
|
||||
upcoming_hint: "Programmés depuis l'application ou le site : le direct commencera dès que le staff lancera la diffusion."
|
||||
empty_soft_title: "Aucun direct pour le moment."
|
||||
empty_soft_body: "Revenez à l'heure indiquée : dès que l'équipe lancera le streaming, le match apparaîtra dans « En direct maintenant »."
|
||||
empty_club_title: "Aucun direct ou match programmé pour %{name}."
|
||||
empty_club_schedule_link: "Programmer le premier match"
|
||||
empty_club_schedule_suffix: " ou depuis l'application Match Live TV."
|
||||
empty_club_ask_staff: "Demandez au responsable du club ou à un responsable diffusion de programmer un match."
|
||||
empty_club_add_team_html: "Ajoutez une équipe depuis la %{club_link} et programmez le premier match."
|
||||
empty_club_page_link: "page du club"
|
||||
empty_club_back_link: "← Retour au club"
|
||||
empty_hero_title: "Aucun direct pour le moment — mais vous pouvez déjà vous organiser"
|
||||
empty_hero_body: "Si votre équipe utilise Match Live TV, le match peut être programmé depuis le téléphone avec une date et une heure. Parents et proches retrouveront ici le direct dès que le coup d'envoi approchera."
|
||||
empty_hero_list_item1: "Programmez le match depuis l'application (sans démarrer le direct tout de suite)"
|
||||
empty_hero_list_item2: "Le match apparaît dans « Prochains matchs » avec l'heure et le terrain"
|
||||
empty_hero_list_item3: "Le streaming ne démarre que lorsque vous appuyez sur démarrer dans la salle"
|
||||
empty_hero_cta_signup: "Inscrivez votre équipe"
|
||||
empty_hero_cta_features: "Découvrez comment ça marche"
|
||||
demo_aria_label: "Exemple de direct actif"
|
||||
demo_label: "Exemple — voici à quoi ressemble un direct actif"
|
||||
demo_meta: "PalaTigers · Match Live TV"
|
||||
demo_sets: "Set 2 · Sets gagnés 1-0"
|
||||
show:
|
||||
back_to_all: "← Tous les directs"
|
||||
title: "%{club_name} · %{team_name} vs %{opponent_name} — Direct"
|
||||
meta_description: "Suivez %{club_name} en direct — %{team_name} vs %{opponent_name}%{location}. Regardez depuis votre navigateur, sans installer d'application."
|
||||
meta_description_location: " — %{location}"
|
||||
stream_ended_title: "Direct terminé"
|
||||
stream_ended_body: "La diffusion de ce match a été arrêtée."
|
||||
stream_ended_closed_at: "Terminé le %{date}"
|
||||
stream_ended_hint: "Le score est visible dans la vidéo si le direct était encore en cours."
|
||||
stream_ended_reload_hint: "Rechargez la page pour le dernier état enregistré."
|
||||
all_live_link: "Tous les directs"
|
||||
youtube_title: "Direct sur YouTube"
|
||||
youtube_available_body: "Ce match est diffusé sur la chaîne YouTube Match Live TV, pas sur le lecteur du site."
|
||||
youtube_watch_link: "Regarder sur YouTube"
|
||||
youtube_preparing_body: "Nous préparons le direct sur la chaîne YouTube. Actualisez dans quelques secondes."
|
||||
youtube_hint: "Partagez uniquement le lien YouTube avec les supporters et le club."
|
||||
play_hint: "▶ Démarrer le direct"
|
||||
offline_msg: "Le direct n'est pas encore disponible. Il se met à jour automatiquement dès qu'il reprend l'antenne."
|
||||
awaiting_msg: "En attente du signal du téléphone — ouvrez la caméra dans l'application et vérifiez que le direct est bien démarré (pas en pause)."
|
||||
paused_msg: "Diffusion en pause — le flux continue (écran de couverture serveur)."
|
||||
js_reconnecting_awaiting: "Reconnexion en cours - en attente de la vidéo de l'événement"
|
||||
overlays:
|
||||
badge_ended: "Terminé"
|
||||
badge_waiting: "En attente"
|
||||
replay:
|
||||
index:
|
||||
meta_title: "Replay — Match Live TV"
|
||||
meta_description: "Archive des replays des directs sportifs sur Match Live TV. Recherchez par club, équipe ou adversaire."
|
||||
back_to_live: "← Directs en cours"
|
||||
title: "Directs passés"
|
||||
hint: "Replays publics des clubs sportifs — concerne les matchs déjà diffusés."
|
||||
search_placeholder: "Ex. Tigers Volley, adversaire, club, lieu…"
|
||||
search_aria_label: "Rechercher un replay"
|
||||
search_button: "Rechercher"
|
||||
reset_link: "Réinitialiser"
|
||||
club_filter_label: "Club"
|
||||
club_filter_all: "Tous les clubs"
|
||||
results_hint: "Résultats pour «%{query}»%{club_suffix} : %{count} replays"
|
||||
results_hint_club_suffix: " · %{name}"
|
||||
empty_filtered_title: "Aucun replay trouvé"
|
||||
empty_filtered_suffix: " avec les filtres sélectionnés."
|
||||
empty_filtered_show_all: "Afficher tous les replays publics"
|
||||
empty_default_title: "Aucun replay public pour le moment."
|
||||
empty_default_body: "Quand un club rend un enregistrement public, il apparaîtra ici."
|
||||
empty_default_live_link: "Voir les directs en cours"
|
||||
show:
|
||||
title: "Replay — %{title}"
|
||||
meta_description: "Replay %{title} sur Match Live TV."
|
||||
back_to_replays: "← Directs passés"
|
||||
processing_title: "Replay en cours de traitement"
|
||||
processing_body: "L'enregistrement est en cours de préparation. Vous recevrez un e-mail dès qu'il sera prêt."
|
||||
badge_label: "REPLAY"
|
||||
meta_line_duration: "Durée %{value}"
|
||||
meta_line_until: "Jusqu'au %{date}"
|
||||
meta_line_public: "Public"
|
||||
meta_line_private: "Privé (lien)"
|
||||
download_link: "Télécharger le MP4"
|
||||
youtube_link: "Ouvrir sur YouTube"
|
||||
youtube_only_body: "Replay sur YouTube (aucune copie serveur disponible)."
|
||||
file_missing_title: "Fichier non disponible"
|
||||
file_missing_body: "La vidéo n'est plus sur le serveur (archive supprimée ou en migration)."
|
||||
file_missing_meta: "Durée enregistrée : %{duration} · %{size}"
|
||||
failed_title: "Replay non disponible"
|
||||
failed_default_body: "Erreur lors du traitement de l'enregistrement."
|
||||
unavailable_title: "Replay non disponible"
|
||||
unavailable_body: "Cet enregistrement n'est plus accessible."
|
||||
team_pages:
|
||||
index:
|
||||
meta_title: "Équipes sur Match Live TV — Directs et replays sports jeunes"
|
||||
meta_description: "Découvrez les équipes sportives jeunes qui diffusent sur Match Live TV. Recherchez par nom, filtrez par sport, trouvez les directs en cours et les archives de replays."
|
||||
heading: "Équipes sur Match Live TV"
|
||||
hint: "Clubs et équipes avec des directs, des replays publics ou des matchs programmés. Recherchez votre équipe et ouvrez la page pour suivre le calendrier et l'archive."
|
||||
search_placeholder: "Nom de l'équipe, club, ville ou salle…"
|
||||
search_aria_label: "Rechercher une équipe"
|
||||
search_button: "Rechercher"
|
||||
sport_label: "Sport"
|
||||
sport_all: "Tous les sports"
|
||||
chips_label: "Afficher"
|
||||
chip_live: "En direct"
|
||||
chip_replays: "Avec replays"
|
||||
reset_link: "Réinitialiser"
|
||||
results_found: "%{count} équipes trouvées"
|
||||
results_active: "%{count} équipes actives"
|
||||
results_query_suffix: " pour «%{query}»"
|
||||
results_sport_suffix: " · %{sport}"
|
||||
badge_live: "En direct"
|
||||
badge_upcoming: "%{count} à venir"
|
||||
badge_replay: "%{count} replays"
|
||||
empty_filtered_title: "Aucune équipe trouvée"
|
||||
empty_filtered_suffix: " avec les filtres sélectionnés."
|
||||
empty_filtered_show_all: "Afficher toutes les équipes actives"
|
||||
empty_default_title: "Aucune équipe active pour le moment."
|
||||
empty_default_body: "Quand un club démarrera un direct ou publiera des replays, il apparaîtra ici."
|
||||
empty_default_live_link: "Voir les directs en cours"
|
||||
footer_live_link: "Directs en cours"
|
||||
footer_replay_link: "Archive des replays"
|
||||
show:
|
||||
title: "%{team} — %{club} | Match Live TV"
|
||||
meta_description: "Suivez %{team} (%{club}) : directs, calendrier des matchs et replays sur Match Live TV."
|
||||
breadcrumb_all_teams: "← Toutes les équipes"
|
||||
live_now_label: "En direct maintenant"
|
||||
watch_live_link: "Regarder le direct"
|
||||
all_live_link: "Tous les directs"
|
||||
replay_archive_link: "Archive des replays"
|
||||
section_live_now: "En direct maintenant"
|
||||
section_upcoming: "Prochains matchs"
|
||||
upcoming_hint: "Programmés par le club : le direct commencera dès que le staff lancera la diffusion."
|
||||
section_replays: "Replays récents"
|
||||
replays_more_link: "Voir tous les replays de %{team} →"
|
||||
section_roster: "Effectif"
|
||||
empty_title: "Aucun direct ou replay pour le moment."
|
||||
empty_body: "Revenez avant les prochains matchs : les directs, le calendrier et l'archive de l'équipe apparaîtront ici."
|
||||
empty_link: "Voir tous les directs"
|
||||
score:
|
||||
timer_label: "Chronomètre"
|
||||
generic_label: "Score"
|
||||
sets_label: "Set %{set} · Sets gagnés %{home}-%{away}"
|
||||
partial_entry: "Set %{set} %{home}-%{away}"
|
||||
partial_entry_no_number: "Set %{home}-%{away}"
|
||||
partials_prefix: "Partiels : %{value}"
|
||||
points_label: "%{team} %{home} - %{away} %{opponent}"
|
||||
fallback: "—"
|
||||
default_club_name: "Club"
|
||||
scheduled_date_format: "%d/%m/%Y à %H:%M"
|
||||
scheduled_today: "Aujourd'hui à %{time}"
|
||||
scheduled_tomorrow: "Demain à %{time}"
|
||||
@@ -0,0 +1,786 @@
|
||||
it:
|
||||
club:
|
||||
back_to_club: "← Società"
|
||||
sport_label: Sport principale
|
||||
branding_legend: Logo e colori societari
|
||||
branding:
|
||||
legend: Identità visiva
|
||||
inherit_hint: Lascia vuoto per usare logo e colori della società.
|
||||
logo_file_label: Logo (immagine)
|
||||
logo_preview_alt: Anteprima logo
|
||||
no_logo_placeholder: "Nessun logo — scegli un file per l'anteprima"
|
||||
logo_url_label: Logo (URL alternativo)
|
||||
primary_color_label: Colore principale
|
||||
secondary_color_label: Colore secondario
|
||||
choose_color: Scegli colore
|
||||
quick_colors: Colori rapidi
|
||||
header_preview_label: Anteprima intestazione
|
||||
name_placeholder: Nome società / squadra
|
||||
dashboard:
|
||||
title: "%{name} — Società"
|
||||
plan_label: "Piano:"
|
||||
teams_count_label: "Squadre:"
|
||||
edit_club: Modifica società
|
||||
subscription: Abbonamento
|
||||
new_team: Nuova squadra
|
||||
live_streams: Dirette live
|
||||
replay_archive: Archivio Replay
|
||||
replay_heading: Replay
|
||||
available: disponibili
|
||||
expiring_soon: "in scadenza (7 gg)"
|
||||
space_used: spazio occupato
|
||||
views: visualizzazioni
|
||||
teams_heading: Squadre
|
||||
team_col: Squadra
|
||||
branding_col: Branding
|
||||
branding_custom: Personalizzato
|
||||
branding_inherited: Eredita dalla società
|
||||
public_page: Pagina pubblica
|
||||
details: Dettagli
|
||||
matches: Partite
|
||||
edit: Modifica
|
||||
no_teams_html: "Nessuna squadra. %{link}."
|
||||
add_first_team: Aggiungi la prima
|
||||
footer_note: "Ogni squadra ha i propri responsabili trasmissione. Il punteggio da un altro telefono usa il link regia (senza account). L'abbonamento vale per tutta la società."
|
||||
edit:
|
||||
title: "Modifica società — %{name}"
|
||||
heading: Modifica società
|
||||
name_label: Nome società
|
||||
save: Salva
|
||||
new:
|
||||
title: "Registra società — Match Live TV"
|
||||
meta_description: Crea la società sportiva e la prima squadra su Match Live TV.
|
||||
heading: La tua società
|
||||
lead: "Registra il club: potrai aggiungere più squadre (Under 13, Under 15, Serie C…)."
|
||||
section_club: Società
|
||||
name_label: Nome società / club
|
||||
name_placeholder: "es. Crazy Volley Rozzano"
|
||||
section_first_team: Prima squadra
|
||||
default_first_team_name: Prima squadra
|
||||
first_team_name_label: Nome squadra
|
||||
first_team_name_placeholder: "es. Under 15"
|
||||
plan_label: "Piano iniziale (per tutta la società)"
|
||||
plan_free: "Free — 1 responsabile trasmissione per squadra, 1 live"
|
||||
plan_light: Premium Light
|
||||
plan_full: Premium Full
|
||||
interval_label: Fatturazione premium
|
||||
interval_yearly: "Annuale — €40/anno (Light) o €200/anno (Full)"
|
||||
interval_monthly: "Mensile — €5/mese (Light) o €20/mese (Full)"
|
||||
submit: Crea società
|
||||
billing:
|
||||
title: "Abbonamento — %{name}"
|
||||
comped:
|
||||
title: Abbonamento omaggio Match Live TV
|
||||
plan_prefix: "— piano"
|
||||
no_payment_html: "Non è richiesto alcun pagamento. Per modifiche o passaggio a un piano a pagamento, contatta %{email_link}."
|
||||
youtube:
|
||||
heading: YouTube Live
|
||||
connected_notice: Canale YouTube della società collegato con successo.
|
||||
light_body_html: "Con il piano <strong>Premium Light</strong> le dirette YouTube di tutte le squadre vanno sul canale ufficiale <strong>Match Live TV</strong>. Non serve collegare un canale della società."
|
||||
light_ready: "Canale pronto · seleziona «YouTube Live» nell'app mobile."
|
||||
light_configuring: Canale Match Live TV in configurazione lato server. Contatta il supporto se YouTube non compare in app.
|
||||
full_connected_html: "Canale collegato per <strong>tutta la società</strong>: <strong>%{channel}</strong>"
|
||||
full_connected_hint: Tutte le squadre possono trasmettere su questo canale quando scelgono il canale società in app.
|
||||
disconnect: Scollega canale
|
||||
disconnect_confirm: Scollegare il canale YouTube? Le dirette useranno il canale Match Live TV finché non ricolleghi il tuo.
|
||||
full_not_connected_html: "Senza canale collegato, le dirette YouTube dall'app vanno sul canale ufficiale <strong>Match Live TV</strong>. Collega qui il canale YouTube della società (vale per tutte le squadre)."
|
||||
ready_in_app: "YouTube pronto in app (canale Match Live TV finché non colleghi il tuo)."
|
||||
connect: Collega il canale YouTube della società
|
||||
oauth_not_configured: OAuth YouTube non ancora configurato sul server.
|
||||
requires_full: YouTube sul canale della società richiede il piano Premium Full.
|
||||
see_plans: Vedi piani
|
||||
team:
|
||||
back_to_details: "← Dettagli squadra"
|
||||
sport_label: Sport
|
||||
details:
|
||||
title: "Dettagli — %{name}"
|
||||
meta_description: "Dettagli squadra %{name} su Match Live TV."
|
||||
nav_aria: Percorso squadra
|
||||
edit_team: Modifica squadra
|
||||
plan_label: "Piano:"
|
||||
plan_scope_club: (società)
|
||||
staff_label: "Responsabili trasmissione:"
|
||||
active_matches_label: "Partite attive:"
|
||||
unlimited: illimitate
|
||||
no_description: Nessuna descrizione.
|
||||
add_description_link: Aggiungila dalla modifica squadra
|
||||
roster_count_label: in organico
|
||||
no_photo: Foto squadra non ancora caricata
|
||||
add_photo_link: Aggiungi dalla modifica squadra
|
||||
public_page: Pagina pubblica
|
||||
streaming_managers: Responsabili trasmissione
|
||||
schedule_matches: Programma partite
|
||||
live_streams: Dirette live
|
||||
no_people_in_category: Nessuna persona in questa categoria.
|
||||
youtube_hint_html: "Il canale YouTube della società si configura dalla pagina %{club_link} (sezione YouTube Live)."
|
||||
footer_note: Usa l'app mobile con le stesse credenziali per avviare partite e dirette.
|
||||
edit:
|
||||
title: "Modifica squadra — %{name}"
|
||||
club_label: "Società:"
|
||||
name_label: Nome squadra
|
||||
description_label: Descrizione squadra
|
||||
description_placeholder: "Presentazione della squadra, palmarès, obiettivi della stagione…"
|
||||
photo_label: "Foto di squadra (gruppo o stemma)"
|
||||
photo_alt: Foto squadra
|
||||
branding_legend: Branding squadra (override)
|
||||
slug_label: Indirizzo pagina pubblica
|
||||
slug_hint_html: "Genitori e tifosi trovano la squadra su <strong>%{base_url}/squadre/%{slug}</strong>"
|
||||
slug_title: "Solo lettere minuscole, numeri e trattini"
|
||||
roster_public_label: Mostra l'organico sulla pagina pubblica
|
||||
roster_public_hint: Se attivo, giocatori e staff sono visibili a chiunque abbia il link. Puoi lasciarlo disattivato per privacy.
|
||||
club_colors_label: "Colori società:"
|
||||
submit: Salva squadra
|
||||
new:
|
||||
title: "Nuova squadra — %{name}"
|
||||
heading: Nuova squadra
|
||||
club_label: "Società:"
|
||||
name_label: Nome squadra
|
||||
name_placeholder: "es. Under 13, Serie C"
|
||||
branding_legend: Override branding (opzionale)
|
||||
submit: Aggiungi squadra
|
||||
invite:
|
||||
title: "Staff trasmissione — %{name}"
|
||||
heading: Responsabili trasmissione
|
||||
assigned_label: "Assegnati:"
|
||||
per_team_note: (per squadra, rinnovo annuale)
|
||||
info: "Il responsabile trasmissione avvia la diretta dall'app (camera sul cavalletto). Per il punteggio da un secondo telefono non serve un account: condivide il <strong>link regia</strong> dalla schermata di trasmissione (WhatsApp, email, SMS, ecc.)."
|
||||
self_assign_hint_html: "<strong>%{email}</strong> — puoi gestire tu camera e punteggio, oppure invitare altri per la trasmissione."
|
||||
self_assign_submit: Sono io — responsabile trasmissione
|
||||
invite_other_heading: Invita un'altra email
|
||||
email_label: Email del responsabile trasmissione
|
||||
submit: Genera link di accesso
|
||||
share_hint: "Condividi (valido 7 giorni):"
|
||||
billing:
|
||||
title: "Abbonamento — %{name}"
|
||||
team_label: "Squadra:"
|
||||
current_plan_label: "Piano attuale:"
|
||||
staff_line: "Staff trasmissione: %{count} / anno"
|
||||
matches_line: "Partite: %{count} in contemporanea"
|
||||
replay_line: "Replay: %{value}"
|
||||
replay_days: "%{count} giorni"
|
||||
replay_none: "no"
|
||||
youtube_line: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: canale società
|
||||
youtube_none: "no"
|
||||
current_plan: Piano attuale
|
||||
manage_club_subscription: Gestisci abbonamento società
|
||||
stripe_not_configured: Stripe non configurato
|
||||
contact_lead: "Esigenze diverse?"
|
||||
contact_cta: Contattaci
|
||||
contact_trailer: per un'offerta su misura.
|
||||
club_payments_link: Pagamenti e fatture della società
|
||||
streaming_staff:
|
||||
self_account_heading: "Il tuo account (%{email})"
|
||||
self_account_hint: "Puoi gestire la trasmissione dall'app. Per il punteggio da un altro telefono, condividi il <strong>link regia</strong> durante la diretta (non serve un secondo account)."
|
||||
self_assign_submit: Sono io — responsabile trasmissione
|
||||
staff_heading: Responsabili trasmissione (app)
|
||||
col_name: Nome
|
||||
col_email: Email
|
||||
col_role: Ruolo
|
||||
role_transmission: Trasmissione
|
||||
you_suffix: (tu)
|
||||
clear_self_staff: Rimuovi ruolo staff
|
||||
clear_self_staff_confirm: Rimuovere il ruolo staff dal tuo account?
|
||||
revoke: Revoca
|
||||
revoke_confirm: "Revocare l'accesso a %{name}?"
|
||||
no_staff: Nessun responsabile trasmissione.
|
||||
invite_someone: Invita qualcuno
|
||||
pending_invitations_heading: Inviti in attesa
|
||||
col_email_short: Email
|
||||
col_expires: Scade
|
||||
cancel_invitation: Annulla
|
||||
no_pending: Nessuna richiesta in sospeso.
|
||||
archive_heading: Archivio replay
|
||||
col_match: Partita
|
||||
col_date: Data
|
||||
col_duration: Durata
|
||||
col_expiry: Scadenza
|
||||
col_status: Stato
|
||||
watch: Guarda
|
||||
manage_all_replays: Gestisci tutti i replay
|
||||
no_recordings: Nessun replay ancora. Al termine delle dirette Premium le registrazioni compaiono qui.
|
||||
matches:
|
||||
back_to_list: "← Elenco partite"
|
||||
opponent_label: Avversario
|
||||
opponent_placeholder: "es. Volley Milano"
|
||||
location_label: "Luogo (opzionale)"
|
||||
location_placeholder: "Palestra, città"
|
||||
datetime_label: Data e ora
|
||||
form_hint: "La diretta non parte da sola: comparirà in app e sul sito. Avvierai lo streaming dal telefono quando sei in campo."
|
||||
edit:
|
||||
title: "Modifica partita — %{name}"
|
||||
heading: Modifica partita
|
||||
submit: Salva modifiche
|
||||
new:
|
||||
title: "Programma partita — %{name}"
|
||||
heading: Programma partita
|
||||
submit: Salva in programma
|
||||
index:
|
||||
title: "Partite — %{name}"
|
||||
heading: "Partite — %{name}"
|
||||
lead: "Programma qui da PC data, avversario e luogo. Quando sei in palestra apri l'app Match Live TV, seleziona questa squadra e avvia la diretta sulla partita."
|
||||
schedule_match: Programma partita
|
||||
team_details: Dettagli squadra
|
||||
live_and_schedule: Dirette e programma
|
||||
col_opponent: Avversario
|
||||
col_datetime: "Data e ora"
|
||||
col_location: Luogo
|
||||
col_status: Stato
|
||||
no_time: Senza orario
|
||||
no_location: "—"
|
||||
edit: Modifica
|
||||
delete: Elimina
|
||||
delete_confirm: Eliminare questa partita?
|
||||
empty_html: "Nessuna partita in calendario. %{link}."
|
||||
schedule_first: Programma la prima
|
||||
club_new:
|
||||
title: "Programma partita — %{name}"
|
||||
back_link: "← Dirette e partite"
|
||||
heading: Programma partita
|
||||
admin_hint: "· Puoi scegliere qualsiasi squadra della società"
|
||||
staff_hint: "· Solo le squadre in cui sei responsabile trasmissione"
|
||||
team_label: Squadra
|
||||
submit: Salva in programma
|
||||
status:
|
||||
active: In corso / da riprendere
|
||||
scheduled: Programmata
|
||||
ready: Pronta
|
||||
no_time: Senza orario
|
||||
roster:
|
||||
back_to_details: "← Dettagli squadra"
|
||||
category:
|
||||
staff: Staff
|
||||
coach: Allenatori
|
||||
manager: Dirigenti
|
||||
player: Giocatori
|
||||
role:
|
||||
coach: Allenatore
|
||||
manager: Dirigente
|
||||
staff: Staff
|
||||
player: Giocatore
|
||||
player_numbered: "Giocatore #%{number}"
|
||||
errors:
|
||||
role_invalid: non è un ruolo valido per questo sport
|
||||
photo_invalid_type: deve essere PNG, JPEG o WebP
|
||||
role_select_blank: "— Seleziona ruolo —"
|
||||
edit:
|
||||
title: "Modifica — %{name}"
|
||||
member_form:
|
||||
edit_heading: Modifica scheda
|
||||
new_heading: Aggiungi persona
|
||||
lead: Compila i campi e salva per aggiornare l'organico.
|
||||
category_label: Gruppo
|
||||
full_name_label: Nome e cognome
|
||||
full_name_placeholder: "es. Mario Rossi"
|
||||
role_player_label: Ruolo in campo
|
||||
role_other_label: "Ruolo (opzionale)"
|
||||
role_other_placeholder: "es. Capo allenatore, Presidente, Massaggiatore"
|
||||
jersey_label: Numero maglia
|
||||
jersey_placeholder: "es. 7"
|
||||
bio_label: Descrizione breve
|
||||
bio_placeholder: "Breve presentazione per la scheda…"
|
||||
photo_label: Foto
|
||||
photo_hint: Senza foto verrà mostrato un avatar con i colori della squadra.
|
||||
submit_edit: Salva scheda
|
||||
submit_new: Aggiungi all'organico
|
||||
person_card:
|
||||
edit: Modifica
|
||||
remove: Rimuovi
|
||||
remove_confirm: "Rimuovere %{name} dall'organico?"
|
||||
billing:
|
||||
heading: Abbonamento
|
||||
entity_types:
|
||||
company: "Società / ASD con P.IVA"
|
||||
individual: Persona fisica
|
||||
nonprofit: Associazione senza scopo di lucro
|
||||
profile_errors:
|
||||
entity_type: Tipo intestatario
|
||||
legal_name: Ragione sociale o nome intestatario
|
||||
email: Email di fatturazione
|
||||
address: Indirizzo
|
||||
city: Città
|
||||
province: "Provincia (sigla 2 lettere)"
|
||||
postal_code: CAP
|
||||
country: "Paese (ISO)"
|
||||
vat_number: Partita IVA
|
||||
fiscal_code: Codice Fiscale
|
||||
vat_or_fiscal: P.IVA o Codice Fiscale
|
||||
sdi_or_pec: "Codice destinatario SDI (7 caratteri) o PEC"
|
||||
sdi_invalid: "Codice destinatario SDI (7 caratteri)"
|
||||
actions:
|
||||
current_plan: Piano attuale
|
||||
contact_for_free: "Per passare al piano Free, contatta il supporto."
|
||||
stripe_not_configured: Stripe non configurato
|
||||
stripe_prices_not_configured: Prezzi Stripe non configurati
|
||||
complete_billing_prefix: Completa i dati di fatturazione prima di attivare un piano premium.
|
||||
profile_incomplete_default: Completa i dati di fatturazione prima di attivare un piano premium.
|
||||
profile_missing: "Mancano: %{fields}."
|
||||
profile:
|
||||
title: "Dati di fatturazione — %{name}"
|
||||
heading: Dati di fatturazione
|
||||
lead: "Società: %{name}. Inserisci i dati per l'intestazione delle fatture e l'invio tramite SDI o PEC."
|
||||
required_notice: Obbligatori per abbonarti a un piano premium.
|
||||
after_save_hint_html: "Dopo il salvataggio potrai procedere al pagamento di <strong>%{plan}</strong>."
|
||||
submit: Salva dati di fatturazione
|
||||
back_to_billing: "← Abbonamento"
|
||||
fields:
|
||||
legend: Dati di fatturazione
|
||||
legend_hint: "Tutti i campi contrassegnati sono obbligatori per abbonarti a un piano premium e per emettere le fatture. Per le società serve la P.IVA; per le persone fisiche il Codice Fiscale. Serve SDI oppure PEC. I pagamenti restano gestiti in modo sicuro da Stripe."
|
||||
entity_type_label: "Tipo intestatario *"
|
||||
legal_name_label: "Ragione sociale / nome e cognome *"
|
||||
legal_name_placeholder: "es. ASD Tigers Volley"
|
||||
vat_number_label: "Partita IVA * (società)"
|
||||
fiscal_code_label: "Codice Fiscale * (persona fisica)"
|
||||
fiscal_code_placeholder: RSSMRA80A01H501U
|
||||
email_label: "Email fatturazione *"
|
||||
email_placeholder: amministrazione@societa.it
|
||||
phone_label: "Telefono (opzionale)"
|
||||
address_label: "Indirizzo *"
|
||||
address_placeholder: "Via Roma 1"
|
||||
city_label: "Città *"
|
||||
province_label: "Prov. *"
|
||||
province_placeholder: MI
|
||||
postal_code_label: "CAP *"
|
||||
country_label: "Paese (ISO) *"
|
||||
recipient_code_label: "Codice destinatario SDI (7 car.) *"
|
||||
recipient_code_placeholder: XXXXXXX
|
||||
pec_label: "PEC (alternativa a SDI) *"
|
||||
pec_placeholder: pec@societa.it
|
||||
documents:
|
||||
heading: Pagamenti e fatture
|
||||
lead: Storico dei pagamenti della società e relative fatture emesse da Match Live TV.
|
||||
incomplete_title: Dati di fatturazione incompleti.
|
||||
incomplete_body: Compila ragione sociale, indirizzo, P.IVA/CF e SDI o PEC per ricevere le fatture via email.
|
||||
complete_now: Completa ora
|
||||
holder_label: "Intestatario: %{summary}"
|
||||
edit_data: Modifica dati
|
||||
table_heading: Pagamenti e fatture
|
||||
col_date: Data
|
||||
col_description: Descrizione
|
||||
col_amount: Importo
|
||||
col_status: Stato pagamento
|
||||
col_invoice: Fattura
|
||||
download_pdf: Scarica PDF
|
||||
pdf_preparing: PDF in preparazione
|
||||
no_payments: Nessun pagamento registrato. Dopo un abbonamento premium comparirà qui.
|
||||
subscription_status:
|
||||
club_label: "Società: %{name}"
|
||||
current_plan_label: "Piano attuale: %{plan}"
|
||||
comped_suffix: (omaggio Match Live TV)
|
||||
valid_for_all_teams: (valido per tutte le squadre)
|
||||
manage_subscription: Gestisci abbonamento
|
||||
cancel_scheduled_html: "Abbonamento valido fino al <strong>%{date}</strong>, poi piano Free."
|
||||
change_pending_html: "Dal <strong>%{date}</strong> passerai a <strong>%{plan}</strong>%{interval}. Fino ad allora resta attivo <strong>%{current_plan}</strong>."
|
||||
end_of_period: fine periodo
|
||||
next_renewal: prossimo rinnovo
|
||||
next_renewal_label: "Prossimo rinnovo: %{date}"
|
||||
plan_change_info:
|
||||
trigger_label: Info cambio piano e fatturazione
|
||||
title: Cambio piano e fatturazione
|
||||
subscription_cancel:
|
||||
scheduled_title: Disdetta programmata.
|
||||
scheduled_body_html: "Il piano <strong>%{plan}</strong> resta attivo fino al <strong>%{date}</strong>. Da quel giorno la società passerà automaticamente al piano <strong>Free</strong>."
|
||||
scheduled_end_of_period: fine del periodo già pagato
|
||||
scheduled_support_hint: Per ripristinare l'abbonamento prima della scadenza, contatta il supporto Match Live TV.
|
||||
info: "Puoi disdire in qualsiasi momento: l'abbonamento resta valido fino alla fine del periodo già pagato, poi passi al piano Free senza ulteriori addebiti."
|
||||
cancel_button: Annulla abbonamento
|
||||
confirm_with_date: "Confermi la disdetta? Il piano %{plan} resterà attivo fino al %{date}, poi passerai al Free."
|
||||
confirm_default: Confermi la disdetta dell'abbonamento?
|
||||
stripe_secure:
|
||||
compact_html: "Pagamenti premium elaborati in modo sicuro tramite <strong>Stripe</strong>."
|
||||
full_html: "I pagamenti dei piani premium sono elaborati in modo <strong>sicuro</strong> tramite <strong>Stripe</strong> (certificazione PCI DSS). Match Live TV non memorizza i numeri completi della carta."
|
||||
messages:
|
||||
upgrade_completed_with_amount: "Upgrade a %{plan} (%{interval}) completato. Addebito immediato: %{amount}."
|
||||
upgrade_completed_pending_charge: "Upgrade a %{plan} (%{interval}) completato. L'addebito della differenza è in elaborazione sulla carta salvata."
|
||||
next_renewal: il prossimo rinnovo
|
||||
current_plan_generic: il piano attuale
|
||||
downgrade_scheduled: "Passaggio a %{plan} (%{interval}) programmato: resti su %{current_name} fino al %{when}. Nessun addebito aggiuntivo ora; dal prossimo ciclo pagherai il nuovo prezzo."
|
||||
activate_button: "Attiva %{plan} — %{price}"
|
||||
switch_button: "Passa a %{plan} — %{price}"
|
||||
upgrade_info_line: "Upgrade (piano superiore o passaggio alla fatturazione annuale): la differenza viene addebitata subito sulla carta salvata in Stripe."
|
||||
downgrade_info_line: "Downgrade tra piani a pagamento (es. Full → Light): il nuovo piano è attivo dal prossimo rinnovo; fino ad allora restano le funzioni del piano attuale, senza addebito aggiuntivo ora."
|
||||
already_requested_line: "Hai già richiesto %{plan} dal %{when}: fino ad allora resta attivo %{current_plan}."
|
||||
regia:
|
||||
meta_title_fallback: "Regia — Match Live TV"
|
||||
title: "Regia — %{home} vs %{away}"
|
||||
subtitle_prefix: "Regia ·"
|
||||
status:
|
||||
ended: Terminata
|
||||
paused: In pausa
|
||||
live: In onda
|
||||
waiting: In attesa
|
||||
live_share_label: "Link diretta (spettatori)"
|
||||
share_live: Condividi diretta
|
||||
copy_link: Copia link
|
||||
regia_share_label: "Link regia (punteggio)"
|
||||
share_regia: Condividi link regia
|
||||
preview_ended: Diretta terminata
|
||||
preview_waiting: Anteprima in attesa del segnale…
|
||||
pause: Metti in pausa
|
||||
resume: Riprendi diretta
|
||||
stop: Chiudi diretta
|
||||
modal:
|
||||
set_won_title: Set vinto
|
||||
confirm: Chiudi set
|
||||
cancel: Annulla
|
||||
board:
|
||||
next_period: Prossimo quarto
|
||||
next_half: Prossimo tempo
|
||||
close_set: Chiudi set
|
||||
free_score: Punteggio libero
|
||||
stopwatch: Cronometro
|
||||
generic_score: Punteggio
|
||||
start: Avvia
|
||||
pause: Pausa
|
||||
reset: Reset
|
||||
points_suffix: pt
|
||||
partials_prefix: "Parziali:"
|
||||
set_label: "Set %{number}"
|
||||
js:
|
||||
period_updated: Periodo aggiornato
|
||||
now_in_period: "Ora in %{period}"
|
||||
set_won_body: "%{winner} ha vinto il set. Chiudere il set?"
|
||||
match_won_title: Partita vinta
|
||||
match_won_body: "%{winner} ha vinto la partita. Chiudere la diretta?"
|
||||
close_set_confirm: Confermi la chiusura del set corrente?
|
||||
score_update_error: Errore aggiornamento punteggio
|
||||
generic_error: Errore
|
||||
sets_line: "Set %{current} · Set vinti %{home}-%{away}"
|
||||
quarter_label: "Q%{n}"
|
||||
half_label: "%{n}° tempo"
|
||||
overtime_basket: "OT%{n}"
|
||||
overtime_other: Suppl.
|
||||
unknown_period: "—"
|
||||
resumed: Diretta ripresa
|
||||
paused_cover: "Diretta in pausa — copertina in onda"
|
||||
closed: Diretta chiusa
|
||||
resume_error: Errore ripresa diretta
|
||||
pause_error: Errore pausa diretta
|
||||
close_error: Errore chiusura
|
||||
close_confirm: Chiudere definitivamente la diretta?
|
||||
link_unavailable: Link non disponibile
|
||||
link_copied: Link copiato
|
||||
copy_prompt: "Copia il link:"
|
||||
share_regia_text: "Apri questo link per gestire il punteggio della diretta:"
|
||||
share_live_text: "Guarda la diretta su Match Live TV:"
|
||||
recordings:
|
||||
archive:
|
||||
back_prefix: "←"
|
||||
heading: Archivio Replay
|
||||
admin_suffix: (admin)
|
||||
lead_html: "Gestisci registrazioni, visibilità e download. <strong>Privato</strong> = link non indicizzato, non compare in <code>/replay</code> pubblico. Eliminando un replay vengono rimossi anche i file sul server e il video YouTube collegato."
|
||||
kpi_available: Replay disponibili
|
||||
kpi_expiring: "In scadenza (7 gg)"
|
||||
kpi_space: Spazio archivio
|
||||
kpi_views: Visualizzazioni totali
|
||||
team_label: Squadra
|
||||
team_all: Tutte
|
||||
status_label: Stato
|
||||
status_all: Tutti
|
||||
status_ready: Disponibili
|
||||
status_processing: In elaborazione
|
||||
status_expired: Scaduti / errore
|
||||
col_preview: Anteprima
|
||||
col_match: Partita
|
||||
col_team: Squadra
|
||||
col_details: Dettagli
|
||||
col_status: Stato e visibilità
|
||||
col_actions: Azioni
|
||||
watch_replay: Guarda replay
|
||||
processing_title: Elaborazione in corso
|
||||
not_available_title: Replay non disponibile
|
||||
views_suffix: vis.
|
||||
expires_prefix: Scade
|
||||
expires_days: "(%{count} gg)"
|
||||
no_expiry: Nessuna scadenza
|
||||
new_expiry_title: Nuova data di scadenza
|
||||
save: Salva
|
||||
extend_days: "+%{count} gg"
|
||||
extend_title: "Prolunga la scadenza di %{count} giorni"
|
||||
privacy_public: Pubblico
|
||||
privacy_private: Privato
|
||||
privacy_hint_public: "Visibile a tutti — clicca per rendere privato"
|
||||
privacy_hint_private: "Solo con link — clicca per rendere pubblico"
|
||||
download_mp4: MP4
|
||||
download_mp4_title: Scarica MP4
|
||||
publish_youtube: "YT"
|
||||
publish_youtube_title: Pubblica su YouTube
|
||||
open_youtube_title: Apri su YouTube
|
||||
delete_title: Elimina replay
|
||||
delete_confirm: Scegli dove eliminare il replay. L'operazione è irreversibile.
|
||||
no_recordings: Nessuna registrazione per i filtri selezionati.
|
||||
confirm:
|
||||
choice_title: Cosa vuoi eliminare?
|
||||
choice_message: Scegli dove rimuovere il replay. L'operazione è irreversibile.
|
||||
choice_site_label: Solo dal sito
|
||||
choice_site_hint_with_youtube: Il video resta su YouTube
|
||||
choice_site_hint_only: Rimuove i file dal sito
|
||||
choice_youtube_label: Solo da YouTube
|
||||
choice_youtube_hint_with_site: Resta disponibile sul sito
|
||||
choice_youtube_hint_only: Rimuove solo il video YouTube
|
||||
choice_both_label: Da sito e YouTube
|
||||
choice_both_hint: Eliminazione completa
|
||||
youtube_title: Eliminare da YouTube?
|
||||
youtube_message: Il video verrà rimosso da YouTube. Il replay resterà disponibile sul sito.
|
||||
youtube_ok: Elimina da YouTube
|
||||
site_title: Eliminare dal sito?
|
||||
site_message_with_youtube: Il replay verrà rimosso dal sito. Il video su YouTube resterà online.
|
||||
site_message_only: Stai per eliminare definitivamente questo replay dal sito. L'operazione è irreversibile.
|
||||
site_ok: Elimina dal sito
|
||||
status:
|
||||
deleted: Eliminato
|
||||
expired: Scaduto
|
||||
failed: Errore
|
||||
processing: In elaborazione
|
||||
expiring_soon: Scade presto
|
||||
available: Disponibile
|
||||
flash:
|
||||
web_base:
|
||||
login_required: Accedi per continuare
|
||||
access_denied: Accesso non consentito
|
||||
clubs:
|
||||
already_registered: Hai già registrato una società
|
||||
created: Società e prima squadra create.
|
||||
updated: Società aggiornata.
|
||||
complete_billing_first: Completa i dati di fatturazione prima di attivare un piano premium.
|
||||
comped_change_denied: "Il piano è un abbonamento omaggio gestito da Match Live TV. Per passare a un abbonamento a pagamento contatta il supporto."
|
||||
stripe_not_configured: Pagamenti non ancora configurati sul server
|
||||
already_on_plan: "Sei già su %{plan} (%{price})."
|
||||
change_already_scheduled: "Il passaggio a %{plan} è già programmato dal %{date}."
|
||||
stripe_error: "Errore Stripe: %{message}"
|
||||
youtube_oauth_not_configured: YouTube OAuth non configurato sul server
|
||||
youtube_disconnected: Canale YouTube della società scollegato
|
||||
portal_not_configured: Portale pagamenti non configurato
|
||||
checkout_success: "Pagamento completato! Piano attivo: %{plan}."
|
||||
checkout_canceled: Pagamento annullato. Nessun addebito è stato effettuato.
|
||||
club_billing:
|
||||
profile_saved_proceed_payment: Dati salvati. Procedi con il pagamento.
|
||||
profile_updated: Dati di fatturazione aggiornati.
|
||||
stripe_not_configured: Stripe non configurato.
|
||||
subscription_canceled: "Abbonamento disdetto. Resta attivo fino al %{date}; da quel giorno passerai al piano Free."
|
||||
stripe_error: "Errore Stripe: %{message}"
|
||||
invoice_pdf_unavailable: PDF fattura non disponibile.
|
||||
club_recordings:
|
||||
not_authorized: Non autorizzato
|
||||
teams:
|
||||
added: "Squadra «%{name}» aggiunta."
|
||||
updated: Squadra aggiornata.
|
||||
now_staff: Il tuo account è ora responsabile trasmissione.
|
||||
staff_role_removed: Ruolo staff rimosso dal tuo account.
|
||||
invite_link_generated: "Link invito generato (valido 7 giorni)"
|
||||
access_revoked: Accesso revocato
|
||||
invitation_canceled: Invito annullato
|
||||
youtube_disconnected: Canale YouTube della società scollegato
|
||||
matches:
|
||||
scheduled: "Partita programmata: %{opponent}. Avvia lo streaming dall'app quando sei in palestra."
|
||||
updated: Partita aggiornata.
|
||||
close_live_before_delete: Chiudi la diretta prima di eliminare questa partita.
|
||||
deleted: Partita eliminata.
|
||||
schedule_denied: Solo un responsabile trasmissione o il titolare della società possono programmare le partite.
|
||||
club_matches:
|
||||
invalid_team: Seleziona una squadra valida.
|
||||
scheduled: "Partita programmata: %{team} vs %{opponent}."
|
||||
no_schedulable_teams: Non hai permessi per programmare partite in questa società.
|
||||
team_roster_members:
|
||||
added: "%{name} aggiunto all'organico."
|
||||
updated: Scheda aggiornata.
|
||||
removed: "%{name} rimosso dall'organico."
|
||||
invitations:
|
||||
invalid_or_expired: Invito non valido o scaduto
|
||||
invalid: Invito non valido
|
||||
wrong_email: "Questo invito è per %{email}"
|
||||
joined_team: Sei entrato nella squadra!
|
||||
signup_to_accept: "Registrati con %{email} per accettare l'invito"
|
||||
registrations:
|
||||
accept_terms_required: Devi accettare l'informativa privacy e i termini di servizio per registrarti.
|
||||
welcome_to_team: Benvenuto nella squadra!
|
||||
account_created: Account creato. Ora registra la tua società.
|
||||
sessions:
|
||||
welcome_back: Bentornato!
|
||||
invalid_credentials: Email o password non validi
|
||||
logged_out: Disconnesso
|
||||
password_resets:
|
||||
email_sent: Se l'email è registrata, riceverai a breve un link per reimpostare la password.
|
||||
invalid_or_expired_link: Link non valido o scaduto. Richiedi un nuovo reset password.
|
||||
password_min_length: La password deve avere almeno 8 caratteri
|
||||
password_mismatch: Le password non coincidono
|
||||
password_updated: Password aggiornata. Ora puoi accedere.
|
||||
replay:
|
||||
download_unavailable: Download non disponibile
|
||||
not_available: Replay non disponibile
|
||||
live:
|
||||
index:
|
||||
meta_title: "Dirette live partite giovanili in corso — Match Live TV"
|
||||
meta_description: "Guarda le dirette live delle partite giovanili ora in corso e le prossime gare programmate. Cerca la tua squadra e apri il link senza installare app."
|
||||
club_back_link: "← %{name}"
|
||||
club_title: "Dirette e partite — %{name}"
|
||||
club_hint: "Solo le squadre di questa società: dirette in corso e partite programmate da app o sito."
|
||||
club_replay_link: "Replay di %{name}"
|
||||
default_title: "Dirette e partite in programma"
|
||||
default_hint: "Cerca per società, squadra, avversario o luogo: trovi le dirette attive e le partite programmate."
|
||||
replay_archive_link: "Live passate — archivio replay"
|
||||
schedule_match_link: "Programma partita"
|
||||
search_placeholder_club: "Cerca società, squadra, avversario o luogo…"
|
||||
search_placeholder_default: "Es. Crazy Volley, Serie D, avversario…"
|
||||
search_aria_label: "Cerca squadra"
|
||||
search_button: "Cerca"
|
||||
reset_link: "Azzera"
|
||||
results_hint: "Risultati per «%{query}»%{club_suffix}: %{live_count} in diretta · %{upcoming_count} in programma"
|
||||
results_hint_club_suffix: " in %{name}"
|
||||
section_live_now: "In diretta adesso"
|
||||
badge_on_air: "In onda"
|
||||
badge_live: "Live"
|
||||
badge_paused: "In pausa"
|
||||
badge_reconnecting: "Riconnessione"
|
||||
badge_starting: "In avvio"
|
||||
badge_scheduled: "In programma"
|
||||
watch_link: "Guarda diretta →"
|
||||
section_upcoming: "Prossime partite"
|
||||
upcoming_hint: "Programmate da app o sito: la diretta partirà quando lo staff avvierà la trasmissione."
|
||||
empty_soft_title: "Nessuna diretta in questo momento."
|
||||
empty_soft_body: "Torna all’orario indicato: quando la squadra avvierà lo streaming, la partita comparirà in «In diretta adesso»."
|
||||
empty_club_title: "Nessuna diretta o partita in programma per %{name}."
|
||||
empty_club_schedule_link: "Programma la prima partita"
|
||||
empty_club_schedule_suffix: " oppure dall’app Match Live TV."
|
||||
empty_club_ask_staff: "Chiedi al titolare della società o a un responsabile trasmissione di programmare una gara."
|
||||
empty_club_add_team_html: "Aggiungi una squadra dalla %{club_link} e programma la prima partita."
|
||||
empty_club_page_link: "pagina società"
|
||||
empty_club_back_link: "← Torna alla società"
|
||||
empty_hero_title: "Nessuna diretta adesso — ma puoi già organizzarti"
|
||||
empty_hero_body: "Se la tua squadra usa Match Live TV, dal telefono si programma la partita con data e ora. Genitori e parenti trovano qui la diretta quando il fischio d’inizio è vicino."
|
||||
empty_hero_list_item1: "Programma la gara dall’app (senza avviare subito la diretta)"
|
||||
empty_hero_list_item2: "La partita compare in «Prossime partite» con orario e campo"
|
||||
empty_hero_list_item3: "Lo streaming parte solo quando premi avvio in palestra"
|
||||
empty_hero_cta_signup: "Registra la tua squadra"
|
||||
empty_hero_cta_features: "Scopri come funziona"
|
||||
demo_aria_label: "Esempio di diretta attiva"
|
||||
demo_label: "Esempio — così appare una diretta attiva"
|
||||
demo_meta: "PalaTigers · Match Live TV"
|
||||
demo_sets: "Set 2 · Set vinti 1-0"
|
||||
show:
|
||||
back_to_all: "← Tutte le dirette"
|
||||
title: "%{club_name} · %{team_name} vs %{opponent_name} — Diretta live"
|
||||
meta_description: "Segui in diretta live %{club_name} — %{team_name} vs %{opponent_name}%{location}. Guarda dal browser senza installare app."
|
||||
meta_description_location: " — %{location}"
|
||||
stream_ended_title: "Diretta terminata"
|
||||
stream_ended_body: "Lo streaming di questa partita è stato chiuso."
|
||||
stream_ended_closed_at: "Chiusa il %{date}"
|
||||
stream_ended_hint: "Il punteggio è visibile nel video se la diretta era ancora in corso."
|
||||
stream_ended_reload_hint: "Ricarica la pagina per l’ultimo stato registrato."
|
||||
all_live_link: "Tutte le dirette"
|
||||
youtube_title: "Diretta su YouTube"
|
||||
youtube_available_body: "Questa partita è trasmessa sul canale YouTube Match Live TV, non sul player del sito."
|
||||
youtube_watch_link: "Guarda su YouTube"
|
||||
youtube_preparing_body: "Stiamo preparando la diretta sul canale YouTube. Aggiorna tra qualche secondo."
|
||||
youtube_hint: "Condividi solo il link YouTube con tifosi e società."
|
||||
play_hint: "▶ Avvia la diretta"
|
||||
offline_msg: "La diretta non è ancora disponibile. Si aggiorna automaticamente quando torna in onda."
|
||||
awaiting_msg: "In attesa del segnale dal telefono — apri la camera nell'app e verifica che la diretta sia avviata (non in pausa)."
|
||||
paused_msg: "Trasmissione in pausa — il flusso continua (copertina server)."
|
||||
js_reconnecting_awaiting: "In riconnessione - in attesa del video dall'evento"
|
||||
overlays:
|
||||
badge_ended: "Terminata"
|
||||
badge_waiting: "In attesa"
|
||||
replay:
|
||||
index:
|
||||
meta_title: "Replay — Match Live TV"
|
||||
meta_description: "Archivio replay delle dirette sportive su Match Live TV. Cerca per società, squadra o avversario."
|
||||
back_to_live: "← Dirette live"
|
||||
title: "Live passate"
|
||||
hint: "Replay pubblici delle società sportive — riguarda le partite già trasmesse."
|
||||
search_placeholder: "Es. Tigers Volley, avversario, società, luogo…"
|
||||
search_aria_label: "Cerca replay"
|
||||
search_button: "Cerca"
|
||||
reset_link: "Azzera"
|
||||
club_filter_label: "Società"
|
||||
club_filter_all: "Tutte le società"
|
||||
results_hint: "Risultati per «%{query}»%{club_suffix}: %{count} replay"
|
||||
results_hint_club_suffix: " · %{name}"
|
||||
empty_filtered_title: "Nessun replay trovato"
|
||||
empty_filtered_suffix: " con i filtri selezionati."
|
||||
empty_filtered_show_all: "Mostra tutti i replay pubblici"
|
||||
empty_default_title: "Nessun replay pubblico al momento."
|
||||
empty_default_body: "Quando una società rende pubblica una registrazione, comparirà qui."
|
||||
empty_default_live_link: "Vai alle dirette live"
|
||||
show:
|
||||
title: "Replay — %{title}"
|
||||
meta_description: "Replay %{title} su Match Live TV."
|
||||
back_to_replays: "← Live passate"
|
||||
processing_title: "Replay in elaborazione"
|
||||
processing_body: "La registrazione viene preparata. Riceverai un’email quando sarà pronta."
|
||||
badge_label: "REPLAY"
|
||||
meta_line_duration: "Durata %{value}"
|
||||
meta_line_until: "Fino al %{date}"
|
||||
meta_line_public: "Pubblico"
|
||||
meta_line_private: "Privato (link)"
|
||||
download_link: "Scarica MP4"
|
||||
youtube_link: "Apri su YouTube"
|
||||
youtube_only_body: "Replay su YouTube (copia server non presente)."
|
||||
file_missing_title: "File non disponibile"
|
||||
file_missing_body: "Il video non è più sul server (archivio rimosso o in migrazione)."
|
||||
file_missing_meta: "Durata registrata: %{duration} · %{size}"
|
||||
failed_title: "Replay non disponibile"
|
||||
failed_default_body: "Errore di elaborazione della registrazione."
|
||||
unavailable_title: "Replay non disponibile"
|
||||
unavailable_body: "Questa registrazione non è più accessibile."
|
||||
team_pages:
|
||||
index:
|
||||
meta_title: "Squadre su Match Live TV — Dirette e replay sport giovanili"
|
||||
meta_description: "Scopri le squadre sportive giovanili che trasmettono su Match Live TV. Cerca per nome, filtra per sport, trova dirette in corso e archivi replay."
|
||||
heading: "Squadre su Match Live TV"
|
||||
hint: "Società e squadre con dirette, replay pubblici o partite in programma. Cerca la tua squadra e apri la pagina per seguire calendario e archivio."
|
||||
search_placeholder: "Nome squadra, società, città o palestra…"
|
||||
search_aria_label: "Cerca squadra"
|
||||
search_button: "Cerca"
|
||||
sport_label: "Sport"
|
||||
sport_all: "Tutti gli sport"
|
||||
chips_label: "Mostra"
|
||||
chip_live: "In diretta"
|
||||
chip_replays: "Con replay"
|
||||
reset_link: "Azzera"
|
||||
results_found: "%{count} squadre trovate"
|
||||
results_active: "%{count} squadre attive"
|
||||
results_query_suffix: " per «%{query}»"
|
||||
results_sport_suffix: " · %{sport}"
|
||||
badge_live: "In diretta"
|
||||
badge_upcoming: "%{count} in programma"
|
||||
badge_replay: "%{count} replay"
|
||||
empty_filtered_title: "Nessuna squadra trovata"
|
||||
empty_filtered_suffix: " con i filtri selezionati."
|
||||
empty_filtered_show_all: "Mostra tutte le squadre attive"
|
||||
empty_default_title: "Nessuna squadra attiva al momento."
|
||||
empty_default_body: "Quando una società avvierà dirette o pubblicherà replay, comparirà qui."
|
||||
empty_default_live_link: "Vai alle dirette live"
|
||||
footer_live_link: "Dirette in corso"
|
||||
footer_replay_link: "Archivio replay"
|
||||
show:
|
||||
title: "%{team} — %{club} | Match Live TV"
|
||||
meta_description: "Segui %{team} (%{club}): dirette live, calendario partite e replay su Match Live TV."
|
||||
breadcrumb_all_teams: "← Tutte le squadre"
|
||||
live_now_label: "In diretta ora"
|
||||
watch_live_link: "Guarda la diretta"
|
||||
all_live_link: "Tutte le dirette"
|
||||
replay_archive_link: "Archivio replay"
|
||||
section_live_now: "In diretta adesso"
|
||||
section_upcoming: "Prossime partite"
|
||||
upcoming_hint: "Programmate dal club: la diretta partirà quando lo staff avvierà la trasmissione."
|
||||
section_replays: "Replay recenti"
|
||||
replays_more_link: "Vedi tutti i replay di %{team} →"
|
||||
section_roster: "Organico"
|
||||
empty_title: "Nessuna diretta o replay al momento."
|
||||
empty_body: "Torna a controllare prima delle prossime gare: qui compariranno dirette, calendario e archivio della squadra."
|
||||
empty_link: "Vedi tutte le dirette"
|
||||
score:
|
||||
timer_label: "Cronometro"
|
||||
generic_label: "Punteggio"
|
||||
sets_label: "Set %{set} · Set vinti %{home}-%{away}"
|
||||
partial_entry: "Set %{set} %{home}-%{away}"
|
||||
partial_entry_no_number: "Set %{home}-%{away}"
|
||||
partials_prefix: "Parziali: %{value}"
|
||||
points_label: "%{team} %{home} - %{away} %{opponent}"
|
||||
fallback: "—"
|
||||
default_club_name: "Società"
|
||||
scheduled_date_format: "%d/%m/%Y alle %H:%M"
|
||||
scheduled_today: "Oggi alle %{time}"
|
||||
scheduled_tomorrow: "Domani alle %{time}"
|
||||
@@ -0,0 +1,197 @@
|
||||
de:
|
||||
legal:
|
||||
common:
|
||||
back_home: "← Zurück zur Startseite"
|
||||
privacy_nav: Datenschutz
|
||||
privacy:
|
||||
title: Datenschutzerklärung — Match Live TV
|
||||
meta_description: "DSGVO-Datenschutzerklärung von Match Live TV: Kontodaten, Streaming von Jugendspielen, Bilder von Minderjährigen, Stripe-Zahlungen und Rechte der betroffenen Personen."
|
||||
h1: Hinweis zur Verarbeitung personenbezogener Daten
|
||||
meta_html: "Letzte Aktualisierung: %{date} · Gemäß Verordnung (EU) 2016/679 (DSGVO)"
|
||||
s1_title: 1. Verantwortlicher
|
||||
s1_intro: "Verantwortlicher für die Verarbeitung der über die Website und die Dienste von Match Live TV erhobenen personenbezogenen Daten ist:"
|
||||
s1_label_address: "Adresse:"
|
||||
s1_label_email: "E-Mail für Datenschutz und Betroffenenrechte:"
|
||||
s1_label_vat: "USt-IdNr. / Steuernummer:"
|
||||
s1_outro: Für Anfragen zu dieser Erklärung oder zur Ausübung der durch die DSGVO vorgesehenen Rechte schreiben Sie bitte an die angegebene E-Mail-Adresse.
|
||||
s2_title: 2. Anwendungsbereich
|
||||
s2_intro: "Diese Erklärung gilt für:"
|
||||
s2_item1: Besucher der Match-Live-TV-Website (Informationsseiten, Liste der Livestreams, Teamregistrierung);
|
||||
s2_item2: registrierte Nutzer (Vereinsvertreter, Trainer, eingeladenes Personal);
|
||||
s2_item3: Zuschauer, die über einen Link auf Livestreams zugreifen (in der Regel ohne Erstellung eines Kontos);
|
||||
s2_item4: Nutzung der mit dem Dienst verbundenen mobilen App.
|
||||
s3_title: 3. Arten der verarbeiteten Daten
|
||||
s3_intro: "Je nach Nutzung des Dienstes können wir folgende Daten verarbeiten:"
|
||||
s3_item1_html: "<strong>Identifikations- und Kontaktdaten:</strong> Name, E-Mail-Adresse, Zugangsdaten (Passwort verschlüsselt gespeichert)."
|
||||
s3_item2_html: "<strong>Teamdaten:</strong> Vereinsname, Sportart, geplante Spiele, Gegner, Ort, Uhrzeiten."
|
||||
s3_item3_html: "<strong>Streaming- und technische Daten:</strong> Sitzungsstatus, Spielstand, Netzwerk-/Bitraten-Telemetrie, Verbindungsprotokolle des Videodienstes."
|
||||
s3_item4_html: "<strong>Audiovisuelle Inhalte:</strong> Video- und Audiostreams der live übertragenen Spiele und, bei Premium-Paketen, Aufzeichnungen (Replays), die für einen begrenzten Zeitraum gespeichert werden."
|
||||
s3_item5_html: "<strong>Zahlungsdaten:</strong> Für kostenpflichtige Pakete verarbeitet Stripe die für die Zahlung erforderlichen Daten (z. B. Zahlungsmethode, Rechnungsangaben). Der Verantwortliche speichert keine vollständigen Kartennummern."
|
||||
s3_item6_html: "<strong>Nutzungsdaten:</strong> Serverprotokolle, IP-Adresse, User-Agent, erforderlich für Sicherheit und Funktionsfähigkeit der Website."
|
||||
s4_title: 4. Verarbeitung von Bildern und Daten minderjähriger Athleten
|
||||
s4_p1_html: "Match Live TV richtet sich auch an Jugendwettbewerbe und -kategorien (z. B. U14, U16, U18). Bei Livestreams können identifizierbare <strong>minderjährige Athleten</strong> erfasst werden (Bild, Stimme, Trikotnummer, Spieldaten)."
|
||||
s4_lead1: Wer für die Verarbeitung von Bildern Minderjähriger verantwortlich ist
|
||||
s4_p2_html: "Der <strong>Sportverein</strong>, der die Übertragung startet, ist als Veranstalter der Sportveranstaltung in erster Linie dafür verantwortlich, vor dem Filmen und Verbreiten der Bilder eine gültige Rechtsgrundlage sicherzustellen (in der Regel die <strong>Einwilligung der Eltern/Erziehungsberechtigten</strong> oder eine andere gesetzlich und vom jeweiligen Verband vorgesehene Grundlage)."
|
||||
s4_lead2: Rolle von Match Live TV
|
||||
s4_p3_html: "Der Diensteanbieter stellt die technische Plattform bereit und kann bei Übertragungen durch autorisierte Nutzer im Auftrag des Vereins als <strong>Auftragsverarbeiter</strong> handeln oder in bestimmten Fällen als Verantwortlicher für Verarbeitungen, die zur Erbringung des Dienstes unbedingt erforderlich sind (Hosting, Sicherheit, Abrechnung)."
|
||||
s4_lead3: Vom Sportverein geforderte Maßnahmen
|
||||
s4_item1: Eltern/Erziehungsberechtigte über die Nutzung von Live- und archivierten Videos informieren;
|
||||
s4_item2: die erforderlichen Einwilligungen vor der Übertragung einholen und dokumentieren;
|
||||
s4_item3: die Verbreitung des Links auf autorisierte Personen (Familienangehörige, Personal) beschränken;
|
||||
s4_item4: nicht auf offenen Kanälen veröffentlichen, sofern dies nicht durch die Einwilligung oder das Sportreglement vorgesehen ist;
|
||||
s4_item5: die Löschung von Aufzeichnungen beantragen, wenn die betroffene Person oder der Erziehungsberechtigte dazu berechtigt ist.
|
||||
s4_p4_html: "Anfragen von Eltern/Erziehungsberechtigten zu Bildern Minderjähriger können an den Sportverein gerichtet werden sowie für technischen Support oder Löschung aus dem Archiv auch an %{email_link}."
|
||||
s5_title: 5. Zwecke und Rechtsgrundlagen
|
||||
s5_col_purpose: Zweck
|
||||
s5_col_basis: Rechtsgrundlage (Art. 6 DSGVO)
|
||||
s5_row1_purpose: Kontoregistrierung, Team- und Personalverwaltung
|
||||
s5_row1_basis: Vertragserfüllung / vorvertragliche Maßnahmen
|
||||
s5_row2_purpose: Bereitstellung von Livestreams, Live-Spielstand, Archiv (Premium-Pakete)
|
||||
s5_row2_basis: Vertragserfüllung; berechtigtes Interesse an der Sicherheit des Dienstes
|
||||
s5_row3_purpose: Zahlungen und Abrechnung (Stripe)
|
||||
s5_row3_basis: Vertragserfüllung; gesetzliche Pflichten
|
||||
s5_row4_purpose: Support, Sicherheit, Missbrauchsprävention
|
||||
s5_row4_basis: Berechtigtes Interesse; gesetzliche Pflichten
|
||||
s5_row5_purpose: Servicemitteilungen (z. B. Passwort-Zurücksetzung)
|
||||
s5_row5_basis: Vertragserfüllung
|
||||
s5_row6_purpose: Direktmarketing (nur wenn vorgesehen und ggf. mit Einwilligung)
|
||||
s5_row6_basis: Einwilligung oder berechtigtes Interesse, je nach Fall
|
||||
s6_title: 6. Empfänger und Auftragsverarbeiter
|
||||
s6_intro: "Die Daten können an Dienstleister weitergegeben werden, die als Auftragsverarbeiter tätig sind, unter anderem:"
|
||||
s6_item1: Anbieter von Hosting- und Cloud-/Serverinfrastruktur;
|
||||
s6_item2_html: "<strong>Stripe</strong> (Zahlungen) — %{stripe_link};"
|
||||
s6_item2_link_text: Stripe-Datenschutz
|
||||
s6_item3: Anbieter von Video-Streaming (MediaMTX / RTMP-HLS-Infrastruktur);
|
||||
s6_item4_html: "eventuelle <strong>YouTube</strong>-Integration, sofern vom Verein aktiviert (unterliegt den Google-Richtlinien);"
|
||||
s6_item5: Anbieter von Transaktions-E-Mails (Versand von Links zum Zurücksetzen des Passworts, Einladungen).
|
||||
s6_outro: Die Daten werden nicht zu kommerziellen Profiling-Zwecken an Dritte verkauft.
|
||||
s7_title: 7. Übermittlungen außerhalb des EWR
|
||||
s7_body: Einige Anbieter (z. B. Stripe, Google/YouTube) können Daten auch außerhalb des Europäischen Wirtschaftsraums verarbeiten. In diesem Fall gelten die von der DSGVO vorgesehenen angemessenen Garantien (Standardvertragsklauseln, Angemessenheitsbeschlüsse).
|
||||
s8_title: 8. Speicherung
|
||||
s8_item1_html: "<strong>Benutzerkonto:</strong> für die gesamte Dauer des Vertragsverhältnisses und, nach dessen Beendigung, für die zur Erfüllung gesetzlicher Pflichten oder zur Geltendmachung von Ansprüchen erforderliche Zeit (in der Regel bis zu 10 Jahre für Buchhaltungsunterlagen, sofern anwendbar)."
|
||||
s8_item2_html: "<strong>Spielaufzeichnungen (Replays):</strong> je nach Paket (z. B. 30 oder 90 Tage), danach automatische Löschung oder Löschung auf Anfrage."
|
||||
s8_item3_html: "<strong>Technische Protokolle:</strong> begrenzter Zeitraum (z. B. 30–90 Tage), sofern keine Sicherheitspflichten entgegenstehen."
|
||||
s8_item4_html: "<strong>Token zum Zurücksetzen des Passworts:</strong> maximale Gültigkeit %{hours} Stunden."
|
||||
s9_title: 9. Rechte der betroffenen Personen
|
||||
s9_intro: "Als betroffene Person haben Sie das Recht:"
|
||||
s9_item1: auf Zugang zu Ihren Daten und Erhalt einer Kopie;
|
||||
s9_item2: auf Berichtigung, falls diese unrichtig sind;
|
||||
s9_item3: auf Löschung zu bestehen (im Rahmen der gesetzlichen Grenzen);
|
||||
s9_item4: die Verarbeitung einzuschränken oder ihr zu widersprechen, soweit anwendbar;
|
||||
s9_item5: die Einwilligung zu widerrufen, ohne die Rechtmäßigkeit der bis zum Widerruf auf Grundlage der Einwilligung erfolgten Verarbeitung zu berühren;
|
||||
s9_item6_html: "eine Beschwerde bei der zuständigen Datenschutzaufsichtsbehörde einzureichen (%{garante_link})."
|
||||
s9_outro_html: "Zur Ausübung der Rechte: %{email_link}."
|
||||
s10_title: 10. Sicherheit
|
||||
s10_body: "Wir setzen angemessene technische und organisatorische Maßnahmen ein (authentifizierter Zugang, verschlüsselte Passwörter, HTTPS-Kommunikation, Trennung der Umgebungen, eingeschränkter Personalzugang). Kein System ist unverwundbar: Wenn Sie einen unbefugten Zugriff vermuten, ändern Sie Ihr Passwort und kontaktieren Sie uns."
|
||||
s11_title: 11. Cookies und ähnliche Technologien
|
||||
s11_p1_html: "Die Website verwendet notwendige technische Cookies (Login-Sitzung, Sicherheit, Speicherung der Cookie-Präferenzen) und, vorbehaltlich der Einwilligung über das Banner, <strong>Google Analytics</strong> für aggregierte Statistiken."
|
||||
s11_p2_html: "Sie können Ihre Präferenzen jederzeit über den Link „Cookies verwalten“ in der Fußzeile ändern oder die %{cookie_policy_link} einsehen."
|
||||
s11_cookie_policy_link_text: Cookie-Richtlinie
|
||||
s12_title: 12. Änderungen
|
||||
s12_body: "Der Verantwortliche kann diese Erklärung aktualisieren. Das Datum oben zeigt die letzte Überarbeitung an. Bei wesentlichen Änderungen erfolgt eine angemessene Mitteilung (z. B. Hinweis auf der Website oder E-Mail an registrierte Konten)."
|
||||
terms:
|
||||
title: Nutzungsbedingungen — Match Live TV
|
||||
meta_description: "Allgemeine Geschäftsbedingungen von Match Live TV für Sportvereine: Live-Übertragungen, Minderjährige, Pakete, Stripe-Zahlungen und Nutzerverantwortung."
|
||||
h1: Allgemeine Geschäftsbedingungen
|
||||
meta: "Letzte Aktualisierung: %{date}"
|
||||
s1_title: 1. Gegenstand
|
||||
s1_p1_html: "Diese Bedingungen regeln die Nutzung der Plattform <strong>Match Live TV</strong> (Website, mobile Anwendung und verbundene Dienste) zur Verwaltung von Amateur-/Jugendsport-Livestreams, Live-Spielstand, dem Teilen von Links mit Zuschauern und Premium-Funktionen (Archiv, YouTube usw.)."
|
||||
s1_p2_html: "Der Dienst wird von <strong>%{provider_name}</strong> (nachfolgend „Anbieter“) erbracht. Mit der Registrierung oder Nutzung des Dienstes akzeptieren Sie diese Bedingungen und die %{privacy_link} vollständig."
|
||||
s1_privacy_link_text: Datenschutzerklärung
|
||||
s2_title: 2. Wer den Dienst nutzen kann
|
||||
s2_item1_html: "Der Vertreter, der das Team registriert, erklärt, mindestens <strong>18 Jahre</strong> alt zu sein und befugt zu sein, den Sportverein zu binden."
|
||||
s2_item2: Eingeladene Übertragungsverantwortliche verwenden persönliche Zugangsdaten und verpflichten sich, diese sicher aufzubewahren.
|
||||
s2_item3: Zuschauer, die den Link des Livestreams öffnen, benötigen in der Regel kein Konto.
|
||||
s3_title: 3. Konto, Pakete und Zahlungen
|
||||
s3_p1_html: "Verfügbar sind Free- und Premium-Pakete (Light / Full) mit Beschränkungen bei Personal, gleichzeitigen Livestreams, Archiv und Integrationen. Die Preise sind auf der Seite %{pricing_link} angegeben."
|
||||
s3_pricing_link_text: Preise
|
||||
s3_p2_html: "Zahlungen für kostenpflichtige Pakete werden über <strong>Stripe</strong> abgewickelt. Mit Abschluss des Checkouts akzeptieren Sie auch die Zahlungsbedingungen von Stripe. Der Anbieter speichert keine vollständigen Kartendaten."
|
||||
s3_p3: Verlängerungen, Kündigung und Widerrufsrecht richten sich nach den beim Kauf mitgeteilten Angaben und den geltenden Rechtsvorschriften.
|
||||
s4_title: 4. Livestreams, Inhalte und Schutz Minderjähriger
|
||||
s4_lead1: Verantwortung des Sportvereins
|
||||
s4_p1_html: "Der Verein, der einen Livestream startet, ist verantwortlich für die übertragenen Inhalte (Bilder, Audio, Kommentare) sowie für die Einhaltung der Gesetze, des Verbandsreglements und der erforderlichen Einwilligungen, insbesondere wenn <strong>minderjährige Athleten</strong> gefilmt werden."
|
||||
s4_p2: "Der Verein verpflichtet sich:"
|
||||
s4_item1: die elterlichen/erziehungsberechtigten Einwilligungen oder eine andere Rechtsgrundlage vor der Aufnahme einzuholen und aufzubewahren;
|
||||
s4_item2: Eltern und Athleten darüber zu informieren, wo und wie lange der Livestream/das Archiv sichtbar ist;
|
||||
s4_item3: keine illegalen, verleumderischen, gewalttätigen oder für die Sportveranstaltung irrelevanten Inhalte zu übertragen;
|
||||
s4_item4: das Recht am eigenen Bild und an der eigenen Stimme aller gefilmten Personen zu respektieren.
|
||||
s4_p3: Der Anbieter kann Übertragungen und Konten bei begründeten Meldungen oder schwerwiegenden Verstößen aussetzen oder unterbrechen, unbeschadet rechtlicher Schritte.
|
||||
s5_title: 5. Zulässige Nutzung und Verbote
|
||||
s5_intro: "Es ist untersagt:"
|
||||
s5_item1: den Dienst für nicht sportliche oder nicht autorisierte kommerzielle Zwecke zu nutzen;
|
||||
s5_item2: technische oder paketbezogene Beschränkungen (Personal, gleichzeitige Livestreams) zu umgehen;
|
||||
s5_item3: Zugangsdaten weiterzugeben oder Links auf Kanälen zu veröffentlichen, die Minderjährige Risiken aussetzen, die nicht von der Einwilligung erfasst sind;
|
||||
s5_item4: Schadsoftware hochzuladen, Angriffe durchzuführen oder die Infrastruktur zu stören;
|
||||
s5_item5: den Dienst ohne schriftliche Vereinbarung mit dem Anbieter weiterzuverkaufen.
|
||||
s6_title: 6. Geistiges Eigentum
|
||||
s6_body: Marken, Software, Design und Dokumentation des Dienstes verbleiben beim Anbieter oder seinen Lizenzgebern. Der Sportverein behält die Rechte an seinen eigenen Videoinhalten; er räumt dem Anbieter eine beschränkte Lizenz ein, diese zu hosten, zu verarbeiten und über die Plattform zu verbreiten, um den Dienst zu erbringen.
|
||||
s7_title: 7. Verfügbarkeit und Einschränkungen
|
||||
s7_body: Der Dienst hängt von Mobilfunknetzen, Hardware und Drittanbietern ab. Wir garantieren nicht die absolute Abwesenheit von Unterbrechungen, Verzögerungen oder Datenverlust, auch wenn wir angemessene Maßnahmen ergreifen. Die Videoqualität kann je nach Verbindung in der Halle variieren.
|
||||
s8_title: 8. Haftungsbeschränkung
|
||||
s8_p1: Im nach italienischem Recht zulässigen Umfang haftet der Anbieter nicht für indirekte Schäden, entgangenen Gewinn oder von Nutzern übertragene Inhalte. Die Gesamthaftung gegenüber einem gewerblichen Kunden übersteigt, soweit möglich, nicht den in den letzten 12 Monaten für das abonnierte Paket gezahlten Betrag.
|
||||
s8_p2: Nichts schließt die Haftung für Vorsatz oder grobe Fahrlässigkeit aus, ebenso wenig zwingende Verbraucherrechte, sofern anwendbar.
|
||||
s9_title: 9. Widerruf, Aussetzung und Kündigung
|
||||
s9_body_html: "Sie können die Schließung des Kontos beantragen, indem Sie an %{email_link} schreiben. Der Anbieter kann das Konto bei Vertragsverletzung, Nichtzahlung oder Verstoß gegen die Bedingungen sperren. Bei Beendigung werden die Daten wie im Datenschutzhinweis angegeben behandelt (begrenzte Aufbewahrung oder Löschung)."
|
||||
s10_title: 10. Anwendbares Recht und Gerichtsstand
|
||||
s10_body_html: "Die Bedingungen unterliegen <strong>italienischem Recht</strong>. Bei Streitigkeiten mit Verbrauchern gelten die zwingenden Verbraucherschutzvorschriften sowie der Gerichtsstand des Verbrauchers, soweit vorgesehen. Für gewerbliche Kunden ist der zuständige Gerichtsstand in Italien am Sitz des Anbieters, sofern nicht anders vereinbart."
|
||||
s11_title: 11. Kontakt
|
||||
s11_body_html: "%{provider_name}<br>%{provider_address}<br>E-Mail: %{email_link}"
|
||||
cookies:
|
||||
title: Cookie-Richtlinie — Match Live TV
|
||||
meta_description: "Cookie-Richtlinie von Match Live TV: technische Cookies, Sitzung, Google Analytics und Einwilligungsverwaltung."
|
||||
h1: Cookie-Richtlinie
|
||||
meta_html: "Letzte Aktualisierung: %{date} · Siehe auch %{privacy_link}"
|
||||
privacy_link_text: Datenschutzerklärung
|
||||
s1_title: 1. Was Cookies sind
|
||||
s1_body: Cookies sind kleine Textdateien, die Websites auf dem Gerät des Besuchers speichern. Sie dienen dazu, die Website zum Funktionieren zu bringen, Präferenzen zu speichern oder, vorbehaltlich der Einwilligung, die Nutzung des Dienstes zu analysieren.
|
||||
s2_title: 2. Verantwortlicher
|
||||
s2_vat_label: USt-IdNr.
|
||||
s3_title: 3. Wie wir die Einwilligung verwalten
|
||||
s3_p1_html: "Beim ersten Zugriff zeigen wir ein Banner an, mit dem Sie alle Cookies akzeptieren, <strong>nur die notwendigen</strong> verwenden oder diese Seite für weitere Details öffnen können. Sie können Ihre Wahl jederzeit über den Link <strong>„Cookies verwalten“</strong> in der Fußzeile ändern."
|
||||
s3_p2_html: "Die Präferenz wird in einem technischen First-Party-Cookie (<code>mltv_cookie_consent</code>) und im <code>localStorage</code> des Browsers gespeichert."
|
||||
s4_title: 4. Von uns verwendete Cookies und Technologien
|
||||
s4_1_title: 4.1 Unbedingt erforderlich (immer aktiv)
|
||||
s4_1_intro: Diese erfordern keine Einwilligung, da sie für den Betrieb der Website und des geschützten Bereichs unerlässlich sind.
|
||||
table_col_name: Name / Typ
|
||||
table_col_purpose: Zweck
|
||||
table_col_duration: Dauer
|
||||
table_col_provider: Anbieter
|
||||
s4_1_row1_name_html: "<code>_app_session</code> (Sitzungscookie)"
|
||||
s4_1_row1_purpose: Hält den registrierten Benutzer angemeldet, CSRF-Schutz, sichere Navigationspräferenzen
|
||||
s4_1_row1_duration: Sitzung / bis zum Schließen des Browsers
|
||||
s4_1_row1_provider: Match Live TV (First-Party)
|
||||
s4_1_row2_name_html: "<code>mltv_cookie_consent</code>"
|
||||
s4_1_row2_purpose: Speichert Ihre Auswahl im Cookie-Banner (notwendig / Analytics)
|
||||
s4_1_row2_duration: 12 Monate
|
||||
s4_1_row2_provider: Match Live TV (First-Party)
|
||||
s4_2_title: 4.2 Analytics (nur mit Ihrer Einwilligung)
|
||||
s4_2_p1_html: "Wenn Sie „Alle Cookies“ akzeptieren oder die Statistiken im Banner aktivieren, laden wir <strong>Google Analytics 4</strong>, um zu verstehen, wie die Website genutzt wird (besuchte Seiten, aggregierte Herkunft, Gerät). Die Daten werden von Google Ireland Limited / Google LLC gemäß deren Richtlinien verarbeitet."
|
||||
s4_2_active_html: "Aktive Mess-ID auf der Website: <code>%{id}</code>"
|
||||
s4_2_inactive: Google Analytics wird nur konfiguriert, wenn der Verantwortliche die Mess-ID auf dem Server einrichtet.
|
||||
table2_col_name: Name
|
||||
s4_2_row1_name_html: "<code>_ga</code>"
|
||||
s4_2_row1_purpose: Unterscheidet Nutzer (Statistiken)
|
||||
s4_2_row1_duration: 2 Jahre
|
||||
s4_2_row1_provider: Google
|
||||
s4_2_row2_name_html: "<code>_ga_*</code>"
|
||||
s4_2_row2_purpose: Hält den Zustand der Analytics-Sitzung aufrecht
|
||||
s4_2_row2_duration: 2 Jahre
|
||||
s4_2_row2_provider: Google
|
||||
s4_2_row3_name_html: "<code>_gid</code>"
|
||||
s4_2_row3_purpose: Unterscheidet Nutzer (Statistiken)
|
||||
s4_2_row3_duration: 24 Stunden
|
||||
s4_2_row3_provider: Google
|
||||
s4_2_p2_html: "Sie können die Einwilligung über das Banner oder die Browsereinstellungen widerrufen. Google-Informationen: %{google_privacy_link}, %{google_optout_link}."
|
||||
s4_2_google_privacy_link_text: Google-Datenschutzerklärung
|
||||
s4_2_google_optout_link_text: Analytics-Deaktivierungs-Add-on
|
||||
s4_3_title: 4.3 Cookies Dritter während der Zahlung
|
||||
s4_3_body_html: "Wenn Sie ein Premium-Paket kaufen, werden Sie zu <strong>Stripe</strong> (sicherer Checkout) weitergeleitet. Stripe kann eigene Cookies auf der Domain <code>stripe.com</code> setzen, um Betrug zu verhindern und die Zahlung abzuschließen. Wir haben keine direkte Kontrolle über diese Cookies: siehe %{stripe_link}."
|
||||
s4_3_stripe_link_text: Datenschutzerklärung von Stripe
|
||||
s4_4_title: 4.4 YouTube und verbundene Dienste
|
||||
s4_4_body: Die YouTube-Integration für Livestreams erfolgt über eine serverseitige API; die öffentliche Website bettet keinen YouTube-Player mit Profiling-Cookies ein. Besucher, die einen externen YouTube-Link öffnen, unterliegen den Richtlinien von Google/YouTube auf dieser Domain.
|
||||
s5_title: 5. So deaktivieren Sie Cookies im Browser
|
||||
s5_body: Sie können Cookies über die Browsereinstellungen blockieren oder löschen (Chrome, Firefox, Safari, Edge). Durch das Deaktivieren notwendiger Cookies funktionieren einige Funktionen (z. B. Login) möglicherweise nicht.
|
||||
s6_title: 6. Rechte und Kontakt
|
||||
s6_body_html: "Um die von der DSGVO vorgesehenen Rechte auszuüben (Zugang, Löschung, Widerspruch, Widerruf der Einwilligung), schreiben Sie an %{email_link}. Details finden Sie im %{privacy_doc_link}."
|
||||
s6_privacy_doc_link_text: Datenschutzdokument
|
||||
manage_button: Cookie-Einstellungen verwalten
|
||||
@@ -0,0 +1,197 @@
|
||||
en:
|
||||
legal:
|
||||
common:
|
||||
back_home: "← Back to home"
|
||||
privacy_nav: Privacy
|
||||
privacy:
|
||||
title: Privacy Notice — Match Live TV
|
||||
meta_description: "Match Live TV GDPR privacy notice: account data, youth match streaming, images of minors, Stripe payments and data subject rights."
|
||||
h1: Notice on the processing of personal data
|
||||
meta_html: "Last updated: %{date} · Pursuant to Regulation (EU) 2016/679 (GDPR)"
|
||||
s1_title: 1. Data controller
|
||||
s1_intro: "The controller responsible for the processing of personal data collected through the Match Live TV website and services is:"
|
||||
s1_label_address: "Address:"
|
||||
s1_label_email: "Email for privacy and rights requests:"
|
||||
s1_label_vat: "VAT number / Tax code:"
|
||||
s1_outro: For requests regarding this notice or to exercise your rights under the GDPR, please write to the email address above.
|
||||
s2_title: 2. Scope of application
|
||||
s2_intro: "This notice applies to:"
|
||||
s2_item1: visitors of the Match Live TV website (informational pages, list of live streams, team registration);
|
||||
s2_item2: registered users (sports club representatives, coaches, invited staff);
|
||||
s2_item3: viewers who access live streams via link (generally without creating an account);
|
||||
s2_item4: use of the mobile app linked to the service.
|
||||
s3_title: 3. Types of data processed
|
||||
s3_intro: "Depending on how the service is used, we may process:"
|
||||
s3_item1_html: "<strong>Identification and contact data:</strong> name, email address, login credentials (password stored in encrypted form)."
|
||||
s3_item2_html: "<strong>Team data:</strong> club name, sport, scheduled matches, opponent, venue, times."
|
||||
s3_item3_html: "<strong>Streaming and technical data:</strong> session status, score, network/bitrate telemetry, video service connection logs."
|
||||
s3_item4_html: "<strong>Audiovisual content:</strong> video and audio streams of matches broadcast live and, with Premium plans, recordings (replays) kept for a limited period."
|
||||
s3_item5_html: "<strong>Payment data:</strong> for paid plans, Stripe processes the data required for payment (e.g. payment method, billing details). The controller does not store full card numbers."
|
||||
s3_item6_html: "<strong>Browsing data:</strong> server logs, IP address, user agent, needed for the security and operation of the site."
|
||||
s4_title: 4. Processing of images and data of minor athletes
|
||||
s4_p1_html: "Match Live TV is also intended for youth competitions and categories (e.g. Under 14, Under 16, Under 18). Live streams may capture identifiable <strong>minor athletes</strong> (image, voice, jersey number, game data)."
|
||||
s4_lead1: Who is responsible for processing images of minors
|
||||
s4_p2_html: "The <strong>sports club</strong> starting the broadcast, as organiser of the sporting event, is primarily responsible for ensuring a valid legal basis (typically <strong>consent from parents/guardians</strong>, or another basis provided by law and the relevant federation's regulations) before filming and distributing the images."
|
||||
s4_lead2: Role of Match Live TV
|
||||
s4_p3_html: "The service provider supplies the technical platform and, for broadcasts carried out by authorised users, may act as <strong>data processor</strong> on the club's instructions or, in some cases, as controller for processing strictly necessary to provide the service (hosting, security, billing)."
|
||||
s4_lead3: Measures required of the sports club
|
||||
s4_item1: inform parents/guardians about the use of live and archived video;
|
||||
s4_item2: collect and document the necessary consents before the broadcast;
|
||||
s4_item3: limit the distribution of the link to authorised people (family members, staff);
|
||||
s4_item4: not publish on open channels unless permitted by the consent given or the sporting regulations;
|
||||
s4_item5: request removal of recordings when the data subject or guardian is entitled to it.
|
||||
s4_p4_html: "Requests from parents/guardians regarding images of minors may be sent to the sports club and, for technical support or removal from the archive, also to %{email_link}."
|
||||
s5_title: 5. Purposes and legal bases
|
||||
s5_col_purpose: Purpose
|
||||
s5_col_basis: Legal basis (Art. 6 GDPR)
|
||||
s5_row1_purpose: Account registration, team and staff management
|
||||
s5_row1_basis: Performance of a contract / pre-contractual measures
|
||||
s5_row2_purpose: Provision of live streams, live score, archive (Premium plans)
|
||||
s5_row2_basis: Performance of a contract; legitimate interest in service security
|
||||
s5_row3_purpose: Payments and billing (Stripe)
|
||||
s5_row3_basis: Performance of a contract; legal obligations
|
||||
s5_row4_purpose: Support, security, abuse prevention
|
||||
s5_row4_basis: Legitimate interest; legal obligations
|
||||
s5_row5_purpose: Service communications (e.g. password reset)
|
||||
s5_row5_basis: Performance of a contract
|
||||
s5_row6_purpose: Direct marketing (only where applicable and with consent where required)
|
||||
s5_row6_basis: Consent or legitimate interest, depending on the case
|
||||
s6_title: 6. Recipients and data processors
|
||||
s6_intro: "Data may be shared with providers acting as data processors, including:"
|
||||
s6_item1: hosting and cloud/server infrastructure provider;
|
||||
s6_item2_html: "<strong>Stripe</strong> (payments) — %{stripe_link};"
|
||||
s6_item2_link_text: Stripe privacy
|
||||
s6_item3: video streaming provider (MediaMTX / RTMP-HLS infrastructure);
|
||||
s6_item4_html: "possible <strong>YouTube</strong> integration if enabled by the club (subject to Google's policy);"
|
||||
s6_item5: transactional email provider (sending password reset links, invitations).
|
||||
s6_outro: Data is not sold to third parties for commercial profiling purposes.
|
||||
s7_title: 7. Transfers outside the EEA
|
||||
s7_body: Some providers (e.g. Stripe, Google/YouTube) may process data also outside the European Economic Area. In such cases, appropriate safeguards required by the GDPR apply (standard contractual clauses, adequacy decisions).
|
||||
s8_title: 8. Retention
|
||||
s8_item1_html: "<strong>User account:</strong> for the entire duration of the contractual relationship and, after termination, for the time required by legal obligations or claims (generally up to 10 years for accounting documents where applicable)."
|
||||
s8_item2_html: "<strong>Match recordings (replays):</strong> according to the plan (e.g. 30 or 90 days), then automatic deletion or deletion on request."
|
||||
s8_item3_html: "<strong>Technical logs:</strong> a limited period (e.g. 30–90 days), unless security obligations require otherwise."
|
||||
s8_item4_html: "<strong>Password reset token:</strong> maximum validity %{hours} hours."
|
||||
s9_title: 9. Data subject rights
|
||||
s9_intro: "As a data subject you have the right to:"
|
||||
s9_item1: access your data and obtain a copy of it;
|
||||
s9_item2: have it corrected if inaccurate;
|
||||
s9_item3: request its erasure (within the limits of the law);
|
||||
s9_item4: restrict or object to the processing, where applicable;
|
||||
s9_item5: withdraw consent without affecting the lawfulness of processing based on consent given before its withdrawal;
|
||||
s9_item6_html: "lodge a complaint with the Data Protection Authority (%{garante_link})."
|
||||
s9_outro_html: "To exercise your rights: %{email_link}."
|
||||
s10_title: 10. Security
|
||||
s10_body: "We adopt appropriate technical and organisational measures (authenticated access, encrypted passwords, HTTPS communications, environment segregation, restricted staff access). No system is invulnerable: if you suspect unauthorised access, change your password and contact us."
|
||||
s11_title: 11. Cookies and similar technologies
|
||||
s11_p1_html: "The site uses necessary technical cookies (login session, security, storage of cookie preferences) and, subject to consent via the banner, <strong>Google Analytics</strong> for aggregated statistics."
|
||||
s11_p2_html: "You can manage your preferences at any time via the “Manage cookies” link in the footer or consult the %{cookie_policy_link}."
|
||||
s11_cookie_policy_link_text: Cookie policy
|
||||
s12_title: 12. Changes
|
||||
s12_body: "The controller may update this notice. The date at the top indicates the latest revision. In case of material changes, adequate notice will be given (e.g. a notice on the site or an email to registered accounts)."
|
||||
terms:
|
||||
title: Terms of Service — Match Live TV
|
||||
meta_description: "Match Live TV terms and conditions of use for sports clubs: live broadcasts, minors, plans, Stripe payments and user responsibilities."
|
||||
h1: Terms and conditions of service
|
||||
meta: "Last updated: %{date}"
|
||||
s1_title: 1. Purpose
|
||||
s1_p1_html: "These Terms govern the use of the <strong>Match Live TV</strong> platform (website, mobile application and related services) for managing amateur/youth sports live broadcasts, live scoring, sharing links with viewers and Premium features (archive, YouTube, etc.)."
|
||||
s1_p2_html: "The service is provided by <strong>%{provider_name}</strong> (hereinafter the “Provider”). By registering or using the service, you fully accept these Terms and the %{privacy_link}."
|
||||
s1_privacy_link_text: privacy notice
|
||||
s2_title: 2. Who can use the service
|
||||
s2_item1_html: "The representative who registers the team declares to be at least <strong>18 years old</strong> and authorised to bind the sports club."
|
||||
s2_item2: Invited broadcast operators use personal credentials and undertake to keep them safe.
|
||||
s2_item3: Viewers who open the live stream link generally do not need an account.
|
||||
s3_title: 3. Account, plans and payments
|
||||
s3_p1_html: "Free and Premium (Light / Full) plans are available with limits on staff, concurrent live streams, archive and integrations. Prices are shown on the %{pricing_link} page."
|
||||
s3_pricing_link_text: Pricing
|
||||
s3_p2_html: "Payments for paid plans are handled by <strong>Stripe</strong>. By completing checkout, you also accept Stripe's terms for payment. The Provider does not store full card details."
|
||||
s3_p3: Renewals, cancellation and the right of withdrawal follow what was communicated at the time of purchase and applicable law.
|
||||
s4_title: 4. Live broadcasts, content and protection of minors
|
||||
s4_lead1: Responsibility of the sports club
|
||||
s4_p1_html: "The club that starts a live broadcast is responsible for the content transmitted (images, audio, comments) and for compliance with the law, federation regulations and the necessary consents, in particular when <strong>minor athletes</strong> are filmed."
|
||||
s4_p2: "The club undertakes to:"
|
||||
s4_item1: obtain and retain parental/guardian consents or another legal basis before filming;
|
||||
s4_item2: inform parents and athletes about where and for how long the live stream/archive is visible;
|
||||
s4_item3: not broadcast content that is illegal, defamatory, violent or unrelated to the sporting event;
|
||||
s4_item4: respect the right to image and voice of all persons filmed.
|
||||
s4_p3: The Provider may suspend or interrupt broadcasts and accounts in the event of well-founded reports or serious violations, without prejudice to legal action.
|
||||
s5_title: 5. Permitted use and prohibitions
|
||||
s5_intro: "It is forbidden to:"
|
||||
s5_item1: use the service for non-sporting or unauthorised commercial purposes;
|
||||
s5_item2: circumvent technical or plan limits (staff, concurrent live streams);
|
||||
s5_item3: share credentials or publish links on channels that expose minors to risks not covered by the consent given;
|
||||
s5_item4: upload malware, carry out attacks or interfere with the infrastructure;
|
||||
s5_item5: resell the service without a written agreement with the Provider.
|
||||
s6_title: 6. Intellectual property
|
||||
s6_body: Trademarks, software, design and documentation of the service remain the property of the Provider or its licensors. The sports club retains the rights to its own video content; it grants the Provider a limited licence to host, process and distribute it through the platform in order to provide the service.
|
||||
s7_title: 7. Availability and limitations
|
||||
s7_body: The service depends on mobile networks, hardware and third-party providers. We do not guarantee the absolute absence of interruptions, delays or data loss, although we adopt reasonable measures. Video quality may vary depending on the connection in the venue.
|
||||
s8_title: 8. Limitation of liability
|
||||
s8_p1: To the extent permitted by Italian law, the Provider is not liable for indirect damages, loss of profit, or content transmitted by users. The overall liability towards a professional customer does not exceed, where possible, the amount paid in the last 12 months for the subscribed plan.
|
||||
s8_p2: Nothing excludes liability for wilful misconduct or gross negligence, nor any mandatory consumer rights where applicable.
|
||||
s9_title: 9. Withdrawal, suspension and cancellation
|
||||
s9_body_html: "You can request account closure by writing to %{email_link}. The Provider may suspend the account for default, non-payment or breach of the Terms. Upon termination, data is processed as indicated in the privacy notice (limited retention or deletion)."
|
||||
s10_title: 10. Governing law and jurisdiction
|
||||
s10_body_html: "The Terms are governed by <strong>Italian law</strong>. For disputes with consumers, mandatory consumer protection rules apply, along with the consumer's forum where provided. For professional customers, the competent court is in Italy at the Provider's registered office, unless otherwise agreed."
|
||||
s11_title: 11. Contact
|
||||
s11_body_html: "%{provider_name}<br>%{provider_address}<br>Email: %{email_link}"
|
||||
cookies:
|
||||
title: Cookie Policy — Match Live TV
|
||||
meta_description: "Match Live TV cookie policy: technical cookies, session, Google Analytics and consent management."
|
||||
h1: Cookie policy
|
||||
meta_html: "Last updated: %{date} · See also %{privacy_link}"
|
||||
privacy_link_text: privacy notice
|
||||
s1_title: 1. What cookies are
|
||||
s1_body: Cookies are small text files that websites save on the visitor's device. They are used to make the site work, remember preferences or, subject to consent, analyse the use of the service.
|
||||
s2_title: 2. Controller
|
||||
s2_vat_label: "VAT No."
|
||||
s3_title: 3. How we manage consent
|
||||
s3_p1_html: "On first access we show a banner that lets you accept all cookies, use <strong>only necessary ones</strong> or open this page for more details. You can change your choice at any time via the <strong>“Manage cookies”</strong> link in the footer."
|
||||
s3_p2_html: "Your preference is stored in a first-party technical cookie (<code>mltv_cookie_consent</code>) and in the browser's <code>localStorage</code>."
|
||||
s4_title: 4. Cookies and technologies we use
|
||||
s4_1_title: 4.1 Strictly necessary (always active)
|
||||
s4_1_intro: These do not require consent because they are essential for the operation of the site and the reserved area.
|
||||
table_col_name: Name / type
|
||||
table_col_purpose: Purpose
|
||||
table_col_duration: Duration
|
||||
table_col_provider: Provider
|
||||
s4_1_row1_name_html: "<code>_app_session</code> (session cookie)"
|
||||
s4_1_row1_purpose: Keeps the registered user logged in, CSRF protection, secure browsing preferences
|
||||
s4_1_row1_duration: Session / until browser is closed
|
||||
s4_1_row1_provider: Match Live TV (first-party)
|
||||
s4_1_row2_name_html: "<code>mltv_cookie_consent</code>"
|
||||
s4_1_row2_purpose: Stores your choices in the cookie banner (necessary / analytics)
|
||||
s4_1_row2_duration: 12 months
|
||||
s4_1_row2_provider: Match Live TV (first-party)
|
||||
s4_2_title: 4.2 Analytics (only with your consent)
|
||||
s4_2_p1_html: "If you accept “All cookies” or enable statistics in the banner, we load <strong>Google Analytics 4</strong> to understand how the site is used (pages visited, aggregated origin, device). Data is processed by Google Ireland Limited / Google LLC in accordance with their policies."
|
||||
s4_2_active_html: "Measurement ID active on the site: <code>%{id}</code>"
|
||||
s4_2_inactive: Google Analytics is only configured when the controller sets the measurement ID on the server.
|
||||
table2_col_name: Name
|
||||
s4_2_row1_name_html: "<code>_ga</code>"
|
||||
s4_2_row1_purpose: Distinguishes users (statistics)
|
||||
s4_2_row1_duration: 2 years
|
||||
s4_2_row1_provider: Google
|
||||
s4_2_row2_name_html: "<code>_ga_*</code>"
|
||||
s4_2_row2_purpose: Maintains Analytics session state
|
||||
s4_2_row2_duration: 2 years
|
||||
s4_2_row2_provider: Google
|
||||
s4_2_row3_name_html: "<code>_gid</code>"
|
||||
s4_2_row3_purpose: Distinguishes users (statistics)
|
||||
s4_2_row3_duration: 24 hours
|
||||
s4_2_row3_provider: Google
|
||||
s4_2_p2_html: "You can withdraw consent from the banner or from your browser settings. Google information: %{google_privacy_link}, %{google_optout_link}."
|
||||
s4_2_google_privacy_link_text: Google Privacy Policy
|
||||
s4_2_google_optout_link_text: Analytics opt-out add-on
|
||||
s4_3_title: 4.3 Third-party cookies during payment
|
||||
s4_3_body_html: "If you purchase a Premium plan, you are redirected to <strong>Stripe</strong> (secure checkout). Stripe may set its own cookies on the <code>stripe.com</code> domain to prevent fraud and complete the payment. We do not directly control these cookies: please see %{stripe_link}."
|
||||
s4_3_stripe_link_text: Stripe's privacy policy
|
||||
s4_4_title: 4.4 YouTube and related services
|
||||
s4_4_body: The YouTube integration for live broadcasts takes place via a server-side API; the public site does not embed a YouTube player with profiling cookies. Visitors who open an external YouTube link are subject to Google/YouTube's policies on that domain.
|
||||
s5_title: 5. How to disable cookies from your browser
|
||||
s5_body: You can block or delete cookies from your browser settings (Chrome, Firefox, Safari, Edge). Disabling necessary cookies may prevent some features (e.g. login) from working.
|
||||
s6_title: 6. Rights and contact
|
||||
s6_body_html: "To exercise the rights provided by the GDPR (access, erasure, objection, withdrawal of consent) write to %{email_link}. Details are in the %{privacy_doc_link}."
|
||||
s6_privacy_doc_link_text: privacy document
|
||||
manage_button: Manage cookie preferences
|
||||
@@ -0,0 +1,197 @@
|
||||
es:
|
||||
legal:
|
||||
common:
|
||||
back_home: "← Volver al inicio"
|
||||
privacy_nav: Privacidad
|
||||
privacy:
|
||||
title: Política de privacidad — Match Live TV
|
||||
meta_description: "Política de privacidad RGPD de Match Live TV: datos de la cuenta, streaming de partidos juveniles, imágenes de menores, pagos con Stripe y derechos de los interesados."
|
||||
h1: Información sobre el tratamiento de datos personales
|
||||
meta_html: "Última actualización: %{date} · De conformidad con el Reglamento (UE) 2016/679 (RGPD)"
|
||||
s1_title: 1. Responsable del tratamiento
|
||||
s1_intro: "El responsable del tratamiento de los datos personales recogidos a través del sitio web y los servicios de Match Live TV es:"
|
||||
s1_label_address: "Dirección:"
|
||||
s1_label_email: "Email para privacidad y derechos:"
|
||||
s1_label_vat: "NIF/CIF:"
|
||||
s1_outro: Para solicitudes relacionadas con esta información o para ejercer los derechos previstos por el RGPD, escribe a la dirección de correo indicada.
|
||||
s2_title: 2. Ámbito de aplicación
|
||||
s2_intro: "La presente información se aplica a:"
|
||||
s2_item1: visitantes del sitio web de Match Live TV (páginas informativas, lista de directos, registro de equipo);
|
||||
s2_item2: usuarios registrados (responsables de clubes deportivos, entrenadores, personal invitado);
|
||||
s2_item3: espectadores que acceden a los directos mediante enlace (generalmente sin crear una cuenta);
|
||||
s2_item4: uso de la app móvil vinculada al servicio.
|
||||
s3_title: 3. Tipos de datos tratados
|
||||
s3_intro: "Según el uso del servicio, podemos tratar:"
|
||||
s3_item1_html: "<strong>Datos identificativos y de contacto:</strong> nombre, dirección de email, credenciales de acceso (contraseña almacenada de forma cifrada)."
|
||||
s3_item2_html: "<strong>Datos del equipo:</strong> nombre del club, deporte, partidos programados, rival, lugar, horarios."
|
||||
s3_item3_html: "<strong>Datos de streaming y técnicos:</strong> estado de la sesión, marcador, telemetría de red/bitrate, registros de conexión al servicio de vídeo."
|
||||
s3_item4_html: "<strong>Contenidos audiovisuales:</strong> flujos de vídeo y audio de los partidos transmitidos en directo y, con los planes Premium, grabaciones (repeticiones) conservadas durante un periodo limitado."
|
||||
s3_item5_html: "<strong>Datos de pago:</strong> para los planes de pago, Stripe trata los datos necesarios para el pago (por ejemplo, método de pago, datos de facturación). El responsable no conserva los números completos de la tarjeta."
|
||||
s3_item6_html: "<strong>Datos de navegación:</strong> registros del servidor, dirección IP, user agent, necesarios para la seguridad y el funcionamiento del sitio."
|
||||
s4_title: 4. Tratamiento de imágenes y datos de deportistas menores de edad
|
||||
s4_p1_html: "Match Live TV también está destinado a competiciones y categorías juveniles (por ejemplo, sub-14, sub-16, sub-18). Los directos pueden captar a <strong>deportistas menores de edad</strong> identificables (imagen, voz, número de camiseta, datos de juego)."
|
||||
s4_lead1: Quién es responsable del tratamiento de las imágenes de menores
|
||||
s4_p2_html: "El <strong>club deportivo</strong> que inicia la transmisión, en calidad de organizador del evento deportivo, es el principal responsable de garantizar una base jurídica válida (normalmente el <strong>consentimiento de los padres/tutores</strong>, u otro fundamento previsto por la ley y el reglamento de la federación correspondiente) antes de filmar y difundir las imágenes."
|
||||
s4_lead2: Papel de Match Live TV
|
||||
s4_p3_html: "El responsable del servicio proporciona la plataforma técnica y, en el caso de transmisiones realizadas por usuarios autorizados, puede actuar como <strong>encargado del tratamiento</strong> siguiendo las instrucciones del club o, en algunos casos, como responsable de los tratamientos estrictamente necesarios para la prestación del servicio (alojamiento, seguridad, facturación)."
|
||||
s4_lead3: Medidas requeridas al club deportivo
|
||||
s4_item1: informar a los padres/tutores sobre el uso de vídeo en directo y en archivo;
|
||||
s4_item2: recabar y documentar los consentimientos necesarios antes del directo;
|
||||
s4_item3: limitar la difusión del enlace a personas autorizadas (familiares, personal);
|
||||
s4_item4: no publicar en canales abiertos salvo que lo prevea el consentimiento o el reglamento deportivo;
|
||||
s4_item5: solicitar la eliminación de grabaciones cuando el interesado o el tutor tenga derecho a ello.
|
||||
s4_p4_html: "Las solicitudes de los padres/tutores relativas a imágenes de menores pueden dirigirse al club deportivo y, para soporte técnico o eliminación del archivo, también a %{email_link}."
|
||||
s5_title: 5. Finalidades y bases jurídicas
|
||||
s5_col_purpose: Finalidad
|
||||
s5_col_basis: Base jurídica (art. 6 RGPD)
|
||||
s5_row1_purpose: Registro de cuenta, gestión del equipo y del personal
|
||||
s5_row1_basis: Ejecución del contrato / medidas precontractuales
|
||||
s5_row2_purpose: Prestación de directos, marcador en vivo, archivo (planes Premium)
|
||||
s5_row2_basis: Ejecución del contrato; interés legítimo en la seguridad del servicio
|
||||
s5_row3_purpose: Pagos y facturación (Stripe)
|
||||
s5_row3_basis: Ejecución del contrato; obligaciones legales
|
||||
s5_row4_purpose: Asistencia, seguridad, prevención de abusos
|
||||
s5_row4_basis: Interés legítimo; obligaciones legales
|
||||
s5_row5_purpose: Comunicaciones de servicio (por ejemplo, restablecimiento de contraseña)
|
||||
s5_row5_basis: Ejecución del contrato
|
||||
s5_row6_purpose: Marketing directo (solo si está previsto y con consentimiento cuando se requiera)
|
||||
s5_row6_basis: Consentimiento o interés legítimo, según los casos
|
||||
s6_title: 6. Destinatarios y encargados del tratamiento
|
||||
s6_intro: "Los datos pueden comunicarse a proveedores que actúan como encargados del tratamiento, entre ellos:"
|
||||
s6_item1: proveedor de alojamiento e infraestructura en la nube/servidor;
|
||||
s6_item2_html: "<strong>Stripe</strong> (pagos) — %{stripe_link};"
|
||||
s6_item2_link_text: privacidad de Stripe
|
||||
s6_item3: proveedor de streaming de vídeo (MediaMTX / infraestructura RTMP-HLS);
|
||||
s6_item4_html: "eventual integración de <strong>YouTube</strong> si el club la activa (sujeta a la política de Google);"
|
||||
s6_item5: proveedor de email transaccional (envío de enlaces de restablecimiento de contraseña, invitaciones).
|
||||
s6_outro: Los datos no se venden a terceros con fines de perfilado comercial.
|
||||
s7_title: 7. Transferencias fuera del EEE
|
||||
s7_body: Algunos proveedores (por ejemplo, Stripe, Google/YouTube) pueden tratar datos también fuera del Espacio Económico Europeo. En tal caso se aplican garantías adecuadas previstas por el RGPD (cláusulas contractuales tipo, decisiones de adecuación).
|
||||
s8_title: 8. Conservación
|
||||
s8_item1_html: "<strong>Cuenta de usuario:</strong> durante toda la duración de la relación contractual y, tras su finalización, durante el tiempo necesario para obligaciones legales o reclamaciones (generalmente hasta 10 años para documentos contables cuando corresponda)."
|
||||
s8_item2_html: "<strong>Grabaciones de partidos (repeticiones):</strong> según el plan (por ejemplo, 30 o 90 días), después eliminación automática o a petición."
|
||||
s8_item3_html: "<strong>Registros técnicos:</strong> periodo limitado (por ejemplo, 30-90 días) salvo obligaciones de seguridad."
|
||||
s8_item4_html: "<strong>Token de restablecimiento de contraseña:</strong> validez máxima %{hours} horas."
|
||||
s9_title: 9. Derechos de los interesados
|
||||
s9_intro: "Como interesado tienes derecho a:"
|
||||
s9_item1: acceder a tus datos y obtener una copia de ellos;
|
||||
s9_item2: rectificarlos si son inexactos;
|
||||
s9_item3: solicitar su supresión (dentro de los límites de la ley);
|
||||
s9_item4: limitar u oponerte al tratamiento, cuando corresponda;
|
||||
s9_item5: revocar el consentimiento sin que ello afecte a la licitud del tratamiento basado en el consentimiento prestado antes de la revocación;
|
||||
s9_item6_html: "presentar una reclamación ante la autoridad de control competente en materia de protección de datos (%{garante_link})."
|
||||
s9_outro_html: "Para ejercer los derechos: %{email_link}."
|
||||
s10_title: 10. Seguridad
|
||||
s10_body: "Adoptamos medidas técnicas y organizativas adecuadas (acceso autenticado, contraseñas cifradas, comunicaciones HTTPS, segregación de entornos, acceso restringido del personal). Ningún sistema es invulnerable: si sospechas un acceso no autorizado, cambia la contraseña y contáctanos."
|
||||
s11_title: 11. Cookies y tecnologías similares
|
||||
s11_p1_html: "El sitio utiliza cookies técnicas necesarias (sesión de acceso, seguridad, almacenamiento de preferencias de cookies) y, previo consentimiento a través del banner, <strong>Google Analytics</strong> para estadísticas agregadas."
|
||||
s11_p2_html: "Puedes gestionar tus preferencias en cualquier momento desde el enlace «Gestionar cookies» en el pie de página o consultar la %{cookie_policy_link}."
|
||||
s11_cookie_policy_link_text: política de cookies
|
||||
s12_title: 12. Modificaciones
|
||||
s12_body: "El responsable puede actualizar esta información. La fecha indicada arriba corresponde a la última revisión. En caso de cambios relevantes, se proporcionará una comunicación adecuada (por ejemplo, aviso en el sitio o email a las cuentas registradas)."
|
||||
terms:
|
||||
title: Términos de servicio — Match Live TV
|
||||
meta_description: "Términos y condiciones de uso de Match Live TV para clubes deportivos: directos, menores, planes, pagos con Stripe y responsabilidades de los usuarios."
|
||||
h1: Términos y condiciones del servicio
|
||||
meta: "Última actualización: %{date}"
|
||||
s1_title: 1. Objeto
|
||||
s1_p1_html: "Los presentes Términos regulan el uso de la plataforma <strong>Match Live TV</strong> (sitio web, aplicación móvil y servicios relacionados) para la gestión de directos deportivos amateurs/juveniles, marcador en vivo, el compartir enlaces con espectadores y las funciones Premium (archivo, YouTube, etc.)."
|
||||
s1_p2_html: "El servicio lo presta <strong>%{provider_name}</strong> (en adelante, el «Proveedor»). Al registrarte o utilizar el servicio, aceptas íntegramente estos Términos y la %{privacy_link}."
|
||||
s1_privacy_link_text: política de privacidad
|
||||
s2_title: 2. Quién puede usar el servicio
|
||||
s2_item1_html: "La persona que registra el equipo declara tener al menos <strong>18 años</strong> y facultades para vincular al club deportivo."
|
||||
s2_item2: Los responsables de transmisión invitados utilizan credenciales personales y se comprometen a custodiarlas.
|
||||
s2_item3: Los espectadores que abren el enlace del directo normalmente no necesitan una cuenta.
|
||||
s3_title: 3. Cuenta, planes y pagos
|
||||
s3_p1_html: "Están disponibles planes Free y Premium (Light / Full) con límites de personal, directos simultáneos, archivo e integraciones. Los precios se indican en la página %{pricing_link}."
|
||||
s3_pricing_link_text: Precios
|
||||
s3_p2_html: "Los pagos de los planes de pago se gestionan a través de <strong>Stripe</strong>. Al aceptar el checkout, también aceptas los términos de Stripe para el pago. El Proveedor no almacena los datos completos de la tarjeta."
|
||||
s3_p3: Las renovaciones, la baja y el derecho de desistimiento siguen lo comunicado en el momento de la compra y la normativa aplicable.
|
||||
s4_title: 4. Directos, contenidos y protección de menores
|
||||
s4_lead1: Responsabilidad del club deportivo
|
||||
s4_p1_html: "El club que inicia un directo es responsable de los contenidos transmitidos (imágenes, audio, comentarios) y del cumplimiento de las leyes, el reglamento federativo y los consentimientos necesarios, en particular cuando se filma a <strong>deportistas menores de edad</strong>."
|
||||
s4_p2: "El club se compromete a:"
|
||||
s4_item1: obtener y conservar los consentimientos parentales/de los tutores u otra base jurídica antes de la grabación;
|
||||
s4_item2: informar a padres y deportistas de dónde y durante cuánto tiempo es visible el directo/archivo;
|
||||
s4_item3: no transmitir contenidos ilegales, difamatorios, violentos o no relacionados con el evento deportivo;
|
||||
s4_item4: respetar el derecho a la propia imagen y voz de todas las personas grabadas.
|
||||
s4_p3: El Proveedor puede suspender o interrumpir transmisiones y cuentas en caso de denuncias fundadas o infracciones graves, sin perjuicio de acciones legales.
|
||||
s5_title: 5. Uso permitido y prohibiciones
|
||||
s5_intro: "Está prohibido:"
|
||||
s5_item1: usar el servicio con fines no deportivos o comerciales no autorizados;
|
||||
s5_item2: eludir límites técnicos o del plan (personal, directos simultáneos);
|
||||
s5_item3: compartir credenciales o publicar enlaces en canales que expongan a menores a riesgos no previstos por el consentimiento;
|
||||
s5_item4: cargar malware, realizar ataques o interferir con la infraestructura;
|
||||
s5_item5: revender el servicio sin acuerdo escrito con el Proveedor.
|
||||
s6_title: 6. Propiedad intelectual
|
||||
s6_body: Las marcas, el software, el diseño y la documentación del servicio siguen siendo propiedad del Proveedor o de sus licenciantes. El club deportivo conserva los derechos sobre sus propios contenidos de vídeo; concede al Proveedor una licencia limitada para alojarlos, procesarlos y distribuirlos a través de la plataforma con el fin de prestar el servicio.
|
||||
s7_title: 7. Disponibilidad y limitaciones
|
||||
s7_body: El servicio depende de redes móviles, hardware y proveedores externos. No garantizamos la ausencia absoluta de interrupciones, retrasos o pérdida de datos, aunque adoptamos medidas razonables. La calidad del vídeo puede variar según la conexión en el pabellón.
|
||||
s8_title: 8. Limitación de responsabilidad
|
||||
s8_p1: En los límites permitidos por la ley italiana, el Proveedor no responde de daños indirectos, pérdida de beneficios ni contenidos transmitidos por los usuarios. La responsabilidad total frente a un cliente profesional no excede, cuando sea posible, el importe pagado en los últimos 12 meses por el plan contratado.
|
||||
s8_p2: Nada excluye la responsabilidad por dolo o culpa grave, ni los derechos irrenunciables del consumidor cuando sean aplicables.
|
||||
s9_title: 9. Desistimiento, suspensión y cancelación
|
||||
s9_body_html: "Puedes solicitar el cierre de la cuenta escribiendo a %{email_link}. El Proveedor puede suspender la cuenta por incumplimiento, impago o violación de los Términos. Al finalizar, los datos se tratan según lo indicado en la política de privacidad (conservación limitada o eliminación)."
|
||||
s10_title: 10. Ley aplicable y jurisdicción
|
||||
s10_body_html: "Los Términos se rigen por la <strong>ley italiana</strong>. Para controversias con consumidores se aplican las normas irrenunciables de protección del consumidor y el fuero del consumidor cuando esté previsto. Para clientes profesionales, el fuero competente es Italia, en la sede del Proveedor, salvo acuerdo distinto."
|
||||
s11_title: 11. Contacto
|
||||
s11_body_html: "%{provider_name}<br>%{provider_address}<br>Email: %{email_link}"
|
||||
cookies:
|
||||
title: Política de cookies — Match Live TV
|
||||
meta_description: "Política de cookies de Match Live TV: cookies técnicas, sesión, Google Analytics y gestión del consentimiento."
|
||||
h1: Política de cookies
|
||||
meta_html: "Última actualización: %{date} · Consulta también la %{privacy_link}"
|
||||
privacy_link_text: política de privacidad
|
||||
s1_title: 1. Qué son las cookies
|
||||
s1_body: Las cookies son pequeños archivos de texto que los sitios guardan en el dispositivo del visitante. Sirven para hacer funcionar el sitio, recordar preferencias o, previo consentimiento, analizar el uso del servicio.
|
||||
s2_title: 2. Responsable
|
||||
s2_vat_label: NIF/CIF
|
||||
s3_title: 3. Cómo gestionamos el consentimiento
|
||||
s3_p1_html: "En el primer acceso mostramos un banner que te permite aceptar todas las cookies, usar <strong>solo las necesarias</strong> o abrir esta página para más detalles. Puedes cambiar tu elección en cualquier momento con el enlace <strong>«Gestionar cookies»</strong> en el pie de página."
|
||||
s3_p2_html: "La preferencia se almacena en una cookie técnica propia (<code>mltv_cookie_consent</code>) y en el <code>localStorage</code> del navegador."
|
||||
s4_title: 4. Cookies y tecnologías que utilizamos
|
||||
s4_1_title: 4.1 Estrictamente necesarias (siempre activas)
|
||||
s4_1_intro: No requieren consentimiento porque son indispensables para el funcionamiento del sitio y del área reservada.
|
||||
table_col_name: Nombre / tipo
|
||||
table_col_purpose: Finalidad
|
||||
table_col_duration: Duración
|
||||
table_col_provider: Proveedor
|
||||
s4_1_row1_name_html: "<code>_app_session</code> (cookie de sesión)"
|
||||
s4_1_row1_purpose: Mantiene el acceso del usuario registrado, protección CSRF, preferencias de navegación segura
|
||||
s4_1_row1_duration: Sesión / hasta el cierre del navegador
|
||||
s4_1_row1_provider: Match Live TV (propia)
|
||||
s4_1_row2_name_html: "<code>mltv_cookie_consent</code>"
|
||||
s4_1_row2_purpose: Guarda las elecciones del banner de cookies (necesarias / analíticas)
|
||||
s4_1_row2_duration: 12 meses
|
||||
s4_1_row2_provider: Match Live TV (propia)
|
||||
s4_2_title: 4.2 Analíticas (solo con tu consentimiento)
|
||||
s4_2_p1_html: "Si aceptas «Todas las cookies» o activas las estadísticas en el banner, cargamos <strong>Google Analytics 4</strong> para entender cómo se usa el sitio (páginas visitadas, procedencia agregada, dispositivo). Los datos son tratados por Google Ireland Limited / Google LLC conforme a sus políticas."
|
||||
s4_2_active_html: "ID de medición activo en el sitio: <code>%{id}</code>"
|
||||
s4_2_inactive: Google Analytics solo se configura cuando el responsable establece el ID de medición en el servidor.
|
||||
table2_col_name: Nombre
|
||||
s4_2_row1_name_html: "<code>_ga</code>"
|
||||
s4_2_row1_purpose: Distingue a los usuarios (estadísticas)
|
||||
s4_2_row1_duration: 2 años
|
||||
s4_2_row1_provider: Google
|
||||
s4_2_row2_name_html: "<code>_ga_*</code>"
|
||||
s4_2_row2_purpose: Mantiene el estado de la sesión de Analytics
|
||||
s4_2_row2_duration: 2 años
|
||||
s4_2_row2_provider: Google
|
||||
s4_2_row3_name_html: "<code>_gid</code>"
|
||||
s4_2_row3_purpose: Distingue a los usuarios (estadísticas)
|
||||
s4_2_row3_duration: 24 horas
|
||||
s4_2_row3_provider: Google
|
||||
s4_2_p2_html: "Puedes revocar el consentimiento desde el banner o desde la configuración del navegador. Información de Google: %{google_privacy_link}, %{google_optout_link}."
|
||||
s4_2_google_privacy_link_text: Política de privacidad de Google
|
||||
s4_2_google_optout_link_text: complemento de exclusión de Analytics
|
||||
s4_3_title: 4.3 Cookies de terceros durante el pago
|
||||
s4_3_body_html: "Si compras un plan Premium, serás redirigido a <strong>Stripe</strong> (pago seguro). Stripe puede establecer sus propias cookies en el dominio <code>stripe.com</code> para prevenir fraudes y completar el pago. No controlamos directamente estas cookies: consulta la %{stripe_link}."
|
||||
s4_3_stripe_link_text: política de privacidad de Stripe
|
||||
s4_4_title: 4.4 YouTube y servicios relacionados
|
||||
s4_4_body: La integración de YouTube para los directos se realiza mediante una API en el servidor; el sitio público no incorpora un reproductor de YouTube con cookies de perfilado. Los visitantes que abren un enlace externo de YouTube quedan sujetos a las políticas de Google/YouTube en ese dominio.
|
||||
s5_title: 5. Cómo desactivar las cookies desde el navegador
|
||||
s5_body: Puedes bloquear o eliminar las cookies desde la configuración del navegador (Chrome, Firefox, Safari, Edge). Al desactivar las cookies necesarias, algunas funciones (por ejemplo, el inicio de sesión) podrían no funcionar.
|
||||
s6_title: 6. Derechos y contacto
|
||||
s6_body_html: "Para ejercer los derechos previstos por el RGPD (acceso, supresión, oposición, revocación del consentimiento) escribe a %{email_link}. Más detalles en el %{privacy_doc_link}."
|
||||
s6_privacy_doc_link_text: documento de privacidad
|
||||
manage_button: Gestionar preferencias de cookies
|
||||
@@ -0,0 +1,197 @@
|
||||
fr:
|
||||
legal:
|
||||
common:
|
||||
back_home: "← Retour à l'accueil"
|
||||
privacy_nav: Confidentialité
|
||||
privacy:
|
||||
title: Politique de confidentialité — Match Live TV
|
||||
meta_description: "Politique de confidentialité RGPD de Match Live TV : données de compte, streaming de matchs jeunes, images de mineurs, paiements Stripe et droits des personnes concernées."
|
||||
h1: Notice relative au traitement des données personnelles
|
||||
meta_html: "Dernière mise à jour : %{date} · Conformément au règlement (UE) 2016/679 (RGPD)"
|
||||
s1_title: 1. Responsable du traitement
|
||||
s1_intro: "Le responsable du traitement des données personnelles collectées via le site et les services Match Live TV est :"
|
||||
s1_label_address: "Adresse :"
|
||||
s1_label_email: "Email pour la confidentialité et les droits :"
|
||||
s1_label_vat: "Numéro de TVA / code fiscal :"
|
||||
s1_outro: Pour toute demande relative à cette notice ou pour exercer les droits prévus par le RGPD, écrivez à l'adresse email indiquée.
|
||||
s2_title: 2. Champ d'application
|
||||
s2_intro: "La présente notice s'applique :"
|
||||
s2_item1: aux visiteurs du site web Match Live TV (pages d'information, liste des directs, inscription d'équipe) ;
|
||||
s2_item2: aux utilisateurs inscrits (référents de clubs sportifs, entraîneurs, staff invité) ;
|
||||
s2_item3: aux spectateurs qui accèdent aux directs via un lien (généralement sans créer de compte) ;
|
||||
s2_item4: à l'utilisation de l'application mobile liée au service.
|
||||
s3_title: 3. Types de données traitées
|
||||
s3_intro: "Selon l'usage du service, nous pouvons traiter :"
|
||||
s3_item1_html: "<strong>Données d'identification et de contact :</strong> nom, adresse email, identifiants de connexion (mot de passe conservé sous forme chiffrée)."
|
||||
s3_item2_html: "<strong>Données de l'équipe :</strong> nom du club, sport, matchs programmés, adversaire, lieu, horaires."
|
||||
s3_item3_html: "<strong>Données de streaming et techniques :</strong> statut de session, score, télémétrie réseau/débit, journaux de connexion au service vidéo."
|
||||
s3_item4_html: "<strong>Contenus audiovisuels :</strong> flux vidéo et audio des matchs diffusés en direct et, avec les forfaits Premium, enregistrements (replays) conservés pendant une durée limitée."
|
||||
s3_item5_html: "<strong>Données de paiement :</strong> pour les forfaits payants, Stripe traite les données nécessaires au paiement (par ex. mode de paiement, coordonnées de facturation). Le responsable ne conserve pas les numéros complets de carte."
|
||||
s3_item6_html: "<strong>Données de navigation :</strong> journaux du serveur, adresse IP, user agent, nécessaires à la sécurité et au fonctionnement du site."
|
||||
s4_title: 4. Traitement des images et données des athlètes mineurs
|
||||
s4_p1_html: "Match Live TV est également destiné aux compétitions et catégories jeunes (par ex. U14, U16, U18). Les directs peuvent filmer des <strong>athlètes mineurs</strong> identifiables (image, voix, numéro de maillot, données de jeu)."
|
||||
s4_lead1: Qui est responsable du traitement des images des mineurs
|
||||
s4_p2_html: "Le <strong>club sportif</strong> qui lance la diffusion, en tant qu'organisateur de l'événement sportif, est en premier lieu responsable de s'assurer d'une base juridique valable (généralement le <strong>consentement des parents/tuteurs</strong>, ou un autre fondement prévu par la loi et le règlement de la fédération concernée) avant de filmer et diffuser les images."
|
||||
s4_lead2: Rôle de Match Live TV
|
||||
s4_p3_html: "Le responsable du service fournit la plateforme technique et, pour les diffusions effectuées par les utilisateurs autorisés, peut agir en tant que <strong>sous-traitant</strong> sur instructions du club ou, dans certains cas, en tant que responsable pour les traitements strictement nécessaires à la fourniture du service (hébergement, sécurité, facturation)."
|
||||
s4_lead3: Mesures requises du club sportif
|
||||
s4_item1: informer les parents/tuteurs de l'usage des vidéos en direct et archivées ;
|
||||
s4_item2: recueillir et documenter les consentements nécessaires avant le direct ;
|
||||
s4_item3: limiter la diffusion du lien aux personnes autorisées (famille, staff) ;
|
||||
s4_item4: ne pas publier sur des canaux ouverts sauf si le consentement ou le règlement sportif le prévoit ;
|
||||
s4_item5: demander la suppression des enregistrements lorsque la personne concernée ou le tuteur y a droit.
|
||||
s4_p4_html: "Les demandes des parents/tuteurs concernant les images de mineurs peuvent être adressées au club sportif et, pour un support technique ou une suppression de l'archive, également à %{email_link}."
|
||||
s5_title: 5. Finalités et bases juridiques
|
||||
s5_col_purpose: Finalité
|
||||
s5_col_basis: Base juridique (art. 6 RGPD)
|
||||
s5_row1_purpose: Inscription du compte, gestion de l'équipe et du staff
|
||||
s5_row1_basis: Exécution du contrat / mesures précontractuelles
|
||||
s5_row2_purpose: Fourniture des directs, score en direct, archive (forfaits Premium)
|
||||
s5_row2_basis: Exécution du contrat ; intérêt légitime à la sécurité du service
|
||||
s5_row3_purpose: Paiements et facturation (Stripe)
|
||||
s5_row3_basis: Exécution du contrat ; obligations légales
|
||||
s5_row4_purpose: Assistance, sécurité, prévention des abus
|
||||
s5_row4_basis: Intérêt légitime ; obligations légales
|
||||
s5_row5_purpose: Communications de service (par ex. réinitialisation du mot de passe)
|
||||
s5_row5_basis: Exécution du contrat
|
||||
s5_row6_purpose: Marketing direct (uniquement si prévu et avec consentement le cas échéant)
|
||||
s5_row6_basis: Consentement ou intérêt légitime, selon les cas
|
||||
s6_title: 6. Destinataires et sous-traitants
|
||||
s6_intro: "Les données peuvent être communiquées à des prestataires agissant en tant que sous-traitants, notamment :"
|
||||
s6_item1: fournisseur d'hébergement et d'infrastructure cloud/serveur ;
|
||||
s6_item2_html: "<strong>Stripe</strong> (paiements) — %{stripe_link} ;"
|
||||
s6_item2_link_text: confidentialité Stripe
|
||||
s6_item3: fournisseur de streaming vidéo (MediaMTX / infrastructure RTMP-HLS) ;
|
||||
s6_item4_html: "éventuelle intégration <strong>YouTube</strong> si activée par le club (soumise à la politique de Google) ;"
|
||||
s6_item5: fournisseur d'emails transactionnels (envoi de liens de réinitialisation, invitations).
|
||||
s6_outro: Les données ne sont pas vendues à des tiers à des fins de profilage commercial.
|
||||
s7_title: 7. Transferts hors EEE
|
||||
s7_body: Certains prestataires (par ex. Stripe, Google/YouTube) peuvent traiter des données également en dehors de l'Espace économique européen. Dans ce cas, des garanties appropriées prévues par le RGPD s'appliquent (clauses contractuelles types, décisions d'adéquation).
|
||||
s8_title: 8. Conservation
|
||||
s8_item1_html: "<strong>Compte utilisateur :</strong> pendant toute la durée de la relation contractuelle et, après sa cessation, pendant le temps nécessaire aux obligations légales ou contentieux (généralement jusqu'à 10 ans pour les documents comptables le cas échéant)."
|
||||
s8_item2_html: "<strong>Enregistrements des matchs (replays) :</strong> selon le forfait (par ex. 30 ou 90 jours), puis suppression automatique ou sur demande."
|
||||
s8_item3_html: "<strong>Journaux techniques :</strong> durée limitée (par ex. 30 à 90 jours) sauf obligations de sécurité."
|
||||
s8_item4_html: "<strong>Jeton de réinitialisation du mot de passe :</strong> validité maximale %{hours} heures."
|
||||
s9_title: 9. Droits des personnes concernées
|
||||
s9_intro: "En tant que personne concernée, vous avez le droit :"
|
||||
s9_item1: d'accéder à vos données et d'en obtenir une copie ;
|
||||
s9_item2: de les faire rectifier si elles sont inexactes ;
|
||||
s9_item3: d'en demander l'effacement (dans les limites légales) ;
|
||||
s9_item4: de limiter ou de vous opposer au traitement, le cas échéant ;
|
||||
s9_item5: de retirer votre consentement sans porter atteinte à la licéité du traitement fondé sur le consentement effectué avant ce retrait ;
|
||||
s9_item6_html: "de déposer une réclamation auprès de l'autorité de contrôle compétente en matière de protection des données (%{garante_link})."
|
||||
s9_outro_html: "Pour exercer vos droits : %{email_link}."
|
||||
s10_title: 10. Sécurité
|
||||
s10_body: "Nous adoptons des mesures techniques et organisationnelles appropriées (accès authentifié, mots de passe chiffrés, communications HTTPS, séparation des environnements, accès du staff limité). Aucun système n'est invulnérable : si vous suspectez un accès non autorisé, changez votre mot de passe et contactez-nous."
|
||||
s11_title: 11. Cookies et technologies similaires
|
||||
s11_p1_html: "Le site utilise des cookies techniques nécessaires (session de connexion, sécurité, mémorisation des préférences cookies) et, sous réserve de consentement via la bannière, <strong>Google Analytics</strong> pour des statistiques agrégées."
|
||||
s11_p2_html: "Vous pouvez gérer vos préférences à tout moment via le lien « Gérer les cookies » dans le pied de page ou consulter la %{cookie_policy_link}."
|
||||
s11_cookie_policy_link_text: politique de cookies
|
||||
s12_title: 12. Modifications
|
||||
s12_body: "Le responsable peut mettre à jour cette notice. La date en haut indique la dernière révision. En cas de modifications importantes, une communication adéquate sera fournie (par ex. avis sur le site ou email aux comptes inscrits)."
|
||||
terms:
|
||||
title: Conditions d'utilisation — Match Live TV
|
||||
meta_description: "Conditions générales d'utilisation de Match Live TV pour les clubs sportifs : directs, mineurs, forfaits, paiements Stripe et responsabilités des utilisateurs."
|
||||
h1: Conditions générales de service
|
||||
meta: "Dernière mise à jour : %{date}"
|
||||
s1_title: 1. Objet
|
||||
s1_p1_html: "Les présentes Conditions régissent l'utilisation de la plateforme <strong>Match Live TV</strong> (site web, application mobile et services connexes) pour la gestion des directs sportifs amateurs/jeunes, du score en direct, du partage de liens avec les spectateurs et des fonctions Premium (archive, YouTube, etc.)."
|
||||
s1_p2_html: "Le service est fourni par <strong>%{provider_name}</strong> (ci-après le « Fournisseur »). En vous inscrivant ou en utilisant le service, vous acceptez intégralement les présentes Conditions et la %{privacy_link}."
|
||||
s1_privacy_link_text: politique de confidentialité
|
||||
s2_title: 2. Qui peut utiliser le service
|
||||
s2_item1_html: "Le référent qui inscrit l'équipe déclare avoir au moins <strong>18 ans</strong> et le pouvoir d'engager le club sportif."
|
||||
s2_item2: Les responsables de diffusion invités utilisent des identifiants personnels et s'engagent à les conserver en sécurité.
|
||||
s2_item3: Les spectateurs qui ouvrent le lien du direct n'ont généralement pas besoin de compte.
|
||||
s3_title: 3. Compte, forfaits et paiements
|
||||
s3_p1_html: "Des forfaits Free et Premium (Light / Full) sont disponibles avec des limites sur le staff, les directs simultanés, l'archive et les intégrations. Les prix sont indiqués sur la page %{pricing_link}."
|
||||
s3_pricing_link_text: Tarifs
|
||||
s3_p2_html: "Les paiements des forfaits payants sont gérés par <strong>Stripe</strong>. En validant le paiement, vous acceptez également les conditions de Stripe pour le paiement. Le Fournisseur ne conserve pas les données complètes de la carte."
|
||||
s3_p3: Les renouvellements, la résiliation et le droit de rétractation suivent ce qui a été communiqué au moment de l'achat et la réglementation applicable.
|
||||
s4_title: 4. Directs, contenus et protection des mineurs
|
||||
s4_lead1: Responsabilité du club sportif
|
||||
s4_p1_html: "Le club qui lance un direct est responsable des contenus diffusés (images, audio, commentaires) et de la conformité aux lois, au règlement fédéral et aux consentements nécessaires, en particulier lorsque des <strong>athlètes mineurs</strong> sont filmés."
|
||||
s4_p2: "Le club s'engage à :"
|
||||
s4_item1: obtenir et conserver les consentements parentaux/des tuteurs ou une autre base juridique avant la prise de vue ;
|
||||
s4_item2: informer les parents et les athlètes du lieu et de la durée de visibilité du direct/de l'archive ;
|
||||
s4_item3: ne pas diffuser de contenus illégaux, diffamatoires, violents ou sans rapport avec l'événement sportif ;
|
||||
s4_item4: respecter le droit à l'image et à la voix de toutes les personnes filmées.
|
||||
s4_p3: Le Fournisseur peut suspendre ou interrompre des diffusions et des comptes en cas de signalements fondés ou de violations graves, sans préjudice d'actions en justice.
|
||||
s5_title: 5. Usage autorisé et interdictions
|
||||
s5_intro: "Il est interdit :"
|
||||
s5_item1: d'utiliser le service à des fins non sportives ou commerciales non autorisées ;
|
||||
s5_item2: de contourner les limites techniques ou de forfait (staff, directs simultanés) ;
|
||||
s5_item3: de partager des identifiants ou de publier des liens sur des canaux exposant des mineurs à des risques non prévus par le consentement ;
|
||||
s5_item4: de charger des logiciels malveillants, de mener des attaques ou d'interférer avec l'infrastructure ;
|
||||
s5_item5: de revendre le service sans accord écrit avec le Fournisseur.
|
||||
s6_title: 6. Propriété intellectuelle
|
||||
s6_body: Les marques, logiciels, designs et documentation du service restent la propriété du Fournisseur ou de ses concédants. Le club sportif conserve les droits sur ses propres contenus vidéo ; il concède au Fournisseur une licence limitée pour les héberger, les traiter et les distribuer via la plateforme afin de fournir le service.
|
||||
s7_title: 7. Disponibilité et limitations
|
||||
s7_body: Le service dépend des réseaux mobiles, du matériel et de prestataires tiers. Nous ne garantissons pas l'absence absolue d'interruptions, de retards ou de pertes de données, bien que nous adoptions des mesures raisonnables. La qualité vidéo peut varier selon la connexion dans le gymnase.
|
||||
s8_title: 8. Limitation de responsabilité
|
||||
s8_p1: Dans les limites permises par la loi italienne, le Fournisseur n'est pas responsable des dommages indirects, de la perte de profit, ni des contenus diffusés par les utilisateurs. La responsabilité globale envers un client professionnel n'excède pas, dans la mesure du possible, le montant payé au cours des 12 derniers mois pour le forfait souscrit.
|
||||
s8_p2: Rien n'exclut la responsabilité pour dol ou faute grave, ni les droits impératifs du consommateur lorsqu'ils sont applicables.
|
||||
s9_title: 9. Rétractation, suspension et résiliation
|
||||
s9_body_html: "Vous pouvez demander la clôture du compte en écrivant à %{email_link}. Le Fournisseur peut suspendre le compte en cas de manquement, de non-paiement ou de violation des Conditions. À la cessation, les données sont traitées comme indiqué dans la politique de confidentialité (conservation limitée ou suppression)."
|
||||
s10_title: 10. Loi applicable et juridiction
|
||||
s10_body_html: "Les Conditions sont régies par la <strong>loi italienne</strong>. Pour les litiges avec les consommateurs, les règles impératives de protection du consommateur s'appliquent, ainsi que le for du consommateur lorsqu'il est prévu. Pour les clients professionnels, le tribunal compétent est en Italie, au siège du Fournisseur, sauf accord contraire."
|
||||
s11_title: 11. Contact
|
||||
s11_body_html: "%{provider_name}<br>%{provider_address}<br>Email : %{email_link}"
|
||||
cookies:
|
||||
title: Politique de cookies — Match Live TV
|
||||
meta_description: "Politique de cookies de Match Live TV : cookies techniques, session, Google Analytics et gestion du consentement."
|
||||
h1: Politique de cookies
|
||||
meta_html: "Dernière mise à jour : %{date} · Voir aussi la %{privacy_link}"
|
||||
privacy_link_text: politique de confidentialité
|
||||
s1_title: 1. Que sont les cookies
|
||||
s1_body: Les cookies sont de petits fichiers texte que les sites enregistrent sur l'appareil du visiteur. Ils servent à faire fonctionner le site, à mémoriser des préférences ou, sous réserve de consentement, à analyser l'usage du service.
|
||||
s2_title: 2. Responsable
|
||||
s2_vat_label: "N° TVA"
|
||||
s3_title: 3. Comment nous gérons le consentement
|
||||
s3_p1_html: "Lors de votre première visite, nous affichons une bannière qui vous permet d'accepter tous les cookies, d'utiliser <strong>uniquement les cookies nécessaires</strong> ou d'ouvrir cette page pour plus de détails. Vous pouvez modifier votre choix à tout moment via le lien <strong>« Gérer les cookies »</strong> dans le pied de page."
|
||||
s3_p2_html: "La préférence est mémorisée dans un cookie technique de première partie (<code>mltv_cookie_consent</code>) et dans le <code>localStorage</code> du navigateur."
|
||||
s4_title: 4. Cookies et technologies que nous utilisons
|
||||
s4_1_title: 4.1 Strictement nécessaires (toujours actifs)
|
||||
s4_1_intro: Ils ne requièrent pas de consentement car ils sont indispensables au fonctionnement du site et de l'espace réservé.
|
||||
table_col_name: Nom / type
|
||||
table_col_purpose: Finalité
|
||||
table_col_duration: Durée
|
||||
table_col_provider: Fournisseur
|
||||
s4_1_row1_name_html: "<code>_app_session</code> (cookie de session)"
|
||||
s4_1_row1_purpose: Maintient la connexion de l'utilisateur inscrit, protection CSRF, préférences de navigation sécurisée
|
||||
s4_1_row1_duration: Session / jusqu'à la fermeture du navigateur
|
||||
s4_1_row1_provider: Match Live TV (première partie)
|
||||
s4_1_row2_name_html: "<code>mltv_cookie_consent</code>"
|
||||
s4_1_row2_purpose: Mémorise vos choix dans la bannière cookies (nécessaires / analytics)
|
||||
s4_1_row2_duration: 12 mois
|
||||
s4_1_row2_provider: Match Live TV (première partie)
|
||||
s4_2_title: 4.2 Analytics (uniquement avec votre consentement)
|
||||
s4_2_p1_html: "Si vous acceptez « Tous les cookies » ou activez les statistiques dans la bannière, nous chargeons <strong>Google Analytics 4</strong> pour comprendre comment le site est utilisé (pages visitées, provenance agrégée, appareil). Les données sont traitées par Google Ireland Limited / Google LLC conformément à leurs politiques."
|
||||
s4_2_active_html: "ID de mesure actif sur le site : <code>%{id}</code>"
|
||||
s4_2_inactive: Google Analytics n'est configuré que lorsque le responsable définit l'ID de mesure sur le serveur.
|
||||
table2_col_name: Nom
|
||||
s4_2_row1_name_html: "<code>_ga</code>"
|
||||
s4_2_row1_purpose: Distingue les utilisateurs (statistiques)
|
||||
s4_2_row1_duration: 2 ans
|
||||
s4_2_row1_provider: Google
|
||||
s4_2_row2_name_html: "<code>_ga_*</code>"
|
||||
s4_2_row2_purpose: Maintient l'état de la session Analytics
|
||||
s4_2_row2_duration: 2 ans
|
||||
s4_2_row2_provider: Google
|
||||
s4_2_row3_name_html: "<code>_gid</code>"
|
||||
s4_2_row3_purpose: Distingue les utilisateurs (statistiques)
|
||||
s4_2_row3_duration: 24 heures
|
||||
s4_2_row3_provider: Google
|
||||
s4_2_p2_html: "Vous pouvez retirer votre consentement depuis la bannière ou depuis les paramètres du navigateur. Informations Google : %{google_privacy_link}, %{google_optout_link}."
|
||||
s4_2_google_privacy_link_text: Politique de confidentialité Google
|
||||
s4_2_google_optout_link_text: module de désactivation Analytics
|
||||
s4_3_title: 4.3 Cookies tiers lors du paiement
|
||||
s4_3_body_html: "Si vous achetez un forfait Premium, vous êtes redirigé vers <strong>Stripe</strong> (paiement sécurisé). Stripe peut définir ses propres cookies sur le domaine <code>stripe.com</code> pour prévenir la fraude et finaliser le paiement. Nous ne contrôlons pas directement ces cookies : consultez la %{stripe_link}."
|
||||
s4_3_stripe_link_text: politique de confidentialité de Stripe
|
||||
s4_4_title: 4.4 YouTube et services liés
|
||||
s4_4_body: L'intégration YouTube pour les directs se fait via une API côté serveur ; le site public n'intègre pas de lecteur YouTube avec cookies de profilage. Les visiteurs qui ouvrent un lien YouTube externe sont soumis aux politiques de Google/YouTube sur ce domaine.
|
||||
s5_title: 5. Comment désactiver les cookies depuis le navigateur
|
||||
s5_body: Vous pouvez bloquer ou supprimer les cookies depuis les paramètres du navigateur (Chrome, Firefox, Safari, Edge). La désactivation des cookies nécessaires peut empêcher certaines fonctions (par ex. la connexion) de fonctionner.
|
||||
s6_title: 6. Droits et contact
|
||||
s6_body_html: "Pour exercer les droits prévus par le RGPD (accès, effacement, opposition, retrait du consentement), écrivez à %{email_link}. Détails dans le %{privacy_doc_link}."
|
||||
s6_privacy_doc_link_text: document de confidentialité
|
||||
manage_button: Gérer les préférences de cookies
|
||||
@@ -0,0 +1,197 @@
|
||||
it:
|
||||
legal:
|
||||
common:
|
||||
back_home: "← Torna alla home"
|
||||
privacy_nav: Privacy
|
||||
privacy:
|
||||
title: Informativa privacy — Match Live TV
|
||||
meta_description: "Informativa privacy GDPR di Match Live TV: dati account, streaming partite giovanili, immagini di minori, pagamenti Stripe e diritti degli interessati."
|
||||
h1: Informativa sul trattamento dei dati personali
|
||||
meta_html: "Ultimo aggiornamento: %{date} · Ai sensi del Regolamento (UE) 2016/679 (GDPR)"
|
||||
s1_title: 1. Titolare del trattamento
|
||||
s1_intro: "Il titolare del trattamento dei dati personali raccolti tramite il sito e i servizi Match Live TV è:"
|
||||
s1_label_address: "Indirizzo:"
|
||||
s1_label_email: "Email per privacy e diritti:"
|
||||
s1_label_vat: "Partita IVA / CF:"
|
||||
s1_outro: Per richieste relative a questa informativa o per esercitare i diritti previsti dal GDPR, scrivi all’indirizzo email indicato.
|
||||
s2_title: 2. Ambito di applicazione
|
||||
s2_intro: "La presente informativa si applica a:"
|
||||
s2_item1: visitatori del sito web Match Live TV (pagine informative, elenco dirette, registrazione squadra);
|
||||
s2_item2: utenti registrati (referenti di società sportive, coach, staff invitato);
|
||||
s2_item3: spettatori che accedono alle dirette tramite link (in genere senza creare un account);
|
||||
s2_item4: utilizzo dell’app mobile collegata al servizio.
|
||||
s3_title: 3. Tipologie di dati trattati
|
||||
s3_intro: "Possiamo trattare, a seconda dell’uso del servizio:"
|
||||
s3_item1_html: "<strong>Dati identificativi e di contatto:</strong> nome, indirizzo email, credenziali di accesso (password conservata in forma crittografata)."
|
||||
s3_item2_html: "<strong>Dati della squadra:</strong> nome società, sport, partite programmate, avversario, luogo, orari."
|
||||
s3_item3_html: "<strong>Dati di streaming e tecnici:</strong> stato sessione, punteggio, telemetria di rete/bitrate, log di connessione al servizio video."
|
||||
s3_item4_html: "<strong>Contenuti audiovisivi:</strong> flussi video e audio delle partite trasmesse in diretta e, con i piani Premium, registrazioni (replay) conservate per un periodo limitato."
|
||||
s3_item5_html: "<strong>Dati di pagamento:</strong> per i piani a pagamento, Stripe tratta i dati necessari al pagamento (es. metodo di pagamento, intestazione fattura). Il titolare non conserva i numeri completi della carta."
|
||||
s3_item6_html: "<strong>Dati di navigazione:</strong> log del server, indirizzo IP, user agent, necessari per sicurezza e funzionamento del sito."
|
||||
s4_title: 4. Trattamento di immagini e dati di atleti minorenni
|
||||
s4_p1_html: "Match Live TV è destinato anche a competizioni e categorie giovanili (es. Under 14, Under 16, Under 18). Le dirette possono riprendere <strong>atleti minorenni</strong> identificabili (immagine, voce, numero di maglia, dati di gioco)."
|
||||
s4_lead1: Chi è responsabile del trattamento delle immagini dei minori
|
||||
s4_p2_html: "La <strong>società sportiva</strong> che avvia la trasmissione, in qualità di organizzatrice dell’evento sportivo, è in primo luogo responsabile di assicurare una base giuridica valida (tipicamente <strong>consenso dei genitori/tutori</strong>, oppure altro titolo previsto dalla legge e dal regolamento della federazione di riferimento) prima di filmare e diffondere le immagini."
|
||||
s4_lead2: Ruolo di Match Live TV
|
||||
s4_p3_html: "Il titolare del servizio fornisce la piattaforma tecnica e, per le trasmissioni effettuate dagli utenti autorizzati, può agire come <strong>responsabile del trattamento</strong> su istruzioni della società o, in alcuni casi, come titolare per i trattamenti strettamente necessari all’erogazione del servizio (hosting, sicurezza, fatturazione)."
|
||||
s4_lead3: Misure richieste alla società sportiva
|
||||
s4_item1: informare genitori/tutori sull’uso di video in diretta e in archivio;
|
||||
s4_item2: raccogliere e documentare i consensi necessari prima della diretta;
|
||||
s4_item3: limitare la diffusione del link a persone autorizzate (familiari, staff);
|
||||
s4_item4: non pubblicare su canali aperti se non previsto dal consenso o dal regolamento sportivo;
|
||||
s4_item5: richiedere rimozione di registrazioni quando ne ha diritto l’interessato o il tutore.
|
||||
s4_p4_html: "Le richieste dei genitori/tutori relative a immagini di minori possono essere inoltrate alla società sportiva e, per supporto tecnico o cancellazione da archivio, anche a %{email_link}."
|
||||
s5_title: 5. Finalità e basi giuridiche
|
||||
s5_col_purpose: Finalità
|
||||
s5_col_basis: Base giuridica (art. 6 GDPR)
|
||||
s5_row1_purpose: Registrazione account, gestione squadra e staff
|
||||
s5_row1_basis: Esecuzione del contratto / misure precontrattuali
|
||||
s5_row2_purpose: Erogazione dirette, punteggio live, archivio (piani Premium)
|
||||
s5_row2_basis: Esecuzione del contratto; legittimo interesse alla sicurezza del servizio
|
||||
s5_row3_purpose: Pagamenti e fatturazione (Stripe)
|
||||
s5_row3_basis: Esecuzione del contratto; obblighi di legge
|
||||
s5_row4_purpose: Assistenza, sicurezza, prevenzione abusi
|
||||
s5_row4_basis: Legittimo interesse; obblighi di legge
|
||||
s5_row5_purpose: Comunicazioni di servizio (es. reset password)
|
||||
s5_row5_basis: Esecuzione del contratto
|
||||
s5_row6_purpose: Marketing diretto (solo se previsto e con consenso ove richiesto)
|
||||
s5_row6_basis: Consenso o legittimo interesse, secondo i casi
|
||||
s6_title: 6. Destinatari e responsabili del trattamento
|
||||
s6_intro: "I dati possono essere comunicati a fornitori che agiscono come responsabili del trattamento, tra cui:"
|
||||
s6_item1: fornitore di hosting e infrastruttura cloud/server;
|
||||
s6_item2_html: "<strong>Stripe</strong> (pagamenti) — %{stripe_link};"
|
||||
s6_item2_link_text: privacy Stripe
|
||||
s6_item3: fornitore streaming video (MediaMTX / infrastruttura RTMP-HLS);
|
||||
s6_item4_html: "eventuale integrazione <strong>YouTube</strong> se attivata dalla società (soggetto a policy Google);"
|
||||
s6_item5: fornitore email transazionale (invio link reset password, inviti).
|
||||
s6_outro: I dati non sono venduti a terzi per finalità di profilazione commerciale.
|
||||
s7_title: 7. Trasferimenti extra SEE
|
||||
s7_body: Alcuni fornitori (es. Stripe, Google/YouTube) possono trattare dati anche fuori dallo Spazio Economico Europeo. In tal caso si applicano garanzie adeguate previste dal GDPR (clausole contrattuali standard, decisioni di adeguatezza).
|
||||
s8_title: 8. Conservazione
|
||||
s8_item1_html: "<strong>Account utente:</strong> per tutta la durata del rapporto contrattuale e, dopo la cessazione, per il tempo necessario a obblighi di legge o contestazioni (in genere fino a 10 anni per documenti contabili ove applicabile)."
|
||||
s8_item2_html: "<strong>Registrazioni partite (replay):</strong> secondo il piano (es. 30 o 90 giorni), poi cancellazione automatica o su richiesta."
|
||||
s8_item3_html: "<strong>Log tecnici:</strong> periodo limitato (es. 30–90 giorni) salvo obblighi di sicurezza."
|
||||
s8_item4_html: "<strong>Token reset password:</strong> validità massima %{hours} ore."
|
||||
s9_title: 9. Diritti degli interessati
|
||||
s9_intro: "In qualità di interessato hai diritto di:"
|
||||
s9_item1: accedere ai tuoi dati e ottenerne copia;
|
||||
s9_item2: rettificarli se inesatti;
|
||||
s9_item3: chiederne la cancellazione (nei limiti di legge);
|
||||
s9_item4: limitare o opporti al trattamento, ove applicabile;
|
||||
s9_item5: revocare il consenso senza pregiudicare la liceità del trattamento basato sul consenso prestato prima della revoca;
|
||||
s9_item6_html: "proporre reclamo all’Autorità Garante per la protezione dei dati personali (%{garante_link})."
|
||||
s9_outro_html: "Per esercitare i diritti: %{email_link}."
|
||||
s10_title: 10. Sicurezza
|
||||
s10_body: "Adottiamo misure tecniche e organizzative adeguate (accesso autenticato, password crittografate, comunicazioni HTTPS, segregazione ambienti, limitazione accessi staff). Nessun sistema è invulnerabile: se sospetti un accesso non autorizzato, cambia password e contattaci."
|
||||
s11_title: 11. Cookie e tecnologie simili
|
||||
s11_p1_html: "Il sito utilizza cookie tecnici necessari (sessione di login, sicurezza, memorizzazione delle preferenze cookie) e, previo consenso tramite il banner, <strong>Google Analytics</strong> per statistiche aggregate."
|
||||
s11_p2_html: "Puoi gestire le preferenze in qualsiasi momento dal link «Gestisci cookie» nel footer o consultare la %{cookie_policy_link}."
|
||||
s11_cookie_policy_link_text: Cookie policy
|
||||
s12_title: 12. Modifiche
|
||||
s12_body: "Il titolare può aggiornare questa informativa. La data in alto indica l’ultima revisione. In caso di modifiche rilevanti, sarà fornita comunicazione adeguata (es. avviso sul sito o email agli account registrati)."
|
||||
terms:
|
||||
title: Termini di servizio — Match Live TV
|
||||
meta_description: "Termini e condizioni d'uso di Match Live TV per società sportive: dirette live, minori, piani, pagamenti Stripe e responsabilità degli utenti."
|
||||
h1: Termini e condizioni di servizio
|
||||
meta: "Ultimo aggiornamento: %{date}"
|
||||
s1_title: 1. Oggetto
|
||||
s1_p1_html: "I presenti Termini regolano l’uso della piattaforma <strong>Match Live TV</strong> (sito web, applicazione mobile e servizi connessi) per la gestione di dirette sportive dilettantistiche/giovanili, punteggio live, condivisione link agli spettatori e funzioni Premium (archivio, YouTube, ecc.)."
|
||||
s1_p2_html: "Il servizio è erogato da <strong>%{provider_name}</strong> (di seguito «Fornitore»). Registrandoti o utilizzando il servizio accetti integralmente questi Termini e l’%{privacy_link}."
|
||||
s1_privacy_link_text: informativa privacy
|
||||
s2_title: 2. Chi può usare il servizio
|
||||
s2_item1_html: "Il referente che registra la squadra dichiara di avere almeno <strong>18 anni</strong> e poteri per vincolare la società sportiva."
|
||||
s2_item2: I responsabili trasmissione invitati usano credenziali personali e si impegnano a custodirle.
|
||||
s2_item3: Gli spettatori che aprono il link della diretta di solito non necessitano di account.
|
||||
s3_title: 3. Account, piani e pagamenti
|
||||
s3_p1_html: "Sono disponibili piani Free e Premium (Light / Full) con limiti su staff, dirette concorrenti, archivio e integrazioni. I prezzi sono indicati nella pagina %{pricing_link}."
|
||||
s3_pricing_link_text: Prezzi
|
||||
s3_p2_html: "I pagamenti dei piani a pagamento sono gestiti da <strong>Stripe</strong>. Accettando il checkout, accetti anche i termini di Stripe per il pagamento. Il Fornitore non memorizza i dati completi della carta."
|
||||
s3_p3: Rinnovi, disdetta e diritto di recesso seguono quanto comunicato al momento dell’acquisto e la normativa applicabile.
|
||||
s4_title: 4. Dirette, contenuti e protezione dei minori
|
||||
s4_lead1: Responsabilità della società sportiva
|
||||
s4_p1_html: "La società che avvia una diretta è responsabile dei contenuti trasmessi (immagini, audio, commenti) e della conformità alle leggi, al regolamento federale e ai consensi necessari, in particolare quando sono ripresi <strong>atleti minorenni</strong>."
|
||||
s4_p2: "La società si impegna a:"
|
||||
s4_item1: ottenere e conservare i consensi genitoriali/tutori o altra base giuridica prima della ripresa;
|
||||
s4_item2: informare genitori e atleti su dove e per quanto tempo è visibile la diretta/archivio;
|
||||
s4_item3: non trasmettere contenuti illegali, diffamatori, violenti o non pertinenti all’evento sportivo;
|
||||
s4_item4: rispettare il diritto all’immagine e alla voce di tutte le persone inquadrate.
|
||||
s4_p3: Il Fornitore può sospendere o interrompere trasmissioni e account in caso di segnalazioni fondate o violazioni gravi, senza pregiudizio di azioni legali.
|
||||
s5_title: 5. Uso consentito e divieti
|
||||
s5_intro: "È vietato:"
|
||||
s5_item1: usare il servizio per finalità non sportive o commerciali non autorizzate;
|
||||
s5_item2: aggirare limiti tecnici o di piano (staff, dirette concorrenti);
|
||||
s5_item3: condividere credenziali o pubblicare link su canali che espongono minori a rischi non previsti dal consenso;
|
||||
s5_item4: caricare malware, effettuare attacchi o interferire con l’infrastruttura;
|
||||
s5_item5: rivendere il servizio senza accordo scritto con il Fornitore.
|
||||
s6_title: 6. Proprietà intellettuale
|
||||
s6_body: Marchi, software, design e documentazione del servizio restano del Fornitore o dei suoi licenzianti. La società sportiva conserva i diritti sui propri contenuti video; concede al Fornitore una licenza limitata a ospitarli, elaborarli e distribuirli tramite la piattaforma per erogare il servizio.
|
||||
s7_title: 7. Disponibilità e limitazioni
|
||||
s7_body: Il servizio dipende da reti mobili, hardware e fornitori terzi. Non garantiamo assenza assoluta di interruzioni, ritardi o perdita di dati, pur adottando misure ragionevoli. La qualità video può variare in base alla connessione in palestra.
|
||||
s8_title: 8. Limitazione di responsabilità
|
||||
s8_p1: Nei limiti consentiti dalla legge italiana, il Fornitore non risponde di danni indiretti, perdita di profitto, o contenuti trasmessi dagli utenti. La responsabilità complessiva verso un cliente professionale non eccede, ove possibile, l’importo pagato negli ultimi 12 mesi per il piano sottoscritto.
|
||||
s8_p2: Nulla esclude responsabilità per dolo o colpa grave, né diritti inderogabili del consumatore ove applicabili.
|
||||
s9_title: 9. Recesso, sospensione e cancellazione
|
||||
s9_body_html: "Puoi richiedere la chiusura dell’account scrivendo a %{email_link}. Il Fornitore può sospendere l’account per inadempienza, mancato pagamento o violazione dei Termini. Alla cessazione, i dati sono trattati come indicato in privacy (conservazione limitata o cancellazione)."
|
||||
s10_title: 10. Legge applicabile e foro
|
||||
s10_body_html: "I Termini sono regolati dalla <strong>legge italiana</strong>. Per controversie con consumatori si applicano le norme inderogabili di protezione del consumatore e il foro del consumatore ove previsto. Per clienti professionali, foro competente in Italia presso la sede del Fornitore, salvo diverso accordo."
|
||||
s11_title: 11. Contatti
|
||||
s11_body_html: "%{provider_name}<br>%{provider_address}<br>Email: %{email_link}"
|
||||
cookies:
|
||||
title: Cookie policy — Match Live TV
|
||||
meta_description: "Cookie policy di Match Live TV: cookie tecnici, sessione, Google Analytics e gestione del consenso."
|
||||
h1: Cookie policy
|
||||
meta_html: "Ultimo aggiornamento: %{date} · Vedi anche %{privacy_link}"
|
||||
privacy_link_text: informativa privacy
|
||||
s1_title: 1. Cosa sono i cookie
|
||||
s1_body: I cookie sono piccoli file di testo che i siti salvano sul dispositivo del visitatore. Servono a far funzionare il sito, ricordare preferenze o, previo consenso, analizzare l’uso del servizio.
|
||||
s2_title: 2. Titolare
|
||||
s2_vat_label: "P. IVA"
|
||||
s3_title: 3. Come gestiamo il consenso
|
||||
s3_p1_html: "Al primo accesso mostriamo un banner che ti permette di accettare tutti i cookie, usare <strong>solo quelli necessari</strong> o aprire questa pagina per maggiori dettagli. Puoi modificare la scelta in qualsiasi momento con il link <strong>«Gestisci cookie»</strong> nel footer."
|
||||
s3_p2_html: "La preferenza viene memorizzata in un cookie tecnico di prima parte (<code>mltv_cookie_consent</code>) e in <code>localStorage</code> del browser."
|
||||
s4_title: 4. Cookie e tecnologie che utilizziamo
|
||||
s4_1_title: 4.1 Strettamente necessari (sempre attivi)
|
||||
s4_1_intro: Non richiedono consenso perché indispensabili al funzionamento del sito e dell’area riservata.
|
||||
table_col_name: Nome / tipo
|
||||
table_col_purpose: Finalità
|
||||
table_col_duration: Durata
|
||||
table_col_provider: Fornitore
|
||||
s4_1_row1_name_html: "<code>_app_session</code> (cookie di sessione)"
|
||||
s4_1_row1_purpose: Mantiene l’accesso dell’utente registrato, protezione CSRF, preferenze di navigazione sicura
|
||||
s4_1_row1_duration: Sessione / fino a chiusura browser
|
||||
s4_1_row1_provider: Match Live TV (prima parte)
|
||||
s4_1_row2_name_html: "<code>mltv_cookie_consent</code>"
|
||||
s4_1_row2_purpose: Memorizza le scelte sul banner cookie (necessari / analytics)
|
||||
s4_1_row2_duration: 12 mesi
|
||||
s4_1_row2_provider: Match Live TV (prima parte)
|
||||
s4_2_title: 4.2 Analytics (solo con il tuo consenso)
|
||||
s4_2_p1_html: "Se accetti «Tutti i cookie» o abiliti le statistiche nel banner, carichiamo <strong>Google Analytics 4</strong> per capire come viene usato il sito (pagine visitate, provenienza aggregata, dispositivo). I dati sono trattati da Google Ireland Limited / Google LLC secondo le loro policy."
|
||||
s4_2_active_html: "ID misurazione attivo sul sito: <code>%{id}</code>"
|
||||
s4_2_inactive: Google Analytics è configurato solo quando il titolare imposta l’ID misurazione sul server.
|
||||
table2_col_name: Nome
|
||||
s4_2_row1_name_html: "<code>_ga</code>"
|
||||
s4_2_row1_purpose: Distingue gli utenti (statistiche)
|
||||
s4_2_row1_duration: 2 anni
|
||||
s4_2_row1_provider: Google
|
||||
s4_2_row2_name_html: "<code>_ga_*</code>"
|
||||
s4_2_row2_purpose: Mantiene lo stato della sessione Analytics
|
||||
s4_2_row2_duration: 2 anni
|
||||
s4_2_row2_provider: Google
|
||||
s4_2_row3_name_html: "<code>_gid</code>"
|
||||
s4_2_row3_purpose: Distingue gli utenti (statistiche)
|
||||
s4_2_row3_duration: 24 ore
|
||||
s4_2_row3_provider: Google
|
||||
s4_2_p2_html: "Puoi revocare il consenso dal banner o dalle impostazioni del browser. Informazioni Google: %{google_privacy_link}, %{google_optout_link}."
|
||||
s4_2_google_privacy_link_text: Privacy Policy Google
|
||||
s4_2_google_optout_link_text: componente opt-out Analytics
|
||||
s4_3_title: 4.3 Cookie di terze parti durante il pagamento
|
||||
s4_3_body_html: "Se acquisti un piano Premium, vieni reindirizzato a <strong>Stripe</strong> (checkout sicuro). Stripe può impostare cookie propri sul dominio <code>stripe.com</code> per prevenire frodi e completare il pagamento. Non controlliamo direttamente tali cookie: consulta la %{stripe_link}."
|
||||
s4_3_stripe_link_text: privacy policy di Stripe
|
||||
s4_4_title: 4.4 YouTube e servizi collegati
|
||||
s4_4_body: L’integrazione YouTube per le dirette avviene tramite API lato server; il sito pubblico non incorpora player YouTube con cookie di profilazione. I visitatori che aprono un link YouTube esterno sono soggetti alle policy di Google/YouTube su quel dominio.
|
||||
s5_title: 5. Come disabilitare i cookie dal browser
|
||||
s5_body: Puoi bloccare o cancellare i cookie dalle impostazioni del browser (Chrome, Firefox, Safari, Edge). Disabilitando i cookie necessari alcune funzioni (es. login) potrebbero non funzionare.
|
||||
s6_title: 6. Diritti e contatti
|
||||
s6_body_html: "Per esercitare i diritti previsti dal GDPR (accesso, cancellazione, opposizione, revoca consenso) scrivi a %{email_link}. Dettagli nel %{privacy_doc_link}."
|
||||
s6_privacy_doc_link_text: documento privacy
|
||||
manage_button: Gestisci preferenze cookie
|
||||
@@ -0,0 +1,43 @@
|
||||
de:
|
||||
mailers:
|
||||
password_reset:
|
||||
subject: "Passwort zurücksetzen — Match Live TV"
|
||||
hello: "Hallo %{name},"
|
||||
intro: Du hast das Zurücksetzen des Passworts für dein Match-Live-TV-Konto angefordert.
|
||||
link_html: <a href="%{url}">Hier klicken, um ein neues Passwort zu wählen</a>
|
||||
link_text: "Diesen Link öffnen (gültig %{hours} Stunden):"
|
||||
expiry_html: "Der Link ist %{hours} Stunden gültig. Wenn du das Zurücksetzen nicht angefordert hast, ignoriere diese E-Mail — dein Passwort wird nicht geändert."
|
||||
ignore: Wenn du das Zurücksetzen nicht angefordert hast, ignoriere diese E-Mail.
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_ready:
|
||||
subject: "Replay bereit — %{title}"
|
||||
hello: "Hallo %{name},"
|
||||
body_html: "Das Replay des Spiels <strong>%{title}</strong> (%{club}) ist auf der Plattform verfügbar."
|
||||
body_text: "Das Replay „%{title}“ (%{club}) ist bereit."
|
||||
watch: Replay ansehen
|
||||
watch_text: "Ansehen: %{url}"
|
||||
available_until: "Verfügbar bis %{date}."
|
||||
archive_html: "Sichtbarkeit und Löschung kannst du im <a href=\"%{url}\">Replay-Archiv</a> des Vereins verwalten."
|
||||
archive_text: "Archiv: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_expiring:
|
||||
subject: "Replay läuft in %{days} Tagen ab — %{title}"
|
||||
hello: "Hallo %{name},"
|
||||
body_html: "Das Replay <strong>%{title}</strong> läuft in etwa <strong>%{days} Tagen</strong> ab (%{date})."
|
||||
body_text: "Das Replay „%{title}“ läuft in etwa %{days} Tagen ab (%{date})."
|
||||
after: Nach Ablauf wird es automatisch gemäß dem Vereinsplan aus dem Speicher gelöscht.
|
||||
open: Replay öffnen
|
||||
archive: Replay-Archiv
|
||||
open_text: "Öffnen: %{url}"
|
||||
archive_text: "Archiv: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
invoice:
|
||||
subject: "Rechnung %{number} — Match Live TV"
|
||||
attachment_prefix: rechnung
|
||||
hello: Guten Tag,
|
||||
body_html: "im Anhang findest du die Rechnung <strong>%{number}</strong> vom %{date} über <strong>%{amount}</strong> für den Verein <strong>%{club}</strong>."
|
||||
body_text: "im Anhang die Rechnung %{number} vom %{date} (%{amount}) für %{club}."
|
||||
also_html: Du kannst sie auch im Bereich <strong>Abo</strong> deines Match-Live-TV-Kontos herunterladen.
|
||||
also_text: Sie ist auch unter Abo auf der Match-Live-TV-Website verfügbar.
|
||||
thanks: Danke,
|
||||
signoff: Match Live TV
|
||||
@@ -0,0 +1,43 @@
|
||||
en:
|
||||
mailers:
|
||||
password_reset:
|
||||
subject: "Reset your password — Match Live TV"
|
||||
hello: "Hi %{name},"
|
||||
intro: You requested a password reset for your Match Live TV account.
|
||||
link_html: <a href="%{url}">Click here to choose a new password</a>
|
||||
link_text: "Open this link (valid for %{hours} hours):"
|
||||
expiry_html: "The link is valid for %{hours} hours. If you did not request this reset, ignore this email — your password will not change."
|
||||
ignore: If you did not request this reset, ignore this email.
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_ready:
|
||||
subject: "Replay ready — %{title}"
|
||||
hello: "Hi %{name},"
|
||||
body_html: "The replay of match <strong>%{title}</strong> (%{club}) is ready on the platform."
|
||||
body_text: "The replay \"%{title}\" (%{club}) is ready."
|
||||
watch: Watch the replay
|
||||
watch_text: "Watch: %{url}"
|
||||
available_until: "Available until %{date}."
|
||||
archive_html: "You can manage visibility and deletion from the club <a href=\"%{url}\">Replay archive</a>."
|
||||
archive_text: "Archive: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_expiring:
|
||||
subject: "Replay expires in %{days} days — %{title}"
|
||||
hello: "Hi %{name},"
|
||||
body_html: "The replay <strong>%{title}</strong> will expire in about <strong>%{days} days</strong> (%{date})."
|
||||
body_text: "The replay \"%{title}\" expires in about %{days} days (%{date})."
|
||||
after: After expiry it will be deleted automatically from storage according to the club plan.
|
||||
open: Open the replay
|
||||
archive: Replay archive
|
||||
open_text: "Open: %{url}"
|
||||
archive_text: "Archive: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
invoice:
|
||||
subject: "Invoice %{number} — Match Live TV"
|
||||
attachment_prefix: invoice
|
||||
hello: Hello,
|
||||
body_html: "please find attached invoice <strong>%{number}</strong> dated %{date} for <strong>%{amount}</strong>, for club <strong>%{club}</strong>."
|
||||
body_text: "attached invoice %{number} dated %{date} (%{amount}) for %{club}."
|
||||
also_html: You can also download it from the <strong>Subscription</strong> section of your Match Live TV account.
|
||||
also_text: It is also available under Subscription on the Match Live TV site.
|
||||
thanks: Thanks,
|
||||
signoff: Match Live TV
|
||||
@@ -0,0 +1,43 @@
|
||||
es:
|
||||
mailers:
|
||||
password_reset:
|
||||
subject: "Restablecer la contraseña — Match Live TV"
|
||||
hello: "Hola %{name},"
|
||||
intro: Has solicitado restablecer la contraseña de tu cuenta de Match Live TV.
|
||||
link_html: <a href="%{url}">Haz clic aquí para elegir una nueva contraseña</a>
|
||||
link_text: "Abre este enlace (válido %{hours} horas):"
|
||||
expiry_html: "El enlace es válido durante %{hours} horas. Si no solicitaste el restablecimiento, ignora este correo: la contraseña no se modificará."
|
||||
ignore: Si no solicitaste el restablecimiento, ignora este correo.
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_ready:
|
||||
subject: "Replay listo — %{title}"
|
||||
hello: "Hola %{name},"
|
||||
body_html: "El replay del partido <strong>%{title}</strong> (%{club}) ya está disponible en la plataforma."
|
||||
body_text: "El replay \"%{title}\" (%{club}) está listo."
|
||||
watch: Ver el replay
|
||||
watch_text: "Ver: %{url}"
|
||||
available_until: "Disponible hasta el %{date}."
|
||||
archive_html: "Puedes gestionar la visibilidad y la eliminación desde el <a href=\"%{url}\">archivo de Replay</a> del club."
|
||||
archive_text: "Archivo: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_expiring:
|
||||
subject: "Replay caduca en %{days} días — %{title}"
|
||||
hello: "Hola %{name},"
|
||||
body_html: "El replay <strong>%{title}</strong> caducará en unos <strong>%{days} días</strong> (%{date})."
|
||||
body_text: "El replay \"%{title}\" caduca en unos %{days} días (%{date})."
|
||||
after: Tras la caducidad se eliminará automáticamente del almacenamiento según el plan del club.
|
||||
open: Abrir el replay
|
||||
archive: Archivo de Replay
|
||||
open_text: "Abrir: %{url}"
|
||||
archive_text: "Archivo: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
invoice:
|
||||
subject: "Factura %{number} — Match Live TV"
|
||||
attachment_prefix: factura
|
||||
hello: Buenos días,
|
||||
body_html: "adjunto encontrarás la factura <strong>%{number}</strong> del %{date} por un importe de <strong>%{amount}</strong>, relativa al club <strong>%{club}</strong>."
|
||||
body_text: "adjunto la factura %{number} del %{date} (%{amount}) para %{club}."
|
||||
also_html: También puedes descargarla desde la sección <strong>Suscripción</strong> de tu cuenta Match Live TV.
|
||||
also_text: También está disponible en Suscripción en el sitio Match Live TV.
|
||||
thanks: Gracias,
|
||||
signoff: Match Live TV
|
||||
@@ -0,0 +1,43 @@
|
||||
fr:
|
||||
mailers:
|
||||
password_reset:
|
||||
subject: "Réinitialiser le mot de passe — Match Live TV"
|
||||
hello: "Bonjour %{name},"
|
||||
intro: Vous avez demandé la réinitialisation du mot de passe de votre compte Match Live TV.
|
||||
link_html: <a href="%{url}">Cliquez ici pour choisir un nouveau mot de passe</a>
|
||||
link_text: "Ouvrez ce lien (valable %{hours} heures) :"
|
||||
expiry_html: "Le lien est valable %{hours} heures. Si vous n’avez pas demandé cette réinitialisation, ignorez cet e-mail : le mot de passe ne sera pas modifié."
|
||||
ignore: Si vous n’avez pas demandé cette réinitialisation, ignorez cet e-mail.
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_ready:
|
||||
subject: "Replay prêt — %{title}"
|
||||
hello: "Bonjour %{name},"
|
||||
body_html: "Le replay du match <strong>%{title}</strong> (%{club}) est prêt sur la plateforme."
|
||||
body_text: "Le replay « %{title} » (%{club}) est prêt."
|
||||
watch: Voir le replay
|
||||
watch_text: "Voir : %{url}"
|
||||
available_until: "Disponible jusqu’au %{date}."
|
||||
archive_html: "Vous pouvez gérer la visibilité et la suppression depuis l’<a href=\"%{url}\">archive Replay</a> du club."
|
||||
archive_text: "Archive : %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_expiring:
|
||||
subject: "Replay expire dans %{days} jours — %{title}"
|
||||
hello: "Bonjour %{name},"
|
||||
body_html: "Le replay <strong>%{title}</strong> expirera dans environ <strong>%{days} jours</strong> (%{date})."
|
||||
body_text: "Le replay « %{title} » expire dans environ %{days} jours (%{date})."
|
||||
after: Après expiration, il sera automatiquement supprimé du stockage selon le forfait du club.
|
||||
open: Ouvrir le replay
|
||||
archive: Archive Replay
|
||||
open_text: "Ouvrir : %{url}"
|
||||
archive_text: "Archive : %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
invoice:
|
||||
subject: "Facture %{number} — Match Live TV"
|
||||
attachment_prefix: facture
|
||||
hello: Bonjour,
|
||||
body_html: "veuillez trouver ci-joint la facture <strong>%{number}</strong> du %{date} pour un montant de <strong>%{amount}</strong>, relative au club <strong>%{club}</strong>."
|
||||
body_text: "ci-joint la facture %{number} du %{date} (%{amount}) pour %{club}."
|
||||
also_html: Vous pouvez aussi la télécharger depuis la section <strong>Abonnement</strong> de votre compte Match Live TV.
|
||||
also_text: Elle est aussi disponible sous Abonnement sur le site Match Live TV.
|
||||
thanks: Merci,
|
||||
signoff: Match Live TV
|
||||
@@ -0,0 +1,43 @@
|
||||
it:
|
||||
mailers:
|
||||
password_reset:
|
||||
subject: "Reimposta la password — Match Live TV"
|
||||
hello: "Ciao %{name},"
|
||||
intro: Hai richiesto di reimpostare la password del tuo account Match Live TV.
|
||||
link_html: <a href="%{url}">Clicca qui per scegliere una nuova password</a>
|
||||
link_text: "Apri questo link (valido %{hours} ore):"
|
||||
expiry_html: "Il link è valido per %{hours} ore. Se non hai richiesto tu il reset, ignora questa email: la password non verrà modificata."
|
||||
ignore: Se non hai richiesto tu il reset, ignora questa email.
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_ready:
|
||||
subject: "Replay pronto — %{title}"
|
||||
hello: "Ciao %{name},"
|
||||
body_html: "Il replay della partita <strong>%{title}</strong> (%{club}) è pronto e disponibile sulla piattaforma."
|
||||
body_text: "Il replay \"%{title}\" (%{club}) è pronto."
|
||||
watch: Guarda il replay
|
||||
watch_text: "Guarda: %{url}"
|
||||
available_until: "Disponibile fino al %{date}."
|
||||
archive_html: "Puoi gestire visibilità ed eliminazione dall’<a href=\"%{url}\">archivio Replay</a> della società."
|
||||
archive_text: "Archivio: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
replay_expiring:
|
||||
subject: "Replay in scadenza tra %{days} giorni — %{title}"
|
||||
hello: "Ciao %{name},"
|
||||
body_html: "Il replay <strong>%{title}</strong> scadrà tra circa <strong>%{days} giorni</strong> (%{date})."
|
||||
body_text: "Il replay \"%{title}\" scade tra circa %{days} giorni (%{date})."
|
||||
after: Dopo la scadenza verrà eliminato automaticamente dallo storage secondo il piano della società.
|
||||
open: Apri il replay
|
||||
archive: Archivio Replay
|
||||
open_text: "Apri: %{url}"
|
||||
archive_text: "Archivio: %{url}"
|
||||
footer: "Match Live TV — %{email}"
|
||||
invoice:
|
||||
subject: "Fattura %{number} — Match Live TV"
|
||||
attachment_prefix: fattura
|
||||
hello: Buongiorno,
|
||||
body_html: "in allegato trovi la fattura <strong>%{number}</strong> del %{date} per un importo di <strong>%{amount}</strong>, relativa alla società <strong>%{club}</strong>."
|
||||
body_text: "in allegato la fattura %{number} del %{date} (%{amount}) per %{club}."
|
||||
also_html: Puoi scaricarla anche dalla sezione <strong>Abbonamento</strong> del tuo account Match Live TV.
|
||||
also_text: È disponibile anche in Abbonamento sul sito Match Live TV.
|
||||
thanks: Grazie,
|
||||
signoff: Match Live TV
|
||||
@@ -0,0 +1,122 @@
|
||||
de:
|
||||
pages:
|
||||
features:
|
||||
meta_title: "Streaming-Funktionen für Jugendspiele — Match Live TV"
|
||||
meta_description: "App für Livestreams vom Handy: Spiel filmen, Spielstand aktualisieren, Link mit Eltern und Großeltern teilen. Spielarchiv und Pläne für Jugend-Sportvereine."
|
||||
title: Funktionen
|
||||
lead: "Alles, was nötig ist, damit auch die, die nicht in der Halle sein können, das Spiel verfolgen: einfach für Trainer und Helfer, praktisch für Eltern, Großeltern und Verwandte."
|
||||
staff_section_title: Für Verein und Team
|
||||
staff_invite_title: Einladungen mit eigener E-Mail
|
||||
staff_invite_body: "Der Vorsitzende oder Inhaber lädt ein, wer filmt und wer den Spielstand aktualisiert: jeder meldet sich mit seiner eigenen E-Mail an, ohne Passwörter zu teilen."
|
||||
staff_access_title: Zugriffsverwaltung
|
||||
staff_access_body: Sie können einem Helfer den Zugriff entziehen oder eine noch offene Einladung vom Team-Dashboard aus stornieren.
|
||||
staff_plans_title: Maßgeschneiderte Pläne
|
||||
staff_plans_body: "Mit Free, Premium Light oder Premium Full erhöhen Sie, wie viele Personen live helfen können und wie viele Spiele parallel laufen können."
|
||||
live_section_title: Auf dem Platz und live
|
||||
live_phone_title: Vom Handy filmen
|
||||
live_phone_body: "Handy aufstellen und den Livestream starten: auch bei schwachem 4G bleibt die Übertragung so stabil wie möglich, ohne Kabelsalat oder Mischpult."
|
||||
live_score_title: Spielstand vom zweiten Handy
|
||||
live_score_body: "Ein weiterer Helfer aktualisiert Sätze und Punkte von einem zweiten Handy aus: einfach den Code scannen, der auf dem Bildschirm des Filmenden erscheint."
|
||||
live_link_title: Link für Familien und Fans
|
||||
live_link_body: "Teilen Sie einen Link: Eltern, Großeltern und Freunde schauen im Browser von Handy oder Computer, ohne App-Installation."
|
||||
live_archive_title: Spielarchiv
|
||||
live_archive_body: "Mit Premium Light oder Full bleiben die Spiele auf dem Server gespeichert (30 oder 90 Tage) und Sie können sie bei Bedarf aufs Handy herunterladen."
|
||||
live_youtube_mltv_title: Auch auf YouTube (Match Live TV)
|
||||
live_youtube_mltv_body: "Mit Premium Light ist der Livestream zusätzlich zum Link auf der Website auch auf dem YouTube-Kanal von Match Live TV zu sehen."
|
||||
live_youtube_club_title: YouTube-Kanal des Vereins
|
||||
live_youtube_club_body: "Mit Premium Full können Sie denselben Livestream auch auf den offiziellen YouTube-Kanal des Vereins senden."
|
||||
live_website_title: Auf der Website des Vereins
|
||||
live_website_body: "Integration zum Einbetten des Players auf der Vereinswebsite — demnächst mit Premium Full."
|
||||
cta_signup: Team registrieren
|
||||
pricing:
|
||||
meta_title: "Preise für Jugendspiel-Streaming — Match Live TV"
|
||||
meta_description: "Free-, Premium-Light- und Premium-Full-Pläne für Livestreams und Spielarchiv. Jahresabo für Vereine: mehr Team-Mitglieder, mehr parallele Spiele, Replay und YouTube."
|
||||
club_title: Pläne für Ihren Verein
|
||||
club_info_html: "Verein: <strong>%{name}</strong> · %{billing_link}"
|
||||
manage_subscription: Abo verwalten
|
||||
team_title: Pläne für Ihr Team
|
||||
team_lead: "Jahresabo für Vereine: die Streaming-Verantwortlichen starten den Livestream aus der App; der Spielstand wird über einen teilbaren Link verwaltet."
|
||||
table_staff: Streaming-Verantwortliche / Jahr
|
||||
table_matches: Gleichzeitige Spiele
|
||||
table_live_mltv: Live auf Match Live TV
|
||||
table_youtube: YouTube
|
||||
table_replay: Server-Replay
|
||||
table_download: Handy-Download
|
||||
table_price: Preis
|
||||
table_price_free: "€0"
|
||||
table_price_light_html: "€40/Jahr oder €5/Monat"
|
||||
table_price_full_html: "€200/Jahr oder €20/Monat"
|
||||
table_yes: Ja
|
||||
table_no: Nein
|
||||
table_unlimited: Unbegrenzt
|
||||
table_youtube_club: Vereinskanal
|
||||
different_title: Andere Anforderungen?
|
||||
different_body: "Für Vereine mit mehreren Teams, Turnieren oder individuellen Integrationen: kontaktieren Sie uns, gemeinsam finden wir das beste Angebot."
|
||||
contact_button: Kontaktieren Sie uns
|
||||
plans:
|
||||
price_alt_html: "oder <strong>%{price}</strong>"
|
||||
staff_html: "Streaming-Verantwortliche: <strong>%{count}</strong> / Jahr pro Team"
|
||||
staff_unlimited: unbegrenzt
|
||||
matches_html: "Spiele: <strong>%{count}</strong> gleichzeitig (ganzer Verein)"
|
||||
matches_unlimited: unbegrenzt
|
||||
replay_html: "Replay: %{value}"
|
||||
replay_days: "%{count} Tage"
|
||||
replay_none: nein
|
||||
youtube_html: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: Vereinskanal
|
||||
youtube_none: nein
|
||||
complete_billing: Rechnungsdaten vervollständigen
|
||||
start_free: Kostenlos starten
|
||||
register_with_price: "Registrieren — %{price}"
|
||||
faq:
|
||||
meta_title: "FAQ — Live-Jugendspiele | Match Live TV"
|
||||
meta_description: "Häufige Fragen zum Jugendspiel-Streaming: wie man ohne App zuschaut, Kosten, Archiv, U16-Volleyball, Team-Einladungen und Free/Premium-Pläne."
|
||||
title: Häufige Fragen zum Jugendspiel-Streaming
|
||||
lead: "Antworten für Eltern, Trainer und Vereinsvorstände, die Live-Übertragungen für Volleyball, Fußball und andere Amateursportarten anbieten möchten."
|
||||
q1_question: Wie kann ich das Spiel meines Kindes ohne App-Installation sehen?
|
||||
q1_answer_html: "Der Verein teilt einen Link (per WhatsApp, E-Mail oder Team-Gruppe). Öffnen Sie den Link am Handy oder Computer: sehen Sie den <strong>Livestream</strong> im Browser, ohne sich zu registrieren. Das funktioniert für Großeltern, Verwandte und Freunde in der Ferne."
|
||||
q2_question: Wer kann den Livestream aus der Halle starten?
|
||||
q2_answer: "Trainer, Vorstände oder vom Verein eingeladene Helfer. Sie nutzen die Match-Live-TV-App am Handy zum Filmen und bei Bedarf ein zweites Handy zur Aktualisierung des Spielstands. Der Livestream startet erst, wenn jemand in der Halle auf Start drückt."
|
||||
q3_question: Ist es für Jugendvolleyball geeignet (U14, U16)?
|
||||
q3_answer_html: "Ja. Die Satz-Zählweise ist für Volleyball gemacht; Sie können die Regeln für besondere Turniere anpassen. Entdecken Sie die eigene Seite: %{volleyball_link}."
|
||||
q3_volleyball_link: Match Live TV für Jugendvolleyball
|
||||
q4_question: Was passiert, wenn ich den Livestream verpasse?
|
||||
q4_answer: "Mit den Plänen Premium Light oder Full wird das Spiel im Archiv gespeichert (30 oder 90 Tage) und Sie können es auf der Website erneut ansehen. Der Free-Plan enthält kein Server-Replay, aber der Livestream bleibt für Streamer und Zuschauer kostenlos."
|
||||
q5_question: Was kostet es für den Verein?
|
||||
q5_answer_html: "Sie können mit dem <strong>Free</strong>-Plan starten (begrenztes Team und ein Livestream gleichzeitig). Premium Light und Full bieten mehr parallele Spiele, Archiv und YouTube. %{pricing_link}."
|
||||
q5_pricing_link: Preise vergleichen
|
||||
q6_question: Kann ich ein Spiel vor dem Spieltag planen?
|
||||
q6_answer: "Ja, in der App legen Sie Datum und Uhrzeit fest: das Spiel erscheint unter „Nächste Spiele“ auf der Website. Das Streaming startet erst, wenn das Team die Übertragung in der Halle beginnt."
|
||||
q7_question: Läuft der Livestream auch auf YouTube?
|
||||
q7_answer: "Mit Premium Light können Sie ihn auf den Match-Live-TV-Kanal senden; mit Premium Full auch auf den YouTube-Kanal des Vereins. Wer möchte, bleibt beim Match-Live-TV-Link, praktisch für Familien."
|
||||
q8_question: Muss ich Router-Ports öffnen oder TV-Ausrüstung haben?
|
||||
q8_answer: "Nein, nicht für Zuschauer. Für den streamenden Verein reichen ein Smartphone und eine gute Verbindung in der Halle; das technische Team der Plattform kümmert sich um die Infrastruktur. Keine Broadcast-Kameras oder Mischpulte nötig."
|
||||
cta_signup: Team registrieren
|
||||
cta_live: Live-Spiele ansehen
|
||||
volleyball:
|
||||
meta_title: "Live-Jugendvolleyball-Streaming — Under 14, Under 16 | Match Live TV"
|
||||
meta_description: "Jugendvolleyball-Spiele vom Handy streamen: Livestream für Eltern und Großeltern, Satz-Zählweise, teilbarer Link. Ideal für U14-, U16- und U18-Vereine."
|
||||
title: Match Live TV für Jugendvolleyball
|
||||
lead_html: "Die Lösung für Vereine, Trainer und Eltern, die einen zuverlässigen <strong>Livestream</strong> der Spiele von <strong>Under 14, Under 16, Under 18</strong> und Jugendabteilungen wollen — ohne Sportkommentator zu werden."
|
||||
section1_title: Warum Jugendvolleyball einfaches Streaming braucht
|
||||
section1_body_html: "In der Halle sind nicht immer alle Eltern auf der Tribüne: Arbeitsschichten, kleine Geschwister, Auswärtsfahrten. Ein Großelternteil in einer anderen Stadt oder ein Verwandter im Ausland möchte trotzdem den Tie-Break im dritten Satz sehen. Dafür gibt es Match Live TV: <strong>Streaming von Jugendvolleyball-Spielen</strong> vom Handy, mit aktuellem Spielstand und einem sofortigen Link für WhatsApp."
|
||||
section2_title: Was der Trainer in zwei Minuten macht
|
||||
section2_item1: Plant das Spiel mit Datum, Gegner und Halle über die App
|
||||
section2_item2: Stellt am Spieltag das Handy auf und startet den Livestream
|
||||
section2_item3: Ein Helfer kann Sätze und Punkte von einem zweiten Handy aus aktualisieren
|
||||
section2_item4: "Teilt den Link mit der Elterngruppe: alle schauen im Browser"
|
||||
section3_title: Was die Familie zu Hause sieht
|
||||
section3_body: "Keine App-Installation nötig. Link öffnen und das Spiel live verfolgen: Mannschaftsnamen, Spielstand, Satzstatus. Wenn Sie den Anfang verpasst haben, bleibt das Spiel mit Premium im Archiv, um es jederzeit erneut anzusehen."
|
||||
section4_title: "Volleyball: Spielstand und Regeln"
|
||||
section4_body: "Sätze bis 2 oder 3 Gewinnsätze, Punkte 25/21/15 konfigurierbar für nicht standardmäßige Turniere. Der Spielstand wird über einen geteilten Link verwaltet (ohne Konto): auf dem Platz bleibt man auf das Spiel konzentriert, nicht auf das Handy."
|
||||
section5_title: Andere Jugendsportarten
|
||||
section5_body: "Dieselbe Plattform funktioniert auch für Fußball, Basketball und andere Amateur-Mannschaftssportarten. Volleyball bleibt die Sportart, mit der viele Vereine beginnen, da die Satz-Zählweise bereits integriert ist."
|
||||
card1_title: Eltern und Großeltern
|
||||
card1_body: "Link per WhatsApp, Ansicht vom Handy oder TV-Browser. Keine Registrierung für Zuschauer."
|
||||
card2_title: Verein und Team
|
||||
card2_body: "Einladungen per E-Mail, mehr Operatoren mit Premium, Zugriff über das Web-Dashboard widerrufen."
|
||||
card3_title: Spielarchiv
|
||||
card3_body: "Premium Light/Full: Replay für alle, die den Livestream verpasst haben oder einen wichtigen Moment erneut sehen möchten."
|
||||
cta_start: Kostenlos starten
|
||||
cta_faq: Häufige Fragen
|
||||
@@ -0,0 +1,122 @@
|
||||
en:
|
||||
pages:
|
||||
features:
|
||||
meta_title: "Youth match streaming features — Match Live TV"
|
||||
meta_description: "App for live streaming from your phone: film the match, update the score, share the link with parents and grandparents. Match archive and plans for youth sports clubs."
|
||||
title: Features
|
||||
lead: "Everything you need so people who can't be at the gym can follow the match: simple for coaches and volunteers, convenient for parents, grandparents and relatives."
|
||||
staff_section_title: For the club and staff
|
||||
staff_invite_title: Invites with their own email
|
||||
staff_invite_body: "The president or owner invites whoever films and whoever updates the score: each person signs in with their own email, no shared passwords."
|
||||
staff_access_title: Access management
|
||||
staff_access_body: You can remove a volunteer's access or cancel a pending invite from the team dashboard.
|
||||
staff_plans_title: Plans to fit your needs
|
||||
staff_plans_body: With Free, Premium Light or Premium Full you increase how many people can help stream live and how many matches can run in parallel.
|
||||
live_section_title: On the court and live
|
||||
live_phone_title: Film from your phone
|
||||
live_phone_body: "Prop up the phone and start the stream: even with weak 4G the broadcast stays as stable as possible, with no cables or mixers to worry about."
|
||||
live_score_title: Score from a second phone
|
||||
live_score_body: "Another volunteer updates sets and points from a second phone: just scan the code shown on the streamer's screen."
|
||||
live_link_title: Link for families and fans
|
||||
live_link_body: "Share a link: parents, grandparents and friends watch from their phone or computer browser, no app to install."
|
||||
live_archive_title: Match archive
|
||||
live_archive_body: "With Premium Light or Full, matches stay saved on the server (30 or 90 days) and you can download them to your phone whenever you need."
|
||||
live_youtube_mltv_title: Also on YouTube (Match Live TV)
|
||||
live_youtube_mltv_body: With Premium Light the stream is also visible on the Match Live TV YouTube channel, in addition to the link on the site.
|
||||
live_youtube_club_title: Your club's YouTube channel
|
||||
live_youtube_club_body: With Premium Full you can send the same stream to your club's official YouTube channel.
|
||||
live_website_title: On the club's website
|
||||
live_website_body: Integration to embed the player on the club's website — coming with Premium Full.
|
||||
cta_signup: Register your team
|
||||
pricing:
|
||||
meta_title: "Youth match streaming pricing — Match Live TV"
|
||||
meta_description: "Free, Premium Light and Premium Full plans for live streaming and match archive. Annual subscription for clubs: more staff, more concurrent matches, replay and YouTube."
|
||||
club_title: Plans for your club
|
||||
club_info_html: "Club: <strong>%{name}</strong> · %{billing_link}"
|
||||
manage_subscription: Manage subscription
|
||||
team_title: Plans for your team
|
||||
team_lead: "Annual subscription for clubs: streaming staff start the broadcast from the app; the score is managed with a shareable link."
|
||||
table_staff: Streaming staff / year
|
||||
table_matches: Concurrent matches
|
||||
table_live_mltv: Live on Match Live TV
|
||||
table_youtube: YouTube
|
||||
table_replay: Server replay
|
||||
table_download: Phone download
|
||||
table_price: Price
|
||||
table_price_free: "€0"
|
||||
table_price_light_html: "€40/year or €5/month"
|
||||
table_price_full_html: "€200/year or €20/month"
|
||||
table_yes: "Yes"
|
||||
table_no: "No"
|
||||
table_unlimited: Unlimited
|
||||
table_youtube_club: Club channel
|
||||
different_title: Different needs?
|
||||
different_body: "For clubs with multiple teams, tournaments or custom integrations, get in touch: we'll find the best offer together."
|
||||
contact_button: Contact us
|
||||
plans:
|
||||
price_alt_html: "or <strong>%{price}</strong>"
|
||||
staff_html: "Streaming staff: <strong>%{count}</strong> / year per team"
|
||||
staff_unlimited: unlimited
|
||||
matches_html: "Matches: <strong>%{count}</strong> concurrent (whole club)"
|
||||
matches_unlimited: unlimited
|
||||
replay_html: "Replay: %{value}"
|
||||
replay_days: "%{count} days"
|
||||
replay_none: "no"
|
||||
youtube_html: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: club channel
|
||||
youtube_none: "no"
|
||||
complete_billing: Complete billing details
|
||||
start_free: Start for free
|
||||
register_with_price: "Register — %{price}"
|
||||
faq:
|
||||
meta_title: "FAQ — Live youth match streaming | Match Live TV"
|
||||
meta_description: "Frequently asked questions about youth match streaming: how to watch without an app, costs, archive, U16 volleyball, staff invites and Free/Premium plans."
|
||||
title: Frequently asked questions about youth match streaming
|
||||
lead: "Answers for parents, coaches and club managers who want to stream live matches for volleyball, football and other amateur sports."
|
||||
q1_question: How do I watch my child's match without installing an app?
|
||||
q1_answer_html: "The club shares a link (via WhatsApp, email or team group). Open the link from your phone or computer: watch the <strong>live stream</strong> in your browser, no sign-up needed. It works for grandparents, relatives and friends far away."
|
||||
q2_question: Who can start the stream from the gym?
|
||||
q2_answer: "Coaches, managers or volunteers invited by the club. They use the Match Live TV app on their phone to film and, if needed, a second phone to update the score. The stream only starts when someone presses start in the gym."
|
||||
q3_question: Is it suitable for youth volleyball (U14, U16)?
|
||||
q3_answer_html: "Yes. The set-based scoring is built for volleyball; you can customize the rules for special tournaments. Check out the dedicated page: %{volleyball_link}."
|
||||
q3_volleyball_link: Match Live TV for youth volleyball
|
||||
q4_question: What happens if I miss the stream?
|
||||
q4_answer: "With Premium Light or Full plans the match is saved to the archive (30 or 90 days) and you can watch it again from the site. The Free plan doesn't include server replay, but the live stream stays free for both streamers and viewers."
|
||||
q5_question: How much does it cost for the club?
|
||||
q5_answer_html: "You can start with the <strong>Free</strong> plan (limited staff and one stream at a time). Premium Light and Full add more concurrent matches, archive and YouTube. %{pricing_link}."
|
||||
q5_pricing_link: Compare pricing
|
||||
q6_question: Can I schedule a match before the game day?
|
||||
q6_answer: 'Yes, you set the date and time from the app: the match appears under "Upcoming matches" on the site. Streaming only starts when the staff begins broadcasting from the gym.'
|
||||
q7_question: Does the stream also go on YouTube?
|
||||
q7_answer: "With Premium Light you can send it to the Match Live TV channel; with Premium Full also to the club's YouTube channel. Those who prefer can stick to the Match Live TV link, convenient for families."
|
||||
q8_question: Do I need to open router ports or have TV equipment?
|
||||
q8_answer: "No, not for viewers. For the club that streams, a smartphone and a good gym connection are enough; the platform's technical staff manages the infrastructure. No broadcast cameras or mixers needed."
|
||||
cta_signup: Register your team
|
||||
cta_live: Watch live matches
|
||||
volleyball:
|
||||
meta_title: "Live youth volleyball streaming — Under 14, Under 16 | Match Live TV"
|
||||
meta_description: "Youth volleyball match streaming from your phone: live stream for parents and grandparents, set-based scoring, link to share. Ideal for U14, U16 and U18 clubs."
|
||||
title: Match Live TV for youth volleyball
|
||||
lead_html: "The solution for clubs, coaches and parents who want a reliable <strong>live stream</strong> of <strong>Under 14, Under 16, Under 18</strong> matches and youth divisions — without becoming a sports commentator."
|
||||
section1_title: Why youth volleyball needs simple streaming
|
||||
section1_body_html: "Not every parent can be in the stands: work shifts, younger siblings, away games. A grandparent in another city or a relative abroad still wants to see the tie-break of the third set. That's why Match Live TV exists: <strong>youth volleyball match streaming</strong> from your phone, with a live score and an instant link to send on WhatsApp."
|
||||
section2_title: What the coach does in two minutes
|
||||
section2_item1: Schedule the match with date, opponent and court from the app
|
||||
section2_item2: On game day, prop up the phone and start the stream
|
||||
section2_item3: A volunteer can update sets and points from a second phone
|
||||
section2_item4: "Share the link with the parents' group: everyone watches from the browser"
|
||||
section3_title: What the family sees at home
|
||||
section3_body: "No app to install. Open the link and follow the match live: team names, score, set status. If you missed the start, with Premium the match stays in the archive to watch again whenever you want."
|
||||
section4_title: "Volleyball: scoring and rules"
|
||||
section4_body: "Sets to win at 2 or 3, points at 25/21/15 configurable for non-standard tournaments. The score is managed from a shared link (no account needed): on court, stay focused on the game, not the phone."
|
||||
section5_title: Other youth sports
|
||||
section5_body: "The same platform also works for football, basketball and other amateur team sports. Volleyball remains the sport many clubs start with, since set-based scoring is already built in."
|
||||
card1_title: Parents and grandparents
|
||||
card1_body: "Link on WhatsApp, watch from phone or TV browser. Zero sign-up for viewers."
|
||||
card2_title: Club and staff
|
||||
card2_body: "Email invites, more operators with Premium, revoke access from the web dashboard."
|
||||
card3_title: Match archive
|
||||
card3_body: "Premium Light/Full: replay for those who missed the stream or want to rewatch a key point."
|
||||
cta_start: Start for free
|
||||
cta_faq: Frequently asked questions
|
||||
@@ -0,0 +1,122 @@
|
||||
es:
|
||||
pages:
|
||||
features:
|
||||
meta_title: "Funciones de streaming de partidos juveniles — Match Live TV"
|
||||
meta_description: "App para el directo desde el móvil: graba el partido, actualiza el marcador, comparte el enlace con padres y abuelos. Archivo de partidos y planes para clubes deportivos juveniles."
|
||||
title: Funciones
|
||||
lead: "Todo lo necesario para que quienes no pueden estar en el pabellón sigan el partido: sencillo para entrenadores y voluntarios, cómodo para padres, abuelos y familiares."
|
||||
staff_section_title: Para el club y el staff
|
||||
staff_invite_title: Invitaciones con su propio email
|
||||
staff_invite_body: "El presidente o propietario invita a quien graba y a quien actualiza el marcador: cada uno accede con su propio email, sin compartir contraseñas."
|
||||
staff_access_title: Gestión de accesos
|
||||
staff_access_body: Puedes retirar el acceso a un voluntario o cancelar una invitación pendiente desde el panel del equipo.
|
||||
staff_plans_title: Planes a medida
|
||||
staff_plans_body: Con Free, Premium Light o Premium Full aumentas cuántas personas pueden ayudar en directo y cuántos partidos pueden ir en paralelo.
|
||||
live_section_title: En la cancha y en directo
|
||||
live_phone_title: Graba desde el móvil
|
||||
live_phone_body: "Apoyas el móvil e inicias el directo: incluso con 4G débil, la transmisión se mantiene lo más estable posible, sin líos de cables ni mezcladores."
|
||||
live_score_title: Marcador desde un segundo móvil
|
||||
live_score_body: "Otro voluntario actualiza sets y puntos desde un segundo móvil: solo hay que escanear el código que aparece en la pantalla de quien graba."
|
||||
live_link_title: Enlace para familias y aficionados
|
||||
live_link_body: "Comparte un enlace: padres, abuelos y amigos miran desde el navegador del móvil o del ordenador, sin instalar apps."
|
||||
live_archive_title: Archivo de partidos
|
||||
live_archive_body: "Con Premium Light o Full los partidos quedan guardados en el servidor (30 o 90 días) y puedes descargarlos al móvil cuando quieras."
|
||||
live_youtube_mltv_title: También en YouTube (Match Live TV)
|
||||
live_youtube_mltv_body: "Con Premium Light el directo también se ve en el canal de YouTube de Match Live TV, además del enlace en el sitio."
|
||||
live_youtube_club_title: Canal de YouTube del club
|
||||
live_youtube_club_body: "Con Premium Full puedes enviar el mismo directo también al canal oficial de YouTube del club."
|
||||
live_website_title: En el sitio web del club
|
||||
live_website_body: "Integración para incrustar el reproductor en el sitio web del club — próximamente con Premium Full."
|
||||
cta_signup: Registra tu equipo
|
||||
pricing:
|
||||
meta_title: "Precios de streaming de partidos juveniles — Match Live TV"
|
||||
meta_description: "Planes Free, Premium Light y Premium Full para directos y archivo de partidos. Suscripción anual para clubes: más staff, más partidos en paralelo, repetición y YouTube."
|
||||
club_title: Planes para tu club
|
||||
club_info_html: "Club: <strong>%{name}</strong> · %{billing_link}"
|
||||
manage_subscription: Gestionar suscripción
|
||||
team_title: Planes para tu equipo
|
||||
team_lead: "Suscripción anual para clubes: los responsables de emisión inician el directo desde la app; el marcador se gestiona con un enlace para compartir."
|
||||
table_staff: Responsables de emisión / año
|
||||
table_matches: Partidos simultáneos
|
||||
table_live_mltv: Directo en Match Live TV
|
||||
table_youtube: YouTube
|
||||
table_replay: Repetición en servidor
|
||||
table_download: Descarga al móvil
|
||||
table_price: Precio
|
||||
table_price_free: "€0"
|
||||
table_price_light_html: "€40/año o €5/mes"
|
||||
table_price_full_html: "€200/año o €20/mes"
|
||||
table_yes: "Sí"
|
||||
table_no: "No"
|
||||
table_unlimited: Ilimitado
|
||||
table_youtube_club: Canal del club
|
||||
different_title: "¿Necesidades diferentes?"
|
||||
different_body: "Para clubes con varios equipos, torneos o integraciones a medida, contáctanos: buscamos juntos la mejor oferta."
|
||||
contact_button: Contáctanos
|
||||
plans:
|
||||
price_alt_html: "o <strong>%{price}</strong>"
|
||||
staff_html: "Responsables de emisión: <strong>%{count}</strong> / año por equipo"
|
||||
staff_unlimited: ilimitado
|
||||
matches_html: "Partidos: <strong>%{count}</strong> simultáneos (todo el club)"
|
||||
matches_unlimited: ilimitados
|
||||
replay_html: "Repetición: %{value}"
|
||||
replay_days: "%{count} días"
|
||||
replay_none: "no"
|
||||
youtube_html: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: canal del club
|
||||
youtube_none: "no"
|
||||
complete_billing: Completar datos de facturación
|
||||
start_free: Empieza gratis
|
||||
register_with_price: "Regístrate — %{price}"
|
||||
faq:
|
||||
meta_title: "FAQ — Directo de partidos juveniles | Match Live TV"
|
||||
meta_description: "Preguntas frecuentes sobre streaming de partidos juveniles: cómo ver el directo sin app, costos, archivo, voleibol U16, invitaciones de staff y planes Free y Premium."
|
||||
title: Preguntas frecuentes sobre el streaming de partidos juveniles
|
||||
lead: "Respuestas para padres, entrenadores y directivos que quieren emitir en directo partidos de voleibol, fútbol y otros deportes amateur."
|
||||
q1_question: "¿Cómo veo el partido de mi hijo sin instalar una app?"
|
||||
q1_answer_html: "El club comparte un enlace (por WhatsApp, email o grupo del equipo). Abre el enlace desde el móvil o el ordenador: verás el <strong>directo</strong> en el navegador, sin registrarte. Funciona para abuelos, familiares y amigos lejanos."
|
||||
q2_question: "¿Quién puede iniciar el directo desde el pabellón?"
|
||||
q2_answer: "Entrenadores, directivos o voluntarios invitados por el club. Usan la app Match Live TV en el móvil para grabar y, si hace falta, un segundo móvil para actualizar el marcador. El directo solo empieza cuando alguien pulsa iniciar en el pabellón."
|
||||
q3_question: "¿Es apto para voleibol juvenil (Under 14, Under 16)?"
|
||||
q3_answer_html: "Sí. El marcador por sets está pensado para el voleibol; puedes personalizar reglas para torneos especiales. Descubre la página dedicada: %{volleyball_link}."
|
||||
q3_volleyball_link: Match Live TV para voleibol juvenil
|
||||
q4_question: "¿Qué pasa si me pierdo el directo?"
|
||||
q4_answer: "Con los planes Premium Light o Full el partido se guarda en el archivo (30 o 90 días) y puedes volver a verlo desde el sitio. El plan Free no incluye repetición en servidor, pero el directo sigue siendo gratis para quien emite y para quien mira."
|
||||
q5_question: "¿Cuánto cuesta para el club?"
|
||||
q5_answer_html: "Puedes empezar con el plan <strong>Free</strong> (límites de staff y un directo a la vez). Premium Light y Full añaden más partidos en paralelo, archivo y YouTube. %{pricing_link}."
|
||||
q5_pricing_link: Compara precios
|
||||
q6_question: "¿Puedo programar un partido antes del día del encuentro?"
|
||||
q6_answer: "Sí, desde la app se establece fecha y hora: el partido aparece en «Próximos partidos» en el sitio. El streaming solo empieza cuando el staff inicia la transmisión en el pabellón."
|
||||
q7_question: "¿El directo también va a YouTube?"
|
||||
q7_answer: "Con Premium Light puedes enviarlo al canal de Match Live TV; con Premium Full también al canal de YouTube del club. Quien prefiera puede quedarse con el enlace de Match Live TV, cómodo para las familias."
|
||||
q8_question: "¿Tengo que abrir puertos en el router o tener equipo de TV?"
|
||||
q8_answer: "No, para quien mira no. Para el club que emite basta con el smartphone y una buena conexión en el pabellón; el staff técnico de la plataforma gestiona la infraestructura. Nada de cámaras de retransmisión ni mezcladores."
|
||||
cta_signup: Registra tu equipo
|
||||
cta_live: Ver directos
|
||||
volleyball:
|
||||
meta_title: "Directo de voleibol juvenil — Under 14, Under 16 | Match Live TV"
|
||||
meta_description: "Streaming de partidos de voleibol juvenil desde el móvil: directo para padres y abuelos, marcador por sets, enlace para compartir. Ideal para clubes Under 14, Under 16 y Under 18."
|
||||
title: Match Live TV para el voleibol juvenil
|
||||
lead_html: "La solución para clubes, entrenadores y padres que quieren un <strong>directo</strong> fiable de los partidos <strong>Under 14, Under 16, Under 18</strong> y categorías juveniles — sin convertirse en comentaristas deportivos."
|
||||
section1_title: Por qué el voleibol juvenil necesita un streaming sencillo
|
||||
section1_body_html: "En el pabellón no todos los padres están siempre en las gradas: turnos de trabajo, hermanos pequeños, desplazamientos. Un abuelo en otra ciudad o un familiar en el extranjero quiere ver igualmente el tie-break del tercer set. Match Live TV nace para esto: <strong>streaming de partidos de voleibol juvenil</strong> desde el móvil, con marcador actualizado y enlace inmediato para enviar por WhatsApp."
|
||||
section2_title: Lo que hace el entrenador en dos minutos
|
||||
section2_item1: Programa el partido con fecha, rival y cancha desde la app
|
||||
section2_item2: El día del partido apoya el móvil e inicia el directo
|
||||
section2_item3: Un voluntario puede actualizar sets y puntos desde un segundo móvil
|
||||
section2_item4: "Comparte el enlace con el grupo de padres: todos miran desde el navegador"
|
||||
section3_title: Lo que ve la familia en casa
|
||||
section3_body: "Ninguna app que instalar. Abre el enlace y sigue el partido en directo: nombres de los equipos, marcador, estado del set. Si te perdiste el inicio, con Premium el partido queda en el archivo para volver a verlo cuando quieras."
|
||||
section4_title: "Voleibol: marcador y reglas"
|
||||
section4_body: "Sets a ganar 2 o 3, puntos 25/21/15 configurables para torneos no estándar. El marcador se gestiona desde un enlace compartido (sin cuenta): en la cancha te mantienes concentrado en el juego, no en el móvil."
|
||||
section5_title: Otros deportes juveniles
|
||||
section5_body: "La misma plataforma también funciona para fútbol, baloncesto y otros deportes de equipo amateur. El voleibol sigue siendo el deporte con el que muchos clubes empiezan porque el marcador por sets ya está integrado."
|
||||
card1_title: Padres y abuelos
|
||||
card1_body: "Enlace por WhatsApp, visión desde móvil o TV con navegador. Cero registro para quien mira."
|
||||
card2_title: Club y staff
|
||||
card2_body: "Invitaciones por email, más operadores con Premium, revocación de accesos desde el panel web."
|
||||
card3_title: Archivo de partidos
|
||||
card3_body: "Premium Light/Full: repetición para quien se perdió el directo o quiere volver a ver un punto clave."
|
||||
cta_start: Empieza gratis
|
||||
cta_faq: Preguntas frecuentes
|
||||
@@ -0,0 +1,122 @@
|
||||
fr:
|
||||
pages:
|
||||
features:
|
||||
meta_title: "Fonctionnalités de streaming des matchs jeunes — Match Live TV"
|
||||
meta_description: "Application pour le direct depuis le téléphone : filmez le match, mettez à jour le score, partagez le lien avec parents et grands-parents. Archive des matchs et offres pour les clubs sportifs jeunes."
|
||||
title: Fonctionnalités
|
||||
lead: "Tout ce qu'il faut pour faire suivre les matchs à ceux qui ne peuvent pas être en salle : simple pour les coachs et bénévoles, pratique pour parents, grands-parents et proches."
|
||||
staff_section_title: Pour le club et le staff
|
||||
staff_invite_title: Invitations avec leur propre email
|
||||
staff_invite_body: "Le président ou le propriétaire invite qui filme et qui met à jour le score : chacun se connecte avec son propre email, sans partager de mot de passe."
|
||||
staff_access_title: Gestion des accès
|
||||
staff_access_body: Vous pouvez retirer l'accès à un bénévole ou annuler une invitation encore en attente depuis le tableau de bord de l'équipe.
|
||||
staff_plans_title: Des offres sur mesure
|
||||
staff_plans_body: "Avec Free, Premium Light ou Premium Full, augmentez le nombre de personnes qui peuvent aider en direct et le nombre de matchs en parallèle."
|
||||
live_section_title: Sur le terrain et en direct
|
||||
live_phone_title: Filmez depuis votre téléphone
|
||||
live_phone_body: "Posez le téléphone et lancez le direct : même avec un 4G faible, la diffusion reste aussi stable que possible, sans câbles ni mixeur."
|
||||
live_score_title: Score depuis un second téléphone
|
||||
live_score_body: "Un autre bénévole met à jour les sets et les points depuis un second téléphone : il suffit de scanner le code affiché sur l'écran de celui qui filme."
|
||||
live_link_title: Lien pour les familles et supporters
|
||||
live_link_body: "Partagez un lien : parents, grands-parents et amis regardent depuis le navigateur du téléphone ou de l'ordinateur, sans installer d'application."
|
||||
live_archive_title: Archive des matchs
|
||||
live_archive_body: "Avec Premium Light ou Full, les matchs restent enregistrés sur le serveur (30 ou 90 jours) et vous pouvez les télécharger sur le téléphone quand vous voulez."
|
||||
live_youtube_mltv_title: Aussi sur YouTube (Match Live TV)
|
||||
live_youtube_mltv_body: "Avec Premium Light, le direct est aussi visible sur la chaîne YouTube Match Live TV, en plus du lien sur le site."
|
||||
live_youtube_club_title: Chaîne YouTube du club
|
||||
live_youtube_club_body: "Avec Premium Full, vous pouvez diffuser le même direct sur la chaîne YouTube officielle du club."
|
||||
live_website_title: Sur le site du club
|
||||
live_website_body: "Intégration pour intégrer le lecteur sur le site du club — bientôt disponible avec Premium Full."
|
||||
cta_signup: Inscrire l'équipe
|
||||
pricing:
|
||||
meta_title: "Tarifs streaming des matchs jeunes — Match Live TV"
|
||||
meta_description: "Offres Free, Premium Light et Premium Full pour le direct et l'archive des matchs. Abonnement annuel pour les clubs : plus de staff, plus de matchs en parallèle, replay et YouTube."
|
||||
club_title: Offres pour votre club
|
||||
club_info_html: "Club : <strong>%{name}</strong> · %{billing_link}"
|
||||
manage_subscription: Gérer l'abonnement
|
||||
team_title: Offres pour votre équipe
|
||||
team_lead: "Abonnement annuel pour les clubs : les responsables de diffusion démarrent le direct depuis l'application ; le score se gère avec un lien à partager."
|
||||
table_staff: Responsables de diffusion / an
|
||||
table_matches: Matchs simultanés
|
||||
table_live_mltv: Direct sur Match Live TV
|
||||
table_youtube: YouTube
|
||||
table_replay: Replay serveur
|
||||
table_download: Téléchargement téléphone
|
||||
table_price: Prix
|
||||
table_price_free: "€0"
|
||||
table_price_light_html: "€40/an ou €5/mois"
|
||||
table_price_full_html: "€200/an ou €20/mois"
|
||||
table_yes: Oui
|
||||
table_no: Non
|
||||
table_unlimited: Illimité
|
||||
table_youtube_club: Chaîne du club
|
||||
different_title: Des besoins différents ?
|
||||
different_body: "Pour les clubs avec plusieurs équipes, des tournois ou des intégrations sur mesure, contactez-nous : trouvons ensemble la meilleure offre."
|
||||
contact_button: Contactez-nous
|
||||
plans:
|
||||
price_alt_html: "ou <strong>%{price}</strong>"
|
||||
staff_html: "Responsables de diffusion : <strong>%{count}</strong> / an par équipe"
|
||||
staff_unlimited: illimité
|
||||
matches_html: "Matchs : <strong>%{count}</strong> simultanés (tout le club)"
|
||||
matches_unlimited: illimités
|
||||
replay_html: "Replay : %{value}"
|
||||
replay_days: "%{count} jours"
|
||||
replay_none: non
|
||||
youtube_html: "YouTube : %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: chaîne du club
|
||||
youtube_none: non
|
||||
complete_billing: Compléter les données de facturation
|
||||
start_free: Commencer gratuitement
|
||||
register_with_price: "S'inscrire — %{price}"
|
||||
faq:
|
||||
meta_title: "FAQ — Direct des matchs jeunes | Match Live TV"
|
||||
meta_description: "Questions fréquentes sur le streaming des matchs jeunes : comment regarder le direct sans application, coûts, archive, volley U16, invitations du staff et offres Free et Premium."
|
||||
title: Questions fréquentes sur le streaming des matchs jeunes
|
||||
lead: "Réponses pour les parents, entraîneurs et dirigeants qui veulent diffuser en direct les matchs de volley, football et autres sports amateurs."
|
||||
q1_question: Comment regarder le match de mon enfant sans installer d'application ?
|
||||
q1_answer_html: "Le club partage un lien (via WhatsApp, email ou groupe de l'équipe). Ouvrez le lien depuis le téléphone ou l'ordinateur : regardez le <strong>direct</strong> dans le navigateur, sans vous inscrire. Ça fonctionne pour les grands-parents, la famille et les amis éloignés."
|
||||
q2_question: Qui peut lancer le direct depuis la salle ?
|
||||
q2_answer: "Les coachs, dirigeants ou bénévoles invités par le club. Ils utilisent l'application Match Live TV sur le téléphone pour filmer et, si besoin, un second téléphone pour mettre à jour le score. Le direct ne démarre que lorsque quelqu'un appuie sur démarrer en salle."
|
||||
q3_question: Est-ce adapté au volley jeunes (Under 14, Under 16) ?
|
||||
q3_answer_html: "Oui. Le score par set est pensé pour le volley ; vous pouvez personnaliser les règles pour des tournois particuliers. Découvrez la page dédiée : %{volleyball_link}."
|
||||
q3_volleyball_link: Match Live TV pour le volley jeunes
|
||||
q4_question: Que se passe-t-il si je rate le direct ?
|
||||
q4_answer: "Avec les offres Premium Light ou Full, le match est enregistré dans l'archive (30 ou 90 jours) et vous pouvez le revoir depuis le site. L'offre Free n'inclut pas le replay serveur, mais le direct reste gratuit pour ceux qui diffusent et pour ceux qui regardent."
|
||||
q5_question: Combien ça coûte pour le club ?
|
||||
q5_answer_html: "Vous pouvez commencer avec l'offre <strong>Free</strong> (limites sur le staff et un direct à la fois). Premium Light et Full ajoutent plus de matchs en parallèle, l'archive et YouTube. %{pricing_link}."
|
||||
q5_pricing_link: Comparer les tarifs
|
||||
q6_question: Puis-je programmer un match avant le jour du match ?
|
||||
q6_answer: "Oui, depuis l'application vous définissez la date et l'heure : le match apparaît dans « Prochains matchs » sur le site. Le streaming ne démarre que lorsque le staff lance la diffusion en salle."
|
||||
q7_question: Le direct passe-t-il aussi sur YouTube ?
|
||||
q7_answer: "Avec Premium Light, vous pouvez le diffuser sur la chaîne Match Live TV ; avec Premium Full, aussi sur la chaîne YouTube du club. Ceux qui préfèrent peuvent rester sur le lien Match Live TV, pratique pour les familles."
|
||||
q8_question: Dois-je ouvrir des ports sur le routeur ou avoir du matériel TV ?
|
||||
q8_answer: "Non, pas pour les spectateurs. Pour le club qui diffuse, un smartphone et une bonne connexion en salle suffisent ; le staff technique de la plateforme gère l'infrastructure. Pas de caméras de diffusion ni de mixeur."
|
||||
cta_signup: Inscrire l'équipe
|
||||
cta_live: Voir les directs
|
||||
volleyball:
|
||||
meta_title: "Direct volley jeunes — Under 14, Under 16 | Match Live TV"
|
||||
meta_description: "Streaming des matchs de volley jeunes depuis le téléphone : direct pour parents et grands-parents, score par set, lien à partager. Idéal pour les clubs Under 14, Under 16 et Under 18."
|
||||
title: Match Live TV pour le volley jeunes
|
||||
lead_html: "La solution pour les clubs, coachs et parents qui veulent un <strong>direct</strong> fiable des matchs <strong>Under 14, Under 16, Under 18</strong> et des catégories jeunes — sans devenir commentateur sportif."
|
||||
section1_title: Pourquoi le volley jeunes a besoin d'un streaming simple
|
||||
section1_body_html: "En salle, les parents ne sont pas toujours tous en tribune : horaires de travail, petits frères et sœurs, déplacements. Un grand-parent dans une autre ville ou un proche à l'étranger veut quand même voir le tie-break du troisième set. Match Live TV est né pour ça : <strong>streaming des matchs de volley jeunes</strong> depuis le téléphone, avec un score en direct et un lien immédiat à envoyer sur WhatsApp."
|
||||
section2_title: Ce que fait le coach en deux minutes
|
||||
section2_item1: Programme le match avec date, adversaire et terrain depuis l'application
|
||||
section2_item2: Le jour du match, il pose le téléphone et lance le direct
|
||||
section2_item3: Un bénévole peut mettre à jour les sets et les points depuis un second téléphone
|
||||
section2_item4: "Il partage le lien avec le groupe des parents : tout le monde regarde depuis le navigateur"
|
||||
section3_title: Ce que voit la famille à la maison
|
||||
section3_body: "Aucune application à installer. Ouvrez le lien et suivez le match en direct : noms des équipes, score, état du set. Si vous avez raté le début, avec Premium le match reste dans l'archive pour le revoir quand vous voulez."
|
||||
section4_title: "Volley : score et règles"
|
||||
section4_body: "Sets à gagner en 2 ou 3, points à 25/21/15 configurables pour les tournois non standards. Le score se gère depuis un lien partagé (sans compte) : sur le terrain, on reste concentré sur le jeu, pas sur le téléphone."
|
||||
section5_title: Autres sports jeunes
|
||||
section5_body: "La même plateforme fonctionne aussi pour le football, le basket et d'autres sports d'équipe amateurs. Le volley reste le sport par lequel beaucoup de clubs commencent, car le score par set est déjà intégré."
|
||||
card1_title: Parents et grands-parents
|
||||
card1_body: "Lien sur WhatsApp, visionnage depuis le téléphone ou la TV avec navigateur. Zéro inscription pour les spectateurs."
|
||||
card2_title: Club et staff
|
||||
card2_body: "Invitations par email, plus d'opérateurs avec Premium, révocation des accès depuis le tableau de bord web."
|
||||
card3_title: Archive des matchs
|
||||
card3_body: "Premium Light/Full : replay pour ceux qui ont raté le direct ou veulent revoir un point clé."
|
||||
cta_start: Commencer gratuitement
|
||||
cta_faq: Questions fréquentes
|
||||
@@ -0,0 +1,122 @@
|
||||
it:
|
||||
pages:
|
||||
features:
|
||||
meta_title: "Funzionalità streaming partite giovanili — Match Live TV"
|
||||
meta_description: "App per diretta live da telefono: filma la partita, aggiorna il punteggio, condividi il link con genitori e nonni. Archivio gare e piani per società sportive giovanili."
|
||||
title: Funzionalità
|
||||
lead: "Tutto ciò che serve per far seguire le partite a chi non può essere in palestra: semplice per coach e volontari, comodo per genitori, nonni e parenti."
|
||||
staff_section_title: Per la società e lo staff
|
||||
staff_invite_title: Inviti con la propria email
|
||||
staff_invite_body: "Il presidente o l'owner invita chi filma e chi aggiorna il punteggio: ognuno accede con la sua email, senza condividere password."
|
||||
staff_access_title: Gestione accessi
|
||||
staff_access_body: Puoi togliere l'accesso a un volontario o annullare un invito ancora in sospeso dalla dashboard della squadra.
|
||||
staff_plans_title: Piani su misura
|
||||
staff_plans_body: Con Free, Premium Light o Premium Full aumenti quante persone possono aiutare in diretta e quante partite possono andare in parallelo.
|
||||
live_section_title: In campo e in diretta
|
||||
live_phone_title: Filma dal telefono
|
||||
live_phone_body: "Appoggi il telefono e avvii la diretta: anche con il 4G debole la trasmissione resta stabile il più possibile, senza impazzire con cavi o mixer."
|
||||
live_score_title: Punteggio da un secondo telefono
|
||||
live_score_body: "Un altro volontario aggiorna set e punti da un secondo cellulare: basta inquadrare il codice che compare sullo schermo di chi filma."
|
||||
live_link_title: Link per famiglie e tifosi
|
||||
live_link_body: "Condividi un link: genitori, nonni e amici guardano dal browser del telefono o del computer, senza installare app."
|
||||
live_archive_title: Archivio partite
|
||||
live_archive_body: "Con Premium Light o Full le gare restano salvate sul server (30 o 90 giorni) e puoi scaricarle sul telefono quando serve."
|
||||
live_youtube_mltv_title: Anche su YouTube (Match Live TV)
|
||||
live_youtube_mltv_body: Con Premium Light la diretta è visibile anche sul canale YouTube Match Live TV, oltre al link sul sito.
|
||||
live_youtube_club_title: Canale YouTube della società
|
||||
live_youtube_club_body: Con Premium Full puoi mandare la stessa diretta anche sul canale YouTube ufficiale del club.
|
||||
live_website_title: Sul sito della società
|
||||
live_website_body: Integrazione per incorporare il player sul sito del club — in arrivo con Premium Full.
|
||||
cta_signup: Registra la squadra
|
||||
pricing:
|
||||
meta_title: "Prezzi streaming partite giovanili — Match Live TV"
|
||||
meta_description: "Piani Free, Premium Light e Premium Full per dirette live e archivio partite. Abbonamento annuale per società: più staff, più partite in parallelo, replay e YouTube."
|
||||
club_title: Piani per la tua società
|
||||
club_info_html: "Società: <strong>%{name}</strong> · %{billing_link}"
|
||||
manage_subscription: Gestisci abbonamento
|
||||
team_title: Piani per la tua squadra
|
||||
team_lead: "Abbonamento annuale per società: i responsabili trasmissione avviano la diretta dall'app; il punteggio si gestisce con un link condivisibile."
|
||||
table_staff: Responsabili trasmissione / anno
|
||||
table_matches: Partite in contemporanea
|
||||
table_live_mltv: Live su Match Live TV
|
||||
table_youtube: YouTube
|
||||
table_replay: Replay server
|
||||
table_download: Download telefono
|
||||
table_price: Prezzo
|
||||
table_price_free: "€0"
|
||||
table_price_light_html: "€40/anno o €5/mese"
|
||||
table_price_full_html: "€200/anno o €20/mese"
|
||||
table_yes: "Sì"
|
||||
table_no: "No"
|
||||
table_unlimited: Illimitato
|
||||
table_youtube_club: Canale società
|
||||
different_title: Esigenze diverse?
|
||||
different_body: "Per società con più squadre, tornei o integrazioni custom, contattaci: troviamo insieme l'offerta migliore."
|
||||
contact_button: Contattaci
|
||||
plans:
|
||||
price_alt_html: "oppure <strong>%{price}</strong>"
|
||||
staff_html: "Responsabili trasmissione: <strong>%{count}</strong> / anno per squadra"
|
||||
staff_unlimited: illimitato
|
||||
matches_html: "Partite: <strong>%{count}</strong> in contemporanea (tutta la società)"
|
||||
matches_unlimited: illimitate
|
||||
replay_html: "Replay: %{value}"
|
||||
replay_days: "%{count} giorni"
|
||||
replay_none: "no"
|
||||
youtube_html: "YouTube: %{value}"
|
||||
youtube_mltv: Match Live TV
|
||||
youtube_club: canale società
|
||||
youtube_none: "no"
|
||||
complete_billing: Completa dati di fatturazione
|
||||
start_free: Inizia gratis
|
||||
register_with_price: "Registrati — %{price}"
|
||||
faq:
|
||||
meta_title: "FAQ — Diretta live partite giovanili | Match Live TV"
|
||||
meta_description: "Domande frequenti su streaming partite giovanili: come guardare la diretta senza app, costi, archivio, pallavolo Under 16, inviti staff e piani Free e Premium."
|
||||
title: Domande frequenti sullo streaming delle partite giovanili
|
||||
lead: "Risposte per genitori, allenatori e dirigenti che vogliono mandare in diretta live le partite di pallavolo, calcio e altri sport dilettantistici."
|
||||
q1_question: Come guardo la partita di mio figlio senza installare app?
|
||||
q1_answer_html: "La società condivide un link (via WhatsApp, email o gruppo squadra). Apri il link dal telefono o dal computer: vedi la <strong>diretta live</strong> nel browser, senza registrarti. Funziona per nonni, parenti e amici lontani."
|
||||
q2_question: Chi può avviare la diretta dalla palestra?
|
||||
q2_answer: "Coach, dirigenti o volontari invitati dalla società. Usano l'app Match Live TV sul telefono per filmare e, se serve, un secondo telefono per aggiornare il punteggio. La diretta parte solo quando premo avvio in palestra."
|
||||
q3_question: È adatto alla pallavolo giovanile (Under 14, Under 16)?
|
||||
q3_answer_html: "Sì. Il punteggio a set è pensato per la pallavolo; puoi personalizzare regole per tornei particolari. Scopri la pagina dedicata: %{volleyball_link}."
|
||||
q3_volleyball_link: Match Live TV per pallavolo giovanile
|
||||
q4_question: Cosa succede se perdo la diretta?
|
||||
q4_answer: "Con i piani Premium Light o Full la partita viene salvata in archivio (30 o 90 giorni) e puoi rivederla dal sito. Il piano Free non include replay su server, ma la diretta resta gratuita per chi trasmette e per chi guarda."
|
||||
q5_question: Quanto costa per la società?
|
||||
q5_answer_html: "Puoi iniziare con il piano <strong>Free</strong> (limiti su staff e una diretta alla volta). Premium Light e Full aggiungono più partite in parallelo, archivio e YouTube. %{pricing_link}."
|
||||
q5_pricing_link: Confronta i prezzi
|
||||
q6_question: Posso programmare una partita prima del giorno gara?
|
||||
q6_answer: "Sì, dall'app si imposta data e ora: la partita compare in «Prossime partite» sul sito. Lo streaming parte solo quando lo staff avvia la trasmissione in palestra."
|
||||
q7_question: La diretta va anche su YouTube?
|
||||
q7_answer: "Con Premium Light puoi mandarla sul canale Match Live TV; con Premium Full anche sul canale YouTube della società. Chi preferisce resta sul link Match Live TV, comodo per le famiglie."
|
||||
q8_question: Devo aprire porte sul router o avere attrezzatura da TV?
|
||||
q8_answer: "No per chi guarda. Per la società che trasmette basta lo smartphone e una buona connessione in palestra; lo staff tecnico della piattaforma gestisce l'infrastruttura. Niente camere broadcast o mixer."
|
||||
cta_signup: Registra la squadra
|
||||
cta_live: Guarda le dirette
|
||||
volleyball:
|
||||
meta_title: "Diretta live pallavolo giovanile — Under 14, Under 16 | Match Live TV"
|
||||
meta_description: "Streaming partite di pallavolo giovanile da telefono: diretta live per genitori e nonni, punteggio a set, link da condividere. Ideale per società Under 14, Under 16 e Under 18."
|
||||
title: Match Live TV per la pallavolo giovanile
|
||||
lead_html: "La soluzione per società, coach e genitori che vogliono una <strong>diretta live</strong> affidabile delle partite <strong>Under 14, Under 16, Under 18</strong> e settori giovanili — senza diventare telecronisti."
|
||||
section1_title: Perché la pallavolo giovanile ha bisogno di uno streaming semplice
|
||||
section1_body_html: "In palestra i genitori non sono sempre tutti in tribuna: turni di lavoro, fratelli piccoli, trasferte. Un nonno in un'altra città o un parente all'estero vuole comunque vedere il tie-break del terzo set. Match Live TV nasce per questo: <strong>streaming partite pallavolo giovanile</strong> dal telefono, con punteggio aggiornato e link immediato da mandare su WhatsApp."
|
||||
section2_title: Cosa fa il coach in due minuti
|
||||
section2_item1: Programma la partita con data, avversario e campo dall'app
|
||||
section2_item2: Il giorno gara appoggia il telefono e avvia la diretta
|
||||
section2_item3: Un volontario può aggiornare set e punti da un secondo cellulare
|
||||
section2_item4: "Condivide il link con il gruppo genitori: tutti guardano dal browser"
|
||||
section3_title: Cosa vede la famiglia a casa
|
||||
section3_body: "Nessuna app da installare. Apri il link e segui la partita in diretta live: nome squadre, punteggio, stato del set. Se hai perso l'inizio, con Premium la gara resta in archivio per rivederla quando vuoi."
|
||||
section4_title: "Pallavolo: punteggio e regole"
|
||||
section4_body: "Set da vincere 2 o 3, punti 25/21/15 configurabili per tornei non standard. Il punteggio si gestisce da un link condiviso (senza account): in campo resta concentrato sul gioco, non sul telefono."
|
||||
section5_title: Altri sport giovanili
|
||||
section5_body: "La stessa piattaforma funziona anche per calcio, basket e sport di squadra dilettantistici. La pallavolo resta lo sport con cui molte società iniziano perché il punteggio a set è già integrato."
|
||||
card1_title: Genitori e nonni
|
||||
card1_body: "Link su WhatsApp, visione da telefono o TV con browser. Zero registrazione per chi guarda."
|
||||
card2_title: Società e staff
|
||||
card2_body: "Inviti con email, più operatori con Premium, revoca accessi dalla dashboard web."
|
||||
card3_title: Archivio gare
|
||||
card3_body: "Premium Light/Full: replay per chi ha perso la diretta o vuole rivedere un punto chiave."
|
||||
cta_start: Inizia gratis
|
||||
cta_faq: Domande frequenti
|
||||
@@ -69,14 +69,55 @@ de:
|
||||
seo_volleyball_link: Match Live TV für Jugendvolleyball
|
||||
seo_signup_link: Team kostenlos registrieren
|
||||
auth:
|
||||
login_title: Anmelden
|
||||
email: E-Mail
|
||||
password: Passwort
|
||||
submit_login: Anmelden
|
||||
forgot_password: Passwort vergessen?
|
||||
no_account: Noch kein Konto?
|
||||
signup_link: Team registrieren
|
||||
signup_title: Team registrieren
|
||||
password_confirmation: Passwort bestätigen
|
||||
login:
|
||||
meta_title: "Anmelden — Match Live TV"
|
||||
meta_description: Zugang zum geschützten Bereich für Team-Mitglieder und registrierte Vereine auf Match Live TV.
|
||||
title: Anmelden
|
||||
submit: Anmelden
|
||||
forgot_password: Passwort vergessen?
|
||||
new_prompt_html: "Neu hier? %{signup_link}"
|
||||
signup_link: Registrieren
|
||||
signup:
|
||||
meta_title: "Team registrieren — Match Live TV"
|
||||
meta_description: "Registrieren Sie Ihren Jugend-Sportverein auf Match Live TV: Livestream vom Handy, Link für Eltern und Free- oder Premium-Pläne."
|
||||
title: Team registrieren
|
||||
lead: Erstellen Sie das Konto der Ansprechperson (Trainer oder Vorstand), danach richten Sie das Team ein.
|
||||
name_label: Name
|
||||
legal_accept_html: "Ich habe die %{privacy_link} und die %{terms_link} gelesen und akzeptiere sie."
|
||||
privacy_link: Datenschutzerklärung
|
||||
terms_link: Nutzungsbedingungen
|
||||
legal_hint: "Mit der Registrierung erklären Sie, volljährig zu sein und, falls Sie für einen Sportverein mit minderjährigen Athleten handeln, über die entsprechende Befugnis zu verfügen (z. B. Vorstand, autorisierter Trainer) und die in der Datenschutzerklärung beschriebenen Regeln zu Bildern von Minderjährigen einzuhalten."
|
||||
submit: Weiter
|
||||
has_account_html: "Haben Sie bereits ein Konto? %{login_link}"
|
||||
login_link: Anmelden
|
||||
password_forgot:
|
||||
meta_title: "Passwort vergessen — Match Live TV"
|
||||
title: Passwort vergessen
|
||||
lead: "Geben Sie die E-Mail des Kontos ein: wir senden Ihnen einen Link zum Zurücksetzen des Passworts."
|
||||
submit: Reset-Link senden
|
||||
back_to_login: Zurück zur Anmeldung
|
||||
password_reset:
|
||||
meta_title: "Neues Passwort — Match Live TV"
|
||||
title: Neues Passwort wählen
|
||||
new_password_label: "Neues Passwort (min. 8 Zeichen)"
|
||||
submit: Passwort speichern
|
||||
back_to_login: Zurück zur Anmeldung
|
||||
invitation:
|
||||
meta_title: "Team-Einladung — Match Live TV"
|
||||
meta_description: Nehmen Sie die Einladung an, um dem Team-Staff auf Match Live TV beizutreten.
|
||||
title_html: "Team-Zugang — %{team_name}"
|
||||
role_notice_html: "Sie wurden als <strong>Streaming-Verantwortlicher</strong> hinzugefügt (%{email})."
|
||||
instructions_html: "Melden Sie sich in der Match-Live-TV-App mit <strong>%{email}</strong> an, nehmen Sie die Einladung an und verbinden Sie Ihren YouTube-Kanal."
|
||||
accept: Einladung annehmen
|
||||
accept_if_logged_in: Annehmen (falls bereits angemeldet)
|
||||
login_or_signup_html: "%{login_link} oder %{signup_link} mit %{email}."
|
||||
login_link: Melden Sie sich an
|
||||
signup_link: registrieren Sie sich
|
||||
mobile_app_label: "Mobile App:"
|
||||
open_in_app: Einladung in der App öffnen
|
||||
common:
|
||||
privacy: Datenschutz
|
||||
cookies: Cookies
|
||||
@@ -90,3 +131,25 @@ de:
|
||||
loading: Wird geladen…
|
||||
error: Es ist ein Fehler aufgetreten
|
||||
back: Zurück
|
||||
confirm_eyebrow: Bestätigung erforderlich
|
||||
confirm_title: Möchtest du diesen Vorgang wirklich durchführen?
|
||||
delete_title: Endgültig löschen?
|
||||
confirm_ok: Bestätigen
|
||||
delete_ok: Löschen
|
||||
multi_delete_title: Was möchtest du löschen?
|
||||
multi_delete_message: Wähle, wo die Aufzeichnung entfernt werden soll. Dieser Vorgang kann nicht rückgängig gemacht werden.
|
||||
delete_youtube_title: Von YouTube löschen?
|
||||
delete_youtube_message: Das Video wird von YouTube entfernt. Die Aufzeichnung bleibt auf der Website verfügbar.
|
||||
delete_youtube_ok: Von YouTube löschen
|
||||
delete_site_title: Von der Website löschen?
|
||||
delete_site_message_with_youtube: Die Aufzeichnung wird von der Website entfernt. Das Video auf YouTube bleibt online.
|
||||
delete_site_message_only: Du bist dabei, diese Aufzeichnung endgültig von der Website zu löschen. Dieser Vorgang kann nicht rückgängig gemacht werden.
|
||||
delete_site_ok: Von der Website löschen
|
||||
choice_site_label: Nur Website
|
||||
choice_site_hint_with_youtube: Das Video bleibt auf YouTube
|
||||
choice_site_hint_only: Entfernt die Dateien von der Website
|
||||
choice_youtube_label: Nur YouTube
|
||||
choice_youtube_hint_with_site: Bleibt auf der Website verfügbar
|
||||
choice_youtube_hint_only: Entfernt nur das YouTube-Video
|
||||
choice_both_label: Website und YouTube
|
||||
choice_both_hint: Vollständige Löschung
|
||||
|
||||
@@ -69,14 +69,55 @@ en:
|
||||
seo_volleyball_link: Match Live TV for youth volleyball
|
||||
seo_signup_link: register your team for free
|
||||
auth:
|
||||
login_title: Log in
|
||||
email: Email
|
||||
password: Password
|
||||
submit_login: Log in
|
||||
forgot_password: Forgot password?
|
||||
no_account: Don't have an account?
|
||||
signup_link: Register a team
|
||||
signup_title: Register your team
|
||||
password_confirmation: Confirm password
|
||||
login:
|
||||
meta_title: "Log in — Match Live TV"
|
||||
meta_description: Restricted area access for staff and clubs registered on Match Live TV.
|
||||
title: Log in
|
||||
submit: Log in
|
||||
forgot_password: Forgot password?
|
||||
new_prompt_html: "New here? %{signup_link}"
|
||||
signup_link: Sign up
|
||||
signup:
|
||||
meta_title: "Register your team — Match Live TV"
|
||||
meta_description: "Sign up your youth sports club on Match Live TV: live streaming from your phone, a link for parents, and Free or Premium plans."
|
||||
title: Register your team
|
||||
lead: Create the account for the contact person (coach or manager), then you'll set up the team.
|
||||
name_label: Name
|
||||
legal_accept_html: "I have read and accept the %{privacy_link} and the %{terms_link}."
|
||||
privacy_link: privacy policy
|
||||
terms_link: terms of service
|
||||
legal_hint: "By signing up you declare that you are of legal age and, if you act on behalf of a sports club with minor athletes, that you have the proper authority (e.g. manager, authorized coach) and that you will follow the rules on images of minors described in the privacy policy."
|
||||
submit: Continue
|
||||
has_account_html: "Already have an account? %{login_link}"
|
||||
login_link: Log in
|
||||
password_forgot:
|
||||
meta_title: "Forgot password — Match Live TV"
|
||||
title: Forgot password
|
||||
lead: "Enter your account email: we'll send you a link to reset your password."
|
||||
submit: Send reset link
|
||||
back_to_login: Back to login
|
||||
password_reset:
|
||||
meta_title: "New password — Match Live TV"
|
||||
title: Choose a new password
|
||||
new_password_label: "New password (min. 8 characters)"
|
||||
submit: Save password
|
||||
back_to_login: Back to login
|
||||
invitation:
|
||||
meta_title: "Team invitation — Match Live TV"
|
||||
meta_description: Accept the invitation to join the team staff on Match Live TV.
|
||||
title_html: "Staff access — %{team_name}"
|
||||
role_notice_html: "You've been added as a <strong>streaming manager</strong> (%{email})."
|
||||
instructions_html: "In the Match Live TV app, sign in with <strong>%{email}</strong>, accept the invitation and connect your YouTube channel."
|
||||
accept: Accept invitation
|
||||
accept_if_logged_in: Accept (if already logged in)
|
||||
login_or_signup_html: "%{login_link} or %{signup_link} with %{email}."
|
||||
login_link: Log in
|
||||
signup_link: sign up
|
||||
mobile_app_label: "Mobile app:"
|
||||
open_in_app: Open invitation in the app
|
||||
common:
|
||||
privacy: Privacy
|
||||
cookies: Cookies
|
||||
@@ -90,3 +131,25 @@ en:
|
||||
loading: Loading…
|
||||
error: Something went wrong
|
||||
back: Back
|
||||
confirm_eyebrow: Confirmation required
|
||||
confirm_title: Are you sure you want to do this?
|
||||
delete_title: Delete permanently?
|
||||
confirm_ok: Confirm
|
||||
delete_ok: Delete
|
||||
multi_delete_title: What do you want to delete?
|
||||
multi_delete_message: Choose where to remove the recording. This action cannot be undone.
|
||||
delete_youtube_title: Delete from YouTube?
|
||||
delete_youtube_message: The video will be removed from YouTube. The recording will remain available on the site.
|
||||
delete_youtube_ok: Delete from YouTube
|
||||
delete_site_title: Delete from the site?
|
||||
delete_site_message_with_youtube: The recording will be removed from the site. The video on YouTube will stay online.
|
||||
delete_site_message_only: You are about to permanently delete this recording from the site. This action cannot be undone.
|
||||
delete_site_ok: Delete from site
|
||||
choice_site_label: Site only
|
||||
choice_site_hint_with_youtube: The video stays on YouTube
|
||||
choice_site_hint_only: Removes the files from the site
|
||||
choice_youtube_label: YouTube only
|
||||
choice_youtube_hint_with_site: Stays available on the site
|
||||
choice_youtube_hint_only: Removes only the YouTube video
|
||||
choice_both_label: Site and YouTube
|
||||
choice_both_hint: Complete deletion
|
||||
|
||||
@@ -69,14 +69,55 @@ es:
|
||||
seo_volleyball_link: Match Live TV para voleibol juvenil
|
||||
seo_signup_link: registra el equipo gratis
|
||||
auth:
|
||||
login_title: Acceder
|
||||
email: Email
|
||||
password: Contraseña
|
||||
submit_login: Acceder
|
||||
forgot_password: ¿Olvidaste la contraseña?
|
||||
no_account: ¿No tienes cuenta?
|
||||
signup_link: Registra el equipo
|
||||
signup_title: Registra tu equipo
|
||||
password_confirmation: Confirmar contraseña
|
||||
login:
|
||||
meta_title: "Acceder — Match Live TV"
|
||||
meta_description: Acceso al área reservada para el staff y los clubes registrados en Match Live TV.
|
||||
title: Acceder
|
||||
submit: Entrar
|
||||
forgot_password: ¿Olvidaste la contraseña?
|
||||
new_prompt_html: "¿Nuevo? %{signup_link}"
|
||||
signup_link: Regístrate
|
||||
signup:
|
||||
meta_title: "Registra tu equipo — Match Live TV"
|
||||
meta_description: "Inscribe tu club deportivo juvenil en Match Live TV: directo desde el móvil, enlace para los padres y planes Free o Premium."
|
||||
title: Registra tu equipo
|
||||
lead: Crea la cuenta del responsable (entrenador o directivo); luego configurarás el equipo.
|
||||
name_label: Nombre
|
||||
legal_accept_html: "He leído y acepto la %{privacy_link} y los %{terms_link}."
|
||||
privacy_link: política de privacidad
|
||||
terms_link: términos de servicio
|
||||
legal_hint: "Al registrarte declaras ser mayor de edad y, si actúas en nombre de un club deportivo con deportistas menores de edad, disponer de la facultad legítima (por ejemplo, directivo, entrenador autorizado) y cumplir las normas sobre imágenes de menores descritas en la política de privacidad."
|
||||
submit: Continuar
|
||||
has_account_html: "¿Ya tienes una cuenta? %{login_link}"
|
||||
login_link: Acceder
|
||||
password_forgot:
|
||||
meta_title: "Contraseña olvidada — Match Live TV"
|
||||
title: Contraseña olvidada
|
||||
lead: "Introduce el email de la cuenta: te enviaremos un enlace para restablecer la contraseña."
|
||||
submit: Enviar enlace de restablecimiento
|
||||
back_to_login: Volver al inicio de sesión
|
||||
password_reset:
|
||||
meta_title: "Nueva contraseña — Match Live TV"
|
||||
title: Elige una nueva contraseña
|
||||
new_password_label: "Nueva contraseña (mín. 8 caracteres)"
|
||||
submit: Guardar contraseña
|
||||
back_to_login: Volver al inicio de sesión
|
||||
invitation:
|
||||
meta_title: "Invitación de equipo — Match Live TV"
|
||||
meta_description: Acepta la invitación para unirte al staff del equipo en Match Live TV.
|
||||
title_html: "Acceso staff — %{team_name}"
|
||||
role_notice_html: "Se te ha añadido como <strong>responsable de emisión</strong> (%{email})."
|
||||
instructions_html: "En la app Match Live TV accede con <strong>%{email}</strong>, acepta la invitación y conecta tu canal de YouTube."
|
||||
accept: Aceptar invitación
|
||||
accept_if_logged_in: Aceptar (si ya has iniciado sesión)
|
||||
login_or_signup_html: "%{login_link} o %{signup_link} con %{email}."
|
||||
login_link: Accede
|
||||
signup_link: regístrate
|
||||
mobile_app_label: "App móvil:"
|
||||
open_in_app: Abrir invitación en la app
|
||||
common:
|
||||
privacy: Privacidad
|
||||
cookies: Cookies
|
||||
@@ -90,3 +131,25 @@ es:
|
||||
loading: Cargando…
|
||||
error: Se ha producido un error
|
||||
back: Atrás
|
||||
confirm_eyebrow: Confirmación necesaria
|
||||
confirm_title: "¿Confirmas esta operación?"
|
||||
delete_title: "¿Eliminar definitivamente?"
|
||||
confirm_ok: Confirmar
|
||||
delete_ok: Eliminar
|
||||
multi_delete_title: "¿Qué quieres eliminar?"
|
||||
multi_delete_message: Elige dónde eliminar la repetición. Esta acción no se puede deshacer.
|
||||
delete_youtube_title: "¿Eliminar de YouTube?"
|
||||
delete_youtube_message: El vídeo se eliminará de YouTube. La repetición seguirá disponible en el sitio.
|
||||
delete_youtube_ok: Eliminar de YouTube
|
||||
delete_site_title: "¿Eliminar del sitio?"
|
||||
delete_site_message_with_youtube: La repetición se eliminará del sitio. El vídeo en YouTube seguirá en línea.
|
||||
delete_site_message_only: Estás a punto de eliminar definitivamente esta repetición del sitio. Esta acción no se puede deshacer.
|
||||
delete_site_ok: Eliminar del sitio
|
||||
choice_site_label: Solo del sitio
|
||||
choice_site_hint_with_youtube: El vídeo permanece en YouTube
|
||||
choice_site_hint_only: Elimina los archivos del sitio
|
||||
choice_youtube_label: Solo de YouTube
|
||||
choice_youtube_hint_with_site: Sigue disponible en el sitio
|
||||
choice_youtube_hint_only: Elimina solo el vídeo de YouTube
|
||||
choice_both_label: Sitio y YouTube
|
||||
choice_both_hint: Eliminación completa
|
||||
|
||||
@@ -69,14 +69,55 @@ fr:
|
||||
seo_volleyball_link: Match Live TV pour le volley jeunes
|
||||
seo_signup_link: inscrivez l'équipe gratuitement
|
||||
auth:
|
||||
login_title: Connexion
|
||||
email: E-mail
|
||||
password: Mot de passe
|
||||
submit_login: Connexion
|
||||
forgot_password: Mot de passe oublié ?
|
||||
no_account: Pas encore de compte ?
|
||||
signup_link: Inscrire l'équipe
|
||||
signup_title: Inscrire votre équipe
|
||||
password_confirmation: Confirmer le mot de passe
|
||||
login:
|
||||
meta_title: "Connexion — Match Live TV"
|
||||
meta_description: Accès à l'espace réservé pour le staff et les clubs inscrits sur Match Live TV.
|
||||
title: Connexion
|
||||
submit: Se connecter
|
||||
forgot_password: Mot de passe oublié ?
|
||||
new_prompt_html: "Nouveau ? %{signup_link}"
|
||||
signup_link: Inscrivez-vous
|
||||
signup:
|
||||
meta_title: "Inscrire votre équipe — Match Live TV"
|
||||
meta_description: "Inscrivez votre club sportif jeunes sur Match Live TV : direct depuis le téléphone, lien pour les parents et offres Free ou Premium."
|
||||
title: Inscrire l'équipe
|
||||
lead: Créez le compte du référent (coach ou dirigeant), vous configurerez ensuite l'équipe.
|
||||
name_label: Nom
|
||||
legal_accept_html: "J'ai lu et j'accepte la %{privacy_link} et les %{terms_link}."
|
||||
privacy_link: politique de confidentialité
|
||||
terms_link: conditions d'utilisation
|
||||
legal_hint: "En vous inscrivant, vous déclarez être majeur et, si vous agissez pour un club sportif avec des athlètes mineurs, disposer de l'autorité nécessaire (ex. dirigeant, coach autorisé) et respecter les règles sur les images de mineurs décrites dans la politique de confidentialité."
|
||||
submit: Continuer
|
||||
has_account_html: "Vous avez déjà un compte ? %{login_link}"
|
||||
login_link: Connexion
|
||||
password_forgot:
|
||||
meta_title: "Mot de passe oublié — Match Live TV"
|
||||
title: Mot de passe oublié
|
||||
lead: "Indiquez l'email du compte : nous vous enverrons un lien pour réinitialiser le mot de passe."
|
||||
submit: Envoyer le lien de réinitialisation
|
||||
back_to_login: Retour à la connexion
|
||||
password_reset:
|
||||
meta_title: "Nouveau mot de passe — Match Live TV"
|
||||
title: Choisissez un nouveau mot de passe
|
||||
new_password_label: "Nouveau mot de passe (8 caractères min.)"
|
||||
submit: Enregistrer le mot de passe
|
||||
back_to_login: Retour à la connexion
|
||||
invitation:
|
||||
meta_title: "Invitation équipe — Match Live TV"
|
||||
meta_description: Acceptez l'invitation pour rejoindre le staff de l'équipe sur Match Live TV.
|
||||
title_html: "Accès staff — %{team_name}"
|
||||
role_notice_html: "Vous avez été ajouté comme <strong>responsable de diffusion</strong> (%{email})."
|
||||
instructions_html: "Dans l'application Match Live TV, connectez-vous avec <strong>%{email}</strong>, acceptez l'invitation et connectez votre chaîne YouTube."
|
||||
accept: Accepter l'invitation
|
||||
accept_if_logged_in: Accepter (si déjà connecté)
|
||||
login_or_signup_html: "%{login_link} ou %{signup_link} avec %{email}."
|
||||
login_link: Connectez-vous
|
||||
signup_link: inscrivez-vous
|
||||
mobile_app_label: "Application mobile :"
|
||||
open_in_app: Ouvrir l'invitation dans l'application
|
||||
common:
|
||||
privacy: Confidentialité
|
||||
cookies: Cookies
|
||||
@@ -90,3 +131,25 @@ fr:
|
||||
loading: Chargement…
|
||||
error: Une erreur s'est produite
|
||||
back: Retour
|
||||
confirm_eyebrow: Confirmation requise
|
||||
confirm_title: Confirmez-vous cette opération ?
|
||||
delete_title: Supprimer définitivement ?
|
||||
confirm_ok: Confirmer
|
||||
delete_ok: Supprimer
|
||||
multi_delete_title: Que voulez-vous supprimer ?
|
||||
multi_delete_message: Choisissez où supprimer le replay. Cette action est irréversible.
|
||||
delete_youtube_title: Supprimer de YouTube ?
|
||||
delete_youtube_message: La vidéo sera supprimée de YouTube. Le replay restera disponible sur le site.
|
||||
delete_youtube_ok: Supprimer de YouTube
|
||||
delete_site_title: Supprimer du site ?
|
||||
delete_site_message_with_youtube: Le replay sera supprimé du site. La vidéo sur YouTube restera en ligne.
|
||||
delete_site_message_only: Vous êtes sur le point de supprimer définitivement ce replay du site. Cette action est irréversible.
|
||||
delete_site_ok: Supprimer du site
|
||||
choice_site_label: Site uniquement
|
||||
choice_site_hint_with_youtube: La vidéo reste sur YouTube
|
||||
choice_site_hint_only: Supprime les fichiers du site
|
||||
choice_youtube_label: YouTube uniquement
|
||||
choice_youtube_hint_with_site: Reste disponible sur le site
|
||||
choice_youtube_hint_only: Supprime uniquement la vidéo YouTube
|
||||
choice_both_label: Site et YouTube
|
||||
choice_both_hint: Suppression complète
|
||||
|
||||
@@ -69,14 +69,55 @@ it:
|
||||
seo_volleyball_link: Match Live TV per la pallavolo giovanile
|
||||
seo_signup_link: registra la squadra gratis
|
||||
auth:
|
||||
login_title: Accedi
|
||||
email: Email
|
||||
password: Password
|
||||
submit_login: Accedi
|
||||
forgot_password: Password dimenticata?
|
||||
no_account: Non hai un account?
|
||||
signup_link: Registra la squadra
|
||||
signup_title: Registra la tua squadra
|
||||
password_confirmation: Conferma password
|
||||
login:
|
||||
meta_title: "Accedi — Match Live TV"
|
||||
meta_description: Accesso area riservata per staff e società registrate su Match Live TV.
|
||||
title: Accedi
|
||||
submit: Entra
|
||||
forgot_password: Password dimenticata?
|
||||
new_prompt_html: "Nuovo? %{signup_link}"
|
||||
signup_link: Registrati
|
||||
signup:
|
||||
meta_title: "Registra la squadra — Match Live TV"
|
||||
meta_description: "Iscrivi la tua società sportiva giovanile su Match Live TV: dirette live da telefono, link per genitori e piani Free o Premium."
|
||||
title: Registra la squadra
|
||||
lead: Crea l'account del referente (coach o dirigente), poi configurerai la squadra.
|
||||
name_label: Nome
|
||||
legal_accept_html: "Ho letto e accetto l'%{privacy_link} e i %{terms_link}."
|
||||
privacy_link: informativa privacy
|
||||
terms_link: termini di servizio
|
||||
legal_hint: "Registrandoti dichiari di essere maggiorenne e, se operi per una società sportiva con atleti minorenni, di avere legittima facoltà (es. dirigente, coach autorizzato) e di rispettare le regole su immagini dei minori descritte in privacy."
|
||||
submit: Continua
|
||||
has_account_html: "Hai già un account? %{login_link}"
|
||||
login_link: Accedi
|
||||
password_forgot:
|
||||
meta_title: "Password dimenticata — Match Live TV"
|
||||
title: Password dimenticata
|
||||
lead: "Inserisci l'email dell'account: ti invieremo un link per reimpostare la password."
|
||||
submit: Invia link di reset
|
||||
back_to_login: Torna al login
|
||||
password_reset:
|
||||
meta_title: "Nuova password — Match Live TV"
|
||||
title: Scegli una nuova password
|
||||
new_password_label: "Nuova password (min. 8 caratteri)"
|
||||
submit: Salva password
|
||||
back_to_login: Torna al login
|
||||
invitation:
|
||||
meta_title: "Invito squadra — Match Live TV"
|
||||
meta_description: Accetta l'invito per entrare nello staff della squadra su Match Live TV.
|
||||
title_html: "Accesso staff — %{team_name}"
|
||||
role_notice_html: "Sei stato aggiunto come <strong>responsabile trasmissione</strong> (%{email})."
|
||||
instructions_html: "Nell'app Match Live TV accedi con <strong>%{email}</strong>, accetta l'invito e collega il tuo canale YouTube."
|
||||
accept: Accetta invito
|
||||
accept_if_logged_in: Accetta (se già loggato)
|
||||
login_or_signup_html: "%{login_link} o %{signup_link} con %{email}."
|
||||
login_link: Accedi
|
||||
signup_link: registrati
|
||||
mobile_app_label: "App mobile:"
|
||||
open_in_app: Apri invito nell'app
|
||||
common:
|
||||
privacy: Privacy
|
||||
cookies: Cookie
|
||||
@@ -90,3 +131,25 @@ it:
|
||||
loading: Caricamento…
|
||||
error: Si è verificato un errore
|
||||
back: Indietro
|
||||
confirm_eyebrow: Conferma richiesta
|
||||
confirm_title: Confermi questa operazione?
|
||||
delete_title: Eliminare definitivamente?
|
||||
confirm_ok: Conferma
|
||||
delete_ok: Elimina
|
||||
multi_delete_title: Cosa vuoi eliminare?
|
||||
multi_delete_message: Scegli dove rimuovere il replay. L'operazione è irreversibile.
|
||||
delete_youtube_title: Eliminare da YouTube?
|
||||
delete_youtube_message: Il video verrà rimosso da YouTube. Il replay resterà disponibile sul sito.
|
||||
delete_youtube_ok: Elimina da YouTube
|
||||
delete_site_title: Eliminare dal sito?
|
||||
delete_site_message_with_youtube: Il replay verrà rimosso dal sito. Il video su YouTube resterà online.
|
||||
delete_site_message_only: Stai per eliminare definitivamente questo replay dal sito. L'operazione è irreversibile.
|
||||
delete_site_ok: Elimina dal sito
|
||||
choice_site_label: Solo dal sito
|
||||
choice_site_hint_with_youtube: Il video resta su YouTube
|
||||
choice_site_hint_only: Rimuove i file dal sito
|
||||
choice_youtube_label: Solo da YouTube
|
||||
choice_youtube_hint_with_site: Resta disponibile sul sito
|
||||
choice_youtube_hint_only: Rimuove solo il video YouTube
|
||||
choice_both_label: Da sito e YouTube
|
||||
choice_both_hint: Eliminazione completa
|
||||
|
||||
@@ -73,6 +73,7 @@ Rails.application.routes.draw do
|
||||
get "login", to: "auth#new", as: :login
|
||||
post "login", to: "auth#create"
|
||||
delete "logout", to: "auth#destroy", as: :logout
|
||||
patch "locale", to: "locales#update", as: :locale
|
||||
resource :password, only: %i[edit update], controller: "passwords"
|
||||
|
||||
root to: "dashboard#index"
|
||||
|
||||
Reference in New Issue
Block a user