From 2bf6b263edb6a9b978a2904af0df50348dc8ff20 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sat, 9 May 2020 15:58:10 +0200 Subject: [PATCH 1/4] correction of contribution guideline --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 741f87bb..3280b229 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,7 +16,7 @@ We can offer only very limited support regarding configuration of **Reverse-Prox ### **Translation** -Some of the user languages in Calibre-Web having missing translations. We are happy to add the missing texts if you are translate them. Create a Pull Request, create an issue with the .po file attached, or write an email to "ozzie.fernandez.isaacs@googlemail.com" with attached translation file. To display all book languages in your native language an additional file is used (iso_language_names.py). The content of this file is autogenerated with the corresponding translations of Calibre, please do not edit this file on your own. +Some of the user languages in Calibre-Web having missing translations. We are happy to add the missing texts if you translate them. Create a Pull Request, create an issue with the .po file attached, or write an email to "ozzie.fernandez.isaacs@googlemail.com" with attached translation file. To display all book languages in your native language an additional file is used (iso_language_names.py). The content of this file is autogenerated with the corresponding translations of Calibre, please do not edit this file on your own. ### **Documentation** From ff3f42db9554cbe6a4866558912b17ece904aabe Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Sat, 9 May 2020 16:12:34 +0200 Subject: [PATCH 2/4] Fix #1364 (translated format identifier) Updated french Translation --- cps/translations/es/LC_MESSAGES/messages.mo | Bin 32899 -> 32652 bytes cps/translations/es/LC_MESSAGES/messages.po | 90 ++-- cps/translations/fr/LC_MESSAGES/messages.mo | Bin 32937 -> 46266 bytes cps/translations/fr/LC_MESSAGES/messages.po | 540 ++++++++++---------- messages.pot | 2 +- 5 files changed, 316 insertions(+), 316 deletions(-) diff --git a/cps/translations/es/LC_MESSAGES/messages.mo b/cps/translations/es/LC_MESSAGES/messages.mo index c2c9df93dcedc8361e6fa9d827726fb9a82cc41d..faecc067fadb59154abeffdee62790671fbfdec3 100644 GIT binary patch delta 7566 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 LR^5TQwFUnG>gsw+ delta 7713 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 diff --git a/cps/translations/es/LC_MESSAGES/messages.po b/cps/translations/es/LC_MESSAGES/messages.po index aa123866..6c8675ad 100644 --- a/cps/translations/es/LC_MESSAGES/messages.po +++ b/cps/translations/es/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-05-01 17:15+0200\n" +"POT-Creation-Date: 2020-05-09 16:09+0200\n" "PO-Revision-Date: 2019-07-26 11:44+0100\n" "Last-Translator: minakmostoles \n" "Language: es\n" @@ -48,8 +48,8 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 -#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 +#: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515 +#: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689 #: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 msgid "Unknown" msgstr "Desconocido" @@ -294,7 +294,7 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:253 cps/editbooks.py:489 +#: cps/editbooks.py:253 cps/editbooks.py:490 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Error abriendo un eBook. El archivo no existe o no es accesible" @@ -307,16 +307,16 @@ msgstr "editar metadatos" msgid "%(langname)s is not a valid language" msgstr "%(langname)s no es un idioma válido" -#: cps/editbooks.py:413 cps/editbooks.py:663 +#: cps/editbooks.py:413 cps/editbooks.py:664 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "No se permite subir archivos con la extensión '%(ext)s' a este servidor" -#: cps/editbooks.py:417 cps/editbooks.py:667 +#: cps/editbooks.py:417 cps/editbooks.py:668 msgid "File to be uploaded must have an extension" msgstr "El archivo a subir debe tener una extensión" -#: cps/editbooks.py:429 cps/editbooks.py:701 +#: cps/editbooks.py:429 cps/editbooks.py:702 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" @@ -331,48 +331,48 @@ msgstr "Falla al guardar el archivo %(file)s." msgid "File format %(ext)s added to %(book)s" msgstr "Fichero con formato %(ext)s añadido a %(book)s" -#: cps/editbooks.py:606 +#: cps/editbooks.py:607 msgid "Metadata successfully updated" msgstr "Metadatos actualizados correctamente" -#: cps/editbooks.py:615 +#: cps/editbooks.py:616 msgid "Error editing book, please check logfile for details" msgstr "Error al editar el libro, por favor compruebe el fichero de registro (logfile) para tener más detalles" -#: cps/editbooks.py:675 +#: cps/editbooks.py:676 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:692 +#: cps/editbooks.py:693 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 +#: cps/editbooks.py:709 #, python-format -msgid "Failed to store file %(file)s (Permission denied)." -msgstr "Fallo al guardar el archivo %(file)s (permiso denegado)" +msgid "Failed to Move File %(file)s: %(error)s" +msgstr "" -#: cps/editbooks.py:713 +#: cps/editbooks.py:723 #, python-format -msgid "Failed to delete file %(file)s (Permission denied)." -msgstr "Fallo al borrar el archivo %(file)s (permiso denegado)" +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" -#: cps/editbooks.py:804 +#: cps/editbooks.py:808 #, python-format msgid "File %(file)s uploaded" msgstr "El fichero %(file)s a sido subido" -#: cps/editbooks.py:833 +#: cps/editbooks.py:837 msgid "Source or destination format for conversion missing" msgstr "Falta la fuente o el formato de destino para la conversión" -#: cps/editbooks.py:841 +#: cps/editbooks.py:845 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro puesto a la cola con éxito para convertirlo a %(book_format)s" -#: cps/editbooks.py:845 +#: cps/editbooks.py:849 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Ocurrió un error al convertir este libro: %(res)s" @@ -446,103 +446,103 @@ msgstr "Correo electrónico: %(book)s" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "El fichero solicitado no puede ser leído. ¿Quizás existen problemas con los permisos?" -#: cps/helper.py:299 +#: cps/helper.py:300 #, python-format msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:309 +#: cps/helper.py:310 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:319 +#: cps/helper.py:320 #, python-format msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgstr "" -#: cps/helper.py:354 +#: cps/helper.py:355 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "El renombrado del título de: '%(src)s' a '%(dest)s' falló con errores: %(error)s" -#: cps/helper.py:364 +#: cps/helper.py:365 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "El renombrado del autor de: '%(src)s' a '%(dest)s' falló con errores: %(error)s" -#: cps/helper.py:378 +#: cps/helper.py:379 #, python-format msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Ha fallado el cambio de nombre del archivo '%(src)s' a '%(dest)s' con el error: %(error)s" -#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 +#: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Fichero %(file)s no encontrado en Google Drive" -#: cps/helper.py:443 +#: cps/helper.py:444 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "La ruta %(path)s del libro no fue encontrada en Google Drive" -#: cps/helper.py:550 +#: cps/helper.py:551 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:555 +#: cps/helper.py:556 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:567 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:580 +#: cps/helper.py:581 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:622 +#: cps/helper.py:623 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:635 +#: cps/helper.py:636 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:691 +#: cps/helper.py:692 msgid "Waiting" msgstr "Esperando" -#: cps/helper.py:693 +#: cps/helper.py:694 msgid "Failed" msgstr "Fallido" -#: cps/helper.py:695 +#: cps/helper.py:696 msgid "Started" msgstr "Comenzado" -#: cps/helper.py:697 +#: cps/helper.py:698 msgid "Finished" msgstr "Finalizado" -#: cps/helper.py:699 +#: cps/helper.py:700 msgid "Unknown Status" msgstr "Estado desconocido" -#: cps/helper.py:704 +#: cps/helper.py:705 msgid "E-mail: " msgstr "E-mail " -#: cps/helper.py:706 cps/helper.py:710 +#: cps/helper.py:707 cps/helper.py:711 msgid "Convert: " msgstr "Convertir: " -#: cps/helper.py:708 +#: cps/helper.py:709 msgid "Upload: " msgstr "Subir: " -#: cps/helper.py:712 +#: cps/helper.py:713 msgid "Unknown Task: " msgstr "Tarea desconocida" @@ -1740,7 +1740,7 @@ msgstr "" #: cps/templates/config_edit.html:300 #, python-format msgid "Obtain %(provider)s OAuth Credential" -msgstr "Obtener la Credencial OAuth de %(proveedor)" +msgstr "Obtener la Credencial OAuth de %(provider)" #: cps/templates/config_edit.html:303 #, python-format diff --git a/cps/translations/fr/LC_MESSAGES/messages.mo b/cps/translations/fr/LC_MESSAGES/messages.mo index b671a144df4b6d118532d95f2045392e7348456a..fdcc714b2b2fb789413a31f4d48b4015e965987d 100644 GIT binary patch literal 46266 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 delta 9900 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 diff --git a/cps/translations/fr/LC_MESSAGES/messages.po b/cps/translations/fr/LC_MESSAGES/messages.po index 6dad21aa..3916a4a5 100644 --- a/cps/translations/fr/LC_MESSAGES/messages.po +++ b/cps/translations/fr/LC_MESSAGES/messages.po @@ -20,9 +20,9 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-05-01 17:15+0200\n" -"PO-Revision-Date: 2019-08-21 15:20+0100\n" -"Last-Translator: Nicolas Roudninski \n" +"POT-Creation-Date: 2020-05-09 16:09+0200\n" +"PO-Revision-Date: 2020-05-08 14:36+0200\n" +"Last-Translator: Dekani \n" "Language: fr\n" "Language-Team: \n" "Plural-Forms: nplurals=2; plural=(n > 1)\n" @@ -33,7 +33,7 @@ msgstr "" #: cps/about.py:42 msgid "installed" -msgstr "" +msgstr "installé" #: cps/about.py:44 msgid "not installed" @@ -53,21 +53,21 @@ msgstr "Arrêt du serveur en cours, merci de fermer la fenêtre" #: cps/admin.py:102 msgid "Reconnect successful" -msgstr "" +msgstr "Reconnecté avec succès" #: cps/admin.py:105 msgid "Unknown command" -msgstr "" +msgstr "Commande inconnue" -#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 -#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 +#: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515 +#: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689 #: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 msgid "Unknown" msgstr "Inconnu" #: cps/admin.py:134 msgid "Admin page" -msgstr "Page administrateur" +msgstr "Page admin" #: cps/admin.py:156 msgid "UI Configuration" @@ -80,62 +80,62 @@ msgstr "Configuration de Calibre-Web mise à jour" #: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/templates/modal_restriction.html:29 msgid "Deny" -msgstr "" +msgstr "Refuser" #: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/templates/modal_restriction.html:28 msgid "Allow" -msgstr "" +msgstr "Autoriser" #: cps/admin.py:509 msgid "client_secrets.json Is Not Configured For Web Application" -msgstr "" +msgstr "client_secrets.json n'est pas configuré pour l'application Web" #: cps/admin.py:525 msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "L'emplacement du fichier Keyfile est incorrect, veuillez saisir un chemin valide" #: cps/admin.py:529 msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "L'emplacement du fichier Certfile est incorrect, veuillez saisir un chemin valide" #: cps/admin.py:567 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" -msgstr "" +msgstr "Veuillez saisir un fournisseur LDAP, Port, DN et l'identifiant objet de l'utilisateur" #: cps/admin.py:585 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" -msgstr "" +msgstr "Le filtre objet du groupe LDAP a besoin d'un identifiant de format \"%s\"" #: cps/admin.py:588 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" -msgstr "" +msgstr "Le filtre objet du groupe LDAP a une parenthèse non gérée" #: cps/admin.py:592 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" -msgstr "" +msgstr "Le filtre objet de l'utilisateur LDAP a besoin d'un identifiant de format \"%s\"" #: cps/admin.py:595 msgid "LDAP User Object Filter Has Unmatched Parenthesis" -msgstr "" +msgstr "Le filtre objet de l'utilisateur LDAP a une parenthèse non gérée" #: cps/admin.py:599 msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "L'emplacement du certificat LDAP est incorrect, veuillez saisir un chemin valide" #: cps/admin.py:647 msgid "Logfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "L'emplacement du fichier logfile est incorrect, veuillez saisir un chemin valide" #: cps/admin.py:652 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "L'emplacement du fichier Access Logfile est incorrect, veuillez saisir un chemin valide" #: cps/admin.py:671 msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "L'emplacement DB est incorrect, veuillez saisir un chemin valide" #: cps/admin.py:704 msgid "Basic Configuration" @@ -143,7 +143,7 @@ msgstr "Configuration principale" #: cps/admin.py:728 cps/web.py:1230 msgid "Please fill out all fields!" -msgstr "SVP, complétez tous les champs !" +msgstr "Veuillez compléter tous les champs !" #: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 msgid "Add new user" @@ -178,7 +178,7 @@ msgstr "Il y a eu une erreur pendant l’envoi du courriel de test : %(res)s" #: cps/admin.py:808 msgid "Please configure your e-mail address first..." -msgstr "" +msgstr "Veuillez d'abord configurer votre adresse de courriel..." #: cps/admin.py:810 msgid "E-mail server settings updated" @@ -186,7 +186,7 @@ msgstr "Les paramètres du serveur de courriels ont été mis à jour" #: cps/admin.py:821 msgid "User not found" -msgstr "" +msgstr "L'utilisateur n'a pas été trouvé" #: cps/admin.py:842 #, python-format @@ -199,7 +199,7 @@ msgstr "Aucun utilisateur admin restant, impossible de supprimer l’utilisateur #: cps/admin.py:851 msgid "No admin user remaining, can't remove admin role" -msgstr "" +msgstr "Aucun utilisateur admin restant, impossible de supprimer le rôle admin" #: cps/admin.py:887 cps/web.py:1515 msgid "Found an existing account for this e-mail address." @@ -212,7 +212,7 @@ msgstr "Éditer l'utilisateur %(nick)s" #: cps/admin.py:903 cps/web.py:1482 msgid "This username is already taken" -msgstr "" +msgstr "Cet utilisateur est déjà pris" #: cps/admin.py:919 #, python-format @@ -234,7 +234,7 @@ msgstr "Une erreur inconnue est survenue. Veuillez réessayer plus tard." #: cps/admin.py:949 cps/web.py:1196 msgid "Please configure the SMTP mail settings first..." -msgstr "Veuillez configurer les paramètres SMTP au préalable…" +msgstr "Veuillez configurer les paramètres SMTP au préalable..." #: cps/admin.py:961 msgid "Logfile viewer" @@ -242,11 +242,11 @@ msgstr "Visualiseur de fichier journal" #: cps/admin.py:1000 msgid "Requesting update package" -msgstr "Demander une mise à jour" +msgstr "Demande de mise à jour" #: cps/admin.py:1001 msgid "Downloading update package" -msgstr "Téléchargement la mise à jour" +msgstr "Téléchargement de la mise à jour" #: cps/admin.py:1002 msgid "Unzipping update package" @@ -258,7 +258,7 @@ msgstr "Remplacement des fichiers" #: cps/admin.py:1004 msgid "Database connections are closed" -msgstr "Connexion à la base de donnée fermée" +msgstr "Les connexions à la base de donnée ont été fermées" #: cps/admin.py:1005 msgid "Stopping server" @@ -291,21 +291,21 @@ msgstr "Erreur générale" #: cps/admin.py:1011 msgid "Update File Could Not be Saved in Temp Dir" -msgstr "" +msgstr "Le fichier de mise à jour ne peut pas être sauvegardé dans le répertoire temporaire" #: cps/converter.py:31 msgid "not configured" -msgstr "" +msgstr "non configuré" #: cps/editbooks.py:239 msgid "Book Format Successfully Deleted" -msgstr "" +msgstr "Le format du livre a été supprimé avec succès" #: cps/editbooks.py:242 msgid "Book Successfully Deleted" -msgstr "" +msgstr "Le livre a été supprimé avec succès" -#: cps/editbooks.py:253 cps/editbooks.py:489 +#: cps/editbooks.py:253 cps/editbooks.py:490 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Erreur à l’ouverture du livre. Le fichier n’existe pas ou n’est pas accessible" @@ -318,19 +318,19 @@ msgstr "modifier les métadonnées" msgid "%(langname)s is not a valid language" msgstr "%(langname)s n'est pas une langue valide" -#: cps/editbooks.py:413 cps/editbooks.py:663 +#: cps/editbooks.py:413 cps/editbooks.py:664 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "L’extension de fichier '%(ext)s' n’est pas autorisée pour être déposée sur ce serveur" -#: cps/editbooks.py:417 cps/editbooks.py:667 +#: cps/editbooks.py:417 cps/editbooks.py:668 msgid "File to be uploaded must have an extension" msgstr "Pour être déposé le fichier doit avoir une extension" -#: cps/editbooks.py:429 cps/editbooks.py:701 +#: cps/editbooks.py:429 cps/editbooks.py:702 #, python-format msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Impossible de créer le chemin %(path)s (permission refusée)" +msgstr "Impossible de créer le chemin %(path)s (Permission refusée)" #: cps/editbooks.py:434 #, python-format @@ -342,48 +342,48 @@ msgstr "Echec de la sauvegarde du fichier %(file)s." msgid "File format %(ext)s added to %(book)s" msgstr "Le format de fichier %(ext)s a été ajouté à %(book)s" -#: cps/editbooks.py:606 +#: cps/editbooks.py:607 msgid "Metadata successfully updated" msgstr "Les métadonnées ont bien été mise à jour" -#: cps/editbooks.py:615 +#: cps/editbooks.py:616 msgid "Error editing book, please check logfile for details" msgstr "Erreur d’édition du livre, veuillez consulter le journal (log) pour plus de détails" -#: cps/editbooks.py:675 +#: cps/editbooks.py:676 #, python-format msgid "File %(filename)s could not saved to temp dir" -msgstr "" +msgstr "Le fichier %(filename)s ne peut pas être sauvegardé dans le répertoire temporaire" -#: cps/editbooks.py:692 +#: cps/editbooks.py:693 msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" +msgstr "Le fichier téléchargé existe probablement dans la librairie, veuillez le modifier avant de le télécharger de nouveau: " -#: cps/editbooks.py:707 +#: cps/editbooks.py:709 #, python-format -msgid "Failed to store file %(file)s (Permission denied)." -msgstr "Impossible d'enregistrer le fichier %(file)s (permission refusée)" +msgid "Failed to Move File %(file)s: %(error)s" +msgstr "" -#: cps/editbooks.py:713 +#: cps/editbooks.py:723 #, python-format -msgid "Failed to delete file %(file)s (Permission denied)." -msgstr "Impossible de supprimer le fichier %(file)s (permission refusée)" +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" -#: cps/editbooks.py:804 +#: cps/editbooks.py:808 #, python-format msgid "File %(file)s uploaded" -msgstr "" +msgstr "Le fichier %(file)s a été téléchargé" -#: cps/editbooks.py:833 +#: cps/editbooks.py:837 msgid "Source or destination format for conversion missing" msgstr "Le format de conversion de la source ou de la destination est manquant" -#: cps/editbooks.py:841 +#: cps/editbooks.py:845 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Le livre a été mis avec succès en file de traitement pour conversion vers %(book_format)s" -#: cps/editbooks.py:845 +#: cps/editbooks.py:849 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Une erreur est survenue au cours de la conversion du livre : %(res)s" @@ -394,7 +394,7 @@ msgstr "La configuration de Google Drive n’est pas terminée, essayez de désa #: cps/gdrive.py:103 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" -msgstr "Le domaine de retour d’appel (Callback domain) est non vérifié, Veuillez suivre les étapes nécessaires pour vérifier le domaine dans la console de développement de Google" +msgstr "Le domaine de retour d’appel (Callback domain) est non vérifié, veuillez suivre les étapes nécessaires pour vérifier le domaine dans la console de développement de Google" #: cps/helper.py:80 #, python-format @@ -457,118 +457,118 @@ msgstr "Courriel : %(book)s" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Le fichier demandé n’a pu être lu. Problème de permission d’accès ?" -#: cps/helper.py:299 +#: cps/helper.py:300 #, python-format msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" -msgstr "" +msgstr "La suppression du livre %(id)s a échoué, le chemin a des sous-répertoires: %(path)s" -#: cps/helper.py:309 +#: cps/helper.py:310 #, python-format msgid "Deleting book %(id)s failed: %(message)s" -msgstr "" +msgstr "La suppression du livre %(id)s a échoué: %(message)s" -#: cps/helper.py:319 +#: cps/helper.py:320 #, python-format msgid "Deleting book %(id)s failed, book path not valid: %(path)s" -msgstr "" +msgstr "La suppression du livre %(id)s a échoué, le chemin du livre est invalide: %(path)s" -#: cps/helper.py:354 +#: cps/helper.py:355 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renommer le titre de : '%(src)s' à '%(dest)s' a échoué avec l’erreur : %(error)s" -#: cps/helper.py:364 +#: cps/helper.py:365 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renommer l’auteur de : '%(src)s' à '%(dest)s' a échoué avec l’erreur : %(error)s" -#: cps/helper.py:378 +#: cps/helper.py:379 #, python-format msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "La modification du nom de fichier du chemin : '%(src)s' vers '%(dest)s' a échoué avec l’erreur : %(error)s" -#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 +#: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423 #, python-format msgid "File %(file)s not found on Google Drive" -msgstr "" +msgstr "Le fichier %(file)s n'a pas été trouvé dans Google Drive" -#: cps/helper.py:443 +#: cps/helper.py:444 #, python-format msgid "Book path %(path)s not found on Google Drive" -msgstr "" +msgstr "Le chemin du livre %(path)s n'a pas été trouvé dans Google Drive" -#: cps/helper.py:550 +#: cps/helper.py:551 msgid "Failed to create path for cover" -msgstr "" +msgstr "Impossible de créer le chemin pour la couverture" -#: cps/helper.py:555 +#: cps/helper.py:556 msgid "Cover-file is not a valid image file, or could not be stored" -msgstr "" +msgstr "Le fichier couverture n'est pas un fichier image valide, ou ne peut pas être stocké" -#: cps/helper.py:566 +#: cps/helper.py:567 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" -msgstr "" +msgstr "Seuls les fichiers jpg/jpeg/png/webp sont supportés comme fichier de couverture" -#: cps/helper.py:580 +#: cps/helper.py:581 msgid "Only jpg/jpeg files are supported as coverfile" -msgstr "" +msgstr "Seuls les fichiers jpg/jpeg sont supportés comme fichier de couverture" -#: cps/helper.py:622 +#: cps/helper.py:623 msgid "Unrar binary file not found" -msgstr "" +msgstr "Fichier binaire Unrar non trouvé" -#: cps/helper.py:635 +#: cps/helper.py:636 msgid "Error excecuting UnRar" -msgstr "" +msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:691 +#: cps/helper.py:692 msgid "Waiting" -msgstr "Patienter" +msgstr "En attente" -#: cps/helper.py:693 +#: cps/helper.py:694 msgid "Failed" msgstr "Echoué" -#: cps/helper.py:695 +#: cps/helper.py:696 msgid "Started" -msgstr "Débué" +msgstr "Débuté" -#: cps/helper.py:697 +#: cps/helper.py:698 msgid "Finished" msgstr "Terminé" -#: cps/helper.py:699 +#: cps/helper.py:700 msgid "Unknown Status" msgstr "Statut inconnu" -#: cps/helper.py:704 +#: cps/helper.py:705 msgid "E-mail: " msgstr "Courriel : " -#: cps/helper.py:706 cps/helper.py:710 +#: cps/helper.py:707 cps/helper.py:711 msgid "Convert: " msgstr "Convertir vers : " -#: cps/helper.py:708 +#: cps/helper.py:709 msgid "Upload: " msgstr "Téléverser : " -#: cps/helper.py:712 +#: cps/helper.py:713 msgid "Unknown Task: " msgstr "Tâche inconnue : " #: cps/kobo_auth.py:126 msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" -msgstr "" +msgstr "Veuilllez ne pas accéder à calibre-web par localhost pour obtenir un api_endpoint valide pour un appareil kobo" #: cps/kobo_auth.py:129 cps/kobo_auth.py:149 msgid "Kobo Setup" -msgstr "" +msgstr "Configuration Kobo" #: cps/oauth_bb.py:73 #, python-format msgid "Register with %(provider)s" -msgstr "" +msgstr "Enregistrer avec %(provider)s" #: cps/oauth_bb.py:154 msgid "Failed to log in with GitHub." @@ -580,11 +580,11 @@ msgstr "Impossible d’obtenir les informations d’utilisateur à partir de Git #: cps/oauth_bb.py:170 msgid "Failed to log in with Google." -msgstr "N’a pas réussi à se connecter avec Google." +msgstr "Échec de la connexion avec Google." #: cps/oauth_bb.py:175 msgid "Failed to fetch user info from Google." -msgstr "Échec à récupérer les informations des utilisateurs sur Google." +msgstr "Impossible d’obtenir les informations d’utilisateur avec Google." #: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #, python-format @@ -594,34 +594,34 @@ msgstr "vous êtes maintenant connecté sous : '%(nickname)s'" #: cps/oauth_bb.py:235 #, python-format msgid "Link to %(oauth)s Succeeded" -msgstr "" +msgstr "Lien vers %(oauth)s effectué avec succès" #: cps/oauth_bb.py:241 msgid "Login failed, No User Linked With OAuth Account" -msgstr "" +msgstr "La connexion a échoué, aucun utilisateur lié au compte OAuth" #: cps/oauth_bb.py:283 #, python-format msgid "Unlink to %(oauth)s Succeeded" -msgstr "" +msgstr "Suppression de la liaison vers %(oauth)s effectuée avec succès" #: cps/oauth_bb.py:287 #, python-format msgid "Unlink to %(oauth)s Failed" -msgstr "" +msgstr "Suppression de la liaison vers %(oauth)s a échoué" #: cps/oauth_bb.py:290 #, python-format msgid "Not Linked to %(oauth)s." -msgstr "" +msgstr "Non lié à %(oauth)s." #: cps/oauth_bb.py:318 msgid "GitHub Oauth error, please retry later." -msgstr "Erreur GitHub Oauth, veuillez réessayer plus tard." +msgstr "Erreur Oauth GitHub, veuillez réessayer plus tard." #: cps/oauth_bb.py:337 msgid "Google Oauth error, please retry later." -msgstr "Erreur Google Oauth, veuillez réessayer plus tard." +msgstr "Erreur Oauth Google, veuillez réessayer plus tard." #: cps/shelf.py:67 cps/shelf.py:112 msgid "Invalid shelf specified" @@ -630,7 +630,7 @@ msgstr "L’étagère indiquée est invalide" #: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" -msgstr "Désolé, vous n’êtes pas autorisé à ajouter un livre dans l’étagère %(shelfname)s" +msgstr "Désolé, vous n’êtes pas autorisé à ajouter un livre dans l’étagère: %(shelfname)s" #: cps/shelf.py:83 #, python-format @@ -675,12 +675,12 @@ msgstr "Désolé, vous n’êtes pas autorisé à enlever un livre de cette éta #: cps/shelf.py:221 cps/shelf.py:261 #, python-format msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" +msgstr "Une étagère publique avec le nom '%(title)s' existe déjà." #: cps/shelf.py:230 cps/shelf.py:271 #, python-format msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" +msgstr "Une étagère privée avec le nom '%(title)s' existe déjà." #: cps/shelf.py:237 #, python-format @@ -693,7 +693,7 @@ msgstr "Il y a eu une erreur" #: cps/shelf.py:241 cps/shelf.py:243 cps/templates/layout.html:143 msgid "Create a Shelf" -msgstr "créer une étagère" +msgstr "Créer une étagère" #: cps/shelf.py:283 #, python-format @@ -715,7 +715,7 @@ msgstr "Erreur à l’ouverture de l’étagère. Elle n’existe plus ou n’es #: cps/shelf.py:368 msgid "Hidden Book" -msgstr "" +msgstr "Livre caché" #: cps/shelf.py:373 #, python-format @@ -753,7 +753,7 @@ msgstr "Livres lus" #: cps/ub.py:75 msgid "Show read and unread" -msgstr "Montrer lu et non-lu" +msgstr "Montrer lus et non-lus" #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/web.py:1129 @@ -762,7 +762,7 @@ msgstr "Livres non-lus" #: cps/ub.py:79 msgid "Show unread" -msgstr "Afficher non lu" +msgstr "Afficher non-lus" #: cps/ub.py:80 msgid "Discover" @@ -820,11 +820,11 @@ msgstr "Notes" #: cps/ub.py:102 msgid "Show ratings selection" -msgstr "Afficher la sélection des notes" +msgstr "Afficher la sélection des évaluations" #: cps/templates/index.xml:104 cps/ub.py:103 msgid "File formats" -msgstr "Format de fichier" +msgstr "Formats de fichier" #: cps/ub.py:105 msgid "Show file formats selection" @@ -832,11 +832,11 @@ msgstr "Afficher la sélection des formats de fichiers" #: cps/ub.py:107 cps/web.py:1150 msgid "Archived Books" -msgstr "" +msgstr "Livres archivés" #: cps/ub.py:109 msgid "Show archived books" -msgstr "" +msgstr "Afficher les livres archivés" #: cps/updater.py:294 cps/updater.py:305 cps/updater.py:406 cps/updater.py:420 msgid "Unexpected data while reading update information" @@ -861,7 +861,7 @@ msgstr "Aucune information concernant cette version n’est disponible" #: cps/updater.py:456 cps/updater.py:467 cps/updater.py:486 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la version %(version)s" +msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la version: %(version)s" #: cps/updater.py:477 msgid "Click on the button below to update to the latest stable version." @@ -870,31 +870,31 @@ msgstr "Téléchargez la dernière version en cliquant sur le bouton ci-dessous. #: cps/web.py:306 #, python-format msgid "Error: %(ldaperror)s" -msgstr "" +msgstr "Erreur: %(ldaperror)s" #: cps/web.py:310 msgid "Error: No user returned in response of LDAP server" -msgstr "" +msgstr "Erreur: Aucun utilisateur renvoyé dans la réponse LDAP du serveur" #: cps/web.py:358 msgid "Failed to Create at Least One LDAP User" -msgstr "" +msgstr "Impossible de créer au moins un utilisateur LDAP" #: cps/web.py:361 msgid "At Least One LDAP User Not Found in Database" -msgstr "" +msgstr "Au moins un utilisateur LDAP n'a pas été trouvé dans la base de données" #: cps/web.py:363 msgid "User Successfully Imported" -msgstr "" +msgstr "L'utilisateur a été importé avec succès" #: cps/web.py:587 msgid "Recently Added Books" -msgstr "Ajouts récents" +msgstr "Ajouts récents de livres" #: cps/templates/index.html:5 cps/web.py:623 msgid "Discover (Random Books)" -msgstr "Découverte (livres au hasard)" +msgstr "Découvrir (Livres au hasard)" #: cps/web.py:651 msgid "Books" @@ -906,7 +906,7 @@ msgstr "Livres populaires (les plus téléchargés)" #: cps/web.py:688 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" -msgstr "Erreur d'ouverture du livre numérique. Le fichier n'existe pas ou n'est pas accessible :" +msgstr "Erreur d'ouverture du livre numérique. Le fichier n'existe pas ou n'est pas accessible" #: cps/web.py:702 #, python-format @@ -916,7 +916,7 @@ msgstr "Auteur: %(name)s" #: cps/web.py:714 #, python-format msgid "Publisher: %(name)s" -msgstr "Editeur : '%(name)s'" +msgstr "Éditeur : '%(name)s'" #: cps/web.py:725 #, python-format @@ -926,7 +926,7 @@ msgstr "Séries : %(serie)s" #: cps/web.py:736 #, python-format msgid "Rating: %(rating)s stars" -msgstr "Note: %(rating)s étoiles" +msgstr "Évaluation: %(rating)s étoiles" #: cps/web.py:748 #, python-format @@ -945,11 +945,11 @@ msgstr "Langue : %(name)s" #: cps/web.py:839 msgid "Ratings list" -msgstr "" +msgstr "Liste des évaluations" #: cps/web.py:852 msgid "File formats list" -msgstr "" +msgstr "Liste de formats de fichiers" #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 msgid "Tasks" @@ -986,7 +986,7 @@ msgstr "recherche" #: cps/web.py:1201 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" -msgstr "Le livre a été mis en file de traitement avec succès pour un envois vers %(kindlemail)s" +msgstr "Le livre a été mis en file de traitement avec succès pour un envoi vers %(kindlemail)s" #: cps/web.py:1205 #, python-format @@ -995,11 +995,11 @@ msgstr "Il y a eu une erreur en envoyant ce livre : %(res)s" #: cps/web.py:1207 msgid "Please update your profile with a valid Send to Kindle E-mail Address." -msgstr "Veuillez configurer votre adresse de courriel Kindle en premier lieu…" +msgstr "Veuillez mettre à jour votre profil avec une adresse de courriel Kindle valide." #: cps/web.py:1224 msgid "E-Mail server is not configured, please contact your administrator!" -msgstr "" +msgstr "Le serveur de courriel n'est pas configuré, veuillez contacter votre administrateur!" #: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1265 cps/web.py:1269 @@ -1025,12 +1025,12 @@ msgstr "Impossible d’activer l’authentification LDAP" #: cps/web.py:1298 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" -msgstr "" +msgstr "Connexion de secours comme: '%(nickname)s', le serveur LDAP est indisponible, ou l'utilisateur est inconnu" #: cps/web.py:1304 #, python-format msgid "Could not login: %(message)s" -msgstr "" +msgstr "Impossible de se connecter: %(message)s" #: cps/web.py:1308 cps/web.py:1332 msgid "Wrong Username or Password" @@ -1038,11 +1038,11 @@ msgstr "Mauvais nom d'utilisateur ou mot de passe" #: cps/web.py:1315 msgid "New Password was send to your email address" -msgstr "" +msgstr "Le nouveau mot de passe a été envoyé vers votre adresse de courriel" #: cps/web.py:1321 msgid "Please enter valid username to reset password" -msgstr "" +msgstr "Veuillez entrer un nom d'utilisateur valide pour réinitialiser le mot de passe" #: cps/web.py:1327 #, python-format @@ -1076,7 +1076,7 @@ msgstr "Profil mis à jour" #: cps/web.py:1538 cps/web.py:1642 msgid "Error opening eBook. File does not exist or file is not accessible:" -msgstr "" +msgstr "Erreur lors de l'ouverture du livre. Le fichier n'existe pas ou le fichier est inaccessible:" #: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1568 @@ -1105,20 +1105,20 @@ msgstr "Liste des utilisateurs" #: cps/templates/login.html:9 cps/templates/register.html:7 #: cps/templates/user_edit.html:8 msgid "Username" -msgstr "Surnom" +msgstr "Nom d'utilisateur" #: cps/templates/admin.html:13 cps/templates/register.html:11 #: cps/templates/user_edit.html:13 msgid "E-mail Address" -msgstr "Courriel" +msgstr "Adresse de courriel" #: cps/templates/admin.html:14 cps/templates/user_edit.html:26 msgid "Send to Kindle E-mail Address" -msgstr "Kindle" +msgstr "Envoyer vers une adresse de courriel Kindle" #: cps/templates/admin.html:15 msgid "Downloads" -msgstr "DLS" +msgstr "Téléchargements" #: cps/templates/admin.html:16 cps/templates/layout.html:76 msgid "Admin" @@ -1132,7 +1132,7 @@ msgstr "Télécharger" #: cps/templates/admin.html:18 msgid "View Books" -msgstr "Afficher les Ebooks" +msgstr "Afficher les livres" #: cps/templates/admin.html:19 cps/templates/layout.html:65 msgid "Upload" @@ -1144,19 +1144,19 @@ msgstr "Éditer" #: cps/templates/admin.html:38 msgid "Add New User" -msgstr "" +msgstr "Ajouter un nouvel utilisateur" #: cps/templates/admin.html:40 cps/templates/admin.html:41 msgid "Import LDAP Users" -msgstr "" +msgstr "Importer des utilisateurs LDAP" #: cps/templates/admin.html:48 msgid "E-mail Server Settings" -msgstr "Paramètres du serveur SMTP" +msgstr "Paramètres du serveur de courriels" #: cps/templates/admin.html:51 cps/templates/email_edit.html:11 msgid "SMTP Hostname" -msgstr "Adresse du serveur SMTP" +msgstr "Nom d'hôte du serveur SMTP" #: cps/templates/admin.html:52 cps/templates/email_edit.html:15 msgid "SMTP Port" @@ -1164,7 +1164,7 @@ msgstr "Port du serveur SMTP" #: cps/templates/admin.html:53 cps/templates/email_edit.html:19 msgid "Encryption" -msgstr "SSL" +msgstr "Cryptage" #: cps/templates/admin.html:54 cps/templates/email_edit.html:27 msgid "SMTP Login" @@ -1176,7 +1176,7 @@ msgstr "Expéditeur des courriels" #: cps/templates/admin.html:65 msgid "Edit E-mail Server Settings" -msgstr "Modifier les paramètres SMTP" +msgstr "Modifier les paramètres du serveur de courriels" #: cps/templates/admin.html:71 msgid "Configuration" @@ -1200,7 +1200,7 @@ msgstr "Livres par page" #: cps/templates/admin.html:92 msgid "Uploads" -msgstr "Téléversement de fichier" +msgstr "Téléversements" #: cps/templates/admin.html:96 msgid "Anonymous Browsing" @@ -1208,27 +1208,27 @@ msgstr "Navigation anonyme" #: cps/templates/admin.html:100 msgid "Public Registration" -msgstr "Inscription public" +msgstr "Inscription publique" #: cps/templates/admin.html:104 msgid "Magic Link Remote Login" -msgstr "Connexion (\"magic link\")" +msgstr "Connexion à distance Magic Link" #: cps/templates/admin.html:108 msgid "Reverse Proxy Login" -msgstr "" +msgstr "Compte du Reverse Proxy" #: cps/templates/admin.html:113 msgid "Reverse proxy header name" -msgstr "" +msgstr "Nom de l'en-tête du Reverse Proxy" #: cps/templates/admin.html:118 msgid "Edit Basic Configuration" -msgstr "" +msgstr "Éditer la configuration principale" #: cps/templates/admin.html:119 msgid "Edit UI Configuration" -msgstr "" +msgstr "Configuration de l’interface utilisateur" #: cps/templates/admin.html:125 msgid "Administration" @@ -1264,11 +1264,11 @@ msgstr "Détails" #: cps/templates/admin.html:146 msgid "Current version" -msgstr "Version actuellement installée" +msgstr "Version actuelle" #: cps/templates/admin.html:152 msgid "Check for Update" -msgstr "Rechercher les mise à jour" +msgstr "Rechercher les mises à jour" #: cps/templates/admin.html:153 msgid "Perform Update" @@ -1281,7 +1281,7 @@ msgstr "Voulez-vous vraiment redémarrer Calibre-Web?" #: cps/templates/admin.html:170 cps/templates/admin.html:184 #: cps/templates/admin.html:204 cps/templates/shelf.html:72 msgid "OK" -msgstr "Oui" +msgstr "OK" #: cps/templates/admin.html:171 cps/templates/admin.html:185 #: cps/templates/book_edit.html:187 cps/templates/book_edit.html:217 @@ -1290,11 +1290,11 @@ msgstr "Oui" #: cps/templates/shelf.html:73 cps/templates/shelf_edit.html:19 #: cps/templates/user_edit.html:137 msgid "Cancel" -msgstr "" +msgstr "Annuler" #: cps/templates/admin.html:183 msgid "Are you sure you want to shutdown?" -msgstr "Voulez-Vous vraiment arrêter Calibre-Web?" +msgstr "Voulez-vous vraiment arrêter Calibre-Web?" #: cps/templates/admin.html:195 msgid "Updating, please do not reload this page" @@ -1326,7 +1326,7 @@ msgstr "Plus de" #: cps/templates/book_edit.html:10 msgid "Delete Book" -msgstr "Effacer le livre" +msgstr "Supprimer le livre" #: cps/templates/book_edit.html:13 msgid "Delete formats:" @@ -1348,7 +1348,7 @@ msgstr "Convertir depuis :" #: cps/templates/book_edit.html:30 cps/templates/book_edit.html:37 msgid "select an option" -msgstr "choisissez un format" +msgstr "choisir une option" #: cps/templates/book_edit.html:35 msgid "Convert to:" @@ -1374,31 +1374,31 @@ msgstr "Description" #: cps/templates/book_edit.html:66 msgid "Identifiers" -msgstr "" +msgstr "Identifiants" #: cps/templates/book_edit.html:70 cps/templates/book_edit.html:308 msgid "Identifier Type" -msgstr "" +msgstr "Type d'identifiant" #: cps/templates/book_edit.html:71 cps/templates/book_edit.html:309 msgid "Identifier Value" -msgstr "" +msgstr "Valeur d'identifiant" #: cps/templates/book_edit.html:72 cps/templates/book_edit.html:310 msgid "Remove" -msgstr "" +msgstr "Supprimer" #: cps/templates/book_edit.html:76 msgid "Add Identifier" -msgstr "" +msgstr "Ajouter un identifiant" #: cps/templates/book_edit.html:80 cps/templates/search_form.html:33 msgid "Tags" -msgstr "Étiquette" +msgstr "Étiquettes" #: cps/templates/book_edit.html:88 msgid "Series ID" -msgstr "" +msgstr "ID de séries" #: cps/templates/book_edit.html:92 msgid "Rating" @@ -1406,7 +1406,7 @@ msgstr "Évaluation" #: cps/templates/book_edit.html:96 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" -msgstr "URL de la couverture (jpg, la couverture est déposée sur le serveur et sauvegardée en base, ce champ est ensuite remis à vide)" +msgstr "Obtenir la couverture à partir d'une URL (JPEG - l'image sera téléchargée et sauvegardée dans la base de données)" #: cps/templates/book_edit.html:100 msgid "Upload Cover from Local Disk" @@ -1420,7 +1420,7 @@ msgstr "Date de publication" #: cps/templates/book_edit.html:298 cps/templates/detail.html:156 #: cps/templates/search_form.html:14 msgid "Publisher" -msgstr "Editeur" +msgstr "Éditeur" #: cps/templates/book_edit.html:116 cps/templates/detail.html:123 #: cps/templates/user_edit.html:31 @@ -1441,7 +1441,7 @@ msgstr "Format du fichier téléversé" #: cps/templates/book_edit.html:182 msgid "View Book on Save" -msgstr "voir le livre après l'édition" +msgstr "Voir le livre lors de la sauvegarde" #: cps/templates/book_edit.html:185 cps/templates/book_edit.html:229 msgid "Fetch Metadata" @@ -1451,15 +1451,15 @@ msgstr "Obtenir les métadonnées" #: cps/templates/config_view_edit.html:150 cps/templates/email_edit.html:38 #: cps/templates/shelf_edit.html:17 cps/templates/user_edit.html:135 msgid "Save" -msgstr "" +msgstr "Sauvegarder" #: cps/templates/book_edit.html:200 msgid "Are you really sure?" -msgstr "Etes-vous vraiment sur?" +msgstr "Êtes-vous vraiment sûr?" #: cps/templates/book_edit.html:204 msgid "This book will be permanently erased from database" -msgstr "Le livre va être supprimé de la base de données de Calibre" +msgstr "Le livre va être supprimé définitivement de la base de données" #: cps/templates/book_edit.html:205 msgid "and hard disk" @@ -1467,11 +1467,11 @@ msgstr "et du disque dur" #: cps/templates/book_edit.html:209 msgid "Important Kobo Note: deleted books will remain on any paired Kobo device." -msgstr "" +msgstr "Note Kobo importante: les livres supprimés vont rester sur l'appareil Kobo appairé." #: cps/templates/book_edit.html:210 msgid "Books must first be archived and the device synced before a book can safely be deleted." -msgstr "" +msgstr "Les livres doivent d'abord être archivés et l'appareil synchronisé avant qu'un livre puisse être supprimé en tout sécurité." #: cps/templates/book_edit.html:232 msgid "Keyword" @@ -1487,7 +1487,7 @@ msgstr "Cliquer sur la couverture pour importer les métadonnées dans le formul #: cps/templates/book_edit.html:254 cps/templates/book_edit.html:294 msgid "Loading..." -msgstr "Chargement…" +msgstr "Chargement..." #: cps/templates/book_edit.html:259 cps/templates/layout.html:189 #: cps/templates/layout.html:221 cps/templates/modal_restriction.html:34 @@ -1501,7 +1501,7 @@ msgstr "Source" #: cps/templates/book_edit.html:295 msgid "Search error!" -msgstr "Rechercher les erreur!" +msgstr "Erreur lors de la recherche!" #: cps/templates/book_edit.html:296 msgid "No Result(s) found! Please try another keyword." @@ -1549,19 +1549,19 @@ msgstr "Révoquer" #: cps/templates/config_edit.html:80 msgid "Server Configuration" -msgstr "Configuration réseau du serveur" +msgstr "Configuration du serveur" #: cps/templates/config_edit.html:87 msgid "Server Port" -msgstr "Numéro de port" +msgstr "Numéro de port du serveur" #: cps/templates/config_edit.html:91 msgid "SSL certfile location (leave it empty for non-SSL Servers)" -msgstr "Emplacement du certificat SSL (laisser vide pour les serveurs non SSL)" +msgstr "Emplacement du fichier certificat SSL (laisser vide pour les serveurs non SSL)" #: cps/templates/config_edit.html:95 msgid "SSL Keyfile location (leave it empty for non-SSL Servers)" -msgstr "Emplacement de la clé de chiffrement SSL (laisser vide pour les serveurs non SSL)" +msgstr "Emplacement du fichier Keyfile de chiffrement SSL (laisser vide pour les serveurs non SSL)" #: cps/templates/config_edit.html:99 msgid "Update Channel" @@ -1585,7 +1585,7 @@ msgstr "Nightly (Automatique)" #: cps/templates/config_edit.html:115 msgid "Logfile Configuration" -msgstr "Configuration du journal d’évenements" +msgstr "Configuration du fichier journal" #: cps/templates/config_edit.html:131 msgid "Location and name of logfile (calibre-web.log for no entry)" @@ -1617,19 +1617,19 @@ msgstr "Autoriser l’inscription publique" #: cps/templates/config_edit.html:170 msgid "Enable Magic Link Remote Login" -msgstr "Activer la connexion (\"magic link\")" +msgstr "Activer la connexion à distance Magic Link" #: cps/templates/config_edit.html:175 msgid "Enable Kobo sync" -msgstr "" +msgstr "Activer la synchro Kobo" #: cps/templates/config_edit.html:180 msgid "Proxy unknown requests to Kobo Store" -msgstr "" +msgstr "Requêtes du Proxy inconnues vers le magasin Kobo" #: cps/templates/config_edit.html:187 msgid "Use Goodreads" -msgstr "" +msgstr "Utiliser Goodreads" #: cps/templates/config_edit.html:188 msgid "Create an API Key" @@ -1645,15 +1645,15 @@ msgstr "Secret de l’API Goodreads" #: cps/templates/config_edit.html:203 msgid "Allow Reverse Proxy Authentication" -msgstr "" +msgstr "Autoriser l'authentification Reverse Proxy" #: cps/templates/config_edit.html:207 msgid "Reverse Proxy Header Name" -msgstr "" +msgstr "Nom de l'en-tête du Reverse Proxy" #: cps/templates/config_edit.html:214 msgid "Login type" -msgstr "Type d’authentification" +msgstr "Type de connexion" #: cps/templates/config_edit.html:216 msgid "Use Standard Authentication" @@ -1669,15 +1669,15 @@ msgstr "Utiliser OAuth" #: cps/templates/config_edit.html:228 msgid "LDAP Server Host Name or IP Address" -msgstr "" +msgstr "Nom d'hôte ou Adresse IP du serveur LDAP" #: cps/templates/config_edit.html:232 msgid "LDAP Server Port" -msgstr "" +msgstr "Port du serveur LDAP" #: cps/templates/config_edit.html:236 msgid "LDAP Encryption" -msgstr "" +msgstr "Cryptage LDAP" #: cps/templates/config_edit.html:238 cps/templates/config_view_edit.html:61 #: cps/templates/email_edit.html:21 @@ -1686,82 +1686,82 @@ msgstr "Aucun" #: cps/templates/config_edit.html:239 msgid "TLS" -msgstr "" +msgstr "TLS" #: cps/templates/config_edit.html:240 msgid "SSL" -msgstr "" +msgstr "SSL" #: cps/templates/config_edit.html:245 msgid "LDAP Certificate Path" -msgstr "" +msgstr "Chemin du certificat LDAP" #: cps/templates/config_edit.html:250 msgid "LDAP Authentication" -msgstr "" +msgstr "Authentification LDAP" #: cps/templates/config_edit.html:252 msgid "Anonymous" -msgstr "" +msgstr "Anonyme" #: cps/templates/config_edit.html:253 msgid "Unauthenticated" -msgstr "" +msgstr "Non authentifié" #: cps/templates/config_edit.html:254 msgid "Simple" -msgstr "" +msgstr "Simple" #: cps/templates/config_edit.html:259 msgid "LDAP Administrator Username" -msgstr "" +msgstr "Nom d'utilisateur de l'administrateur LDAP" #: cps/templates/config_edit.html:265 msgid "LDAP Administrator Password" -msgstr "" +msgstr "Mot de passe de l'administrateur LDAP" #: cps/templates/config_edit.html:270 msgid "LDAP Distinguished Name (DN)" -msgstr "" +msgstr "LDAP Distinguished Name (DN)" #: cps/templates/config_edit.html:274 msgid "LDAP User Object Filter" -msgstr "" +msgstr "Filtre objet de l'utilisateur LDAP" #: cps/templates/config_edit.html:279 msgid "LDAP Server is OpenLDAP?" -msgstr "" +msgstr "Est-ce que le serveur LDAP est OpenLDAP?" #: cps/templates/config_edit.html:281 msgid "Following Settings are Needed For User Import" -msgstr "" +msgstr "Les paramètres suivant sont nécessaire pour importer un utilisateur" #: cps/templates/config_edit.html:283 msgid "LDAP Group Object Filter" -msgstr "" +msgstr "Filtre objet de groupe LDAP" #: cps/templates/config_edit.html:287 msgid "LDAP Group Name" -msgstr "" +msgstr "Nom de groupe LDAP" #: cps/templates/config_edit.html:291 msgid "LDAP Group Members Field" -msgstr "" +msgstr "Champ des membres de groupe LDAP" #: cps/templates/config_edit.html:300 #, python-format msgid "Obtain %(provider)s OAuth Credential" -msgstr "" +msgstr "Obtenir les identifiants OAuth %(provider)s" #: cps/templates/config_edit.html:303 #, python-format msgid "%(provider)s OAuth Client Id" -msgstr "" +msgstr "Client Id OAuth %(provider)s" #: cps/templates/config_edit.html:307 #, python-format msgid "%(provider)s OAuth Client Secret" -msgstr "" +msgstr "Client secret OAuth %(provider)s" #: cps/templates/config_edit.html:323 msgid "External binaries" @@ -1822,7 +1822,7 @@ msgstr "Thème par défaut" #: cps/templates/config_view_edit.html:42 msgid "caliBlur! Dark Theme" -msgstr "thème caliBur! Dark Theme" +msgstr "Thème sombre caliBur!" #: cps/templates/config_view_edit.html:46 msgid "Regular Expression for Ignoring Columns" @@ -1834,7 +1834,7 @@ msgstr "Lier le statut lu/non lu à la colonne équivalente dans Calibre" #: cps/templates/config_view_edit.html:59 msgid "View Restrictions based on Calibre column" -msgstr "" +msgstr "Visualiser les restrictions basées sur la colonne Calibre" #: cps/templates/config_view_edit.html:68 msgid "Regular Expression for Title Sorting" @@ -1866,7 +1866,7 @@ msgstr "Permettre l'édition" #: cps/templates/config_view_edit.html:108 cps/templates/user_edit.html:113 msgid "Allow Delete Books" -msgstr "" +msgstr "Permettre la suppression de livres" #: cps/templates/config_view_edit.html:112 cps/templates/user_edit.html:118 msgid "Allow Changing Password" @@ -1886,11 +1886,11 @@ msgstr "Montrer aléatoirement des livres dans la vue détaillée" #: cps/templates/config_view_edit.html:144 cps/templates/user_edit.html:83 msgid "Add Allowed/Denied Tags" -msgstr "" +msgstr "Ajouter les étiquettes autorisées/refusées" #: cps/templates/config_view_edit.html:145 msgid "Add Allowed/Denied custom column values" -msgstr "" +msgstr "Ajouter les valeurs de colonnes autorisées/refusées" #: cps/templates/detail.html:59 msgid "Read in Browser" @@ -1898,7 +1898,7 @@ msgstr "Lire dans le navigateur" #: cps/templates/detail.html:72 msgid "Listen in Browser" -msgstr "Lire dans le navigateur" +msgstr "Écouter dans le navigateur" #: cps/templates/detail.html:117 msgid "Book" @@ -1910,7 +1910,7 @@ msgstr "de" #: cps/templates/detail.html:165 msgid "Published" -msgstr "" +msgstr "Publié" #: cps/templates/detail.html:200 msgid "Mark As Unread" @@ -1926,15 +1926,15 @@ msgstr "Lu" #: cps/templates/detail.html:208 msgid "Restore from archive" -msgstr "" +msgstr "Restaurer à partir de l'archive" #: cps/templates/detail.html:208 msgid "Add to archive" -msgstr "" +msgstr "Ajouter comme archive" #: cps/templates/detail.html:209 msgid "Archived" -msgstr "" +msgstr "Archivé" #: cps/templates/detail.html:219 msgid "Description:" @@ -1958,7 +1958,7 @@ msgstr "SSL/TLS" #: cps/templates/email_edit.html:31 msgid "SMTP Password" -msgstr "Mot de passe utilisateur SMTP" +msgstr "Mot de passe SMTP" #: cps/templates/email_edit.html:39 msgid "Save and Send Test E-mail" @@ -1966,7 +1966,7 @@ msgstr "Sauvegarder les réglages et tester l’envoi d’un courriel" #: cps/templates/email_edit.html:43 msgid "Allowed Domains (Whitelist)" -msgstr "Domaines autorisés pour l’inscription" +msgstr "Domaines autorisés (Liste blanche)" #: cps/templates/email_edit.html:46 cps/templates/email_edit.html:72 msgid "Add Domain" @@ -1982,7 +1982,7 @@ msgstr "Saisir le nom du domaine" #: cps/templates/email_edit.html:60 msgid "Denied Domains (Blacklist)" -msgstr "" +msgstr "Domaines refusés (Liste noire)" #: cps/templates/email_edit.html:90 msgid "Are you sure you want to delete this domain?" @@ -1995,11 +1995,11 @@ msgstr "Suivant" #: cps/templates/feed.xml:79 cps/templates/layout.html:136 #: cps/templates/layout.html:140 msgid "(Public)" -msgstr "" +msgstr "(Public)" #: cps/templates/generate_kobo_auth_url.html:5 msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" -msgstr "" +msgstr "Ouvrir le fichier .kobo/Kobo eReader.conf dans un éditeur de texte et ajouter (ou éditer):" #: cps/templates/http_error.html:38 msgid "Create Issue" @@ -2011,7 +2011,7 @@ msgstr "Retour à l’accueil" #: cps/templates/index.html:64 msgid "Group by series" -msgstr "Grouper par série" +msgstr "Grouper par séries" #: cps/templates/index.xml:6 msgid "Start" @@ -2023,11 +2023,11 @@ msgstr "Publications populaires depuis le catalogue basées sur les télécharge #: cps/templates/index.xml:28 msgid "Popular publications from this catalog based on Rating." -msgstr "Publications populaires de ce catalogue sur la base de notes." +msgstr "Publications populaires de ce catalogue sur la base des évaluations." #: cps/templates/index.xml:31 msgid "Recently added Books" -msgstr "" +msgstr "Livres récents ajoutés" #: cps/templates/index.xml:35 msgid "The latest Books" @@ -2059,23 +2059,23 @@ msgstr "Livres classés par série" #: cps/templates/index.xml:93 msgid "Books ordered by Languages" -msgstr "" +msgstr "Livres classés par langue" #: cps/templates/index.xml:100 msgid "Books ordered by Rating" -msgstr "" +msgstr "Livres classés par évaluation" #: cps/templates/index.xml:108 msgid "Books ordered by file formats" -msgstr "" +msgstr "Livres classés par formats de fichiers" #: cps/templates/index.xml:111 cps/templates/layout.html:134 msgid "Shelves" -msgstr "" +msgstr "Etagères" #: cps/templates/index.xml:115 msgid "Books organized in shelves" -msgstr "" +msgstr "Livres organisés par étagères" #: cps/templates/layout.html:28 msgid "Home" @@ -2092,7 +2092,7 @@ msgstr "Basculer la navigation" #: cps/templates/layout.html:45 msgid "Search Library" -msgstr "" +msgstr "Chercher une librairie" #: cps/templates/layout.html:55 msgid "Advanced Search" @@ -2117,11 +2117,11 @@ msgstr "Créer un compte" #: cps/templates/layout.html:116 cps/templates/layout.html:220 msgid "Uploading..." -msgstr "Téléversement en cours…" +msgstr "Téléversement en cours..." #: cps/templates/layout.html:117 msgid "Please do not refresh the page" -msgstr "" +msgstr "Veuillez ne pas rafraîchir la page" #: cps/templates/layout.html:127 msgid "Browse" @@ -2162,51 +2162,51 @@ msgstr "Se rappeler de moi" #: cps/templates/login.html:22 msgid "Forgot Password?" -msgstr "" +msgstr "Mot de passe oublié?" #: cps/templates/login.html:25 msgid "Log in with Magic Link" -msgstr "Se connecter avec le (\"magic link\")" +msgstr "Se connecter avec Magic Link" #: cps/templates/logviewer.html:6 msgid "Show Calibre-Web Log: " -msgstr "" +msgstr "Afficher le journal Calibre-Web: " #: cps/templates/logviewer.html:8 msgid "Calibre-Web Log: " -msgstr "" +msgstr "Journal Calibre-Web: " #: cps/templates/logviewer.html:8 msgid "Stream output, can't be displayed" -msgstr "" +msgstr "Le flux de sortie ne peut pas être affiché" #: cps/templates/logviewer.html:12 msgid "Show Access Log: " -msgstr "" +msgstr "Afficher le journal d'accès: " #: cps/templates/modal_restriction.html:6 msgid "Select Allowed/Denied Tags" -msgstr "" +msgstr "Sélectionner les étiquettes autorisées/refusées" #: cps/templates/modal_restriction.html:7 msgid "Select Allowed/Denied Custom Column Values" -msgstr "" +msgstr "Sélectionner les colonnes personnalisées autorisées/refusées" #: cps/templates/modal_restriction.html:8 msgid "Select Allowed/Denied Tags of User" -msgstr "" +msgstr "Sélectionner les étiquettes d'utilisateur autorisées/refusées" #: cps/templates/modal_restriction.html:9 msgid "Select Allowed/Denied Custom Column Values of User" -msgstr "" +msgstr "Sélectionner les colonnes personnalisées d'utilisateur autorisées/refusées" #: cps/templates/modal_restriction.html:15 msgid "Enter Tag" -msgstr "" +msgstr "Saisir une étiquette" #: cps/templates/modal_restriction.html:24 msgid "Add View Restriction" -msgstr "" +msgstr "Ajouter une restriction de visualisation" #: cps/templates/osd.xml:5 msgid "Calibre-Web eBook Catalog" @@ -2266,7 +2266,7 @@ msgstr "Sombre" #: cps/templates/readcbr.html:121 msgid "Scale" -msgstr "Echelle" +msgstr "Échelle" #: cps/templates/readcbr.html:124 msgid "Best" @@ -2334,11 +2334,11 @@ msgstr "Votre adresse de courriel" #: cps/templates/remote_login.html:4 msgid "Magic Link - Authorise New Device" -msgstr "" +msgstr "Magic Link - Autoriser un nouvel appareil" #: cps/templates/remote_login.html:6 msgid "On another device, login and visit:" -msgstr "Utilisez votre autre appareil, connectez-vous et visitez " +msgstr "Utilisez votre autre appareil, connectez-vous et visitez:" #: cps/templates/remote_login.html:10 msgid "Once verified, you will automatically be logged in on this device." @@ -2350,11 +2350,11 @@ msgstr "Le lien expirera après 10 minutes." #: cps/templates/search.html:5 msgid "No Results Found" -msgstr "" +msgstr "Aucun résultat trouvé" #: cps/templates/search.html:6 msgid "Search Term:" -msgstr "" +msgstr "Chercher le terme:" #: cps/templates/search.html:8 msgid "Results for:" @@ -2382,11 +2382,11 @@ msgstr "Exclure les langues" #: cps/templates/search_form.html:95 msgid "Extensions" -msgstr "" +msgstr "Extensions" #: cps/templates/search_form.html:105 msgid "Exclude Extensions" -msgstr "" +msgstr "Exclure les extensions" #: cps/templates/search_form.html:117 msgid "Rating Above" @@ -2414,11 +2414,11 @@ msgstr "Voulez-vous vraiment supprimer l’étagère?" #: cps/templates/shelf.html:70 msgid "Shelf will be deleted for all users" -msgstr "L’étagère sera supprimée pour tout le monde et de façon définitive !" +msgstr "L’étagère sera supprimée pour tous les utilisateus" #: cps/templates/shelf_edit.html:13 msgid "Share with Everyone" -msgstr "cette étagère doit-elle être publique ?" +msgstr "Partager avec tout le monde" #: cps/templates/shelf_order.html:5 msgid "Drag to Rearrange Order" @@ -2450,7 +2450,7 @@ msgstr "Librairies liées" #: cps/templates/stats.html:32 msgid "Program Library" -msgstr "Bibliothèque logiciel" +msgstr "Bibliothèque logicielle" #: cps/templates/stats.html:33 msgid "Installed Version" @@ -2514,29 +2514,29 @@ msgstr "Dissocier" #: cps/templates/user_edit.html:62 msgid "Kobo Sync Token" -msgstr "" +msgstr "Jeton de synchro Kobo" #: cps/templates/user_edit.html:64 msgid "Create/View" -msgstr "" +msgstr "Créer/visualiser" #: cps/templates/user_edit.html:84 msgid "Add allowed/Denied Custom Column Values" -msgstr "" +msgstr "Ajouter les valeurs de colonnes personnalisées autorisées/refusées" #: cps/templates/user_edit.html:129 msgid "Delete User" -msgstr "Supprimer cet utilisateur" +msgstr "Supprimer l'utilisateur" #: cps/templates/user_edit.html:144 msgid "Recent Downloads" -msgstr "Téléchargement récent" +msgstr "Téléchargements récents" #: cps/templates/user_edit.html:160 msgid "Generate Kobo Auth URL" -msgstr "" +msgstr "Générer l'URL d'authentification Kobo" #: cps/templates/user_edit.html:176 msgid "Do you really want to delete the Kobo Token?" -msgstr "" +msgstr "Voulez-vous vraiment supprimer le jeton Kobo?" diff --git a/messages.pot b/messages.pot index 50878325..78b1041e 100644 --- a/messages.pot +++ b/messages.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-05-08 14:54+0200\n" +"POT-Creation-Date: 2020-05-09 16:09+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" From e706e1a68dc4c19a9d518644f2d378df2cba2613 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sat, 9 May 2020 16:15:52 +0200 Subject: [PATCH 3/4] Update CONTRIBUTING.md --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3280b229..c06689a2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -32,7 +32,7 @@ If you're unable to find an **open issue** addressing the problem, open a [new o ### **Feature Request** -If there is afeature missing in Calibre-Web and you can't find a feature request in the [Issues](https://github.com/janeczku/calibre-web/issues) section, you could create a [feature request](https://github.com/janeczku/calibre-web/issues/new?assignees=&labels=&template=feature_request.md&title=). +If there is a feature missing in Calibre-Web and you can't find a feature request in the [Issues](https://github.com/janeczku/calibre-web/issues) section, you could create a [feature request](https://github.com/janeczku/calibre-web/issues/new?assignees=&labels=&template=feature_request.md&title=). We will not extend Calibre-Web with any more login abilitys or add further files storages, or file syncing ability. Furthermore Calibre-Web is made for home usage for company inhouse usage, so requests regarding any sorts of social interaction capability, payment routines, search engine or web site analytics integration will not be implemeted. ### **Contributing code to Calibre-Web** From 03d134697c66d4b6cb2d6c5d65e0007a9fe7d7d4 Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Sat, 9 May 2020 16:35:48 +0200 Subject: [PATCH 4/4] Fix #1361 (covers of archived books not shown) --- cps/helper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cps/helper.py b/cps/helper.py index c89bdf3d..85e48b3f 100644 --- a/cps/helper.py +++ b/cps/helper.py @@ -493,7 +493,7 @@ def get_cover_on_failure(use_generic_cover): def get_book_cover(book_id): - book = db.session.query(db.Books).filter(db.Books.id == book_id).filter(common_filters()).first() + book = db.session.query(db.Books).filter(db.Books.id == book_id).filter(common_filters(allow_show_archived=True)).first() return get_book_cover_internal(book, use_generic_cover_on_failure=True)