

'use strict';
{
  const globals = this;
  const django = globals.django || (globals.django = {});

  
  django.pluralidx = function(n) {
    const v = (n > 1);
    if (typeof v === 'boolean') {
      return v ? 1 : 0;
    } else {
      return v;
    }
  };
  

  /* gettext library */

  django.catalog = django.catalog || {};
  
  const newcatalog = {
    " GB.": " Go.",
    "%(count)s channel": [
      "%(count)s cha\u00eene",
      "%(count)s cha\u00eenes"
    ],
    "%(count)s video": [
      "%(count)s vid\u00e9o",
      "%(count)s vid\u00e9os"
    ],
    "%(count)s video found": [
      "%(count)s vid\u00e9o trouv\u00e9e",
      "%(count)s vid\u00e9os trouv\u00e9es"
    ],
    "%(count)s video selected": [
      "%(count)s vid\u00e9o s\u00e9lectionn\u00e9e",
      "%(count)s vid\u00e9os s\u00e9lectionn\u00e9es"
    ],
    "%s <span class=\"d-none d-md-inline\">vote</span>": [
      "%s <span class=\"d-none d-md-inline\">vote</span>",
      "%s <span class=\"d-none d-md-inline\">votes</span>"
    ],
    "%s comment": [
      "%s commentaire",
      "%s commentaires"
    ],
    "/80 characters": "80 caract\u00e8res",
    "<strong>Password-protected:</strong> the playlist can be accessed by anyone with the appropriate link and password.": "<strong>Prot\u00e9g\u00e9 par un mot de passe\u00a0:</strong> la liste de lecture est accessible \u00e0 toute personne disposant du lien et du mot de passe appropri\u00e9s.",
    "<strong>Private:</strong> only you have access to this playlist.": "<strong>Priv\u00e9\u00a0:</strong> vous seul avez acc\u00e8s \u00e0 cette liste de lecture.",
    "<strong>Public:</strong> the playlist can be accessed by anyone.": "<strong>Public\u00a0:</strong> la liste de lecture est accessible par tous.",
    "A caption cannot contain more than 110 characters.": "Une l\u00e9gende / sous-titre ne peut comporter plus de 110 caract\u00e8res.",
    "A network error caused the video download to fail part-way.": "Une erreur de r\u00e9seau a entra\u00een\u00e9 l\u2019\u00e9chec du t\u00e9l\u00e9chargement de la vid\u00e9o en partie.",
    "Action performed successfully.": "Action r\u00e9alis\u00e9e avec succ\u00e8s.",
    "Add": "Ajouter",
    "Add a caption/subtitle after this one": "Ajouter un(e) l\u00e9gende/sous-titre apr\u00e8s celui-ci",
    "Add a choice": "Ajouter un choix",
    "Add a public comment": "Ajouter un commentaire public",
    "Add a speaker": "Ajouter un intervenant",
    "Add your picture": "Ajoutez votre image",
    "Agree with the comment": "D\u2019accord avec ce commentaire",
    "An Error occurred while processing.": "Une erreur est survenue durant l\u2019ex\u00e9cution du processus.",
    "An error happened during notification subscription": "Une erreur s\u2019est produite lors de l\u2019abonnement aux notifications",
    "An error has occurred. Please try later.": "Une erreur est survenue. Merci d\u2019essayer plus tard.",
    "An error occurred": "Une erreur est survenue",
    "An error occurred during broadcasters loading\u2026": "Une erreur s\u2019est produite lors du chargement des diffuseurs\u2026",
    "An error occurred during the change of owner": "Une erreur s\u2019est produite lors du changement de propri\u00e9taire",
    "An error occurred on broadcaster fetch\u2026": "Une erreur s\u2019est produite lors du chargement du diffuseur\u2026",
    "An unknown error occurred.": "Une erreur inconnue est survenue.",
    "Answer": "R\u00e9ponse",
    "Answers": "R\u00e9ponses",
    "Are you sure you want to delete all captions?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer les sous-titres\u00a0?",
    "Are you sure you want to delete theme \u201c%(title)s\u201d?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer le th\u00e8me \u00ab\u00a0%(title)s\u00a0\u00bb\u00a0?",
    "Are you sure you want to delete this contributor?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer ce contributeur\u00a0?",
    "Are you sure you want to delete this document?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer ce document\u00a0?",
    "Are you sure you want to delete this file?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer ce fichier\u00a0?",
    "Are you sure you want to delete this folder?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer ce dossier\u00a0?",
    "Are you sure you want to delete this overlay?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer cette superposition\u00a0?",
    "Are you sure you want to delete this speaker?": "\u00cates-vous s\u00fbr(e) de vouloir supprimer cet intervenant\u00a0?",
    "Ascending sort": "Tri ascendant",
    "Audio content.": "Contenu audio.",
    "Bad response from the server.": "Mauvaise r\u00e9ponse du serveur.",
    "Cancel": "Annuler",
    "Caption / Subtitle": "L\u00e9gende / Sous-titre",
    "Caption for segment from %s to %s:": "Texte associ\u00e9 au segment entre %s et %s\u00a0:",
    "Change": "Changer",
    "Change file": "Changer de fichier",
    "Change image": "Changer d\u2019image",
    "Change your picture": "Modifier votre image",
    "Changes have been saved.": "Les modifications ont \u00e9t\u00e9 sauvegard\u00e9es.",
    "Chapter the video": "Chapitrer la vid\u00e9o",
    "Chapters": "Chapitres",
    "Choice": "Choix",
    "Choice #%s": "Choix n\u00b0%s",
    "Choices for question #%s": "Choix de la question n\u00b0%s",
    "Close": "Fermer",
    "Complete the video": "Compl\u00e9ter la vid\u00e9o",
    "Correct answer given": "R\u00e9ponse correcte envoy\u00e9e",
    "Delete": "Supprimer",
    "Delete the video": "Supprimer la vid\u00e9o",
    "Delete this caption/subtitle": "Supprimer ce(tte) l\u00e9gende/sous-titre",
    "Descending sort": "Tri descendant",
    "Disable notifications": "D\u00e9sactiver les notifications",
    "Don\u2019t forget to allow notifications from this website in your browser\u2019s settings!": "N\u2019oubliez pas d\u2019autoriser les notifications provenant de ce site web dans votre navigateur\u00a0!",
    "Edit caption for segment from %s to %s:": "\u00c9dition des sous-titres entre %s et %s\u00a0:",
    "Edit the video": "\u00c9diter la vid\u00e9o",
    "Edit this speaker": "Modifier l\u2019intervenant",
    "Embed field must be less than 200 characters.": "Un code d\u2019int\u00e9gration doit comporter moins de 200 caract\u00e8res.",
    "Enable notifications": "Activer les notifications",
    "End": "Fin",
    "End field and start field cannot be equal.": "Le commencement et la fin ne peuvent \u00eatre \u00e9quivalents.",
    "End only the live": "Arr\u00eater seulement le direct",
    "End the meeting": "Terminer la r\u00e9union",
    "End the webinar (meeting and live)": "Terminer le webinaire (r\u00e9union et direct)",
    "Enrich mode": "Mode enrichi",
    "Enter caption for segment from %s to %s:": "Veuillez entrer un texte pour le segment compris entre %s et %s\u00a0:",
    "Enter new name of folder": "Indiquer un nouveau nom au dossier",
    "Error during exchange": "Erreur durant le t\u00e9l\u00e9versement",
    "Error getting form.": "Erreur lors de la r\u00e9cup\u00e9ration du formulaire.",
    "Error loading caption file: ": "Erreur durant le chargement du fichier de sous-titres\u00a0: ",
    "Error while subscribing to push notifications.": "Une erreur est survenue lors de la souscription aux notifications.",
    "Favorite additions during the day": "Ajouts en favoris de la journ\u00e9e",
    "Favorite additions during the month": "Ajouts en favoris du mois",
    "Favorite additions during the year": "Ajouts en favoris de l\u2019ann\u00e9e",
    "Get notified when the video encoding is finished.": "Recevez une notification lorsque l\u2019encodage de la vid\u00e9o est termin\u00e9.",
    "Get time from the player": "Obtenir le temps du lecteur",
    "If this box is checked, the event will only be accessible to authenticated users.": "Si cette case est coch\u00e9e, l\u2019\u00e9v\u00e8nement ne sera accessible qu\u2019aux utilisateurs authentifi\u00e9s.",
    "Iframe and Script tags are not allowed.": "Les balises Iframe et Script ne sont pas autoris\u00e9es.",
    "Incorrect answer given": "R\u00e9ponse incorrecte envoy\u00e9e",
    "Info": "Info",
    "Information": "Information",
    "Invalid action.": "Action non valide.",
    "Job title": "Titre de la fonction",
    "Loading videos\u2026": "Chargement des vid\u00e9os\u2026",
    "Loading\u2026": "Chargement en cours\u2026",
    "Make sure you added a file and that it is a valid file.": "Assurez-vous que vous avez ajout\u00e9 un fichier et qu\u2019il s\u2019agit d\u2019un fichier valide.",
    "Make sure your chapter start time is not 0 or equal to another chapter start time.": "Assurez-vous que l\u2019heure de d\u00e9but de votre chapitre n\u2019est pas \u00e9gale \u00e0 0 ou \u00e0 une autre heure de d\u00e9but de chapitre.",
    "Network response was not ok.": "La r\u00e9ponse du r\u00e9seau n\u2019\u00e9tait pas correcte.",
    "No broadcaster set for this building": "Pas de diffuseur pour ce b\u00e2timent",
    "No caption at this time code.": "Aucun texte pour cet horodatage.",
    "No channels found": "Aucun cha\u00eene trouv\u00e9e",
    "No data could be stored.": "Aucune donn\u00e9e ne peut \u00eatre stock\u00e9e.",
    "No description": "Aucune description",
    "No discipline": "Aucune discipline",
    "No element found": "Aucun \u00e9l\u00e9ment trouv\u00e9",
    "No user found": "Aucun utilisateur trouv\u00e9",
    "Not a valid time track file.": "Fichier de traduction invalide.",
    "Notifications are currently disabled.": "Les notifications sont actuellement d\u00e9sactiv\u00e9es.",
    "Notifications are currently enabled.": "Les notifications sont actuellement activ\u00e9es.",
    "One or more errors have been found in the form.": "Une ou plusieurs erreurs ont \u00e9t\u00e9 trouv\u00e9es dans le formulaire.",
    "Only .vtt format is allowed.": "Seulement le format \".vtt\" est autoris\u00e9.",
    "Open file in a new tab": "Ouvrir le fichier dans un nouvel onglet",
    "Open slide manager": "Ouvrir le gestionnaire de diapositives",
    "Pause to enter caption for segment from %s to %s.": "Mettez en pause pour entrer le texte du segment entre %s et %s.",
    "Playlist additions during the day": "Ajouts dans une liste de lecture durant la journ\u00e9e",
    "Playlist additions during the month": "Ajouts dans une liste de lecture durant le mois",
    "Playlist additions during the year": "Ajouts dans une liste de lecture durant l\u2019ann\u00e9e",
    "Please complete all fields correctly": "Veuillez remplir tous les champs correctement",
    "Please confirm the deletion of the following video:": [
      "Veuillez confirmer la suppression de la vid\u00e9o suivante\u00a0:",
      "Veuillez confirmer la suppression des vid\u00e9os suivantes\u00a0:"
    ],
    "Please confirm the editing of the following video:": [
      "Veuillez confirmer l\u2019\u00e9dition de la vid\u00e9o suivante\u00a0:",
      "Veuillez confirmer l\u2019\u00e9dition des vid\u00e9os suivantes\u00a0:"
    ],
    "Please enter a correct embed.": "Veuillez entrer une int\u00e9gration correct.",
    "Please enter a correct end from 1 to ": "Veuillez entrer un correct temps de fin compris entre 1 et ",
    "Please enter a correct image.": "Veuillez joindre une image correct.",
    "Please enter a correct kind.": "Veuillez entrer un genre correct.",
    "Please enter a correct richtext.": "Veuillez entrer un texte riche correct.",
    "Please enter a correct start field between 0 and": "Veuillez entrer un correct temps de d\u00e9but compris entre 0 et",
    "Please enter a correct start from 0 to ": "Veuillez entrer un correct temps de d\u00e9but compris entre 0 et ",
    "Please enter a correct weblink.": "Veuillez entrer un lien web correct.",
    "Please enter a name from 2 to 100 caracteres.": "Veuillez entrer un nom entre 2 et 200 caract\u00e8res.",
    "Please enter a role.": "Veuillez entrer un r\u00f4le.",
    "Please enter a title from 2 to 100 characters.": "Veuillez entrer un titre contenant entre 2 et 100 caract\u00e8res.",
    "Please enter a type in index field.": "Veuillez entrer un type.",
    "Please select a document": "Veuillez s\u00e9lectionner un document",
    "Please select a document.": "Veuillez joindre un document.",
    "Please select a language.": "Veuillez renseigner une langue.",
    "Please specify a track file.": "Veuillez joindre un fichier de piste vid\u00e9o.",
    "Quality": "Qualit\u00e9",
    "Remove": "Retirer",
    "Remove choice #%s": "Supprimer le choix n\u00b0%s",
    "Remove choice %s": "Supprimer le choix n\u00b0%s",
    "Remove job": "Supprimer la fonction",
    "Remove this comment": "Supprimer ce commentaire",
    "Reply": "R\u00e9pondre",
    "Reply to comment": "R\u00e9pondre au commentaire",
    "Restart only the live": "Red\u00e9marrer seulement le direct",
    "Restricted because the broadcaster is restricted": "Obligatoirement restreint car le diffuseur est restreint",
    "Save": "Sauvegarder",
    "Save your reorganization": "Sauvegarder votre r\u00e9organisation",
    "See more": "Voir plus",
    "Seek back 10 seconds in the video": "Reculer de 10 secondes dans la vid\u00e9o",
    "Seek forward 10 seconds in the video": "Avancer de 10 secondes dans la video",
    "Select the choice #%s as correct answer.": "Selectionnez le choix n\u00b0%s comme r\u00e9ponse correcte.",
    "Select the general type of the video.": "S\u00e9lectionnez le type g\u00e9n\u00e9ral de vid\u00e9o.",
    "Send": "Envoyer",
    "Server error": "Erreur du serveur",
    "Short answer": "R\u00e9ponse courte",
    "Show answers": "Afficher les r\u00e9ponses",
    "Slug": "Titre court",
    "Something went wrong.": "Quelque-chose s\u2019est mal pass\u00e9.",
    "Sorry, you can\u2019t comment this video by now.": "D\u00e9sol\u00e9, vous ne pouvez pas commenter cette vid\u00e9o maintenant.",
    "Sorry, you can\u2019t delete this comment by now.": "D\u00e9sol\u00e9, vous ne pouvez pas supprimer ce commentaire maintenant.",
    "Sorry, you\u2019re not allowed to vote by now.": "D\u00e9sol\u00e9, vous n\u2019\u00eates pas autoris\u00e9 \u00e0 voter maintenant.",
    "Split view": "Vue partag\u00e9e",
    "Start": "D\u00e9but",
    "Successfully subscribed to push notifications.": "Souscription aux notifications r\u00e9ussie.",
    "Text copied": "Texte copi\u00e9",
    "Text copied.": "Texte copi\u00e9.",
    "The comment has been deleted successfully.": "Le commentaire a \u00e9t\u00e9 supprim\u00e9 avec succ\u00e8s.",
    "The date must be before or equal to": "La date doit \u00eatre anterieure ou \u00e9gale \u00e0",
    "The deletion date can\u2019t be earlier than today.": "La date de suppression ne peut pas \u00eatre ant\u00e9rieure \u00e0 aujourd\u2019hui.",
    "The end field value is greater than the video duration.": "La temps de fin est sup\u00e9rieur \u00e0 la dur\u00e9e de la vid\u00e9o.",
    "The file extension not in the allowed extension:": "Cette extension de fichier n\u2019est pas pr\u00e9sente dans les extensions autoris\u00e9es\u00a0:",
    "The file size exceeds the maximum allowed value:": "Le fichier d\u00e9passe la taille maximum autoris\u00e9e\u00a0:",
    "The form could not be recovered.": "Le formulaire ne peut pas \u00eatre r\u00e9cup\u00e9r\u00e9.",
    "The short answer": "La r\u00e9ponse courte",
    "The start field value is greater than the end field one.": "Le temps de d\u00e9but est sup\u00e9rieur au temps de fin.",
    "The video could not be loaded, either because the server or network failed or because the format is not supported.": "La vid\u00e9o n\u2019a pas pu \u00eatre charg\u00e9e, soit parce que le serveur ou le r\u00e9seau est inaccessible, soit parce que le format n\u2019est pas pris en charge.",
    "The video playback was aborted due to a corruption problem or because the video used features your browser did not support.": "La lecture de la vid\u00e9o a \u00e9t\u00e9 interrompue en raison d\u2019un probl\u00e8me de corruption ou parce que la vid\u00e9o utilisait des fonctionnalit\u00e9s que votre navigateur ne prenait pas en charge.",
    "Theme sucessfully deleted.": "Suppression du th\u00e8me r\u00e9ussie.",
    "There are errors in the form, please correct them.": "Des erreurs sont pr\u00e9sentes dans le formulaire, veuillez les corriger.",
    "There are errors in your captions/subtitles. Please review.": "Il y a des erreurs dans vos l\u00e9gendes/sous-titres. Veuillez corriger svp.",
    "There is already a contributor with this same name and role in the list.": "Il existe d\u00e9j\u00e0 un contributeur avec le m\u00eame nom et le m\u00eame r\u00f4le dans cette liste.",
    "There is already a track with the same kind and language in the list.": "Il existe d\u00e9j\u00e0 une piste vid\u00e9o avec le m\u00eame genre et la m\u00eame langue dans la liste.",
    "There is an overlap with the enrichment ": "Il y a un chevauchement avec l\u2019enrichissement ",
    "There is no caption/subtitle to save.": "Il n\u2019y a aucun sous-titre/l\u00e9gende \u00e0 sauvegarder.",
    "This content is chaptered.": "Ce contenu est chapitr\u00e9.",
    "This content is in draft.": "Ce contenu est en brouillon.",
    "This content is password protected.": "Ce contenu est prot\u00e9g\u00e9 par mot de passe.",
    "This folder is empty": "Ce dossier est vide",
    "Time stamps": "Horodatages",
    "Title": "Titre",
    "Total Playlist additions from creation": "Ajouts en liste de lecture total depuis la cr\u00e9ation",
    "Total favorite additions from creation": "Ajouts en favoris total depuis la cr\u00e9ation",
    "Total view from creation": "Vue totale depuis cr\u00e9ation",
    "Turn to ": "Changer en ",
    "Unable to find information about the meeting": "Impossible de trouver des informations sur la r\u00e9union",
    "Unrecognized caption file format.": "Format de fichier de traduction non reconnu.",
    "Unsubscribe from Push Messaging": "Se d\u00e9sinscrire des notifications push",
    "User not found": "Utilisateur non trouv\u00e9",
    "Video content.": "Contenu vid\u00e9o.",
    "View during the day": "Vue de la journ\u00e9e",
    "View during the month": "Vue du mois",
    "View during the year": "Vue de l\u2019ann\u00e9e",
    "WEBVTT\n\nstart time(00:00.000) --> end time(00:00.000)\ncaption text": "WEBVTT\n\ntemps d\u00e9but(00:00.000) --> temps fin(00:00.000)\ntexte de sous-titre",
    "Weblink must be less than 200 characters.": "Un lien web doit contenir moins de 200 caract\u00e8res.",
    "You aborted the video playback.": "Vous avez interrompu la lecture de la vid\u00e9o.",
    "You are no longer authenticated. Please log in again.": "Vous n\u2019\u00eates plus authentifi\u00e9. Veuillez vous reconnecter.",
    "You cannot enter a weblink with more than 200 caracteres.": "Vous ne pouvez pas entrer un lien web avec plus de 200 caract\u00e8res.",
    "You have denied notifications in your browser, to enable them back you must do it in your browser configuration menu.": "Vous avez d\u00e9clin\u00e9 les notifications via votre navigateur, pour les activer \u00e0 nouveau vous devez autoriser les notifications depuis les menus de configuration de votre navigateur.",
    "You will soon be redirected.": "Vous serez bient\u00f4t redirig\u00e9.",
    "choice #%s": "choix n\u00b0%s",
    "error during exchange": "erreur durant le t\u00e9l\u00e9versement",
    "no data could be stored.": "aucune donn\u00e9e ne peut \u00eatre stock\u00e9e.",
    "pip media": "pip media",
    "pip video": "pip vid\u00e9o",
    "please change start and/or end values.": "veuillez changer de valeur de d\u00e9but et/ou de fin.",
    "slide off": "pas de diapo",
    "video off": "pas de vid\u00e9o"
  };
  for (const key in newcatalog) {
    django.catalog[key] = newcatalog[key];
  }
  

  if (!django.jsi18n_initialized) {
    django.gettext = function(msgid) {
      const value = django.catalog[msgid];
      if (typeof value === 'undefined') {
        return msgid;
      } else {
        return (typeof value === 'string') ? value : value[0];
      }
    };

    django.ngettext = function(singular, plural, count) {
      const value = django.catalog[singular];
      if (typeof value === 'undefined') {
        return (count == 1) ? singular : plural;
      } else {
        return value.constructor === Array ? value[django.pluralidx(count)] : value;
      }
    };

    django.gettext_noop = function(msgid) { return msgid; };

    django.pgettext = function(context, msgid) {
      let value = django.gettext(context + '\x04' + msgid);
      if (value.includes('\x04')) {
        value = msgid;
      }
      return value;
    };

    django.npgettext = function(context, singular, plural, count) {
      let value = django.ngettext(context + '\x04' + singular, context + '\x04' + plural, count);
      if (value.includes('\x04')) {
        value = django.ngettext(singular, plural, count);
      }
      return value;
    };

    django.interpolate = function(fmt, obj, named) {
      if (named) {
        return fmt.replace(/%\(\w+\)s/g, function(match){return String(obj[match.slice(2,-2)])});
      } else {
        return fmt.replace(/%s/g, function(match){return String(obj.shift())});
      }
    };


    /* formatting library */

    django.formats = {
    "DATETIME_FORMAT": "j F Y H:i",
    "DATETIME_INPUT_FORMATS": [
      "%d/%m/%Y %H:%M:%S",
      "%d/%m/%Y %H:%M:%S.%f",
      "%d/%m/%Y %H:%M",
      "%d.%m.%Y %H:%M:%S",
      "%d.%m.%Y %H:%M:%S.%f",
      "%d.%m.%Y %H:%M",
      "%Y-%m-%d %H:%M:%S",
      "%Y-%m-%d %H:%M:%S.%f",
      "%Y-%m-%d %H:%M",
      "%Y-%m-%d"
    ],
    "DATE_FORMAT": "j F Y",
    "DATE_INPUT_FORMATS": [
      "%d/%m/%Y",
      "%d/%m/%y",
      "%d.%m.%Y",
      "%d.%m.%y",
      "%Y-%m-%d"
    ],
    "DECIMAL_SEPARATOR": ",",
    "FIRST_DAY_OF_WEEK": 1,
    "MONTH_DAY_FORMAT": "j F",
    "NUMBER_GROUPING": 3,
    "SHORT_DATETIME_FORMAT": "j N Y H:i",
    "SHORT_DATE_FORMAT": "j N Y",
    "THOUSAND_SEPARATOR": "\u00a0",
    "TIME_FORMAT": "H:i",
    "TIME_INPUT_FORMATS": [
      "%H:%M:%S",
      "%H:%M:%S.%f",
      "%H:%M"
    ],
    "YEAR_MONTH_FORMAT": "F Y"
  };

    django.get_format = function(format_type) {
      const value = django.formats[format_type];
      if (typeof value === 'undefined') {
        return format_type;
      } else {
        return value;
      }
    };

    /* add to global namespace */
    globals.pluralidx = django.pluralidx;
    globals.gettext = django.gettext;
    globals.ngettext = django.ngettext;
    globals.gettext_noop = django.gettext_noop;
    globals.pgettext = django.pgettext;
    globals.npgettext = django.npgettext;
    globals.interpolate = django.interpolate;
    globals.get_format = django.get_format;

    django.jsi18n_initialized = true;
  }
};

