ajout de la localisation aux conditions de catégorisation

This commit is contained in:
Jean-Marie Favreau 2024-04-16 13:51:55 +02:00
parent 169526fede
commit e8c6e5dec0
4 changed files with 221 additions and 156 deletions

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: agenda_culturel\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-04-05 17:45+0000\n"
"POT-Creation-Date: 2024-04-16 11:49+0000\n"
"PO-Revision-Date: 2023-10-29 14:16+0000\n"
"Last-Translator: Jean-Marie Favreau <jeanmarie.favreau@free.fr>\n"
"Language-Team: Jean-Marie Favreau <jeanmarie.favreau@free.fr>\n"
@ -29,417 +29,423 @@ msgstr "L'heure de fin ne peut pas être avant l'heure de début."
msgid "JSON in the format expected for the import."
msgstr "JSON dans le format attendu pour l'import"
#: agenda_culturel/models.py:36 agenda_culturel/models.py:65
#: agenda_culturel/models.py:730 agenda_culturel/models.py:765
#: agenda_culturel/forms.py:291
#, fuzzy
#| msgid "Category of the event"
msgid "Apply category {} to the event {}"
msgstr "Catégorie de l'événement"
#: agenda_culturel/models.py:37 agenda_culturel/models.py:66
#: agenda_culturel/models.py:732 agenda_culturel/models.py:767
msgid "Name"
msgstr "Nom"
#: agenda_culturel/models.py:36 agenda_culturel/models.py:65
#: agenda_culturel/models.py:37 agenda_culturel/models.py:66
msgid "Category name"
msgstr "Nom de la catégorie"
#: agenda_culturel/models.py:37
#: agenda_culturel/models.py:38
msgid "Content"
msgstr "Contenu"
#: agenda_culturel/models.py:37
#: agenda_culturel/models.py:38
msgid "Text as shown to the visitors"
msgstr "Text tel que présenté aux visiteureuses"
#: agenda_culturel/models.py:38
#: agenda_culturel/models.py:39
msgid "URL path"
msgstr "Chemin URL"
#: agenda_culturel/models.py:38
#: agenda_culturel/models.py:39
msgid "URL path where the content is included."
msgstr "Chemin URL où le contenu est présent."
#: agenda_culturel/models.py:66
#: agenda_culturel/models.py:67
msgid "Alternative Name"
msgstr "Nom alternatif"
#: agenda_culturel/models.py:66
#: agenda_culturel/models.py:67
msgid "Alternative name used with a time period"
msgstr "Nom alternatif utilisé avec une période de temps"
#: agenda_culturel/models.py:67
#: agenda_culturel/models.py:68
msgid "Short name"
msgstr "Nom court"
#: agenda_culturel/models.py:67
#: agenda_culturel/models.py:68
msgid "Short name of the category"
msgstr "Nom court de la catégorie"
#: agenda_culturel/models.py:68
#: agenda_culturel/models.py:69
msgid "Color"
msgstr "Couleur"
#: agenda_culturel/models.py:68
#: agenda_culturel/models.py:69
msgid "Color used as background for the category"
msgstr "Couleur utilisée comme fond de la catégorie"
#: agenda_culturel/models.py:105 agenda_culturel/models.py:172
#: agenda_culturel/models.py:777 agenda_culturel/models.py:821
#: agenda_culturel/models.py:106 agenda_culturel/models.py:174
#: agenda_culturel/models.py:779 agenda_culturel/models.py:823
msgid "Category"
msgstr "Catégorie"
#: agenda_culturel/models.py:106
#: agenda_culturel/models.py:107
msgid "Categories"
msgstr "Catégories"
#: agenda_culturel/models.py:157 agenda_culturel/models.py:775
#: agenda_culturel/models.py:158 agenda_culturel/models.py:777
msgid "Published"
msgstr "Publié"
#: agenda_culturel/models.py:158
#: agenda_culturel/models.py:159
msgid "Draft"
msgstr "Brouillon"
#: agenda_culturel/models.py:159
#: agenda_culturel/models.py:160
msgid "Trash"
msgstr "Corbeille"
#: agenda_culturel/models.py:168
#: agenda_culturel/models.py:170
msgid "Title"
msgstr "Titre"
#: agenda_culturel/models.py:168
#: agenda_culturel/models.py:170
msgid "Short title"
msgstr "Titre court"
#: agenda_culturel/models.py:170 agenda_culturel/models.py:805
#: agenda_culturel/models.py:172 agenda_culturel/models.py:807
msgid "Status"
msgstr "Status"
#: agenda_culturel/models.py:172
#: agenda_culturel/models.py:174
msgid "Category of the event"
msgstr "Catégorie de l'événement"
#: agenda_culturel/models.py:174
#: agenda_culturel/models.py:176
msgid "Day of the event"
msgstr "Date de l'événement"
#: agenda_culturel/models.py:175
#: agenda_culturel/models.py:177
msgid "Starting time"
msgstr "Heure de début"
#: agenda_culturel/models.py:177
#: agenda_culturel/models.py:179
msgid "End day of the event"
msgstr "Fin de l'événement"
#: agenda_culturel/models.py:177
#: agenda_culturel/models.py:179
msgid "End day of the event, only required if different from the start day."
msgstr ""
"Date de fin de l'événement, uniquement nécessaire s'il est différent du "
"premier jour de l'événement"
#: agenda_culturel/models.py:178
#: agenda_culturel/models.py:180
msgid "Final time"
msgstr "Heure de fin"
#: agenda_culturel/models.py:180
#: agenda_culturel/models.py:182
msgid "Recurrence"
msgstr "Récurrence"
#: agenda_culturel/models.py:182 agenda_culturel/models.py:776
#: agenda_culturel/models.py:184 agenda_culturel/models.py:778
msgid "Location"
msgstr "Localisation"
#: agenda_culturel/models.py:182
#: agenda_culturel/models.py:184
msgid "Address of the event"
msgstr "Adresse de l'événement"
#: agenda_culturel/models.py:184
#: agenda_culturel/models.py:186
msgid "Description"
msgstr "Description"
#: agenda_culturel/models.py:184
#: agenda_culturel/models.py:186
msgid "General description of the event"
msgstr "Description générale de l'événement"
#: agenda_culturel/models.py:186
#: agenda_culturel/models.py:188
msgid "Illustration (local image)"
msgstr "Illustration (image locale)"
#: agenda_culturel/models.py:186
#: agenda_culturel/models.py:188
msgid "Illustration image stored in the agenda server"
msgstr "Image d'illustration stockée sur le serveur de l'agenda"
#: agenda_culturel/models.py:188
#: agenda_culturel/models.py:190
msgid "Illustration"
msgstr "Illustration"
#: agenda_culturel/models.py:188
#: agenda_culturel/models.py:190
msgid "URL of the illustration image"
msgstr "URL de l'image illustrative"
#: agenda_culturel/models.py:189
#: agenda_culturel/models.py:191
msgid "Illustration description"
msgstr "Description de l'illustration"
#: agenda_culturel/models.py:189
#: agenda_culturel/models.py:191
msgid "Alternative text used by screen readers for the image"
msgstr "Texte alternatif utiliser par les lecteurs d'écrans pour l'image"
#: agenda_culturel/models.py:191
#: agenda_culturel/models.py:193
msgid "Importation source"
msgstr "Source d'importation"
#: agenda_culturel/models.py:191
#: agenda_culturel/models.py:193
msgid "Importation source used to detect removed entries."
msgstr "Source d'importation utilisée pour détecter les éléments supprimés/"
#: agenda_culturel/models.py:192
#: agenda_culturel/models.py:194
msgid "UUIDs"
msgstr "UUIDs"
#: agenda_culturel/models.py:192
#: agenda_culturel/models.py:194
msgid "UUIDs from import to detect duplicated entries."
msgstr "UUIDs utilisés pendant l'import pour détecter les entrées dupliquées"
#: agenda_culturel/models.py:193
#: agenda_culturel/models.py:195
msgid "URLs"
msgstr "URLs"
#: agenda_culturel/models.py:193
#: agenda_culturel/models.py:195
msgid "List of all the urls where this event can be found."
msgstr "Liste de toutes les urls où l'événement peut être trouvé."
#: agenda_culturel/models.py:195
#: agenda_culturel/models.py:197
msgid "Tags"
msgstr "Étiquettes"
#: agenda_culturel/models.py:195
#: agenda_culturel/models.py:197
msgid "A list of tags that describe the event."
msgstr "Une liste d'étiquettes décrivant l'événement"
#: agenda_culturel/models.py:197
#: agenda_culturel/models.py:199
msgid "Possibly duplicated"
msgstr "Possibles doublons"
#: agenda_culturel/models.py:238
#: agenda_culturel/models.py:240
msgid "Event"
msgstr "Événement"
#: agenda_culturel/models.py:239
#: agenda_culturel/models.py:241
msgid "Events"
msgstr "Événements"
#: agenda_culturel/models.py:726
#: agenda_culturel/models.py:728
msgid "Contact message"
msgstr "Message de contact"
#: agenda_culturel/models.py:727
#: agenda_culturel/models.py:729
#, fuzzy
#| msgid "Your message"
msgid "Contact messages"
msgstr "Messages de contact"
#: agenda_culturel/models.py:729
#: agenda_culturel/models.py:731
msgid "Subject"
msgstr "Sujet"
#: agenda_culturel/models.py:729
#: agenda_culturel/models.py:731
msgid "The subject of your message"
msgstr "Sujet de votre message"
#: agenda_culturel/models.py:730
#: agenda_culturel/models.py:732
msgid "Your name"
msgstr "Votre nom"
#: agenda_culturel/models.py:731
#: agenda_culturel/models.py:733
msgid "Email address"
msgstr "Adresse email"
#: agenda_culturel/models.py:731
#: agenda_culturel/models.py:733
msgid "Your email address"
msgstr "Votre adresse email"
#: agenda_culturel/models.py:732
#: agenda_culturel/models.py:734
msgid "Message"
msgstr "Message"
#: agenda_culturel/models.py:732
#: agenda_culturel/models.py:734
msgid "Your message"
msgstr "Votre message"
#: agenda_culturel/models.py:736 agenda_culturel/views.py:397
#: agenda_culturel/models.py:738 agenda_culturel/views.py:430
msgid "Closed"
msgstr "Fermé"
#: agenda_culturel/models.py:736
#: agenda_culturel/models.py:738
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:737
#: agenda_culturel/models.py:739
msgid "Comments"
msgstr "Commentaires"
#: agenda_culturel/models.py:737
#: agenda_culturel/models.py:739
msgid "Comments on the message from the moderation team"
msgstr "Commentaires sur ce message par l'équipe de modération"
#: agenda_culturel/models.py:747 agenda_culturel/models.py:803
#: agenda_culturel/models.py:749 agenda_culturel/models.py:805
msgid "Recurrent import"
msgstr "Import récurrent"
#: agenda_culturel/models.py:748
#: agenda_culturel/models.py:750
msgid "Recurrent imports"
msgstr "Imports récurrents"
#: agenda_culturel/models.py:752
#: agenda_culturel/models.py:754
msgid "ical"
msgstr "ical"
#: agenda_culturel/models.py:753
#: agenda_culturel/models.py:755
msgid "ical no busy"
msgstr "ical sans busy"
#: agenda_culturel/models.py:754
#: agenda_culturel/models.py:756
msgid "ical no VC"
msgstr "ical sans VC"
#: agenda_culturel/models.py:757
#: agenda_culturel/models.py:759
msgid "simple"
msgstr "simple"
#: agenda_culturel/models.py:758
#: agenda_culturel/models.py:760
msgid "Headless Chromium"
msgstr "chromium sans interface"
#: agenda_culturel/models.py:762
#: agenda_culturel/models.py:764
msgid "daily"
msgstr "chaque jour"
#: agenda_culturel/models.py:763
#: agenda_culturel/models.py:765
msgid "weekly"
msgstr "chaque semaine"
#: agenda_culturel/models.py:765
#: agenda_culturel/models.py:767
msgid "Recurrent import name"
msgstr "Nome de l'import récurrent"
#: agenda_culturel/models.py:766
#: agenda_culturel/models.py:768
msgid "Processor"
msgstr "Processeur"
#: agenda_culturel/models.py:767
#: agenda_culturel/models.py:769
msgid "Downloader"
msgstr "Téléchargeur"
#: agenda_culturel/models.py:769
#: agenda_culturel/models.py:771
msgid "Import recurrence"
msgstr "Récurrence d'import"
#: agenda_culturel/models.py:772
#: agenda_culturel/models.py:774
msgid "Source"
msgstr "Source"
#: agenda_culturel/models.py:772
#: agenda_culturel/models.py:774
msgid "URL of the source document"
msgstr "URL du document source"
#: agenda_culturel/models.py:773
#: agenda_culturel/models.py:775
msgid "Browsable url"
msgstr "URL navigable"
#: agenda_culturel/models.py:773
#: agenda_culturel/models.py:775
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:775
#: agenda_culturel/models.py:777
msgid "Status of each imported event (published or draft)"
msgstr "Status de chaque événement importé (publié ou brouillon)"
#: agenda_culturel/models.py:776
#: agenda_culturel/models.py:778
msgid "Address for each imported event"
msgstr "Adresse de chaque événement importé"
#: agenda_culturel/models.py:777
#: agenda_culturel/models.py:779
msgid "Category of each imported event"
msgstr "Catégorie de chaque événement importé"
#: agenda_culturel/models.py:778
#: agenda_culturel/models.py:780
msgid "Tags for each imported event"
msgstr "Étiquettes de chaque événement importé"
#: agenda_culturel/models.py:778
#: agenda_culturel/models.py:780
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:790
#: agenda_culturel/models.py:792
msgid "Running"
msgstr "En cours"
#: agenda_culturel/models.py:791
#: agenda_culturel/models.py:793
msgid "Canceled"
msgstr "Annulé"
#: agenda_culturel/models.py:792
#: agenda_culturel/models.py:794
msgid "Success"
msgstr "Succès"
#: agenda_culturel/models.py:793
#: agenda_culturel/models.py:795
msgid "Failed"
msgstr "Erreur"
#: agenda_culturel/models.py:796
#: agenda_culturel/models.py:798
msgid "Batch importation"
msgstr "Importation par lot"
#: agenda_culturel/models.py:797
#: agenda_culturel/models.py:799
msgid "Batch importations"
msgstr "Importations par lot"
#: agenda_culturel/models.py:803
#: agenda_culturel/models.py:805
msgid "Reference to the recurrent import processing"
msgstr "Référence du processus d'import récurrent"
#: agenda_culturel/models.py:807
#: agenda_culturel/models.py:809
msgid "Error message"
msgstr "Votre message"
#: agenda_culturel/models.py:809
#: agenda_culturel/models.py:811
msgid "Number of collected events"
msgstr "Nombre d'événements collectés"
#: agenda_culturel/models.py:810
#: agenda_culturel/models.py:812
msgid "Number of imported events"
msgstr "Nombre d'événements importés"
#: agenda_culturel/models.py:811
#: agenda_culturel/models.py:813
msgid "Number of updated events"
msgstr "Nombre d'événements mis à jour"
#: agenda_culturel/models.py:812
#: agenda_culturel/models.py:814
msgid "Number of removed events"
msgstr "Nombre d'événements supprimés"
#: agenda_culturel/models.py:819
#: agenda_culturel/models.py:821
msgid "Weight"
msgstr "Poids"
#: agenda_culturel/models.py:819
#: agenda_culturel/models.py:821
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:821
#: agenda_culturel/models.py:823
msgid "Category applied to the event"
msgstr "Catégorie appliquée à l'événement"
#: agenda_culturel/models.py:823
#: agenda_culturel/models.py:825
msgid "Contained in the description"
msgstr "Contenu dans la description"
#: agenda_culturel/models.py:823
#: agenda_culturel/models.py:825
msgid "Text contained in the description"
msgstr "Texte contenu dans la description"
#: agenda_culturel/models.py:824
#: agenda_culturel/models.py:826
msgid "Exact description extract"
msgstr "Extrait exact de description"
#: agenda_culturel/models.py:824
#: agenda_culturel/models.py:826
msgid ""
"If checked, the extract will be searched for in the description using the "
"exact form (capitals, accents)."
@ -447,19 +453,19 @@ msgstr ""
"Si coché, l'extrait sera recherché dans la description en utilisant la forme "
"exacte (majuscules, accents)"
#: agenda_culturel/models.py:826
#: agenda_culturel/models.py:828
msgid "Contained in the title"
msgstr "Contenu dans le titre"
#: agenda_culturel/models.py:826
#: agenda_culturel/models.py:828
msgid "Text contained in the event title"
msgstr "Texte contenu dans le titre de l'événement"
#: agenda_culturel/models.py:827
#: agenda_culturel/models.py:829
msgid "Exact title extract"
msgstr "Extrait exact du titre"
#: agenda_culturel/models.py:827
#: agenda_culturel/models.py:829
msgid ""
"If checked, the extract will be searched for in the title using the exact "
"form (capitals, accents)."
@ -467,53 +473,75 @@ msgstr ""
"Si coché, l'extrait sera recherché dans le titre en utilisant la forme "
"exacte (majuscules, accents)"
#: agenda_culturel/models.py:830
#: agenda_culturel/models.py:831
msgid "Contained in the location"
msgstr "Contenu dans la localisation"
#: agenda_culturel/models.py:831
msgid "Text contained in the event location"
msgstr "Texte contenu dans la localisation de l'événement"
#: agenda_culturel/models.py:832
msgid "Exact location extract"
msgstr "Extrait exact de localisation"
#: agenda_culturel/models.py:832
msgid ""
"If checked, the extract will be searched for in the location using the exact "
"form (capitals, accents)."
msgstr ""
"Si coché, l'extrait sera recherché dans la localisation en utilisant la forme "
"exacte (majuscules, accents)"
#: agenda_culturel/models.py:835
msgid "Categorisation rule"
msgstr "Règle de catégorisation"
#: agenda_culturel/models.py:831
#: agenda_culturel/models.py:836
msgid "Categorisation rules"
msgstr "Règles de catégorisation"
#: agenda_culturel/models.py:868 agenda_culturel/models.py:886
#: agenda_culturel/models.py:891 agenda_culturel/models.py:912
msgid "Question"
msgstr "Question"
#: agenda_culturel/models.py:868 agenda_culturel/models.py:888
#: agenda_culturel/models.py:891 agenda_culturel/models.py:914
msgid "Text that will be shown to moderators"
msgstr "Text tel que présenté aux modérateurices"
#: agenda_culturel/models.py:871
#: agenda_culturel/models.py:894
msgid "Moderation question"
msgstr "Question de modération"
#: agenda_culturel/models.py:872
#: agenda_culturel/models.py:895
msgid "Moderation questions"
msgstr "Questions de modération"
#: agenda_culturel/models.py:886
#: agenda_culturel/models.py:912
msgid "Associated question from moderation"
msgstr "Question associée pour la modération"
#: agenda_culturel/models.py:888
#: agenda_culturel/models.py:914
msgid "Answer"
msgstr "Réponse"
#: agenda_culturel/models.py:890
#: agenda_culturel/models.py:916
msgid "Adds tags"
msgstr "Ajoute les étiquettes"
#: agenda_culturel/models.py:890
#: agenda_culturel/models.py:916
msgid "A list of tags that will be added if you choose this answer."
msgstr "Une liste d'étiquettes qui seront ajoutées si vous choisissez cette réponse."
msgstr ""
"Une liste d'étiquettes qui seront ajoutées si vous choisissez cette réponse."
#: agenda_culturel/models.py:891
#: agenda_culturel/models.py:917
msgid "Removes tags"
msgstr "Retire les étiquettes"
#: agenda_culturel/models.py:891
#: agenda_culturel/models.py:917
msgid "A list of tags that will be removed if you choose this answer."
msgstr "Une liste d'étiquettes qui seront retirées si vous choisissez cette réponse."
msgstr ""
"Une liste d'étiquettes qui seront retirées si vous choisissez cette réponse."
#: agenda_culturel/settings/base.py:135
msgid "English"
@ -523,27 +551,27 @@ msgstr "anglais"
msgid "French"
msgstr "français"
#: agenda_culturel/views.py:223
#: agenda_culturel/views.py:229
msgid "The static content has been successfully updated."
msgstr "Le contenu statique a été modifié avec succès."
#: agenda_culturel/views.py:230
#: agenda_culturel/views.py:236 agenda_culturel/views.py:271
msgid "The event has been successfully modified."
msgstr "L'événement a été modifié avec succès."
#: agenda_culturel/views.py:242
#: agenda_culturel/views.py:248
msgid "The event has been successfully deleted."
msgstr "L'événement a été supprimé avec succès"
#: agenda_culturel/views.py:270
#: agenda_culturel/views.py:297
msgid "The status has been successfully modified."
msgstr "Le status a été modifié avec succès."
#: agenda_culturel/views.py:292
#: agenda_culturel/views.py:319
msgid "The event is saved."
msgstr "L'événement est enregistré."
#: agenda_culturel/views.py:295
#: agenda_culturel/views.py:322
msgid ""
"The event has been submitted and will be published as soon as it has been "
"validated by the moderation team."
@ -551,7 +579,7 @@ 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:332
#: agenda_culturel/views.py:359
msgid ""
"The event has been successfully extracted, and you can now submit it after "
"modifying it if necessary."
@ -559,7 +587,7 @@ msgstr ""
"L'événement a été extrait avec succès, vous pouvez maintenant le soumettre "
"après l'avoir modifié au besoin."
#: agenda_culturel/views.py:336
#: agenda_culturel/views.py:363
msgid ""
"Unable to extract an event from the proposed URL. Please use the form below "
"to submit the event."
@ -567,16 +595,16 @@ msgstr ""
"Impossible d'extraire un événement depuis l'URL proposée. Veuillez utiliser "
"le formulaire ci-dessous pour soumettre l'événement."
#: agenda_culturel/views.py:345
#: agenda_culturel/views.py:372
msgid "This URL has already been submitted, and you can find the event below."
msgstr ""
"Cette URL a déjà été soumise, et vous trouverez l'événement ci-dessous."
#: agenda_culturel/views.py:349
#: agenda_culturel/views.py:376
msgid "This URL has already been submitted and is awaiting moderation."
msgstr "Cette URL a déjà été soumise, et est en attente de modération"
#: agenda_culturel/views.py:351
#: agenda_culturel/views.py:378
msgid ""
"This URL has already been submitted, but has not been selected for "
"publication by the moderation team."
@ -584,51 +612,51 @@ msgstr ""
"Cette URL a déjà été soumise, mais n'a pas été retenue par l'équipe de "
"modération pour la publication."
#: agenda_culturel/views.py:373
#: agenda_culturel/views.py:400
msgid "Your message has been sent successfully."
msgstr "Votre message a été envoyé avec succès."
#: agenda_culturel/views.py:382
#: agenda_culturel/views.py:415
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:397
#: agenda_culturel/views.py:430
msgid "Open"
msgstr "Ouvert"
#: agenda_culturel/views.py:439
#: agenda_culturel/views.py:472
msgid "Search"
msgstr "Rechercher"
#: agenda_culturel/views.py:556
#: agenda_culturel/views.py:589
msgid "The import has been run successfully."
msgstr "L'import a été lancé avec succès"
#: agenda_culturel/views.py:573
#: agenda_culturel/views.py:606
msgid "The import has been canceled."
msgstr "L'import a été annulé"
#: agenda_culturel/views.py:610
#: agenda_culturel/views.py:643
msgid "The recurrent import has been successfully modified."
msgstr "L'import récurrent a été modifié avec succès."
#: agenda_culturel/views.py:617
#: agenda_culturel/views.py:650
msgid "The recurrent import has been successfully deleted."
msgstr "L'import récurrent a été supprimé avec succès"
#: agenda_culturel/views.py:648
#: agenda_culturel/views.py:681
msgid "The import has been launched."
msgstr "L'import a été lancé"
#: agenda_culturel/views.py:708
#: agenda_culturel/views.py:741
msgid "The merge has been successfully completed."
msgstr "La fusion a été réalisée avec succès."
#: agenda_culturel/views.py:738
#: agenda_culturel/views.py:771
msgid "Events have been marked as unduplicated."
msgstr "Les événements ont été marqués comme non dupliqués."
#: agenda_culturel/views.py:755
#: agenda_culturel/views.py:788
msgid ""
"The selected event has been retained, while the other has been moved to the "
"recycle bin."
@ -636,7 +664,7 @@ msgstr ""
"L'événement sélectionné a été conservé, l'autre a été déplacé dans la "
"corbeille."
#: agenda_culturel/views.py:757
#: agenda_culturel/views.py:790
msgid ""
"The selected event has been retained, while the others have been moved to "
"the recycle bin."
@ -644,15 +672,15 @@ msgstr ""
"L'événement sélectionné a été conservé, les autres ont été déplacés dans la "
"corbeille."
#: agenda_culturel/views.py:763
#: agenda_culturel/views.py:796
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:810
#: agenda_culturel/views.py:843
msgid "The event was successfully duplicated."
msgstr "L'événement a été marqué dupliqué avec succès."
#: agenda_culturel/views.py:813
#: agenda_culturel/views.py:846
msgid ""
"The event has been successfully flagged as a duplicate. The moderation team "
"will deal with your suggestion shortly."
@ -660,32 +688,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:852
#: agenda_culturel/views.py:885
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:859
#: agenda_culturel/views.py:892
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:875
#: agenda_culturel/views.py:912 agenda_culturel/views.py:941
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:877
#: agenda_culturel/views.py:914 agenda_culturel/views.py:943
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:879
#: agenda_culturel/views.py:916 agenda_culturel/views.py:945
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:902
#: agenda_culturel/views.py:973
msgid "The moderation question has been created with success."
msgstr "La question de modération a été créée avec succès."

View File

@ -0,0 +1,23 @@
# Generated by Django 4.2.7 on 2024-04-16 11:47
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('agenda_culturel', '0046_event_moderated_date'),
]
operations = [
migrations.AddField(
model_name='categorisationrule',
name='loc_exact',
field=models.BooleanField(default=False, help_text='If checked, the extract will be searched for in the location using the exact form (capitals, accents).', verbose_name='Exact location extract'),
),
migrations.AddField(
model_name='categorisationrule',
name='location_contains',
field=models.CharField(blank=True, help_text='Text contained in the event location', max_length=512, null=True, verbose_name='Contained in the location'),
),
]

View File

@ -828,6 +828,9 @@ class CategorisationRule(models.Model):
title_contains = models.CharField(verbose_name=_('Contained in the title'), help_text=_('Text contained in the event title'), max_length=512, blank=True, null=True)
title_exact = models.BooleanField(verbose_name=_('Exact title extract'), help_text=_("If checked, the extract will be searched for in the title using the exact form (capitals, accents)."), default=False)
location_contains = models.CharField(verbose_name=_('Contained in the location'), help_text=_('Text contained in the event location'), max_length=512, blank=True, null=True)
loc_exact = models.BooleanField(verbose_name=_('Exact location extract'), help_text=_("If checked, the extract will be searched for in the location using the exact form (capitals, accents)."), default=False)
class Meta:
verbose_name = _('Categorisation rule')
verbose_name_plural = _('Categorisation rules')
@ -872,6 +875,14 @@ class CategorisationRule(models.Model):
if remove_accents(self.title_contains).lower() in remove_accents(event.title).lower():
return True
if self.location_contains:
if self.loc_exact:
if self.location_contains in event.location:
return True
else:
if remove_accents(self.location_contains).lower() in remove_accents(event.location).lower():
return True
return False

View File

@ -45,6 +45,9 @@
{% if obj.description_contains %}
<li>La description contient {% if obj.desc_exact %}exactement {% endif %} «&nbsp;{{ obj.description_contains }}&nbsp;»</li>
{% endif %}
{% if obj.location_contains %}
<li>La localisation contient {% if obj.loc_exact %}exactement {% endif %} «&nbsp;{{ obj.location_contains }}&nbsp;»</li>
{% endif %}
</ul>
</td>
<td>{{ obj.weight }}</td>