From 29726e0389a9375db248664664ac2aa88c80eacc Mon Sep 17 00:00:00 2001 From: Jean-Marie Favreau Date: Wed, 8 Jan 2025 18:29:57 +0100 Subject: [PATCH] =?UTF-8?q?Am=C3=A9lioration=20des=20r=C3=A9sultats=20de?= =?UTF-8?q?=20recherche=20(ordre)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix #89 --- src/agenda_culturel/filters.py | 25 +- .../locale/fr/LC_MESSAGES/django.po | 342 +++++++++--------- src/agenda_culturel/static/style.scss | 12 + .../templates/agenda_culturel/search.html | 14 +- 4 files changed, 216 insertions(+), 177 deletions(-) diff --git a/src/agenda_culturel/filters.py b/src/agenda_culturel/filters.py index 2b0fb94..ade71c7 100644 --- a/src/agenda_culturel/filters.py +++ b/src/agenda_culturel/filters.py @@ -3,6 +3,8 @@ from django.utils.translation import gettext_lazy as _ from django import forms from django.contrib.postgres.search import SearchQuery, SearchHeadline from django.db.models import Count, Q +from datetime import date, timedelta + from django.http import QueryDict from django.contrib.gis.measure import D @@ -329,7 +331,7 @@ class EventFilterAdmin(django_filters.FilterSet): representative = django_filters.MultipleChoiceFilter( label=_("Representative version"), - choices=[(True, _("Yes")), (False, _("Non"))], + choices=[(True, _("Yes")), (False, _("No"))], method="filter_by_representative", widget=forms.CheckboxSelectMultiple) @@ -397,6 +399,27 @@ class SimpleSearchEventFilter(django_filters.FilterSet): widget=forms.CheckboxSelectMultiple, ) + #past = django_filters.BooleanFilter( + # label=_("In the past"), + # method="in_past") + past = django_filters.ChoiceFilter( + label=_("In the past"), + choices=[(False, _("No")), (True, _("Yes"))], + null_label=None, + empty_label=None, + method="in_past", + widget=forms.Select) + + def in_past(self, queryset, name, value): + if value and value == "True": + now = date.today() + qs = queryset.filter(start_day__lt=now).order_by("-start_day", "-start_time") + else: + start = date.today() + timedelta(days=-2) + qs = queryset.filter(start_day__gte=start).order_by("start_day", "start_time") + return qs + + def custom_filter(self, queryset, name, value): search_query = SearchQuery(value, config="french") qs = queryset.filter( diff --git a/src/agenda_culturel/locale/fr/LC_MESSAGES/django.po b/src/agenda_culturel/locale/fr/LC_MESSAGES/django.po index c4c4a79..0c6fa2e 100644 --- a/src/agenda_culturel/locale/fr/LC_MESSAGES/django.po +++ b/src/agenda_culturel/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: agenda_culturel\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-12-29 16:31+0100\n" +"POT-Creation-Date: 2025-01-08 17:29+0100\n" "PO-Revision-Date: 2023-10-29 14:16+0000\n" "Last-Translator: Jean-Marie Favreau \n" "Language-Team: Jean-Marie Favreau \n" @@ -90,56 +90,60 @@ msgstr "Après-midi" msgid "Evening" msgstr "Soir" -#: agenda_culturel/filters.py:63 +#: agenda_culturel/filters.py:65 msgid "Select a location" msgstr "Choisir une localité" -#: agenda_culturel/filters.py:331 +#: agenda_culturel/filters.py:333 msgid "Representative version" msgstr "Version représentative" -#: agenda_culturel/filters.py:332 +#: agenda_culturel/filters.py:334 agenda_culturel/filters.py:407 msgid "Yes" msgstr "Oui" -#: agenda_culturel/filters.py:332 -msgid "Non" +#: agenda_culturel/filters.py:334 agenda_culturel/filters.py:407 +msgid "No" msgstr "Non" -#: agenda_culturel/filters.py:337 +#: agenda_culturel/filters.py:339 msgid "Imported from" msgstr "Importé depuis" -#: agenda_culturel/filters.py:366 agenda_culturel/models.py:622 -#: agenda_culturel/models.py:2153 +#: agenda_culturel/filters.py:368 agenda_culturel/models.py:622 +#: agenda_culturel/models.py:2152 msgid "Status" msgstr "Status" -#: agenda_culturel/filters.py:367 agenda_culturel/models.py:1943 +#: agenda_culturel/filters.py:369 agenda_culturel/models.py:1942 msgid "Closed" msgstr "Fermé" -#: agenda_culturel/filters.py:367 +#: agenda_culturel/filters.py:369 msgid "Open" msgstr "Ouvert" -#: agenda_culturel/filters.py:371 agenda_culturel/filters.py:372 -#: agenda_culturel/models.py:1937 +#: agenda_culturel/filters.py:373 agenda_culturel/filters.py:374 +#: agenda_culturel/models.py:1936 msgid "Spam" msgstr "Spam" -#: agenda_culturel/filters.py:372 +#: agenda_culturel/filters.py:374 msgid "Non spam" msgstr "Non spam" -#: agenda_culturel/filters.py:377 agenda_culturel/models.py:1958 +#: agenda_culturel/filters.py:379 agenda_culturel/models.py:1957 msgid "Type" msgstr "Type" -#: agenda_culturel/filters.py:389 +#: agenda_culturel/filters.py:391 msgid "Search" msgstr "Rechercher" +#: agenda_culturel/filters.py:406 +msgid "In the past" +msgstr "Dans le passé" + #: agenda_culturel/forms.py:80 msgid "Other" msgstr "Autres" @@ -159,11 +163,11 @@ msgstr "" msgid "Your email" msgstr "Votre adresse email" -#: agenda_culturel/forms.py:135 agenda_culturel/models.py:1927 +#: agenda_culturel/forms.py:135 agenda_culturel/models.py:1926 msgid "Your email address" msgstr "Votre adresse email" -#: agenda_culturel/forms.py:141 agenda_culturel/models.py:1950 +#: agenda_culturel/forms.py:141 agenda_culturel/models.py:1949 msgid "Comments" msgstr "Commentaires" @@ -179,8 +183,8 @@ msgid "Receive notification of publication or leave a message for moderation" msgstr "Être notifié de la publication ou laisser un message à la modération" #: agenda_culturel/forms.py:171 agenda_culturel/models.py:185 -#: agenda_culturel/models.py:627 agenda_culturel/models.py:2075 -#: agenda_culturel/models.py:2185 +#: agenda_culturel/models.py:627 agenda_culturel/models.py:2074 +#: agenda_culturel/models.py:2184 msgid "Category" msgstr "Catégorie" @@ -216,7 +220,7 @@ msgid "Details" msgstr "Détails" #: agenda_culturel/forms.py:324 agenda_culturel/models.py:657 -#: agenda_culturel/models.py:2050 +#: agenda_culturel/models.py:2049 msgid "Location" msgstr "Localisation" @@ -310,7 +314,7 @@ msgid "Apply category {} to the event {}" msgstr "Appliquer la catégorie {} à l'événement {}" #: agenda_culturel/forms.py:746 agenda_culturel/models.py:473 -#: agenda_culturel/models.py:2237 +#: agenda_culturel/models.py:2236 msgid "Place" msgstr "Lieu" @@ -351,7 +355,7 @@ msgstr "Ajouter un commentaire" #: agenda_culturel/models.py:66 agenda_culturel/models.py:114 #: agenda_culturel/models.py:195 agenda_culturel/models.py:416 #: agenda_culturel/models.py:444 agenda_culturel/models.py:531 -#: agenda_culturel/models.py:1919 agenda_culturel/models.py:2004 +#: agenda_culturel/models.py:1918 agenda_culturel/models.py:2003 msgid "Name" msgstr "Nom" @@ -588,7 +592,7 @@ msgstr "Organisme" msgid "Organisations" msgstr "Organismes" -#: agenda_culturel/models.py:572 agenda_culturel/models.py:2045 +#: agenda_culturel/models.py:572 agenda_culturel/models.py:2044 msgid "Published" msgstr "Publié" @@ -708,11 +712,11 @@ msgstr "" msgid "Events" msgstr "Événements" -#: agenda_culturel/models.py:1174 +#: agenda_culturel/models.py:1175 msgid "Your event has been published" msgstr "Ton événement a été publié" -#: agenda_culturel/models.py:1177 +#: agenda_culturel/models.py:1178 msgid "Your message has not been retained" msgstr "Ton événement n'a pas été retenu" @@ -720,15 +724,15 @@ msgstr "Ton événement n'a pas été retenu" msgid "during import process" msgstr "pendant le processus d'import" -#: agenda_culturel/models.py:1675 +#: agenda_culturel/models.py:1674 msgid "Import" msgstr "Import" -#: agenda_culturel/models.py:1676 +#: agenda_culturel/models.py:1675 msgid "import process" msgstr "processus d'import" -#: agenda_culturel/models.py:1677 +#: agenda_culturel/models.py:1676 msgid "" "The duration of the event is a little too long for direct publication. " "Moderators can choose to publish it or not." @@ -736,155 +740,155 @@ msgstr "" "La durée de l'événement est un peu trop longue pour qu'il soit publié " "directement. Les modérateurs peuvent choisir de le publier ou non." -#: agenda_culturel/models.py:1877 +#: agenda_culturel/models.py:1876 msgid "From contributor" msgstr "D'un·e contributeurice" -#: agenda_culturel/models.py:1878 +#: agenda_culturel/models.py:1877 msgid "Import process" msgstr "Processus d'import" -#: agenda_culturel/models.py:1879 +#: agenda_culturel/models.py:1878 msgid "Contact form" msgstr "Formulaire de contact" -#: agenda_culturel/models.py:1880 +#: agenda_culturel/models.py:1879 msgid "Event report" msgstr "Signalemet d'événement" -#: agenda_culturel/models.py:1881 +#: agenda_culturel/models.py:1880 msgid "From contributor (without message)" msgstr "D'un·e contributeurice (sans message)" -#: agenda_culturel/models.py:1884 agenda_culturel/models.py:1932 +#: agenda_culturel/models.py:1883 agenda_culturel/models.py:1931 msgid "Message" msgstr "Message" -#: agenda_culturel/models.py:1885 +#: agenda_culturel/models.py:1884 msgid "Messages" msgstr "Messages" -#: agenda_culturel/models.py:1896 +#: agenda_culturel/models.py:1895 msgid "Subject" msgstr "Sujet" -#: agenda_culturel/models.py:1897 +#: agenda_culturel/models.py:1896 msgid "The subject of your message" msgstr "Sujet de votre message" -#: agenda_culturel/models.py:1903 +#: agenda_culturel/models.py:1902 msgid "Related event" msgstr "Événement associé" -#: agenda_culturel/models.py:1904 +#: agenda_culturel/models.py:1903 msgid "The message is associated with this event." msgstr "Le message est associé à cet événement." -#: agenda_culturel/models.py:1912 +#: agenda_culturel/models.py:1911 msgid "Author of the message" msgstr "Auteur du message" -#: agenda_culturel/models.py:1920 +#: agenda_culturel/models.py:1919 msgid "Your name" msgstr "Votre nom" -#: agenda_culturel/models.py:1926 +#: agenda_culturel/models.py:1925 msgid "Email address" msgstr "Adresse email" -#: agenda_culturel/models.py:1932 +#: agenda_culturel/models.py:1931 msgid "Your message" msgstr "Votre message" -#: agenda_culturel/models.py:1938 +#: agenda_culturel/models.py:1937 msgid "This message is a spam." msgstr "Ce message est un spam." -#: agenda_culturel/models.py:1945 +#: agenda_culturel/models.py:1944 msgid "this message has been processed and no longer needs to be handled" msgstr "Ce message a été traité et ne nécessite plus d'être pris en charge" -#: agenda_culturel/models.py:1951 +#: agenda_culturel/models.py:1950 msgid "Comments on the message from the moderation team" msgstr "Commentaires sur ce message par l'équipe de modération" -#: agenda_culturel/models.py:1973 agenda_culturel/models.py:2133 +#: agenda_culturel/models.py:1972 agenda_culturel/models.py:2132 msgid "Recurrent import" msgstr "Import récurrent" -#: agenda_culturel/models.py:1974 +#: agenda_culturel/models.py:1973 msgid "Recurrent imports" msgstr "Imports récurrents" -#: agenda_culturel/models.py:1978 +#: agenda_culturel/models.py:1977 msgid "ical" msgstr "ical" -#: agenda_culturel/models.py:1979 +#: agenda_culturel/models.py:1978 msgid "ical no busy" msgstr "ical sans busy" -#: agenda_culturel/models.py:1980 +#: agenda_culturel/models.py:1979 msgid "ical no VC" msgstr "ical sans VC" -#: agenda_culturel/models.py:1981 +#: agenda_culturel/models.py:1980 msgid "lacoope.org" msgstr "lacoope.org" -#: agenda_culturel/models.py:1982 +#: agenda_culturel/models.py:1981 msgid "la comédie" msgstr "la comédie" -#: agenda_culturel/models.py:1983 +#: agenda_culturel/models.py:1982 msgid "le fotomat" msgstr "le fotomat" -#: agenda_culturel/models.py:1984 +#: agenda_culturel/models.py:1983 msgid "la puce à l'oreille" msgstr "la puce à loreille" -#: agenda_culturel/models.py:1985 +#: agenda_culturel/models.py:1984 msgid "Plugin wordpress MEC" msgstr "Plugin wordpress MEC" -#: agenda_culturel/models.py:1986 +#: agenda_culturel/models.py:1985 msgid "Événements d'une page FB" msgstr "Événements d'une page FB" -#: agenda_culturel/models.py:1987 +#: agenda_culturel/models.py:1986 msgid "la cour des 3 coquins" msgstr "la cour des 3 coquins" -#: agenda_culturel/models.py:1988 +#: agenda_culturel/models.py:1987 msgid "Arachnée concert" msgstr "Arachnée concert" -#: agenda_culturel/models.py:1989 +#: agenda_culturel/models.py:1988 msgid "Le Rio" msgstr "Le Rio" -#: agenda_culturel/models.py:1992 +#: agenda_culturel/models.py:1991 msgid "simple" msgstr "simple" -#: agenda_culturel/models.py:1993 +#: agenda_culturel/models.py:1992 msgid "Headless Chromium" msgstr "chromium sans interface" -#: agenda_culturel/models.py:1994 +#: agenda_culturel/models.py:1993 msgid "Headless Chromium (pause)" msgstr "chromium sans interface (pause)" -#: agenda_culturel/models.py:1999 +#: agenda_culturel/models.py:1998 msgid "daily" msgstr "chaque jour" -#: agenda_culturel/models.py:2001 +#: agenda_culturel/models.py:2000 msgid "weekly" msgstr "chaque semaine" -#: agenda_culturel/models.py:2006 +#: agenda_culturel/models.py:2005 msgid "" "Recurrent import name. Be careful to choose a name that is easy to " "understand, as it will be public and displayed on the sites About page." @@ -892,151 +896,151 @@ msgstr "" "Nom de l'import récurrent. Attention à choisir un nom compréhensible, car il " "sera public, et affiché sur la page à propos du site." -#: agenda_culturel/models.py:2013 +#: agenda_culturel/models.py:2012 msgid "Processor" msgstr "Processeur" -#: agenda_culturel/models.py:2016 +#: agenda_culturel/models.py:2015 msgid "Downloader" msgstr "Téléchargeur" -#: agenda_culturel/models.py:2023 +#: agenda_culturel/models.py:2022 msgid "Import recurrence" msgstr "Récurrence d'import" -#: agenda_culturel/models.py:2030 +#: agenda_culturel/models.py:2029 msgid "Source" msgstr "Source" -#: agenda_culturel/models.py:2031 +#: agenda_culturel/models.py:2030 msgid "URL of the source document" msgstr "URL du document source" -#: agenda_culturel/models.py:2035 +#: agenda_culturel/models.py:2034 msgid "Browsable url" msgstr "URL navigable" -#: agenda_culturel/models.py:2037 +#: agenda_culturel/models.py:2036 msgid "URL of the corresponding document that will be shown to visitors." msgstr "URL correspondant au document et qui sera montrée aux visiteurs" -#: agenda_culturel/models.py:2046 +#: agenda_culturel/models.py:2045 msgid "Status of each imported event (published or draft)" msgstr "Status de chaque événement importé (publié ou brouillon)" -#: agenda_culturel/models.py:2051 +#: agenda_culturel/models.py:2050 msgid "Address for each imported event" msgstr "Adresse de chaque événement importé" -#: agenda_culturel/models.py:2058 +#: agenda_culturel/models.py:2057 msgid "Force location" msgstr "Focer la localisation" -#: agenda_culturel/models.py:2059 +#: agenda_culturel/models.py:2058 msgid "force location even if another is detected." msgstr "Forcer la localisation même si une autre a été détectée." -#: agenda_culturel/models.py:2065 +#: agenda_culturel/models.py:2064 msgid "Organiser" msgstr "Organisateur" -#: agenda_culturel/models.py:2066 +#: agenda_culturel/models.py:2065 msgid "Organiser of each imported event" msgstr "Organisateur de chaque événement importé" -#: agenda_culturel/models.py:2076 +#: agenda_culturel/models.py:2075 msgid "Category of each imported event" msgstr "Catégorie de chaque événement importé" -#: agenda_culturel/models.py:2084 +#: agenda_culturel/models.py:2083 msgid "Tags for each imported event" msgstr "Étiquettes de chaque événement importé" -#: agenda_culturel/models.py:2085 +#: agenda_culturel/models.py:2084 msgid "A list of tags that describe each imported event." msgstr "Une liste d'étiquettes décrivant chaque événement importé" -#: agenda_culturel/models.py:2114 +#: agenda_culturel/models.py:2113 msgid "Running" msgstr "En cours" -#: agenda_culturel/models.py:2115 +#: agenda_culturel/models.py:2114 msgid "Canceled" msgstr "Annulé" -#: agenda_culturel/models.py:2116 +#: agenda_culturel/models.py:2115 msgid "Success" msgstr "Succès" -#: agenda_culturel/models.py:2117 +#: agenda_culturel/models.py:2116 msgid "Failed" msgstr "Erreur" -#: agenda_culturel/models.py:2120 +#: agenda_culturel/models.py:2119 msgid "Batch importation" msgstr "Importation par lot" -#: agenda_culturel/models.py:2121 +#: agenda_culturel/models.py:2120 msgid "Batch importations" msgstr "Importations par lot" -#: agenda_culturel/models.py:2134 +#: agenda_culturel/models.py:2133 msgid "Reference to the recurrent import processing" msgstr "Référence du processus d'import récurrent" -#: agenda_culturel/models.py:2142 +#: agenda_culturel/models.py:2141 msgid "URL (if not recurrent import)" msgstr "URL (si pas d'import récurrent)" -#: agenda_culturel/models.py:2144 +#: agenda_culturel/models.py:2143 msgid "Source URL if no RecurrentImport is associated." msgstr "URL source si aucun import récurrent n'est associé" -#: agenda_culturel/models.py:2157 +#: agenda_culturel/models.py:2156 msgid "Error message" msgstr "Votre message" -#: agenda_culturel/models.py:2161 +#: agenda_culturel/models.py:2160 msgid "Number of collected events" msgstr "Nombre d'événements collectés" -#: agenda_culturel/models.py:2164 +#: agenda_culturel/models.py:2163 msgid "Number of imported events" msgstr "Nombre d'événements importés" -#: agenda_culturel/models.py:2167 +#: agenda_culturel/models.py:2166 msgid "Number of updated events" msgstr "Nombre d'événements mis à jour" -#: agenda_culturel/models.py:2170 +#: agenda_culturel/models.py:2169 msgid "Number of removed events" msgstr "Nombre d'événements supprimés" -#: agenda_culturel/models.py:2178 +#: agenda_culturel/models.py:2177 msgid "Weight" msgstr "Poids" -#: agenda_culturel/models.py:2179 +#: agenda_culturel/models.py:2178 msgid "The lower is the weight, the earlier the filter is applied" msgstr "Plus le poids est léger, plus le filtre sera appliqué tôt" -#: agenda_culturel/models.py:2186 +#: agenda_culturel/models.py:2185 msgid "Category applied to the event" msgstr "Catégorie appliquée à l'événement" -#: agenda_culturel/models.py:2191 +#: agenda_culturel/models.py:2190 msgid "Contained in the title" msgstr "Contenu dans le titre" -#: agenda_culturel/models.py:2192 +#: agenda_culturel/models.py:2191 msgid "Text contained in the event title" msgstr "Texte contenu dans le titre de l'événement" -#: agenda_culturel/models.py:2198 +#: agenda_culturel/models.py:2197 msgid "Exact title extract" msgstr "Extrait exact du titre" -#: agenda_culturel/models.py:2200 +#: agenda_culturel/models.py:2199 msgid "" "If checked, the extract will be searched for in the title using the exact " "form (capitals, accents)." @@ -1044,19 +1048,19 @@ msgstr "" "Si coché, l'extrait sera recherché dans le titre en utilisant la forme " "exacte (majuscules, accents)" -#: agenda_culturel/models.py:2206 +#: agenda_culturel/models.py:2205 msgid "Contained in the description" msgstr "Contenu dans la description" -#: agenda_culturel/models.py:2207 +#: agenda_culturel/models.py:2206 msgid "Text contained in the description" msgstr "Texte contenu dans la description" -#: agenda_culturel/models.py:2213 +#: agenda_culturel/models.py:2212 msgid "Exact description extract" msgstr "Extrait exact de description" -#: agenda_culturel/models.py:2215 +#: agenda_culturel/models.py:2214 msgid "" "If checked, the extract will be searched for in the description using the " "exact form (capitals, accents)." @@ -1064,19 +1068,19 @@ msgstr "" "Si coché, l'extrait sera recherché dans la description en utilisant la forme " "exacte (majuscules, accents)" -#: agenda_culturel/models.py:2221 +#: agenda_culturel/models.py:2220 msgid "Contained in the location" msgstr "Contenu dans la localisation" -#: agenda_culturel/models.py:2222 +#: agenda_culturel/models.py:2221 msgid "Text contained in the event location" msgstr "Texte contenu dans la localisation de l'événement" -#: agenda_culturel/models.py:2228 +#: agenda_culturel/models.py:2227 msgid "Exact location extract" msgstr "Extrait exact de localisation" -#: agenda_culturel/models.py:2230 +#: agenda_culturel/models.py:2229 msgid "" "If checked, the extract will be searched for in the location using the exact " "form (capitals, accents)." @@ -1084,15 +1088,15 @@ msgstr "" "Si coché, l'extrait sera recherché dans la localisation en utilisant la " "forme exacte (majuscules, accents)" -#: agenda_culturel/models.py:2238 +#: agenda_culturel/models.py:2237 msgid "Location from place" msgstr "Localisation depuis le lieu" -#: agenda_culturel/models.py:2247 +#: agenda_culturel/models.py:2246 msgid "Categorisation rule" msgstr "Règle de catégorisation" -#: agenda_culturel/models.py:2248 +#: agenda_culturel/models.py:2247 msgid "Categorisation rules" msgstr "Règles de catégorisation" @@ -1178,91 +1182,91 @@ msgstr "" "L'événement a été soumis et sera publié dès qu'il aura été validé par " "l'équipe de modération." -#: agenda_culturel/views.py:602 +#: agenda_culturel/views.py:603 msgid "during the creation process" msgstr "pendant le processus d'import" -#: agenda_culturel/views.py:616 +#: agenda_culturel/views.py:617 msgid "A message has been sent to the person who proposed the initial event." msgstr "" "Un message a été envoyé à la personne qui a proposé l'événement initial." -#: agenda_culturel/views.py:704 agenda_culturel/views.py:768 +#: agenda_culturel/views.py:705 agenda_culturel/views.py:769 msgid "{} has not been submitted since its already known: {}." msgstr "{} n'a pas été soumis car il est déjà connu: {}." -#: agenda_culturel/views.py:709 agenda_culturel/views.py:774 +#: agenda_culturel/views.py:710 agenda_culturel/views.py:775 msgid "" "{} has not been submitted since its already known and currently into " "moderation process." msgstr "{} n'a pas été soumis car il est déjà connu et en cours de modération" -#: agenda_culturel/views.py:719 +#: agenda_culturel/views.py:720 msgid "Integrating {} url(s) into our import process." msgstr "Intégration de {} url(s) dans notre processus d'import." -#: agenda_culturel/views.py:781 +#: agenda_culturel/views.py:782 msgid "Integrating {} into our import process." msgstr "Intégration de {} dans notre processus d'import." -#: agenda_culturel/views.py:839 +#: agenda_culturel/views.py:840 msgid "Your message has been sent successfully." msgstr "Votre message a été envoyé avec succès." -#: agenda_culturel/views.py:869 +#: agenda_culturel/views.py:870 msgid "Reporting the event {} on {}" msgstr "Signaler l'événement {} du {}" -#: agenda_culturel/views.py:879 +#: agenda_culturel/views.py:880 msgid "The contact message has been successfully deleted." msgstr "Le message de contact a été supprimé avec succès." -#: agenda_culturel/views.py:893 +#: agenda_culturel/views.py:894 msgid "The contact message properties has been successfully modified." msgstr "Les propriétés du message de contact ont été modifié avec succès." -#: agenda_culturel/views.py:1062 +#: agenda_culturel/views.py:1063 msgid "Spam has been successfully deleted." msgstr "Le spam a été supprimé avec succès" -#: agenda_culturel/views.py:1185 +#: agenda_culturel/views.py:1186 msgid "The import has been run successfully." msgstr "L'import a été lancé avec succès" -#: agenda_culturel/views.py:1204 +#: agenda_culturel/views.py:1205 msgid "The import has been canceled." msgstr "L'import a été annulé" -#: agenda_culturel/views.py:1282 +#: agenda_culturel/views.py:1283 msgid "The recurrent import has been successfully modified." msgstr "L'import récurrent a été modifié avec succès." -#: agenda_culturel/views.py:1291 +#: agenda_culturel/views.py:1292 msgid "The recurrent import has been successfully deleted." msgstr "L'import récurrent a été supprimé avec succès" -#: agenda_culturel/views.py:1331 +#: agenda_culturel/views.py:1332 msgid "The import has been launched." msgstr "L'import a été lancé" -#: agenda_culturel/views.py:1353 +#: agenda_culturel/views.py:1354 msgid "Imports has been launched." msgstr "Les imports ont été lancés" -#: agenda_culturel/views.py:1415 +#: agenda_culturel/views.py:1416 msgid "Update successfully completed." msgstr "Mise à jour réalisée avec succès." -#: agenda_culturel/views.py:1476 +#: agenda_culturel/views.py:1477 msgid "Creation of a merged event has been successfully completed." msgstr "Création d'un événement fusionné réalisée avec succès." -#: agenda_culturel/views.py:1512 +#: agenda_culturel/views.py:1513 msgid "Events have been marked as unduplicated." msgstr "Les événements ont été marqués comme non dupliqués." -#: agenda_culturel/views.py:1526 agenda_culturel/views.py:1535 -#: agenda_culturel/views.py:1553 +#: agenda_culturel/views.py:1527 agenda_culturel/views.py:1536 +#: agenda_culturel/views.py:1554 msgid "" "The selected item is no longer included in the list of duplicates. Someone " "else has probably modified the list in the meantime." @@ -1270,23 +1274,23 @@ msgstr "" "L'élément sélectionné ne fait plus partie de la liste des dupliqués. Une " "autre personne a probablement modifié la liste entre temps." -#: agenda_culturel/views.py:1529 +#: agenda_culturel/views.py:1530 msgid "The selected event has been set as representative" msgstr "L'événement sélectionné a été défini comme representatif." -#: agenda_culturel/views.py:1544 +#: agenda_culturel/views.py:1545 msgid "The event has been withdrawn from the group and made independent." msgstr "L'événement a été retiré du groupe et rendu indépendant." -#: agenda_culturel/views.py:1588 +#: agenda_culturel/views.py:1589 msgid "Cleaning up duplicates: {} item(s) fixed." msgstr "Nettoyage des dupliqués: {} élément(s) corrigé(s)." -#: agenda_culturel/views.py:1638 +#: agenda_culturel/views.py:1639 msgid "The event was successfully duplicated." msgstr "L'événement a été marqué dupliqué avec succès." -#: agenda_culturel/views.py:1646 +#: agenda_culturel/views.py:1647 msgid "" "The event has been successfully flagged as a duplicate. The moderation team " "will deal with your suggestion shortly." @@ -1294,32 +1298,32 @@ msgstr "" "L'événement a été signalé comme dupliqué avec succès. Votre suggestion sera " "prochainement prise en charge par l'équipe de modération." -#: agenda_culturel/views.py:1699 +#: agenda_culturel/views.py:1700 msgid "The categorisation rule has been successfully modified." msgstr "La règle de catégorisation a été modifiée avec succès." -#: agenda_culturel/views.py:1708 +#: agenda_culturel/views.py:1709 msgid "The categorisation rule has been successfully deleted." msgstr "La règle de catégorisation a été supprimée avec succès" -#: agenda_culturel/views.py:1730 +#: agenda_culturel/views.py:1731 msgid "The rules were successfully applied and 1 event was categorised." msgstr "" "Les règles ont été appliquées avec succès et 1 événement a été catégorisé" -#: agenda_culturel/views.py:1737 +#: agenda_culturel/views.py:1738 msgid "The rules were successfully applied and {} events were categorised." msgstr "" "Les règles ont été appliquées avec succès et {} événements ont été " "catégorisés" -#: agenda_culturel/views.py:1744 agenda_culturel/views.py:1797 +#: agenda_culturel/views.py:1745 agenda_culturel/views.py:1798 msgid "The rules were successfully applied and no events were categorised." msgstr "" "Les règles ont été appliquées avec succès et aucun événement n'a été " "catégorisé" -#: agenda_culturel/views.py:1783 +#: agenda_culturel/views.py:1784 msgid "" "The rules were successfully applied and 1 event with default category was " "categorised." @@ -1327,7 +1331,7 @@ msgstr "" "Les règles ont été appliquées avec succès et 1 événement avec catégorie par " "défaut a été catégorisé" -#: agenda_culturel/views.py:1790 +#: agenda_culturel/views.py:1791 msgid "" "The rules were successfully applied and {} events with default category were " "categorised." @@ -1335,58 +1339,58 @@ msgstr "" "Les règles ont été appliquées avec succès et {} événements avec catégorie " "par défaut ont été catégorisés" -#: agenda_culturel/views.py:1882 agenda_culturel/views.py:1944 -#: agenda_culturel/views.py:1982 +#: agenda_culturel/views.py:1883 agenda_culturel/views.py:1945 +#: agenda_culturel/views.py:1983 msgid "{} events have been updated." msgstr "{} événements ont été mis à jour." -#: agenda_culturel/views.py:1885 agenda_culturel/views.py:1946 -#: agenda_culturel/views.py:1985 +#: agenda_culturel/views.py:1886 agenda_culturel/views.py:1947 +#: agenda_culturel/views.py:1986 msgid "1 event has been updated." msgstr "1 événement a été mis à jour" -#: agenda_culturel/views.py:1887 agenda_culturel/views.py:1948 -#: agenda_culturel/views.py:1987 +#: agenda_culturel/views.py:1888 agenda_culturel/views.py:1949 +#: agenda_culturel/views.py:1988 msgid "No events have been modified." msgstr "Aucun événement n'a été modifié." -#: agenda_culturel/views.py:1896 +#: agenda_culturel/views.py:1897 msgid "The place has been successfully updated." msgstr "Le lieu a été modifié avec succès." -#: agenda_culturel/views.py:1905 +#: agenda_culturel/views.py:1906 msgid "The place has been successfully created." msgstr "Le lieu a été créé avec succès." -#: agenda_culturel/views.py:1970 +#: agenda_culturel/views.py:1971 msgid "The selected place has been assigned to the event." msgstr "Le lieu sélectionné a été assigné à l'événement." -#: agenda_culturel/views.py:1974 +#: agenda_culturel/views.py:1975 msgid "A new alias has been added to the selected place." msgstr "Un nouvel alias a été créé pour le lieu sélectionné." -#: agenda_culturel/views.py:2076 +#: agenda_culturel/views.py:2077 msgid "The organisation has been successfully updated." msgstr "L'organisme a été modifié avec succès." -#: agenda_culturel/views.py:2085 +#: agenda_culturel/views.py:2086 msgid "The organisation has been successfully created." msgstr "L'organisme a été créé avec succès." -#: agenda_culturel/views.py:2102 +#: agenda_culturel/views.py:2103 msgid "The tag has been successfully updated." msgstr "L'étiquette a été modifiée avec succès." -#: agenda_culturel/views.py:2109 +#: agenda_culturel/views.py:2110 msgid "The tag has been successfully created." msgstr "L'étiquette a été créée avec succès." -#: agenda_culturel/views.py:2173 +#: agenda_culturel/views.py:2180 msgid "You have not modified the tag name." msgstr "Vous n'avez pas modifié le nom de l'étiquette." -#: agenda_culturel/views.py:2183 +#: agenda_culturel/views.py:2190 msgid "" "This tag {} is already in use, and is described by different information " "from the current tag. You can force renaming by checking the corresponding " @@ -1399,7 +1403,7 @@ msgstr "" "sera supprimée, et tous les événements associés à l'étiquette {} seront " "associés à l'étiquette {}." -#: agenda_culturel/views.py:2190 +#: agenda_culturel/views.py:2197 msgid "" "This tag {} is already in use. You can force renaming by checking the " "corresponding option." @@ -1407,14 +1411,14 @@ msgstr "" "Cette étiquette {} est déjà utilisée. Vous pouvez forcer le renommage en " "cochant l'option correspondante." -#: agenda_culturel/views.py:2224 +#: agenda_culturel/views.py:2231 msgid "The tag {} has been successfully renamed to {}." msgstr "L'étiquette {} a été renommée avec succès en {}." -#: agenda_culturel/views.py:2262 +#: agenda_culturel/views.py:2269 msgid "The tag {} has been successfully deleted." msgstr "L'événement {} a été supprimé avec succès." -#: agenda_culturel/views.py:2283 +#: agenda_culturel/views.py:2290 msgid "Cache successfully cleared." msgstr "Le cache a été vidé avec succès." diff --git a/src/agenda_culturel/static/style.scss b/src/agenda_culturel/static/style.scss index 066e8b9..0f7c1a3 100644 --- a/src/agenda_culturel/static/style.scss +++ b/src/agenda_culturel/static/style.scss @@ -620,6 +620,18 @@ header .remarque { } } +#search { + form { + display: grid; + grid-template-columns: repeat(2, 1fr); + column-gap: .5em; + :first-child, + button { + grid-column: 1/3; + } + } +} + /* Basic picocss alerts */ diff --git a/src/agenda_culturel/templates/agenda_culturel/search.html b/src/agenda_culturel/templates/agenda_culturel/search.html index f57c52f..aa3c6dd 100644 --- a/src/agenda_culturel/templates/agenda_culturel/search.html +++ b/src/agenda_culturel/templates/agenda_culturel/search.html @@ -16,13 +16,13 @@ {% block content %} -