Ajout d'informations si l'import plante

This commit is contained in:
Jean-Marie Favreau 2025-02-07 10:25:14 +01:00
parent 9647f77c00
commit cadbfdbb7b
3 changed files with 186 additions and 166 deletions

View File

@ -5,6 +5,8 @@ from bs4 import BeautifulSoup
import json import json
import os import os
from datetime import datetime from datetime import datetime
from django.utils.translation import gettext_lazy as _
import logging import logging
@ -93,6 +95,8 @@ class CExtractor(TwoStepsExtractor):
self.add_event(default_values, **event) self.add_event(default_values, **event)
else: else:
logger.warning("cannot find any event in page") raise Exception(
_("Cannot get Facebook event from {}").format(event_url)
)

View File

@ -66,9 +66,10 @@ class SimpleDownloader(Downloader):
class ChromiumHeadlessDownloader(Downloader): class ChromiumHeadlessDownloader(Downloader):
def __init__(self, pause=True, noimage=True): def __init__(self, pause=True, noimage=True, proxy=False):
super().__init__() super().__init__()
self.pause = pause self.pause = pause
self.proxy = proxy
self.options = Options() self.options = Options()
self.options.add_argument("--headless=new") self.options.add_argument("--headless=new")
self.options.add_argument("--disable-dev-shm-usage") self.options.add_argument("--disable-dev-shm-usage")
@ -78,6 +79,10 @@ class ChromiumHeadlessDownloader(Downloader):
self.options.add_argument("--disable-dev-shm-usage") self.options.add_argument("--disable-dev-shm-usage")
self.options.add_argument("--disable-browser-side-navigation") self.options.add_argument("--disable-browser-side-navigation")
self.options.add_argument("--disable-gpu") self.options.add_argument("--disable-gpu")
if self.proxy:
self.options.add_argument("--proxy-server=socks5://127.0.0.1:12345")
if noimage: if noimage:
self.options.add_experimental_option( self.options.add_experimental_option(
"prefs", { "prefs", {
@ -117,24 +122,24 @@ class ChromiumHeadlessDownloader(Downloader):
except StaleElementReferenceException as e: except StaleElementReferenceException as e:
print(f">> {type(e).__name__}: {e.args}") print(f">> {type(e).__name__}: {e.args}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
except NoSuchElementException as e: except NoSuchElementException as e:
print(f">> {type(e).__name__}: {e.args}") print(f">> {type(e).__name__}: {e.args}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
except TimeoutException as e: except TimeoutException as e:
print(f">> {type(e).__name__}: {e.args}") print(f">> {type(e).__name__}: {e.args}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
except WebDriverException as e: except WebDriverException as e:
print(f">> {type(e).__name__}: {e.args}") print(f">> {type(e).__name__}: {e.args}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
except SessionNotCreatedException as e: except SessionNotCreatedException as e:
print(f">> {type(e).__name__}: {e.args}") print(f">> {type(e).__name__}: {e.args}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
except Exception as e: except Exception as e:
print(f">> {type(e).__name__} line {e.__traceback__.tb_lineno} of {__file__}: {e.args}") print(f">> {type(e).__name__} line {e.__traceback__.tb_lineno} of {__file__}: {e.args}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
except: except:
print(f">> General Exception: {URL}") print(f">> General Exception: {URL}")
return None raise Exception("Error during download: " + str(e)[:64] + '...')
return doc return doc

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: agenda_culturel\n" "Project-Id-Version: agenda_culturel\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-01-31 23:08+0100\n" "POT-Creation-Date: 2025-02-07 10:17+0100\n"
"PO-Revision-Date: 2023-10-29 14:16+0000\n" "PO-Revision-Date: 2023-10-29 14:16+0000\n"
"Last-Translator: Jean-Marie Favreau <jeanmarie.favreau@free.fr>\n" "Last-Translator: Jean-Marie Favreau <jeanmarie.favreau@free.fr>\n"
"Language-Team: Jean-Marie Favreau <jeanmarie.favreau@free.fr>\n" "Language-Team: Jean-Marie Favreau <jeanmarie.favreau@free.fr>\n"
@ -110,12 +110,12 @@ msgstr "Non"
msgid "Imported from" msgid "Imported from"
msgstr "Importé depuis" msgstr "Importé depuis"
#: agenda_culturel/filters.py:359 agenda_culturel/models.py:644 #: agenda_culturel/filters.py:359 agenda_culturel/models.py:648
#: agenda_culturel/models.py:2261 #: agenda_culturel/models.py:2272
msgid "Status" msgid "Status"
msgstr "Status" msgstr "Status"
#: agenda_culturel/filters.py:360 agenda_culturel/models.py:2048 #: agenda_culturel/filters.py:360 agenda_culturel/models.py:2058
msgid "Closed" msgid "Closed"
msgstr "Fermé" msgstr "Fermé"
@ -124,7 +124,7 @@ msgid "Open"
msgstr "Ouvert" msgstr "Ouvert"
#: agenda_culturel/filters.py:364 agenda_culturel/filters.py:365 #: agenda_culturel/filters.py:364 agenda_culturel/filters.py:365
#: agenda_culturel/models.py:2042 #: agenda_culturel/models.py:2052
msgid "Spam" msgid "Spam"
msgstr "Spam" msgstr "Spam"
@ -132,7 +132,7 @@ msgstr "Spam"
msgid "Non spam" msgid "Non spam"
msgstr "Non spam" msgstr "Non spam"
#: agenda_culturel/filters.py:370 agenda_culturel/models.py:2063 #: agenda_culturel/filters.py:370 agenda_culturel/models.py:2073
msgid "Type" msgid "Type"
msgstr "Type" msgstr "Type"
@ -163,11 +163,11 @@ msgstr ""
msgid "Your email" msgid "Your email"
msgstr "Votre adresse email" msgstr "Votre adresse email"
#: agenda_culturel/forms.py:138 agenda_culturel/models.py:2032 #: agenda_culturel/forms.py:138 agenda_culturel/models.py:2042
msgid "Your email address" msgid "Your email address"
msgstr "Votre adresse email" msgstr "Votre adresse email"
#: agenda_culturel/forms.py:144 agenda_culturel/models.py:2055 #: agenda_culturel/forms.py:144 agenda_culturel/models.py:2065
msgid "Comments" msgid "Comments"
msgstr "Commentaires" msgstr "Commentaires"
@ -183,19 +183,19 @@ msgid "Receive notification of publication or leave a message for moderation"
msgstr "Être notifié de la publication ou laisser un message à la modération" msgstr "Être notifié de la publication ou laisser un message à la modération"
#: agenda_culturel/forms.py:174 agenda_culturel/models.py:188 #: agenda_culturel/forms.py:174 agenda_culturel/models.py:188
#: agenda_culturel/models.py:649 agenda_culturel/models.py:2183 #: agenda_culturel/models.py:653 agenda_culturel/models.py:2194
#: agenda_culturel/models.py:2293 #: agenda_culturel/models.py:2304
msgid "Category" msgid "Category"
msgstr "Catégorie" msgstr "Catégorie"
#: agenda_culturel/forms.py:180 agenda_culturel/forms.py:214 #: agenda_culturel/forms.py:180 agenda_culturel/forms.py:214
#: agenda_culturel/forms.py:245 agenda_culturel/forms.py:405 #: agenda_culturel/forms.py:245 agenda_culturel/forms.py:405
#: agenda_culturel/models.py:229 agenda_culturel/models.py:756 #: agenda_culturel/models.py:229 agenda_culturel/models.py:760
msgid "Tags" msgid "Tags"
msgstr "Étiquettes" msgstr "Étiquettes"
#: agenda_culturel/forms.py:191 agenda_culturel/forms.py:552 #: agenda_culturel/forms.py:191 agenda_culturel/forms.py:552
#: agenda_culturel/models.py:844 #: agenda_culturel/models.py:848
msgid "Event" msgid "Event"
msgstr "Événement" msgstr "Événement"
@ -219,12 +219,12 @@ msgstr "Cet événement est récurrent"
msgid "Details" msgid "Details"
msgstr "Détails" msgstr "Détails"
#: agenda_culturel/forms.py:327 agenda_culturel/models.py:679 #: agenda_culturel/forms.py:327 agenda_culturel/models.py:683
#: agenda_culturel/models.py:2158 #: agenda_culturel/models.py:2169
msgid "Location" msgid "Location"
msgstr "Localisation" msgstr "Localisation"
#: agenda_culturel/forms.py:331 agenda_culturel/models.py:712 #: agenda_culturel/forms.py:331 agenda_culturel/models.py:716
msgid "Illustration" msgid "Illustration"
msgstr "Illustration" msgstr "Illustration"
@ -314,7 +314,7 @@ msgid "Apply category {} to the event {}"
msgstr "Appliquer la catégorie {} à l'événement {}" msgstr "Appliquer la catégorie {} à l'événement {}"
#: agenda_culturel/forms.py:749 agenda_culturel/models.py:495 #: agenda_culturel/forms.py:749 agenda_culturel/models.py:495
#: agenda_culturel/models.py:2345 #: agenda_culturel/models.py:2356
msgid "Place" msgid "Place"
msgstr "Lieu" msgstr "Lieu"
@ -352,14 +352,18 @@ msgstr "Informations"
msgid "Add a comment" msgid "Add a comment"
msgstr "Ajouter un commentaire" msgstr "Ajouter un commentaire"
#: agenda_culturel/import_tasks/extractor.py:189 #: agenda_culturel/import_tasks/custom_extractors/fbevents.py:99
msgid "Cannot get Facebook event from {}"
msgstr "Impossible de récupérer un événement Facebook depuis {}"
#: agenda_culturel/import_tasks/extractor.py:202
msgid "Unknown title" msgid "Unknown title"
msgstr "Titre inconnu" msgstr "Titre inconnu"
#: agenda_culturel/models.py:67 agenda_culturel/models.py:115 #: agenda_culturel/models.py:67 agenda_culturel/models.py:115
#: agenda_culturel/models.py:198 agenda_culturel/models.py:438 #: agenda_culturel/models.py:198 agenda_culturel/models.py:438
#: agenda_culturel/models.py:466 agenda_culturel/models.py:553 #: agenda_culturel/models.py:466 agenda_culturel/models.py:553
#: agenda_culturel/models.py:2024 agenda_culturel/models.py:2112 #: agenda_culturel/models.py:2034 agenda_culturel/models.py:2123
msgid "Name" msgid "Name"
msgstr "Nom" msgstr "Nom"
@ -420,7 +424,7 @@ msgid "Tag name"
msgstr "Nom de l'étiquette" msgstr "Nom de l'étiquette"
#: agenda_culturel/models.py:203 agenda_culturel/models.py:478 #: agenda_culturel/models.py:203 agenda_culturel/models.py:478
#: agenda_culturel/models.py:565 agenda_culturel/models.py:696 #: agenda_culturel/models.py:565 agenda_culturel/models.py:700
msgid "Description" msgid "Description"
msgstr "Description" msgstr "Description"
@ -596,7 +600,7 @@ msgstr "Organisme"
msgid "Organisations" msgid "Organisations"
msgstr "Organismes" msgstr "Organismes"
#: agenda_culturel/models.py:594 agenda_culturel/models.py:2153 #: agenda_culturel/models.py:594 agenda_culturel/models.py:2164
msgid "Published" msgid "Published"
msgstr "Publié" msgstr "Publié"
@ -612,47 +616,47 @@ msgstr "Corbeille"
msgid "Author of the event creation" msgid "Author of the event creation"
msgstr "Auteur de la création de l'événement" msgstr "Auteur de la création de l'événement"
#: agenda_culturel/models.py:613 #: agenda_culturel/models.py:614
msgid "Author of the last importation" msgid "Author of the last importation"
msgstr "Auteur de la dernière importation" msgstr "Auteur de la dernière importation"
#: agenda_culturel/models.py:621 #: agenda_culturel/models.py:623
msgid "Author of the last modification" msgid "Author of the last modification"
msgstr "Auteur de la dernière modification" msgstr "Auteur de la dernière modification"
#: agenda_culturel/models.py:629 #: agenda_culturel/models.py:632
msgid "Author of the last moderation" msgid "Author of the last moderation"
msgstr "Auteur de la dernière modération" msgstr "Auteur de la dernière modération"
#: agenda_culturel/models.py:640 #: agenda_culturel/models.py:644
msgid "Title" msgid "Title"
msgstr "Titre" msgstr "Titre"
#: agenda_culturel/models.py:656 #: agenda_culturel/models.py:660
msgid "Start day" msgid "Start day"
msgstr "Date de début" msgstr "Date de début"
#: agenda_culturel/models.py:659 #: agenda_culturel/models.py:663
msgid "Start time" msgid "Start time"
msgstr "Heure de début" msgstr "Heure de début"
#: agenda_culturel/models.py:665 #: agenda_culturel/models.py:669
msgid "End day" msgid "End day"
msgstr "Date de fin" msgstr "Date de fin"
#: agenda_culturel/models.py:670 #: agenda_culturel/models.py:674
msgid "End time" msgid "End time"
msgstr "Heure de fin" msgstr "Heure de fin"
#: agenda_culturel/models.py:674 #: agenda_culturel/models.py:678
msgid "Recurrence" msgid "Recurrence"
msgstr "Récurrence" msgstr "Récurrence"
#: agenda_culturel/models.py:685 #: agenda_culturel/models.py:689
msgid "Location (free form)" msgid "Location (free form)"
msgstr "Localisation (forme libre)" msgstr "Localisation (forme libre)"
#: agenda_culturel/models.py:687 #: agenda_culturel/models.py:691
msgid "" msgid ""
"Address of the event in case its not available in the already known places " "Address of the event in case its not available in the already known places "
"(free form)" "(free form)"
@ -660,11 +664,11 @@ msgstr ""
"Adresse d'un événement si elle n'est pas déjà présente dans la liste des " "Adresse d'un événement si elle n'est pas déjà présente dans la liste des "
"lieux disponibles (forme libre)" "lieux disponibles (forme libre)"
#: agenda_culturel/models.py:704 #: agenda_culturel/models.py:708
msgid "Organisers" msgid "Organisers"
msgstr "Organisateurs" msgstr "Organisateurs"
#: agenda_culturel/models.py:706 #: agenda_culturel/models.py:710
msgid "" msgid ""
"list of event organisers. Organizers will only be displayed if one of them " "list of event organisers. Organizers will only be displayed if one of them "
"does not normally use the venue." "does not normally use the venue."
@ -672,95 +676,99 @@ msgstr ""
"Liste des organisateurs de l'événements. Les organisateurs seront affichés " "Liste des organisateurs de l'événements. Les organisateurs seront affichés "
"uniquement si au moins un d'entre eux n'utilise pas habituellement le lieu." "uniquement si au moins un d'entre eux n'utilise pas habituellement le lieu."
#: agenda_culturel/models.py:719 #: agenda_culturel/models.py:723
msgid "Illustration (URL)" msgid "Illustration (URL)"
msgstr "Illustration (URL)" msgstr "Illustration (URL)"
#: agenda_culturel/models.py:720 #: agenda_culturel/models.py:724
msgid "External URL of the illustration image" msgid "External URL of the illustration image"
msgstr "URL externe de l'image illustrative" msgstr "URL externe de l'image illustrative"
#: agenda_culturel/models.py:726 #: agenda_culturel/models.py:730
msgid "Illustration description" msgid "Illustration description"
msgstr "Description de l'illustration" msgstr "Description de l'illustration"
#: agenda_culturel/models.py:727 #: agenda_culturel/models.py:731
msgid "Alternative text used by screen readers for the image" msgid "Alternative text used by screen readers for the image"
msgstr "Texte alternatif utiliser par les lecteurs d'écrans pour l'image" msgstr "Texte alternatif utiliser par les lecteurs d'écrans pour l'image"
#: agenda_culturel/models.py:735 #: agenda_culturel/models.py:739
msgid "Importation source" msgid "Importation source"
msgstr "Source d'importation" msgstr "Source d'importation"
#: agenda_culturel/models.py:736 #: agenda_culturel/models.py:740
msgid "Importation source used to detect removed entries." msgid "Importation source used to detect removed entries."
msgstr "Source d'importation utilisée pour détecter les éléments supprimés/" msgstr "Source d'importation utilisée pour détecter les éléments supprimés/"
#: agenda_culturel/models.py:742 #: agenda_culturel/models.py:746
msgid "UUIDs" msgid "UUIDs"
msgstr "UUIDs" msgstr "UUIDs"
#: agenda_culturel/models.py:743 #: agenda_culturel/models.py:747
msgid "UUIDs from import to detect duplicated entries." msgid "UUIDs from import to detect duplicated entries."
msgstr "UUIDs utilisés pendant l'import pour détecter les entrées dupliquées" msgstr "UUIDs utilisés pendant l'import pour détecter les entrées dupliquées"
#: agenda_culturel/models.py:749 #: agenda_culturel/models.py:753
msgid "Online sources or ticketing" msgid "Online sources or ticketing"
msgstr "Sources en ligne ou billetterie" msgstr "Sources en ligne ou billetterie"
#: agenda_culturel/models.py:763 #: agenda_culturel/models.py:767
msgid "Other versions" msgid "Other versions"
msgstr "" msgstr ""
#: agenda_culturel/models.py:845 #: agenda_culturel/models.py:849
msgid "Events" msgid "Events"
msgstr "Événements" msgstr "Événements"
#: agenda_culturel/models.py:1242 #: agenda_culturel/models.py:1247
msgid "Your event has been published" msgid "Your event has been published"
msgstr "Ton événement a été publié" msgstr "Ton événement a été publié"
#: agenda_culturel/models.py:1245 #: agenda_culturel/models.py:1250
msgid "Your message has not been retained" msgid "Your message has not been retained"
msgstr "Ton événement n'a pas été retenu" msgstr "Ton événement n'a pas été retenu"
#: agenda_culturel/models.py:1402 #: agenda_culturel/models.py:1332 agenda_culturel/models.py:1996
msgid "during import process" msgid "Warning"
msgstr "pendant le processus d'import" msgstr "Warning"
#: agenda_culturel/models.py:1411 agenda_culturel/models.py:1417 #: agenda_culturel/models.py:1332 agenda_culturel/models.py:1422
msgid "warning"
msgstr "attention"
#: agenda_culturel/models.py:1413
msgid "the date has not been imported correctly." msgid "the date has not been imported correctly."
msgstr "la date n'a pas été importée correctement." msgstr "la date n'a pas été importée correctement."
#: agenda_culturel/models.py:1419 #: agenda_culturel/models.py:1412
msgid "during import process"
msgstr "pendant le processus d'import"
#: agenda_culturel/models.py:1420 agenda_culturel/models.py:1426
msgid "warning"
msgstr "attention"
#: agenda_culturel/models.py:1428
msgid "the title has not been imported correctly." msgid "the title has not been imported correctly."
msgstr "le titre n'a pas été importé correctement." msgstr "le titre n'a pas été importé correctement."
#: agenda_culturel/models.py:1732 #: agenda_culturel/models.py:1742
msgid "Updated field(s): " msgid "Updated field(s): "
msgstr "Champ(s) mis à jour: " msgstr "Champ(s) mis à jour: "
#: agenda_culturel/models.py:1733 #: agenda_culturel/models.py:1743
msgid "Update" msgid "Update"
msgstr "Mise à jour" msgstr "Mise à jour"
#: agenda_culturel/models.py:1734 #: agenda_culturel/models.py:1744
msgid "update process" msgid "update process"
msgstr "processus de mise à jour" msgstr "processus de mise à jour"
#: agenda_culturel/models.py:1778 #: agenda_culturel/models.py:1788
msgid "Import" msgid "Import"
msgstr "Import" msgstr "Import"
#: agenda_culturel/models.py:1779 #: agenda_culturel/models.py:1789
msgid "import process" msgid "import process"
msgstr "processus d'import" msgstr "processus d'import"
#: agenda_culturel/models.py:1780 #: agenda_culturel/models.py:1790
msgid "" msgid ""
"The duration of the event is a little too long for direct publication. " "The duration of the event is a little too long for direct publication. "
"Moderators can choose to publish it or not." "Moderators can choose to publish it or not."
@ -768,175 +776,175 @@ msgstr ""
"La durée de l'événement est un peu trop longue pour qu'il soit publié " "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." "directement. Les modérateurs peuvent choisir de le publier ou non."
#: agenda_culturel/models.py:1980 #: agenda_culturel/models.py:1990
msgid "From contributor" msgid "From contributor"
msgstr "D'un·e contributeurice" msgstr "D'un·e contributeurice"
#: agenda_culturel/models.py:1981 #: agenda_culturel/models.py:1991
msgid "Import process" msgid "Import process"
msgstr "Processus d'import" msgstr "Processus d'import"
#: agenda_culturel/models.py:1982 #: agenda_culturel/models.py:1992
msgid "Update process" msgid "Update process"
msgstr "Processus de mise à jour" msgstr "Processus de mise à jour"
#: agenda_culturel/models.py:1983 #: agenda_culturel/models.py:1993
msgid "Contact form" msgid "Contact form"
msgstr "Formulaire de contact" msgstr "Formulaire de contact"
#: agenda_culturel/models.py:1984 #: agenda_culturel/models.py:1994
msgid "Event report" msgid "Event report"
msgstr "Signalemet d'événement" msgstr "Signalemet d'événement"
#: agenda_culturel/models.py:1985 #: agenda_culturel/models.py:1995
msgid "From contributor (without message)" msgid "From contributor (without message)"
msgstr "D'un·e contributeurice (sans message)" msgstr "D'un·e contributeurice (sans message)"
#: agenda_culturel/models.py:1986 #: agenda_culturel/models.py:1999 agenda_culturel/models.py:2047
msgid "Warning"
msgstr "Warning"
#: agenda_culturel/models.py:1989 agenda_culturel/models.py:2037
msgid "Message" msgid "Message"
msgstr "Message" msgstr "Message"
#: agenda_culturel/models.py:1990 #: agenda_culturel/models.py:2000
msgid "Messages" msgid "Messages"
msgstr "Messages" msgstr "Messages"
#: agenda_culturel/models.py:2001 #: agenda_culturel/models.py:2011
msgid "Subject" msgid "Subject"
msgstr "Sujet" msgstr "Sujet"
#: agenda_culturel/models.py:2002 #: agenda_culturel/models.py:2012
msgid "The subject of your message" msgid "The subject of your message"
msgstr "Sujet de votre message" msgstr "Sujet de votre message"
#: agenda_culturel/models.py:2008 #: agenda_culturel/models.py:2018
msgid "Related event" msgid "Related event"
msgstr "Événement associé" msgstr "Événement associé"
#: agenda_culturel/models.py:2009 #: agenda_culturel/models.py:2019
msgid "The message is associated with this event." msgid "The message is associated with this event."
msgstr "Le message est associé à cet événement." msgstr "Le message est associé à cet événement."
#: agenda_culturel/models.py:2017 #: agenda_culturel/models.py:2027
msgid "Author of the message" msgid "Author of the message"
msgstr "Auteur du message" msgstr "Auteur du message"
#: agenda_culturel/models.py:2025 #: agenda_culturel/models.py:2035
msgid "Your name" msgid "Your name"
msgstr "Votre nom" msgstr "Votre nom"
#: agenda_culturel/models.py:2031 #: agenda_culturel/models.py:2041
msgid "Email address" msgid "Email address"
msgstr "Adresse email" msgstr "Adresse email"
#: agenda_culturel/models.py:2037 #: agenda_culturel/models.py:2047
msgid "Your message" msgid "Your message"
msgstr "Votre message" msgstr "Votre message"
#: agenda_culturel/models.py:2043 #: agenda_culturel/models.py:2053
msgid "This message is a spam." msgid "This message is a spam."
msgstr "Ce message est un spam." msgstr "Ce message est un spam."
#: agenda_culturel/models.py:2050 #: agenda_culturel/models.py:2060
msgid "this message has been processed and no longer needs to be handled" 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" msgstr "Ce message a été traité et ne nécessite plus d'être pris en charge"
#: agenda_culturel/models.py:2056 #: agenda_culturel/models.py:2066
msgid "Comments on the message from the moderation team" msgid "Comments on the message from the moderation team"
msgstr "Commentaires sur ce message par l'équipe de modération" msgstr "Commentaires sur ce message par l'équipe de modération"
#: agenda_culturel/models.py:2078 agenda_culturel/models.py:2241 #: agenda_culturel/models.py:2088 agenda_culturel/models.py:2252
msgid "Recurrent import" msgid "Recurrent import"
msgstr "Import récurrent" msgstr "Import récurrent"
#: agenda_culturel/models.py:2079 #: agenda_culturel/models.py:2089
msgid "Recurrent imports" msgid "Recurrent imports"
msgstr "Imports récurrents" msgstr "Imports récurrents"
#: agenda_culturel/models.py:2083 #: agenda_culturel/models.py:2093
msgid "ical" msgid "ical"
msgstr "ical" msgstr "ical"
#: agenda_culturel/models.py:2084 #: agenda_culturel/models.py:2094
msgid "ical no busy" msgid "ical no busy"
msgstr "ical sans busy" msgstr "ical sans busy"
#: agenda_culturel/models.py:2085 #: agenda_culturel/models.py:2095
msgid "ical no VC" msgid "ical no VC"
msgstr "ical sans VC" msgstr "ical sans VC"
#: agenda_culturel/models.py:2086 #: agenda_culturel/models.py:2096
msgid "lacoope.org" msgid "lacoope.org"
msgstr "lacoope.org" msgstr "lacoope.org"
#: agenda_culturel/models.py:2087 #: agenda_culturel/models.py:2097
msgid "la comédie" msgid "la comédie"
msgstr "la comédie" msgstr "la comédie"
#: agenda_culturel/models.py:2088 #: agenda_culturel/models.py:2098
msgid "le fotomat" msgid "le fotomat"
msgstr "le fotomat" msgstr "le fotomat"
#: agenda_culturel/models.py:2089 #: agenda_culturel/models.py:2099
msgid "la puce à l'oreille" msgid "la puce à l'oreille"
msgstr "la puce à loreille" msgstr "la puce à loreille"
#: agenda_culturel/models.py:2090 #: agenda_culturel/models.py:2100
msgid "Plugin wordpress MEC" msgid "Plugin wordpress MEC"
msgstr "Plugin wordpress MEC" msgstr "Plugin wordpress MEC"
#: agenda_culturel/models.py:2091 #: agenda_culturel/models.py:2101
msgid "Événements d'une page FB" msgid "Événements d'une page FB"
msgstr "Événements d'une page FB" msgstr "Événements d'une page FB"
#: agenda_culturel/models.py:2092 #: agenda_culturel/models.py:2102
msgid "la cour des 3 coquins" msgid "Billetterie Clermont-Ferrand"
msgstr "la cour des 3 coquins" msgstr ""
#: agenda_culturel/models.py:2093 #: agenda_culturel/models.py:2103
msgid "Arachnée concert" msgid "Arachnée concert"
msgstr "Arachnée concert" msgstr "Arachnée concert"
#: agenda_culturel/models.py:2094 #: agenda_culturel/models.py:2104
msgid "Le Rio" msgid "Le Rio"
msgstr "Le Rio" msgstr "Le Rio"
#: agenda_culturel/models.py:2095 #: agenda_culturel/models.py:2105
msgid "La Raymonde" msgid "La Raymonde"
msgstr "La Raymone" msgstr "La Raymone"
#: agenda_culturel/models.py:2096 #: agenda_culturel/models.py:2106
msgid "Agenda apidae tourisme" msgid "Agenda apidae tourisme"
msgstr "Agenda apidae tourisme" msgstr "Agenda apidae tourisme"
#: agenda_culturel/models.py:2097 #: agenda_culturel/models.py:2107
msgid "Agenda iguana (médiathèques)" msgid "Agenda iguana (médiathèques)"
msgstr "Agenda iguana (médiathèques)" msgstr "Agenda iguana (médiathèques)"
#: agenda_culturel/models.py:2100 #: agenda_culturel/models.py:2108
msgid "Mille formes"
msgstr ""
#: agenda_culturel/models.py:2111
msgid "simple" msgid "simple"
msgstr "simple" msgstr "simple"
#: agenda_culturel/models.py:2101 #: agenda_culturel/models.py:2112
msgid "Headless Chromium" msgid "Headless Chromium"
msgstr "chromium sans interface" msgstr "chromium sans interface"
#: agenda_culturel/models.py:2102 #: agenda_culturel/models.py:2113
msgid "Headless Chromium (pause)" msgid "Headless Chromium (pause)"
msgstr "chromium sans interface (pause)" msgstr "chromium sans interface (pause)"
#: agenda_culturel/models.py:2107 #: agenda_culturel/models.py:2118
msgid "daily" msgid "daily"
msgstr "chaque jour" msgstr "chaque jour"
#: agenda_culturel/models.py:2109 #: agenda_culturel/models.py:2120
msgid "weekly" msgid "weekly"
msgstr "chaque semaine" msgstr "chaque semaine"
#: agenda_culturel/models.py:2114 #: agenda_culturel/models.py:2125
msgid "" msgid ""
"Recurrent import name. Be careful to choose a name that is easy to " "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." "understand, as it will be public and displayed on the sites About page."
@ -944,151 +952,151 @@ msgstr ""
"Nom de l'import récurrent. Attention à choisir un nom compréhensible, car il " "Nom de l'import récurrent. Attention à choisir un nom compréhensible, car il "
"sera public, et affiché sur la page à propos du site." "sera public, et affiché sur la page à propos du site."
#: agenda_culturel/models.py:2121 #: agenda_culturel/models.py:2132
msgid "Processor" msgid "Processor"
msgstr "Processeur" msgstr "Processeur"
#: agenda_culturel/models.py:2124 #: agenda_culturel/models.py:2135
msgid "Downloader" msgid "Downloader"
msgstr "Téléchargeur" msgstr "Téléchargeur"
#: agenda_culturel/models.py:2131 #: agenda_culturel/models.py:2142
msgid "Import recurrence" msgid "Import recurrence"
msgstr "Récurrence d'import" msgstr "Récurrence d'import"
#: agenda_culturel/models.py:2138 #: agenda_culturel/models.py:2149
msgid "Source" msgid "Source"
msgstr "Source" msgstr "Source"
#: agenda_culturel/models.py:2139 #: agenda_culturel/models.py:2150
msgid "URL of the source document" msgid "URL of the source document"
msgstr "URL du document source" msgstr "URL du document source"
#: agenda_culturel/models.py:2143 #: agenda_culturel/models.py:2154
msgid "Browsable url" msgid "Browsable url"
msgstr "URL navigable" msgstr "URL navigable"
#: agenda_culturel/models.py:2145 #: agenda_culturel/models.py:2156
msgid "URL of the corresponding document that will be shown to visitors." msgid "URL of the corresponding document that will be shown to visitors."
msgstr "URL correspondant au document et qui sera montrée aux visiteurs" msgstr "URL correspondant au document et qui sera montrée aux visiteurs"
#: agenda_culturel/models.py:2154 #: agenda_culturel/models.py:2165
msgid "Status of each imported event (published or draft)" msgid "Status of each imported event (published or draft)"
msgstr "Status de chaque événement importé (publié ou brouillon)" msgstr "Status de chaque événement importé (publié ou brouillon)"
#: agenda_culturel/models.py:2159 #: agenda_culturel/models.py:2170
msgid "Address for each imported event" msgid "Address for each imported event"
msgstr "Adresse de chaque événement importé" msgstr "Adresse de chaque événement importé"
#: agenda_culturel/models.py:2166 #: agenda_culturel/models.py:2177
msgid "Force location" msgid "Force location"
msgstr "Focer la localisation" msgstr "Focer la localisation"
#: agenda_culturel/models.py:2167 #: agenda_culturel/models.py:2178
msgid "force location even if another is detected." msgid "force location even if another is detected."
msgstr "Forcer la localisation même si une autre a été détectée." msgstr "Forcer la localisation même si une autre a été détectée."
#: agenda_culturel/models.py:2173 #: agenda_culturel/models.py:2184
msgid "Organiser" msgid "Organiser"
msgstr "Organisateur" msgstr "Organisateur"
#: agenda_culturel/models.py:2174 #: agenda_culturel/models.py:2185
msgid "Organiser of each imported event" msgid "Organiser of each imported event"
msgstr "Organisateur de chaque événement importé" msgstr "Organisateur de chaque événement importé"
#: agenda_culturel/models.py:2184 #: agenda_culturel/models.py:2195
msgid "Category of each imported event" msgid "Category of each imported event"
msgstr "Catégorie de chaque événement importé" msgstr "Catégorie de chaque événement importé"
#: agenda_culturel/models.py:2192 #: agenda_culturel/models.py:2203
msgid "Tags for each imported event" msgid "Tags for each imported event"
msgstr "Étiquettes de chaque événement importé" msgstr "Étiquettes de chaque événement importé"
#: agenda_culturel/models.py:2193 #: agenda_culturel/models.py:2204
msgid "A list of tags that describe each imported event." msgid "A list of tags that describe each imported event."
msgstr "Une liste d'étiquettes décrivant chaque événement importé" msgstr "Une liste d'étiquettes décrivant chaque événement importé"
#: agenda_culturel/models.py:2222 #: agenda_culturel/models.py:2233
msgid "Running" msgid "Running"
msgstr "En cours" msgstr "En cours"
#: agenda_culturel/models.py:2223 #: agenda_culturel/models.py:2234
msgid "Canceled" msgid "Canceled"
msgstr "Annulé" msgstr "Annulé"
#: agenda_culturel/models.py:2224 #: agenda_culturel/models.py:2235
msgid "Success" msgid "Success"
msgstr "Succès" msgstr "Succès"
#: agenda_culturel/models.py:2225 #: agenda_culturel/models.py:2236
msgid "Failed" msgid "Failed"
msgstr "Erreur" msgstr "Erreur"
#: agenda_culturel/models.py:2228 #: agenda_culturel/models.py:2239
msgid "Batch importation" msgid "Batch importation"
msgstr "Importation par lot" msgstr "Importation par lot"
#: agenda_culturel/models.py:2229 #: agenda_culturel/models.py:2240
msgid "Batch importations" msgid "Batch importations"
msgstr "Importations par lot" msgstr "Importations par lot"
#: agenda_culturel/models.py:2242 #: agenda_culturel/models.py:2253
msgid "Reference to the recurrent import processing" msgid "Reference to the recurrent import processing"
msgstr "Référence du processus d'import récurrent" msgstr "Référence du processus d'import récurrent"
#: agenda_culturel/models.py:2250 #: agenda_culturel/models.py:2261
msgid "URL (if not recurrent import)" msgid "URL (if not recurrent import)"
msgstr "URL (si pas d'import récurrent)" msgstr "URL (si pas d'import récurrent)"
#: agenda_culturel/models.py:2252 #: agenda_culturel/models.py:2263
msgid "Source URL if no RecurrentImport is associated." msgid "Source URL if no RecurrentImport is associated."
msgstr "URL source si aucun import récurrent n'est associé" msgstr "URL source si aucun import récurrent n'est associé"
#: agenda_culturel/models.py:2265 #: agenda_culturel/models.py:2276
msgid "Error message" msgid "Error message"
msgstr "Votre message" msgstr "Votre message"
#: agenda_culturel/models.py:2269 #: agenda_culturel/models.py:2280
msgid "Number of collected events" msgid "Number of collected events"
msgstr "Nombre d'événements collectés" msgstr "Nombre d'événements collectés"
#: agenda_culturel/models.py:2272 #: agenda_culturel/models.py:2283
msgid "Number of imported events" msgid "Number of imported events"
msgstr "Nombre d'événements importés" msgstr "Nombre d'événements importés"
#: agenda_culturel/models.py:2275 #: agenda_culturel/models.py:2286
msgid "Number of updated events" msgid "Number of updated events"
msgstr "Nombre d'événements mis à jour" msgstr "Nombre d'événements mis à jour"
#: agenda_culturel/models.py:2278 #: agenda_culturel/models.py:2289
msgid "Number of removed events" msgid "Number of removed events"
msgstr "Nombre d'événements supprimés" msgstr "Nombre d'événements supprimés"
#: agenda_culturel/models.py:2286 #: agenda_culturel/models.py:2297
msgid "Weight" msgid "Weight"
msgstr "Poids" msgstr "Poids"
#: agenda_culturel/models.py:2287 #: agenda_culturel/models.py:2298
msgid "The lower is the weight, the earlier the filter is applied" 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" msgstr "Plus le poids est léger, plus le filtre sera appliqué tôt"
#: agenda_culturel/models.py:2294 #: agenda_culturel/models.py:2305
msgid "Category applied to the event" msgid "Category applied to the event"
msgstr "Catégorie appliquée à l'événement" msgstr "Catégorie appliquée à l'événement"
#: agenda_culturel/models.py:2299 #: agenda_culturel/models.py:2310
msgid "Contained in the title" msgid "Contained in the title"
msgstr "Contenu dans le titre" msgstr "Contenu dans le titre"
#: agenda_culturel/models.py:2300 #: agenda_culturel/models.py:2311
msgid "Text contained in the event title" msgid "Text contained in the event title"
msgstr "Texte contenu dans le titre de l'événement" msgstr "Texte contenu dans le titre de l'événement"
#: agenda_culturel/models.py:2306 #: agenda_culturel/models.py:2317
msgid "Exact title extract" msgid "Exact title extract"
msgstr "Extrait exact du titre" msgstr "Extrait exact du titre"
#: agenda_culturel/models.py:2308 #: agenda_culturel/models.py:2319
msgid "" msgid ""
"If checked, the extract will be searched for in the title using the exact " "If checked, the extract will be searched for in the title using the exact "
"form (capitals, accents)." "form (capitals, accents)."
@ -1096,19 +1104,19 @@ msgstr ""
"Si coché, l'extrait sera recherché dans le titre en utilisant la forme " "Si coché, l'extrait sera recherché dans le titre en utilisant la forme "
"exacte (majuscules, accents)" "exacte (majuscules, accents)"
#: agenda_culturel/models.py:2314 #: agenda_culturel/models.py:2325
msgid "Contained in the description" msgid "Contained in the description"
msgstr "Contenu dans la description" msgstr "Contenu dans la description"
#: agenda_culturel/models.py:2315 #: agenda_culturel/models.py:2326
msgid "Text contained in the description" msgid "Text contained in the description"
msgstr "Texte contenu dans la description" msgstr "Texte contenu dans la description"
#: agenda_culturel/models.py:2321 #: agenda_culturel/models.py:2332
msgid "Exact description extract" msgid "Exact description extract"
msgstr "Extrait exact de description" msgstr "Extrait exact de description"
#: agenda_culturel/models.py:2323 #: agenda_culturel/models.py:2334
msgid "" msgid ""
"If checked, the extract will be searched for in the description using the " "If checked, the extract will be searched for in the description using the "
"exact form (capitals, accents)." "exact form (capitals, accents)."
@ -1116,19 +1124,19 @@ msgstr ""
"Si coché, l'extrait sera recherché dans la description en utilisant la forme " "Si coché, l'extrait sera recherché dans la description en utilisant la forme "
"exacte (majuscules, accents)" "exacte (majuscules, accents)"
#: agenda_culturel/models.py:2329 #: agenda_culturel/models.py:2340
msgid "Contained in the location" msgid "Contained in the location"
msgstr "Contenu dans la localisation" msgstr "Contenu dans la localisation"
#: agenda_culturel/models.py:2330 #: agenda_culturel/models.py:2341
msgid "Text contained in the event location" msgid "Text contained in the event location"
msgstr "Texte contenu dans la localisation de l'événement" msgstr "Texte contenu dans la localisation de l'événement"
#: agenda_culturel/models.py:2336 #: agenda_culturel/models.py:2347
msgid "Exact location extract" msgid "Exact location extract"
msgstr "Extrait exact de localisation" msgstr "Extrait exact de localisation"
#: agenda_culturel/models.py:2338 #: agenda_culturel/models.py:2349
msgid "" msgid ""
"If checked, the extract will be searched for in the location using the exact " "If checked, the extract will be searched for in the location using the exact "
"form (capitals, accents)." "form (capitals, accents)."
@ -1136,15 +1144,15 @@ msgstr ""
"Si coché, l'extrait sera recherché dans la localisation en utilisant la " "Si coché, l'extrait sera recherché dans la localisation en utilisant la "
"forme exacte (majuscules, accents)" "forme exacte (majuscules, accents)"
#: agenda_culturel/models.py:2346 #: agenda_culturel/models.py:2357
msgid "Location from place" msgid "Location from place"
msgstr "Localisation depuis le lieu" msgstr "Localisation depuis le lieu"
#: agenda_culturel/models.py:2355 #: agenda_culturel/models.py:2366
msgid "Categorisation rule" msgid "Categorisation rule"
msgstr "Règle de catégorisation" msgstr "Règle de catégorisation"
#: agenda_culturel/models.py:2356 #: agenda_culturel/models.py:2367
msgid "Categorisation rules" msgid "Categorisation rules"
msgstr "Règles de catégorisation" msgstr "Règles de catégorisation"
@ -1486,3 +1494,6 @@ msgstr "L'événement {} a été supprimé avec succès."
#: agenda_culturel/views.py:2343 #: agenda_culturel/views.py:2343
msgid "Cache successfully cleared." msgid "Cache successfully cleared."
msgstr "Le cache a été vidé avec succès." msgstr "Le cache a été vidé avec succès."
#~ msgid "la cour des 3 coquins"
#~ msgstr "la cour des 3 coquins"