Fork i18n + search + filtering- v0.2

migratred admin_events to use i18n strings

+55 -49
+3
i18n/en-us/actions.ftl
··· 32 32 logout = Logout 33 33 create-rsvp = Create RSVP 34 34 record-rsvp = Record RSVP 35 + import-event = Import Event 35 36 36 37 # Admin actions 37 38 manage-handles = Manage known handles ··· 48 49 49 50 # Status options for events 50 51 status-active = Active 52 + status-planned = Planned 53 + status-cancelled = Cancelled 51 54 52 55 # Status options for RSVPs 53 56 status-going = Going
+1
i18n/en-us/forms.ftl
··· 33 33 label-location = Location 34 34 label-event-at-uri = Event AT-URI 35 35 label-event-cid = Event CID 36 + label-at-uri = AT-URI 36 37 37 38 # Form placeholders 38 39 placeholder-awesome-event = My Awesome Event
+16
i18n/en-us/ui.ftl
··· 116 116 # Admin and configuration pages 117 117 page-title-admin = Admin 118 118 page-title-admin-denylist = Admin - Denylist 119 + page-title-admin-events = Events - Smoke Signal Admin 119 120 page-title-create-event = Create Event 120 121 page-title-create-rsvp = Create RSVP 121 122 122 123 # Page headings and content 123 124 heading-admin = Admin 124 125 heading-admin-denylist = Denylist 126 + heading-admin-events = Event Records 125 127 heading-create-event = Create Event 126 128 heading-create-rsvp = Create RSVP 129 + heading-import-event = Import Event by AT-URI 127 130 128 131 # Status and notification messages 129 132 message-rsvp-recorded = The RSVP has been recorded! ··· 134 137 nav-admin = Admin 135 138 nav-denylist = Denylist 136 139 140 + # Table headers 141 + header-name = Name 142 + header-updated = Updated 143 + header-actions = Actions 144 + 145 + # Descriptions and subtitles 146 + subtitle-admin-events = View all events ordered by recent updates 147 + help-import-aturi = Enter the full AT-URI of the event to import 148 + 137 149 # Common UI elements 138 150 greeting = Hello 139 151 timezone = timezone 140 152 event-id = Event ID 153 + total-count = { $count -> 154 + [one] ({ $count }) 155 + *[other] ({ $count }) 156 + }
+13 -35
i18n/fr-ca/actions.ftl
··· 1 - # Boutons d'action et contrôles - Français canadien 1 + # Boutons d'action et opérations - Français canadien 2 2 3 - # Actions de base 4 - save-changes = Enregistrer les modifications 5 - cancel = Annuler 6 - delete = Supprimer 7 - edit = Modifier 8 - create = Créer 3 + # Opérations CRUD 9 4 add = Ajouter 5 + create = Créer 6 + edit = Modifier 10 7 update = Mettre à jour 11 - remove = Retirer 8 + delete = Supprimer 9 + save = Enregistrer 10 + cancel = Annuler 12 11 submit = Soumettre 13 - back = Retour 14 - next = Suivant 15 - previous = Précédent 16 - close = Fermer 12 + clear = Effacer 13 + reset = Réinitialiser 14 + remove = Retirer 17 15 view = Voir 18 - loading = Chargement... 19 16 20 - # Actions spécifiques 17 + # Actions spécifiques aux événements 21 18 create-event = Créer un événement 22 - edit-event = Modifier l'événement 23 - view-event = Voir l'événement 24 - add-update-entry = Ajouter/Mettre à jour l'entrée 25 - remove-entry = Retirer 26 - follow = Suivre 27 - unfollow = Ne plus suivre 28 - login = Connexion 29 - logout = Déconnexion 30 19 create-rsvp = Créer une réponse 31 20 record-rsvp = Enregistrer la réponse 32 - 33 - # Actions administratives 34 - manage-handles = Gérer les identifiants connus 35 - manage-denylist = Gérer les identités bloquées 36 - view-events = Voir tous les événements triés par mises à jour récentes 37 - view-rsvps = Voir toutes les confirmations triées par mises à jour récentes 38 - 39 - # Actions d'événement 40 - planned = Planifié 41 - scheduled = Programmé 42 - cancelled = Annulé 43 - postponed = Reporté 44 - rescheduled = Reprogrammé 21 + view-event = Voir l'événement 22 + import-event = Importer un événement 45 23 46 24 # Options de statut pour les événements 47 25 status-planned = Planifié
+1
i18n/fr-ca/forms.ftl
··· 33 33 label-location = Lieu 34 34 label-event-at-uri = URI AT de l'événement 35 35 label-event-cid = CID de l'événement 36 + label-at-uri = URI AT 36 37 37 38 # Textes d'espace réservé 38 39 placeholder-awesome-event = Mon événement formidable
+7
i18n/fr-ca/ui.ftl
··· 3 3 # Titres de page et en-têtes 4 4 page-title-admin = Administration 5 5 page-title-admin-denylist = Administration - Liste de refus 6 + page-title-admin-events = Événements - Administration Smoke Signal 6 7 page-title-create-event = Créer un événement 7 8 page-title-create-rsvp = Créer une réponse 8 9 9 10 # En-têtes et contenu de page 10 11 heading-admin = Administration 11 12 heading-admin-denylist = Liste de refus 13 + heading-admin-events = Registres d'événements 12 14 heading-create-event = Créer un événement 13 15 heading-create-rsvp = Créer une réponse 16 + heading-import-event = Importer un événement par URI AT 14 17 15 18 # Messages de statut et de notification 16 19 message-rsvp-recorded = La réponse a été enregistrée! ··· 59 62 greeting-neutral = Bonjour 60 63 timezone = fuseau horaire 61 64 event-id = ID d'événement 65 + total-count = { $count -> 66 + [one] ({ $count }) 67 + *[other] ({ $count }) 68 + }
+14 -14
templates/admin_events.en-us.html
··· 1 1 {% extends "base.en-us.html" %} 2 2 {% include 'pagination.html' %} 3 - {% block title %}Events - Smoke Signal Admin{% endblock %} 3 + {% block title %}{{ t(key="page-title-admin-events", locale=locale) }}{% endblock %} 4 4 {% block head %}{% endblock %} 5 5 {% block content %} 6 6 <section class="section"> 7 7 <div class="container"> 8 8 <nav class="breadcrumb" aria-label="breadcrumbs"> 9 9 <ul> 10 - <li><a href="/admin">Admin</a></li> 11 - <li class="is-active"><a href="#" aria-current="page">Events</a></li> 10 + <li><a href="/admin">{{ t(key="nav-admin", locale=locale) }}</a></li> 11 + <li class="is-active"><a href="#" aria-current="page">{{ t(key="nav-events", locale=locale) }}</a></li> 12 12 </ul> 13 13 </nav> 14 14 </div> ··· 16 16 <section class="section"> 17 17 <div class="container"> 18 18 <div class="content"> 19 - <h1 class="title">Event Records ({{ total_count }})</h1> 20 - <p class="subtitle">View all events ordered by recent updates</p> 19 + <h1 class="title">{{ t(key="heading-admin-events", locale=locale) }} {{ t(key="total-count", count=total_count, locale=locale) }}</h1> 20 + <p class="subtitle">{{ t(key="subtitle-admin-events", locale=locale) }}</p> 21 21 22 22 <div class="box mb-5"> 23 - <h2 class="title is-4">Import Event by AT-URI</h2> 23 + <h2 class="title is-4">{{ t(key="heading-import-event", locale=locale) }}</h2> 24 24 <form action="/admin/events/import" method="post"> 25 25 <div class="field"> 26 - <label class="label" for="importAtUriInput">AT-URI</label> 26 + <label class="label" for="importAtUriInput">{{ t(key="label-at-uri", locale=locale) }}</label> 27 27 <div class="control has-icons-left"> 28 28 <input class="input" type="text" id="importAtUriInput" name="aturi" required="required" 29 - placeholder="at://did:plc:abc123/app.bsky.feed.post/record123"> 29 + placeholder="{{ t(key="placeholder-at-uri-admin", locale=locale) }}"> 30 30 <span class="icon is-small is-left"> 31 31 <i class="fas fa-link"></i> 32 32 </span> 33 33 </div> 34 - <p class="help">Enter the full AT-URI of the event to import</p> 34 + <p class="help">{{ t(key="help-import-aturi", locale=locale) }}</p> 35 35 </div> 36 36 <div class="field"> 37 37 <div class="control"> 38 - <button type="submit" class="button is-primary">Import Event</button> 38 + <button type="submit" class="button is-primary">{{ t(key="import-event", locale=locale) }}</button> 39 39 </div> 40 40 </div> 41 41 </form> ··· 44 44 <table class="table is-fullwidth"> 45 45 <thead> 46 46 <tr> 47 - <th>Name</th> 48 - <th>Updated</th> 49 - <th>Actions</th> 47 + <th>{{ t(key="header-name", locale=locale) }}</th> 48 + <th>{{ t(key="header-updated", locale=locale) }}</th> 49 + <th>{{ t(key="header-actions", locale=locale) }}</th> 50 50 </tr> 51 51 </thead> 52 52 <tbody> ··· 57 57 <td> 58 58 <div class="buttons"> 59 59 <a href="/admin/event?aturi={{ event.aturi }}" class="button is-small is-info"> 60 - View 60 + {{ t(key="view", locale=locale) }} 61 61 </a> 62 62 </div> 63 63 </td>