From 98711619ff82724aa7e7db07023ac990f9a1552f Mon Sep 17 00:00:00 2001 From: MaxJa4 <74194322+MaxJa4@users.noreply.github.com> Date: Tue, 8 Jun 2021 22:39:45 +0200 Subject: [PATCH 01/70] Create image_processing.py Added central function to rescale and compress images for recipes (or in general). Switched from previously used PNG format to 75% JPEG format for a 5-10x file size reduction with hardly any quality loss. --- cookbook/helper/image_processing.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 cookbook/helper/image_processing.py diff --git a/cookbook/helper/image_processing.py b/cookbook/helper/image_processing.py new file mode 100644 index 00000000..bf84070f --- /dev/null +++ b/cookbook/helper/image_processing.py @@ -0,0 +1,15 @@ +from PIL import Image +from io import BytesIO + + +def rescale_image(image_object, base_width=720): + img = Image.open(image_object) + icc_profile = img.info.get('icc_profile') # remember color profile to not mess up colors + width_percent = (base_width / float(img.size[0])) + height = int((float(img.size[1]) * float(width_percent))) + + img = img.resize((base_width, height), Image.ANTIALIAS) + img_bytes = BytesIO() + img.save(img_bytes, 'JPEG', quality=75, optimize=True, icc_profile=icc_profile) + + return img_bytes From 9856857c518066b911a7db67df001a56d0ede56e Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Fri, 11 Jun 2021 15:28:11 +0200 Subject: [PATCH 02/70] updated openeats importer --- cookbook/helper/ingredient_parser.py | 4 ++++ cookbook/integration/integration.py | 4 +++- docs/features/import_export.md | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/cookbook/helper/ingredient_parser.py b/cookbook/helper/ingredient_parser.py index 61d2a9db..b773c2f4 100644 --- a/cookbook/helper/ingredient_parser.py +++ b/cookbook/helper/ingredient_parser.py @@ -163,6 +163,8 @@ def parse(x): # small utility functions to prevent emtpy unit/food creation def get_unit(unit, space): + if not unit: + return None if len(unit) > 0: u, created = Unit.objects.get_or_create(name=unit, space=space) return u @@ -170,6 +172,8 @@ def get_unit(unit, space): def get_food(food, space): + if not food: + return None if len(food) > 0: f, created = Food.objects.get_or_create(name=food, space=space) return f diff --git a/cookbook/integration/integration.py b/cookbook/integration/integration.py index fb48308c..3dbb0f29 100644 --- a/cookbook/integration/integration.py +++ b/cookbook/integration/integration.py @@ -160,6 +160,9 @@ class Integration: except BadZipFile: il.msg += 'ERROR ' + _( 'Importer expected a .zip file. Did you choose the correct importer type for your data ?') + '\n' + except: + il.msg += 'ERROR ' + _( + 'An unexpected error occurred during the import. Please make sure you have uploaded a valid file.') + '\n' if len(self.ignored_recipes) > 0: il.msg += '\n' + _( @@ -217,4 +220,3 @@ class Integration: - data - string content for file to get created in export zip """ raise NotImplementedError('Method not implemented in integration') - diff --git a/docs/features/import_export.md b/docs/features/import_export.md index fc766bb4..90612af2 100644 --- a/docs/features/import_export.md +++ b/docs/features/import_export.md @@ -172,6 +172,7 @@ This zip file can simply be imported into Tandoor. OpenEats does not provide any way to export the data using the interface. Luckily it is relatively easy to export it from the command line. You need to run the command `python manage.py dumpdata recipe ingredient` inside of the application api container. If you followed the default installation method you can use the following command `docker-compose -f docker-prod.yml run --rm --entrypoint 'sh' api ./manage.py dumpdata recipe ingredient`. +This command might also work `docker exec -it openeats_api_1 ./manage.py dumpdata recipe ingredient > recipe_ingredients.json` Store the outputted json string in a `.json` file and simply import it using the importer. The file should look something like this ```json From fa12d02a3d4b6bb40218211bd9a951e033e407db Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Sat, 12 Jun 2021 20:22:30 +0200 Subject: [PATCH 03/70] fixed tests --- cookbook/serializer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/serializer.py b/cookbook/serializer.py index f64e0a9f..55ead321 100644 --- a/cookbook/serializer.py +++ b/cookbook/serializer.py @@ -295,7 +295,7 @@ class StepSerializer(WritableNestedModelSerializer): ingredients = IngredientSerializer(many=True) ingredients_markdown = serializers.SerializerMethodField('get_ingredients_markdown') ingredients_vue = serializers.SerializerMethodField('get_ingredients_vue') - file = UserFileViewSerializer(allow_null=True) + file = UserFileViewSerializer(allow_null=True, required=False) def get_ingredients_vue(self, obj): return obj.get_instruction_render() From 9751821f7626cf35140c50717259ab7224e353b7 Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Sat, 12 Jun 2021 20:30:41 +0200 Subject: [PATCH 04/70] updated base language files --- cookbook/locale/ca/LC_MESSAGES/django.po | 1244 +++++++++++++----- cookbook/locale/de/LC_MESSAGES/django.po | 1278 +++++++++++++----- cookbook/locale/en/LC_MESSAGES/django.po | 1143 ++++++++++++----- cookbook/locale/es/LC_MESSAGES/django.po | 1257 +++++++++++++----- cookbook/locale/fr/LC_MESSAGES/django.po | 1241 +++++++++++++----- cookbook/locale/hu_HU/LC_MESSAGES/django.po | 1147 ++++++++++++----- cookbook/locale/it/LC_MESSAGES/django.po | 1272 +++++++++++++----- cookbook/locale/lv/LC_MESSAGES/django.po | 1239 +++++++++++++----- cookbook/locale/nl/LC_MESSAGES/django.po | 1282 ++++++++++++++----- cookbook/locale/pt/LC_MESSAGES/django.po | 1204 ++++++++++++----- cookbook/locale/rn/LC_MESSAGES/django.po | 1143 ++++++++++++----- cookbook/locale/tr/LC_MESSAGES/django.po | 1143 ++++++++++++----- cookbook/locale/zh_CN/LC_MESSAGES/django.po | 1143 ++++++++++++----- recipes/locale/ca/LC_MESSAGES/django.po | 22 +- recipes/locale/de/LC_MESSAGES/django.po | 22 +- recipes/locale/en/LC_MESSAGES/django.po | 22 +- recipes/locale/es/LC_MESSAGES/django.po | 22 +- recipes/locale/fr/LC_MESSAGES/django.po | 22 +- recipes/locale/hu_HU/LC_MESSAGES/django.po | 22 +- recipes/locale/it/LC_MESSAGES/django.po | 22 +- recipes/locale/lv/LC_MESSAGES/django.po | 22 +- recipes/locale/nl/LC_MESSAGES/django.po | 22 +- recipes/locale/pt/LC_MESSAGES/django.po | 22 +- recipes/locale/rn/LC_MESSAGES/django.po | 22 +- recipes/locale/tr/LC_MESSAGES/django.po | 22 +- recipes/locale/zh_CN/LC_MESSAGES/django.po | 22 +- 26 files changed, 11460 insertions(+), 4562 deletions(-) diff --git a/cookbook/locale/ca/LC_MESSAGES/django.po b/cookbook/locale/ca/LC_MESSAGES/django.po index c8c04e8f..293d5a71 100644 --- a/cookbook/locale/ca/LC_MESSAGES/django.po +++ b/cookbook/locale/ca/LC_MESSAGES/django.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: Miguel Canteras , 2021\n" "Language-Team: Catalan (https://www.transifex.com/django-recipes/" @@ -24,14 +24,15 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Ingredients" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -39,13 +40,13 @@ msgstr "" "Color de la barra de navegació superior. No tots els colors funcionen amb " "tots els temes, només cal provar-los." -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" "Unitat per defecte que s'utilitzarà quan s'insereixi un ingredient nou en " "una recepta." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -53,7 +54,7 @@ msgstr "" "Permet l'ús de fraccions de quantitats d'ingredients (p.ex.: converteix els " "decimals a fraccions automàticament)" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." @@ -61,19 +62,19 @@ msgstr "" "Els usuaris que han creat elements d'un pla de menjars/llistat de compra " "s'haurien de compartir per defecte." -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Mostra les receptes vistes recentment a la pàgina de cerca." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Nombre de decimals dels ingredients." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "Si vols poder crear i veure comentaris a sota de les receptes." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -86,11 +87,11 @@ msgstr "" "diverses persones, però pot fer servir una mica de dades mòbils. Si és " "inferior al límit d’instància, es restablirà quan es desa." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -98,91 +99,94 @@ msgstr "" "Tots dos camps són opcionals. Si no se'n dóna cap, es mostrarà el nom " "d'usuari" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Nom" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Paraules clau" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Temps de preparació en minuts" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Temps d'espera (cocció/fornejat) en minuts" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Ruta" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "UID Emmagatzematge" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "Per defecte" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Nova Unitat" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "Nova unitat per la qual se substitueix una altra." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Unitat Antiga" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "Unitat que s’hauria de substituir." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Menjar Nou" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Nou menjar que altres substitueixen." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Antic Menjar" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Menjar que s’hauria de substituir." -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Afegir el teu comentari:" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" "Deixeu-lo buit per a Dropbox i introduïu la contrasenya de l'aplicació per a " "nextcloud." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "Deixeu-lo buit per a nextcloud i introduïu el token API per a Dropbox." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -190,26 +194,26 @@ msgstr "" "Deixeu-lo buit per a Dropbox i introduïu només l'URL base per a nextcloud " "(/remote.php/webdav/ s'afegeix automàticament)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Cerca Cadena" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "ID d'Arxiu" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Has de proporcionar com a mínim una recepta o un títol." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "Podeu llistar els usuaris predeterminats amb els quals voleu compartir " "receptes a la configuració." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -217,51 +221,58 @@ msgstr "" "Podeu utilitzar el marcador per donar format a aquest camp. Consulteu els documents aquí " -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"No cal un nom d’usuari, si es deixa en blanc el nou usuari en pot triar un." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "No teniu els permisos necessaris per veure aquesta pàgina!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "No heu iniciat la sessió i, per tant, no podeu veure aquesta pàgina." -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "No teniu els permisos necessaris per veure aquesta pàgina!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" "No pots interaccionar amb aquest objecte ja que no és de la teva propietat!" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" -"El lloc sol·licitat proporcionava dades malformades i no es pot llegir." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"El lloc sol·licitat no proporciona cap format de dades reconegut des d’on " -"importar la recepta." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Importat des de" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -271,47 +282,58 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importar" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, fuzzy, python-format #| msgid "Imported new recipe!" msgid "Imported %s recipes." msgstr "Nova Recepta importada!" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 #, fuzzy #| msgid "Note" msgid "Notes" msgstr "Nota" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 #, fuzzy #| msgid "Information" msgid "Nutritional Information" msgstr "Informació" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Racions" @@ -320,11 +342,11 @@ msgid "Waiting time" msgstr "Temps d'espera" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Temps de preparació" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -350,44 +372,74 @@ msgstr "Sopar" msgid "Other" msgstr "Un altre" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Cerca" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Plans de Menjar" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Receptes" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Petit" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Gran" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Nova" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Text" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Temps" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "ID d'Arxiu" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Edita" @@ -401,10 +453,6 @@ msgstr "Edita" msgid "Delete" msgstr "Esborra" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Enllaç" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "Error 404" @@ -421,21 +469,124 @@ msgstr "Porta'm a Casa" msgid "Report a Bug" msgstr "Reporta Errada" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Crea Capçalera" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "Eliminar" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Advertència" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Confirma" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Iniciar Sessió" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -449,116 +600,166 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "Registre" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Crear Compte" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Crear Usuari" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "Documentació API " -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Estris" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Compres" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Paraula Clau" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Edició per lots" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Emmagatzematge de dades" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Backends d'emmagatzematge" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Configurar Sync" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Receptes Descobertes" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Registre de descobriment" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Estadístiques" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Unitats i ingredients" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Importa recepta" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Opcions" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Historial" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Opcions" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Sistema" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Admin" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Guia Markdown" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "Navegador API" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Tancar Sessió" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -574,7 +775,7 @@ msgstr "" "Afegiu les paraules clau especificades a totes les receptes que continguin " "la paraula" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Sync" @@ -603,7 +804,7 @@ msgstr "Sincronitza Ara!" msgid "Importing Recipes" msgstr "Important Receptes" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -642,26 +843,33 @@ msgid "Export Recipes" msgstr "Exporta Receptes" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Exporta" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "ID d'Arxiu" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Importa nova Recepta" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Desa" @@ -670,181 +878,190 @@ msgstr "Desa" msgid "Edit Recipe" msgstr "Edita Recepta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Temps d'Espera" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Selecciona Paraules clau" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 #, fuzzy #| msgid "All Keywords" msgid "Add Keyword" msgstr "Totes les paraules clau" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Nutrició" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Esborra Pas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Calories" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Hidrats de carboni" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Greixos" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Proteïnes" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Pas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Mostra com a capçalera" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Amaga com a capçalera" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Mou Amunt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Mou Avall" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Nom del Pas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Tipus de Pas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Temps de pas en Minuts" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Selecciona Unitat" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Sel·lecciona un" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Crea" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Selecciona" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Selecciona Unitat" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Crea" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Selecciona Menjar" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Nota" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Esborra Ingredient" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Crea Capçalera" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Crea Ingredient" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Deshabilita Quantitat" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Habilita Quantitat" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Instruccions" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Desa i Comprova" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Afegir Pas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Afegeix nutrients" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Elimina nutrients" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Veure Recepta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Esborra Recepta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Passos" @@ -868,7 +1085,7 @@ msgstr "" "Combina dues unitats o ingredients i actualitza totes les receptes amb ells" #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Unitats" @@ -890,10 +1107,6 @@ msgstr "Estàs segur que vols combinar aquests dos ingredients?" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "Segur que vols esborrar el %(title)s:%(object)s" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Confirma" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Veure" @@ -915,12 +1128,6 @@ msgstr "Filtre" msgid "Import all" msgstr "Importa tot" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Nova" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -965,7 +1172,7 @@ msgstr "Tanca" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Recepta" @@ -1005,10 +1212,6 @@ msgstr "Cerca Recepta..." msgid "New Recipe" msgstr "Nova Recepta" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Importa desde Web" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Cerca Avançada" @@ -1022,7 +1225,7 @@ msgid "Last viewed" msgstr "Darrera visualització" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Receptes" @@ -1186,7 +1389,7 @@ msgid "New Entry" msgstr "Nova Entrada" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Cerca Recepta" @@ -1219,7 +1422,7 @@ msgstr "Crear només nota" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Llista de la Compra" @@ -1271,7 +1474,7 @@ msgstr "Creat per" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Compartit per" @@ -1348,7 +1551,6 @@ msgstr "No heu iniciat la sessió i, per tant, no podeu veure aquesta pàgina." #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1365,13 +1567,50 @@ msgid "" "action." msgstr "No teniu els permisos necessaris per dur a terme aquesta acció!" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Crear Usuari" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1388,28 +1627,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Comentaris" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Comentari" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Imatge de la Recepta" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Temps de Preparació ca." #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Temps d'Espera ca." @@ -1425,27 +1665,63 @@ msgstr "Registre de Cuines" msgid "Recipe Home" msgstr "Receptes" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Compte" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Opcions" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Opcions" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Settings" +msgid "Password Settings" +msgstr "Opcions" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Opcions" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Idioma" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Estil" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "Token API" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1453,7 +1729,7 @@ msgstr "" "Podeu utilitzar tant l’autenticació bàsica com l’autenticació basada en " "token per accedir a l’API REST." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1461,7 +1737,7 @@ msgstr "" "Utilitzeu el testimoni com a capçalera d'autorització prefixada per la " "paraula símbol tal com es mostra als exemples següents:" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "o" @@ -1484,59 +1760,56 @@ msgstr "" msgid "Create Superuser account" msgstr "Crear compte de superusuari" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Llista de Compra de Receptes" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "Recepta no sel·leccionada" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Quantitat" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "Supermercat" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "Seleccioni supermercat" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Selecciona usuari" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Acabat" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" "Estàs fora de línia, és possible que la llista de compra no es sincronitzi." -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Copia/Exporta" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Prefix de Llista" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "S'ha produït un error en crear un recurs." - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1548,10 +1821,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "Eliminar" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1561,38 +1830,97 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Estadístiques" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" +msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Nombre d'objectes" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Importacions de receptes" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Estadístiques d'objectes" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Receptes sense paraules clau" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Receptes Externes" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Receptes Internes" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Enllaços Invitació" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Admin" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +#, fuzzy +#| msgid "Remove" +msgid "remove" +msgstr "Eliminar" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "No podeu editar aquest emmagatzematge." + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "Encara no hi ha receptes en aquest llibre." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Enllaços Invitació" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Estadístiques" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Mostra Enllaços" @@ -1718,47 +2046,159 @@ msgstr "" "Això està bé, però no es recomana com alguns\n" "les funcions només funcionen amb bases de dades postgres." -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "Importació d’URL" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "Marcador desat!" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Introduïu l'URL del lloc web" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Veure Recepta" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Temps de preparació" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Temps" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Receptes Descobertes" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Mostra com a capçalera" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Esborra Pas" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Esborra Recepta" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Nom de la Recepta" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 #, fuzzy #| msgid "Recipe Markup Specification" msgid "Recipe Description" msgstr "Especificació de marcatge de receptes" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Sel·lecciona un" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Totes les paraules clau" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "Importa totes les paraules clau, no només les ja existents." -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Informació" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1777,52 +2217,80 @@ msgstr "" "un exemple a\n" "problemes de github." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Google ld+json Info" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "Problemes de GitHub" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Especificació de marcatge de receptes" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 #, fuzzy #| msgid "Parameter filter_list incorrectly formatted" msgid "Parameter updated_at incorrectly formatted" msgstr "El paràmetre filter_list té un format incorrecte" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "Sincronització correcte" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Error de sincronització amb emmagatzematge" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" +"El lloc sol·licitat proporcionava dades malformades i no es pot llegir." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "No s'ha pogut trobar la pàgina sol·licitada." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -"La pàgina sol·licitada refusa a proporcionar cap informació (Codi d’estat " -"403)." +"El lloc sol·licitat no proporciona cap format de dades reconegut des d’on " +"importar la recepta." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "No s'ha pogut trobar la pàgina sol·licitada." + +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1835,7 +2303,7 @@ msgid "Monitor" msgstr "Monitoratge" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Backend d'emmagatzematge" @@ -1846,8 +2314,8 @@ msgstr "" "No s'ha pogut suprimir aquest fons d'emmagatzematge, ja que s'utilitza en " "almenys un monitor." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Llibre de Receptes" @@ -1855,55 +2323,55 @@ msgstr "Llibre de Receptes" msgid "Bookmarks" msgstr "Marcadors" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Enllaç de invitació" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Menjar" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "No podeu editar aquest emmagatzematge." -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "Emmagatzematge desat." -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "S'ha produït un error en actualitzar aquest backend d'emmagatzematge." -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Emmagatzematge" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "Canvis desats!" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "Error al desar canvis!" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "Unitats fusionades!" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "Menjars Fusionats!" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1919,23 +2387,77 @@ msgstr "Descobriment" msgid "Shopping Lists" msgstr "Llistes de Compra" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "Nova Recepta importada!" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "S'ha produït un error en importar la recepta!" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "No teniu els permisos necessaris per dur a terme aquesta acció!" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "Comentari Desat!" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -1945,22 +2467,59 @@ msgstr "" "Si heu oblidat les vostres credencials de superusuari, consulteu la " "documentació de django sobre com restablir les contrasenyes." -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "Les contrasenyes no coincideixen!" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "L'usuari s'ha creat, si us plau inicieu la sessió!" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "S'ha proporcionat un enllaç d'invitació mal format." -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "No heu iniciat la sessió i, per tant, no podeu veure aquesta pàgina." + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "L'enllaç d'invitació no és vàlid o ja s'ha utilitzat." +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "No cal un nom d’usuari, si es deixa en blanc el nou usuari en pot triar " +#~ "un." + +#~ msgid "Imported from" +#~ msgstr "Importat des de" + +#~ msgid "Link" +#~ msgstr "Enllaç" + +#~ msgid "Logout" +#~ msgstr "Tancar Sessió" + +#~ msgid "Website Import" +#~ msgstr "Importa desde Web" + +#~ msgid "There was an error creating a resource!" +#~ msgstr "S'ha produït un error en crear un recurs." + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "" +#~ "La pàgina sol·licitada refusa a proporcionar cap informació (Codi d’estat " +#~ "403)." + #~ msgid "Number of servings" #~ msgstr "Nombre de racions" @@ -1979,6 +2538,3 @@ msgstr "L'enllaç d'invitació no és vàlid o ja s'ha utilitzat." #~ msgid "Preference for given user already exists" #~ msgstr "Ja existeix la preferència per a l'usuari" - -#~ msgid "Bookmark saved!" -#~ msgstr "Marcador desat!" diff --git a/cookbook/locale/de/LC_MESSAGES/django.po b/cookbook/locale/de/LC_MESSAGES/django.po index 9393eca9..86a42dc3 100644 --- a/cookbook/locale/de/LC_MESSAGES/django.po +++ b/cookbook/locale/de/LC_MESSAGES/django.po @@ -14,11 +14,11 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2021-05-01 13:01+0000\n" "Last-Translator: Marcel Paluch \n" -"Language-Team: German \n" +"Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -26,14 +26,15 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 4.5.3\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Zutaten" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -41,13 +42,13 @@ msgstr "" "Farbe der oberen Navigationsleiste. Nicht alle Farben passen, daher einfach " "mal ausprobieren!" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" "Standardeinheit, die beim Einfügen einer neuen Zutat in ein Rezept zu " "verwenden ist." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -55,7 +56,7 @@ msgstr "" "Unterstützung für Brüche in Zutaten aktivieren. Dadurch werden Dezimalzahlen " "mit Brüchen ersetzt, z.B. 0.5 mit ½." -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." @@ -63,21 +64,21 @@ msgstr "" "Nutzer, mit denen neue Pläne und Einkaufslisten standardmäßig geteilt werden " "sollen." -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Zuletzt angeschaute Rezepte bei der Suche anzeigen." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Anzahl an Dezimalstellen, auf die gerundet werden soll." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" "Wenn du in der Lage sein willst, Kommentare unter Rezepten zu erstellen und " "zu sehen." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -89,11 +90,11 @@ msgstr "" "aktualisiert. Dies ist nützlich, wenn mehrere Personen eine Liste beim " "Einkaufen verwenden, benötigt jedoch etwas Datenvolumen." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "Navigationsleiste wird oben angeheftet." -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -101,39 +102,42 @@ msgstr "" "Beide Felder sind optional. Wenn keins von beiden gegeben ist, wird der " "Nutzername angezeigt" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Name" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Schlagwörter" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Zubereitungszeit in Minuten" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Wartezeit (kochen/backen) in Minuten" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Pfad" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "Speicher-UID" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "Standard" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." @@ -141,51 +145,51 @@ msgstr "" "Um Duplikate zu vermeiden werden Rezepte mit dem gleichen Namen ignoriert. " "Aktivieren Sie dieses Kontrollkästchen, um alles zu importieren." -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Neue Einheit" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "Neue Einheit, die die alte ersetzt." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Alte Einheit" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "Einheit, die ersetzt werden soll." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Neue Zutat" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Neue Zutat, die die alte ersetzt." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Alte Zutat" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Zutat, die ersetzt werden soll." -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Schreibe einen Kommentar: " -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "Für Dropbox leer lassen, bei Nextcloud App-Passwort eingeben." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "Für Nextcloud leer lassen, für Dropbox API-Token eingeben." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -193,79 +197,85 @@ msgstr "" "Für Dropbox leer lassen, für Nextcloud Server-URL angeben (/remote.php/" "webdav/ wird automatisch hinzugefügt)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Suchwort" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "Datei-ID" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Mindestens ein Rezept oder ein Titel müssen angegeben werden." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "Sie können in den Einstellungen Standardbenutzer auflisten, für die Sie " "Rezepte freigeben möchten." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" msgstr "" -"Markdown kann genutzt werden, um dieses Feld zu formatieren. Siehe hier für weitere Information" +"Markdown kann genutzt werden, um dieses Feld zu formatieren. Siehe hier für weitere Information" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"Kein Benutzername benötigt. Wenn leer gelassen, kann der neue Benutzer einen " -"wählen." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "Du hast nicht die notwendigen Rechte um diese Seite zu sehen!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "Du bist nicht angemeldet, daher kannst du diese Seite nicht sehen!" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "Du hast nicht die notwendigen Rechte um diese Seite zu sehen!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" "Du kannst mit diesem Objekt nicht interagieren, da es dir nicht gehört!" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" -"Die angefragte Seite hat ungültige Daten zurückgegeben oder die Daten " -"konnten nicht verarbeitet werden." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"Die angefragte Seite stellt keine bekannten Datenformate zur Verfügung." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Importiert von" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -275,12 +285,16 @@ msgstr "Konnte den Template code nicht verarbeiten." #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importieren" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" @@ -288,31 +302,38 @@ msgstr "" "Importer erwartet eine .zip Datei. Hast du den richtigen Importer-Typ für " "deine Daten ausgewählt?" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "Die folgenden Rezepte wurden ignoriert da sie bereits existieren:" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "%s Rezepte importiert." -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "Notizen" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "Nährwert Informationen" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "Quelle" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 #, fuzzy msgid "Servings" msgstr "Portionen" @@ -322,11 +343,11 @@ msgid "Waiting time" msgstr "Wartezeit" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Vorbereitungszeit" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -352,44 +373,74 @@ msgstr "Abendessen" msgid "Other" msgstr "Andere" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Suche" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Essensplan" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Bücher" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Klein" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Groß" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Neu" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Text" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Zeit" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "Datei-ID" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Bearbeiten" @@ -403,10 +454,6 @@ msgstr "Bearbeiten" msgid "Delete" msgstr "Löschen" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Link" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "404 Fehler" @@ -423,21 +470,126 @@ msgstr "Zur Hauptseite" msgid "Report a Bug" msgstr "Fehler melden" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Überschrift erstellen" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "Entfernen" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Warnung" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Bestätigen" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Anmelden" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "Einloggen" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +#, fuzzy +#| msgid "Sign In" +msgid "Sign Up" +msgstr "Einloggen" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "Social Login" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "Du kannst jeden der folgenden Anbieter zum Einloggen verwenden." @@ -451,116 +603,168 @@ msgstr "Ausloggen" msgid "Are you sure you want to sign out?" msgstr "Willst du dich wirklich ausloggen?" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "Passwort Reset" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." +msgstr "" + +#: .\cookbook\templates\account\password_reset.html:32 +#, fuzzy +#| msgid "Password reset is not implemented for the time being!" +msgid "Password reset is disabled on this instance." msgstr "Passwort-Rücksetzung ist derzeit noch nicht implementiert!" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "Registrieren" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Account erstellen" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Nutzer erstellen" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "API-Dokumentation" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Utensilien" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Einkaufsliste" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Schlagwort" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Massenbearbeitung" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Datenquellen" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Speicherquellen" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Synchronisation einstellen" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Entdeckte Rezepte" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Entdeckungsverlauf" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistiken" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Einheiten & Zutaten" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Rezept importieren" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Einstellungen" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Verlauf" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Einstellungen" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "System" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Admin" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Markdown-Anleitung" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "API Browser" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Abmelden" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -576,7 +780,7 @@ msgstr "" "Ausgewählte Schlagwörter zu allen Rezepten, die das Suchwort enthalten, " "hinzufügen" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Synchronisieren" @@ -605,7 +809,7 @@ msgstr "Jetzt Synchronisieren!" msgid "Importing Recipes" msgstr "Rezepte werden importiert" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -644,26 +848,33 @@ msgid "Export Recipes" msgstr "Rezepte exportieren" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Exportieren" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "Datei-ID" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Rezept importieren" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Speichern" @@ -672,179 +883,188 @@ msgstr "Speichern" msgid "Edit Recipe" msgstr "Rezept bearbeiten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "Beschreibung" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Wartezeit" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "Portionen-Text" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Schlagwörter wählen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "Schlagwort hinzufügen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Nährwerte" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Schritt löschen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Kalorien" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Kohlenhydrate" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Fette" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Proteine" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Schritt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Als Überschrift anzeigen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Nicht als Überschrift anzeigen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Nach oben" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Nach unten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Name des Schritts" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Art des Schritts" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Zeit in Minuten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Einheit wählen" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Auswählen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Erstellen" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Auswählen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Einheit wählen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Erstellen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Zutat auswählen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Notiz" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Zutat löschen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Überschrift erstellen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Zutat erstellen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Menge deaktivieren" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Menge aktivieren" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "Kopiere Vorlagen-Referenz" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Anleitung" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Speichern & Ansehen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Schritt hinzufügen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Nährwerte hinzufügen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Nährwerte entfernen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Rezept ansehen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Rezept löschen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Schritte" @@ -871,7 +1091,7 @@ msgstr "" " " #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Einheiten" @@ -896,10 +1116,6 @@ msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "" "Bist du sicher, dass %(title)s: %(object)s gelöscht werden soll?" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Bestätigen" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Anschauen" @@ -921,12 +1137,6 @@ msgstr "Filter" msgid "Import all" msgstr "Alle importieren" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Neu" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -971,7 +1181,7 @@ msgstr "Schließen" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Rezept" @@ -1013,10 +1223,6 @@ msgstr "Rezept suchen..." msgid "New Recipe" msgstr "Neues Rezept" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Webseiten-Import" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Erweiterte Suche" @@ -1030,7 +1236,7 @@ msgid "Last viewed" msgstr "Zuletzt angesehen" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Rezepte" @@ -1192,7 +1398,7 @@ msgid "New Entry" msgstr "Neuer Eintrag" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Rezept suchen" @@ -1224,7 +1430,7 @@ msgstr "Nur Notiz erstellen" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Einkaufsliste" @@ -1276,7 +1482,7 @@ msgstr "Erstellt von" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Geteilt mit" @@ -1374,7 +1580,6 @@ msgstr "Du hast keine Gruppe und kannst daher diese Anwendung nicht nutzen." #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "Bitte kontaktiere einen Administrator." @@ -1391,14 +1596,53 @@ msgstr "" "Du hast nicht die notwendige Berechtigung, um diese Seite anzusehen oder " "diese Aktion durchzuführen!" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "Kein Space" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." -msgstr "Du bist kein Mitglied von einem Space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +#, fuzzy +#| msgid "No Space" +msgid "Join Space" +msgstr "Kein Space" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Nutzer erstellen" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." +msgstr "" #: .\cookbook\templates\offline.html:6 msgid "Offline" @@ -1416,28 +1660,29 @@ msgstr "" "Die unterhalb aufgelisteten Rezepte sind offline verfügbar, da du sie vor " "kurzem angesehen hast. Beachte, dass die Daten veraltetet sein könnten." -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Kommentare" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Kommentar" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Rezeptbild" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Zubereitungszeit ca." #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Wartezeit ca." @@ -1453,27 +1698,67 @@ msgstr "Kochen protokollieren" msgid "Recipe Home" msgstr "Rezept-Hauptseite" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Account" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" +msgstr "" + +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Einstellungen" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Einstellungen" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Password Reset" +msgid "Password Settings" +msgstr "Passwort Reset" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Einstellungen" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +#, fuzzy +#| msgid "Social Login" +msgid "Social" +msgstr "Social Login" + +#: .\cookbook\templates\settings.html:63 +#, fuzzy +#| msgid "Link social account" +msgid "Manage Social Accounts" msgstr "Social Account verlinken" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Sprache" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Stil" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "API-Token" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1481,7 +1766,7 @@ msgstr "" "Sowohl Basic Authentication als auch tokenbasierte Authentifizierung können " "für die REST-API verwendet werden." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1489,7 +1774,7 @@ msgstr "" "Nutz den Token als Authorization-Header mit der Präfix \"Token\" wie in " "folgendem Beispiel:" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "oder" @@ -1512,58 +1797,55 @@ msgstr "" msgid "Create Superuser account" msgstr "Administrator-Account Erstellen" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Einkaufs-Rezepte" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "Keine Rezepte ausgewählt" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "Eintrags-Modus" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "Eintrag hinzufügen" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Menge" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "Supermarkt" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "Supermarkt auswählen" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Nutzer auswählen" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Erledigt" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "Du bist offline, die Einkaufsliste wird ggf. nicht synchronisiert." -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Kopieren/Exportieren" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Listenpräfix" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "Es gab einen Fehler beim Erstellen einer Ressource!" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1577,10 +1859,6 @@ msgstr "" "Du kannst dich mit den folgenden Drittanbieter-Accounts\n" " anmelden:" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "Entfernen" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1591,38 +1869,99 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "Fremden Account hinzufügen" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Statistiken" +#: .\cookbook\templates\space.html:18 +#, fuzzy +#| msgid "Description" +msgid "Manage Subscription" +msgstr "Beschreibung" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Anzahl an Objekten" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Importierte Rezepte" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Objekt-Statistiken" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Rezepte ohne Schlagwort" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Externe Rezepte" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Interne Rezepte" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Einladungslinks" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Admin" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +#, fuzzy +#| msgid "Remove" +msgid "remove" +msgstr "Entfernen" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "Du kannst diese Speicherquelle nicht bearbeiten!" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "In diesem Buch sind bisher noch keine Rezepte." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Einladungslinks" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Statistiken" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Links anzeigen" @@ -1746,45 +2085,157 @@ msgstr "" "Ordnung, wird aber nicht empfohlen, da einige\n" "Funktionen nur mit einer Postgres-Datenbanken funktionieren." -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "URL-Import" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "Lesezeichen gespeichert!" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Webseite-URL eingeben" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" -msgstr "JSON direkt eingeben" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." +msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Rezept ansehen" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Vorbereitungszeit" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Zeit" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Entdeckte Rezepte" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Als Überschrift anzeigen" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Schritt löschen" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Rezept löschen" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Rezeptname" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "Rezept Beschreibung" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Auswählen" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Alle Schlagwörter" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "Alle Schlagwörter importieren, nicht nur die bereits bestehenden." -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Information" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1799,48 +2250,78 @@ msgstr "" "importiert werden kann, sie aber strukturierte Daten aufweist, kann ein " "GitHub-Issue geöffnet werden." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Google ld+json Informationen" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "GitHub-Issues" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Rezept-Markup-Spezifikation" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "Der Parameter updated_at ist falsch formatiert" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "Diese Funktion ist in der Demo-Version nicht verfügbar!" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "Synchronisation erfolgreich!" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Fehler beim Synchronisieren" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" +"Die angefragte Seite hat ungültige Daten zurückgegeben oder die Daten " +"konnten nicht verarbeitet werden." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "Die angefragte Seite konnte nicht gefunden werden." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." -msgstr "Die angefragte Seite hat die Anfrage abgelehnt (Status-Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" +"Die angefragte Seite stellt keine bekannten Datenformate zur Verfügung." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." -msgstr "Konnte Inhalt nicht korrekt parsen..." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "Die angefragte Seite konnte nicht gefunden werden." -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1853,7 +2334,7 @@ msgid "Monitor" msgstr "Überwachen" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Speicherquelle" @@ -1864,8 +2345,8 @@ msgstr "" "Speicherquelle konnte nicht gelöscht werden, da sie in mindestens einem " "Monitor verwendet wird." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Rezeptbuch" @@ -1873,55 +2354,55 @@ msgstr "Rezeptbuch" msgid "Bookmarks" msgstr "Lesezeichen" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Einladungslink" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Lebensmittel" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "Du kannst diese Speicherquelle nicht bearbeiten!" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "Speicherquelle gespeichert!" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "Es gab einen Fehler beim Aktualisieren dieser Speicherquelle!" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Speicher" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "Änderungen gespeichert!" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "Fehler beim Speichern der Daten!" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "Einheiten zusammengeführt!" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "Zusammenführen mit selben Objekt nicht möglich!" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "Zutaten zusammengeführt!" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "Importieren ist für diesen Anbieter noch nicht implementiert" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "Exportieren ist für diesen Anbieter noch nicht implementiert" @@ -1937,24 +2418,78 @@ msgstr "Entdecken" msgid "Shopping Lists" msgstr "Einkaufslisten" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "Neues Rezept importiert!" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "Beim Importieren des Rezeptes ist ein Fehler aufgetreten!" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" "Du hast nicht die notwendige Berechtigung, um diese Aktion durchzuführen!" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "Kommentar gespeichert!" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -1963,22 +2498,66 @@ msgstr "" "Die Setup-Seite kann nur für den ersten Nutzer verwendet werden. Zum " "Zurücksetzen von Passwörtern bitte der Django-Dokumentation folgen." -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "Passwörter stimmen nicht überein!" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "Benutzer wurde erstellt, bitte einloggen!" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "Fehlerhafter Einladungslink angegeben!" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "Du bist nicht angemeldet, daher kannst du diese Seite nicht sehen!" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "Einladungslink ungültig oder bereits genutzt!" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "Kein Benutzername benötigt. Wenn leer gelassen, kann der neue Benutzer " +#~ "einen wählen." + +#~ msgid "Imported from" +#~ msgstr "Importiert von" + +#~ msgid "Link" +#~ msgstr "Link" + +#~ msgid "Logout" +#~ msgstr "Abmelden" + +#~ msgid "Website Import" +#~ msgstr "Webseiten-Import" + +#~ msgid "You are not a member of any space." +#~ msgstr "Du bist kein Mitglied von einem Space." + +#~ msgid "There was an error creating a resource!" +#~ msgstr "Es gab einen Fehler beim Erstellen einer Ressource!" + +#~ msgid "Enter json directly" +#~ msgstr "JSON direkt eingeben" + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "Die angefragte Seite hat die Anfrage abgelehnt (Status-Code 403)." + +#~ msgid "Could not parse correctly..." +#~ msgstr "Konnte Inhalt nicht korrekt parsen..." + #~ msgid "Number of servings" #~ msgstr "Anzahl der Portionen" @@ -2000,6 +2579,3 @@ msgstr "Einladungslink ungültig oder bereits genutzt!" #~ msgid "This recipe is already linked to the book!" #~ msgstr "Dieses Rezept ist bereits mit dem Buch verlinkt!" - -#~ msgid "Bookmark saved!" -#~ msgstr "Lesezeichen gespeichert!" diff --git a/cookbook/locale/en/LC_MESSAGES/django.po b/cookbook/locale/en/LC_MESSAGES/django.po index 984625e1..48414be4 100644 --- a/cookbook/locale/en/LC_MESSAGES/django.po +++ b/cookbook/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,48 +18,49 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" msgstr "" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" msgstr "" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." msgstr "" -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "" -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "" -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -67,167 +68,181 @@ msgid "" "mobile data. If lower than instance limit it is reset when saving." msgstr "" -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "" -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "" -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" msgstr "" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "" -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" msgstr "" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -237,42 +252,53 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "" @@ -281,11 +307,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -311,44 +337,72 @@ msgstr "" msgid "Other" msgstr "" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +msgid "File" +msgstr "" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "" @@ -362,10 +416,6 @@ msgstr "" msgid "Delete" msgstr "" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "" @@ -382,21 +432,120 @@ msgstr "" msgid "Report a Bug" msgstr "" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +msgid "Make Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "Warning:" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -410,115 +559,161 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +msgid "Create an Account" msgstr "" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +msgid "Space Settings" +msgstr "" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "" -#: .\cookbook\templates\base.html:165 -msgid "Logout" +#: .\cookbook\templates\base.html:175 +msgid "Log out" msgstr "" #: .\cookbook\templates\batch\edit.html:6 @@ -533,7 +728,7 @@ msgstr "" msgid "Add the specified keywords to all recipes containing a word" msgstr "" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "" @@ -560,7 +755,7 @@ msgstr "" msgid "Importing Recipes" msgstr "" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -597,26 +792,31 @@ msgid "Export Recipes" msgstr "" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "" +#: .\cookbook\templates\files.html:7 +msgid "Files" +msgstr "" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "" @@ -625,179 +825,186 @@ msgstr "" msgid "Edit Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +msgid "Select File" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "" @@ -817,7 +1024,7 @@ msgid "" msgstr "" #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "" @@ -839,10 +1046,6 @@ msgstr "" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "" @@ -864,12 +1067,6 @@ msgstr "" msgid "Import all" msgstr "" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -914,7 +1111,7 @@ msgstr "" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "" @@ -947,10 +1144,6 @@ msgstr "" msgid "New Recipe" msgstr "" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "" @@ -964,7 +1157,7 @@ msgid "Last viewed" msgstr "" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "" @@ -1112,7 +1305,7 @@ msgid "New Entry" msgstr "" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "" @@ -1142,7 +1335,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "" @@ -1192,7 +1385,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "" @@ -1267,7 +1460,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1282,13 +1474,48 @@ msgid "" "action." msgstr "" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +msgid "Create Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1305,28 +1532,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "" @@ -1342,39 +1570,67 @@ msgstr "" msgid "Recipe Home" msgstr "" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +msgid "API-Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:39 +msgid "Name Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:47 +msgid "Password Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:55 +msgid "Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." msgstr "" -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" msgstr "" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "" @@ -1395,58 +1651,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1458,10 +1711,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1471,38 +1720,87 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +msgid "Invite User" +msgstr "" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +msgid "admin" +msgstr "" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +msgid "You cannot edit yourself." +msgstr "" + +#: .\cookbook\templates\space.html:117 +msgid "There are no members in your space yet!" +msgstr "" + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "" @@ -1600,45 +1898,141 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +msgid "Bookmark Me!" +msgstr "" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +msgid "Preview Recipe Data" +msgstr "" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +msgid "Prep Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:254 +msgid "Cook Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +msgid "Discovered Attributes" +msgstr "" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +msgid "Show Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +msgid "Delete Text" +msgstr "" + +#: .\cookbook\templates\url_import.html:413 +msgid "Delete image" +msgstr "" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1649,48 +2043,73 @@ msgid "" " github issues." msgstr "" -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "" -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +msgid "No useable data could be found." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1702,7 +2121,7 @@ msgid "Monitor" msgstr "" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "" @@ -1711,8 +2130,8 @@ msgid "" "Could not delete this storage backend as it is used in at least one monitor." msgstr "" -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "" @@ -1720,55 +2139,55 @@ msgstr "" msgid "Bookmarks" msgstr "" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1784,41 +2203,103 @@ msgstr "" msgid "Shopping Lists" msgstr "" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " "on how to reset passwords." msgstr "" -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +msgid "You are already member of a space and therefore cannot join this one." +msgstr "" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "" diff --git a/cookbook/locale/es/LC_MESSAGES/django.po b/cookbook/locale/es/LC_MESSAGES/django.po index 0e3be296..d0744710 100644 --- a/cookbook/locale/es/LC_MESSAGES/django.po +++ b/cookbook/locale/es/LC_MESSAGES/django.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: Miguel Canteras , 2021\n" "Language-Team: Spanish (https://www.transifex.com/django-recipes/" @@ -25,14 +25,15 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Ingredientes" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -40,13 +41,13 @@ msgstr "" "Color de la barra de navegación superior. No todos los colores funcionan con " "todos los temas, ¡pruébalos!" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" "Unidad predeterminada que se utilizará al insertar un nuevo ingrediente en " "una receta." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -54,7 +55,7 @@ msgstr "" "Permite utilizar fracciones en cantidades de ingredientes (e.g. convierte " "los decimales en fracciones automáticamente)" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." @@ -62,19 +63,19 @@ msgstr "" "Usuarios con los que las entradas recién creadas del plan de comida/lista de " "la compra deben compartirse de forma predeterminada." -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Muestra recetas vistas recientemente en la página de búsqueda." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Número de decimales para redondear los ingredientes." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "Si desea poder crear y ver comentarios debajo de las recetas." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -88,11 +89,11 @@ msgstr "" "valor establecido es inferior al límite de la instancia, este se " "restablecerá al guardar." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "Hace la barra de navegación fija en la parte superior de la página." -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -104,92 +105,95 @@ msgstr "" " \n" " " -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Nombre" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Palabras clave" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Tiempo de preparación en minutos" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Tiempo de espera (cocinar/hornear) en minutos" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Ruta" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "UID de almacenamiento" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "Por defecto" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Nueva Unidad" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "Nueva unidad que reemplaza a la anterior." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Antigua unidad" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "Unidad que se va a reemplazar." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Nuevo Alimento" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Nuevo alimento que remplaza al anterior." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Antiguo alimento" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Alimento que se va a reemplazar." -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Añada su comentario:" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" "Déjelo vacío para Dropbox e ingrese la contraseña de la aplicación para " "nextcloud." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" "Déjelo en blanco para nextcloud e ingrese el token de api para dropbox." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -197,26 +201,26 @@ msgstr "" "Dejar vació para Dropbox e introducir sólo la URL base para Nextcloud " "(/remote.php/webdav/ se añade automáticamente)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Cadena de búsqueda" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "ID de Fichero" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Debe proporcionar al menos una receta o un título." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "Puede enumerar los usuarios predeterminados con los que compartir recetas en " "la configuración." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -224,52 +228,57 @@ msgstr "" "Puede utilizar Markdown para formatear este campo. Vea la documentación aqui" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"No se requiere un nombre de usuario, si se deja en blanco, el nuevo usuario " -"puede elegir uno." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "¡No tienes los permisos necesarios para ver esta página!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "¡No ha iniciado sesión y por lo tanto no puede ver esta página!" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "¡No tienes los permisos necesarios para ver esta página!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "¡No puede interactuar con este objeto ya que no es de tu propiedad!" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" -"El sitio solicitado proporcionó datos con formato incorrecto y no se puede " -"leer." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"El sitio solicitado no proporciona ningún formato de datos reconocido para " -"importar la receta." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Importado de" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -279,12 +288,16 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importar" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" @@ -292,36 +305,43 @@ msgstr "" "El importador esperaba un fichero.zip. ¿Has escogido el tipo de importador " "correcto para tus datos?" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, fuzzy, python-format #| msgid "Imported new recipe!" msgid "Imported %s recipes." msgstr "¡Nueva receta importada!" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 #, fuzzy #| msgid "Note" msgid "Notes" msgstr "Nota" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 #, fuzzy #| msgid "Information" msgid "Nutritional Information" msgstr "Información" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Raciones" @@ -330,11 +350,11 @@ msgid "Waiting time" msgstr "Tiempo de espera" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Tiempo de Preparación" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -360,44 +380,74 @@ msgstr "Cena" msgid "Other" msgstr "Otro" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Buscar" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Régimen de comidas" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Libros" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Pequeño" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Grande" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Nuevo" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Texto" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Tiempo" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "ID de Fichero" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Editar" @@ -411,10 +461,6 @@ msgstr "Editar" msgid "Delete" msgstr "Eliminar" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Enlace" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "Error 404" @@ -431,21 +477,126 @@ msgstr "Llévame a Inicio" msgid "Report a Bug" msgstr "Reportar un error" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Crear encabezado" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "Eliminar" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Advertencia" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Confirmar" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Iniciar sesión" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "Iniciar sesión" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +#, fuzzy +#| msgid "Sign In" +msgid "Sign Up" +msgstr "Iniciar sesión" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "Inicio de sesión social" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" "Puedes usar cualquiera de los siguientes proveedores de inicio de sesión." @@ -460,116 +611,168 @@ msgstr "Salir" msgid "Are you sure you want to sign out?" msgstr "¿Seguro que quieres salir?" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "Restablecer contraseña" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." +msgstr "" + +#: .\cookbook\templates\account\password_reset.html:32 +#, fuzzy +#| msgid "Password reset is not implemented for the time being!" +msgid "Password reset is disabled on this instance." msgstr "¡Restablecimiento de contraseña no está implementado de momento!" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "Registrar" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Crea tu Cuenta" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Crear Usuario" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "Documentación de API" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Utensilios" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Compras" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Palabra clave" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Edición Masiva" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Almacenamiento de Datos" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Backends de Almacenamiento" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Configurar Sincronización" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Recetas Descubiertas" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Registro de descubrimiento" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Estadísticas" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Unidades e ingredientes" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Importar receta" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Opciones" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Historial" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Opciones" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Sistema" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Administrador" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Guia Markdown" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "Explorador de API" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Cerrar sesión" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -585,7 +788,7 @@ msgstr "" "Agregue las palabras clave especificadas a todas las recetas que contengan " "una palabra" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Sincronizar" @@ -614,7 +817,7 @@ msgstr "¡Sincronizar ahora!" msgid "Importing Recipes" msgstr "Importando Recetas" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -653,26 +856,33 @@ msgid "Export Recipes" msgstr "Exportar recetas" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Exportar" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "ID de Fichero" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Importar nueva receta" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Guardar" @@ -681,181 +891,190 @@ msgstr "Guardar" msgid "Edit Recipe" msgstr "Editar receta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "Descripción" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Tiempo de espera" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "Texto de raciones" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Seleccionar palabras clave" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 #, fuzzy #| msgid "All Keywords" msgid "Add Keyword" msgstr "Todas las palabras clave." -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Información Nutricional" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Eliminar paso" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Calorías" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Carbohidratos" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Grasas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Proteinas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Paso" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Mostrar como encabezado" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Ocultar como encabezado" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Mover Arriba" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Mover Abajo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Nombre del paso" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Tipo de paso" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Tiempo de paso en minutos" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Seleccionar unidad" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Seleccione uno" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Crear" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Seleccionar" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Seleccionar unidad" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Crear" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Seleccionar Alimento" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Nota" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Eliminar ingrediente" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Crear encabezado" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Crear ingrediente" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Deshabilitar cantidad" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Habilitar cantidad" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "Copiar Referencia de Plantilla" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Instrucciones" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Guardar y ver" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Agregar paso" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Añadir Información Nutricional" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Eliminar Información Nutricional" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Ver la receta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Eliminar receta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Pasos" @@ -882,7 +1101,7 @@ msgstr "" " " #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Unidades" @@ -904,10 +1123,6 @@ msgstr "¿Estás seguro de que quieres combinar estos dos ingredientes?" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "¿Estás seguro de que quieres borrar el %(title)s: %(object)s?" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Confirmar" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Ver" @@ -929,12 +1144,6 @@ msgstr "Filtro" msgid "Import all" msgstr "Importar todo" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Nuevo" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -979,7 +1188,7 @@ msgstr "Cerrar" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Receta" @@ -1021,10 +1230,6 @@ msgstr "Buscar receta ..." msgid "New Recipe" msgstr "Nueva receta" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Importación de sitios web" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Búsqueda Avanzada" @@ -1038,7 +1243,7 @@ msgid "Last viewed" msgstr "Visto por última vez" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Recetas" @@ -1204,7 +1409,7 @@ msgid "New Entry" msgstr "Nueva entrada" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Buscar Receta" @@ -1237,7 +1442,7 @@ msgstr "Crear sólo una nota" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Lista de la Compra" @@ -1289,7 +1494,7 @@ msgstr "Creado por" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Compartido con" @@ -1402,7 +1607,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1421,13 +1625,50 @@ msgid "" "action." msgstr "¡No tienes los permisos necesarios para realizar esta acción!" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Crear Usuario" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1447,28 +1688,29 @@ msgstr "" "porque las has visto recientemente. Ten en cuenta que los datos pueden estar " "desactualizados." -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Comentarios" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Comentario" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Imagen de la receta" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Tiempo de preparación ca." #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Tiempo de espera ca." @@ -1484,27 +1726,67 @@ msgstr "Registrar receta cocinada" msgid "Recipe Home" msgstr "Página de inicio" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Cuenta" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" +msgstr "" + +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Opciones" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Opciones" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Password Reset" +msgid "Password Settings" +msgstr "Restablecer contraseña" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Opciones" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +#, fuzzy +#| msgid "Social Login" +msgid "Social" +msgstr "Inicio de sesión social" + +#: .\cookbook\templates\settings.html:63 +#, fuzzy +#| msgid "Link social account" +msgid "Manage Social Accounts" msgstr "Enlazar cuenta social" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Idioma" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Estilo" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "Token API" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1512,7 +1794,7 @@ msgstr "" "Puedes utilizar tanto la autenticación básica como la autenticación basada " "en tokens para acceder a la API REST." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1520,7 +1802,7 @@ msgstr "" "Utilice el token como cabecera de autorización usando como prefijo la " "palabra token, tal y como se muestra en los siguientes ejemplos:" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "o" @@ -1543,58 +1825,55 @@ msgstr "" msgid "Create Superuser account" msgstr "Crear cuenta de Superusuario" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Recetas en el carro de la compra" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "No hay recetas seleccionadas" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "Modo de entrada" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "Añadir entrada" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Cantidad" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "Supermercado" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "Seleccionar supermercado" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Seleccionar Usuario" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Completada" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "Estás desconectado, la lista de la compra no se sincronizará." -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Copiar/Exportar" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Prefijo de la lista" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "¡Hubo un error al crear un recurso!" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1608,10 +1887,6 @@ msgstr "" "Puedes entrar en tu cuenta usando cualquiera de las siguientes cuentas de " "terceros:" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "Eliminar" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1621,38 +1896,99 @@ msgstr "Actualmente no tienes una cuenta social conectada a esta cuenta." msgid "Add a 3rd Party Account" msgstr "Añadir una cuenta de terceros" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Estadísticas" +#: .\cookbook\templates\space.html:18 +#, fuzzy +#| msgid "Description" +msgid "Manage Subscription" +msgstr "Descripción" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Número de objetos" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Recetas importadas" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Estadísticas de objetos" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Recetas sin palabras clave" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Recetas Externas" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Recetas Internas" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Enlaces de Invitación" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Administrador" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +#, fuzzy +#| msgid "Remove" +msgid "remove" +msgstr "Eliminar" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "¡No puede editar este almacenamiento!" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "Todavía no hay recetas en este libro." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Enlaces de Invitación" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Estadísticas" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Mostrar Enlaces" @@ -1785,47 +2121,159 @@ msgstr "" " características sólo funcionan con bases de datos Postgres.\n" " " -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "Importar URL" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "¡Marcador guardado!" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Introduce la URL del sitio web" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Ver la receta" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Tiempo de Preparación" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Tiempo" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Recetas Descubiertas" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Mostrar como encabezado" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Eliminar paso" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Eliminar receta" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Nombre de la Receta" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 #, fuzzy #| msgid "Description" msgid "Recipe Description" msgstr "Descripción" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Seleccione uno" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Todas las palabras clave." -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "Importar todas las palabras clave, no solo las ya existentes." -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Información" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1844,52 +2292,81 @@ msgstr "" "no dudes en poner un ejemplo en las\n" " propuestas de GitHub." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Información de Google ld+json" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "Propuestas de GitHub" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Especificación de anotaciones de la receta" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 #, fuzzy #| msgid "Parameter filter_list incorrectly formatted" msgid "Parameter updated_at incorrectly formatted" msgstr "Parámetro filter_list formateado incorrectamente" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "¡Esta funcionalidad no está disponible en la versión demo!" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "¡Sincronización exitosa!" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Error de sincronización con el almacenamiento" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" +"El sitio solicitado proporcionó datos con formato incorrecto y no se puede " +"leer." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "La página solicitada no pudo ser encontrada." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -"La página solicitada se negó a proporcionar información (Código de estado " -"403)." +"El sitio solicitado no proporciona ningún formato de datos reconocido para " +"importar la receta." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "La página solicitada no pudo ser encontrada." + +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1901,7 +2378,7 @@ msgid "Monitor" msgstr "Monitor" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Backend de Almacenamiento" @@ -1912,8 +2389,8 @@ msgstr "" "No se pudo borrar este backend de almacenamiento ya que se utiliza en al " "menos un monitor." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Libro de recetas" @@ -1921,55 +2398,55 @@ msgstr "Libro de recetas" msgid "Bookmarks" msgstr "Marcadores" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Enlace de invitación" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Comida" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "¡No puede editar este almacenamiento!" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "¡Almacenamiento guardado!" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "¡Hubo un error al actualizar este backend de almacenamiento!" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Almacenamiento" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "¡Cambios guardados!" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "¡Error al guardar los cambios!" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "¡Unidades fusionadas!" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "¡No se puede unir con el mismo objeto!" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "¡Alimentos fusionados!" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "La importación no está implementada para este proveedor" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "La exportación no está implementada para este proveedor" @@ -1985,23 +2462,77 @@ msgstr "Descubrimiento" msgid "Shopping Lists" msgstr "Listas de la compra" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "¡Nueva receta importada!" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "¡Hubo un error al importar esta receta!" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "¡No tienes los permisos necesarios para realizar esta acción!" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "¡Comentario guardado!" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -2011,22 +2542,59 @@ msgstr "" "usuario. Si has olvidado tus credenciales de superusuario, por favor " "consulta la documentación de django sobre cómo restablecer las contraseñas." -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "¡Las contraseñas no coinciden!" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "El usuario ha sido creado, ¡inicie sesión!" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "¡Se proporcionó un enlace de invitación con formato incorrecto!" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "¡No ha iniciado sesión y por lo tanto no puede ver esta página!" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "¡El enlace de invitación no es válido o ya se ha utilizado!" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "No se requiere un nombre de usuario, si se deja en blanco, el nuevo " +#~ "usuario puede elegir uno." + +#~ msgid "Imported from" +#~ msgstr "Importado de" + +#~ msgid "Link" +#~ msgstr "Enlace" + +#~ msgid "Logout" +#~ msgstr "Cerrar sesión" + +#~ msgid "Website Import" +#~ msgstr "Importación de sitios web" + +#~ msgid "There was an error creating a resource!" +#~ msgstr "¡Hubo un error al crear un recurso!" + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "" +#~ "La página solicitada se negó a proporcionar información (Código de estado " +#~ "403)." + #~ msgid "Number of servings" #~ msgstr "Número de raciones" @@ -2048,6 +2616,3 @@ msgstr "¡El enlace de invitación no es válido o ya se ha utilizado!" #~ msgid "This recipe is already linked to the book!" #~ msgstr "¡Esta receta ya está enlazada al libro!" - -#~ msgid "Bookmark saved!" -#~ msgstr "¡Marcador guardado!" diff --git a/cookbook/locale/fr/LC_MESSAGES/django.po b/cookbook/locale/fr/LC_MESSAGES/django.po index 0fc1e12f..2bea1ebe 100644 --- a/cookbook/locale/fr/LC_MESSAGES/django.po +++ b/cookbook/locale/fr/LC_MESSAGES/django.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: Grégoire Menuel , 2021\n" "Language-Team: French (https://www.transifex.com/django-recipes/teams/110507/" @@ -25,14 +25,15 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Ingrédients" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -40,13 +41,13 @@ msgstr "" "La couleur de la barre de navigation du haut. Toutes les couleurs ne " "marchent pas avec tous les thèmes, essayez-les !" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" "L'unité par défaut utilisée lors de l'ajout d'un nouvel ingrédient dans une " "recette." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -54,7 +55,7 @@ msgstr "" "Autorise l'usage des fractions dans les quantités des ingrédients (convertit " "les décimales en fractions automatiquement)" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." @@ -62,21 +63,21 @@ msgstr "" "Utilisateurs avec lesquels les listes de courses et plans de repas " "nouvellement créés seront partagés par défaut." -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Afficher les recettes récemment consultées sur la page de recherche." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Nombre de décimales pour arrondir les ingrédients." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" "Si vous souhaitez pouvoir créer et consulter des commentaires en-dessous des " "recettes." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -90,11 +91,11 @@ msgstr "" "données mobiles. Si la valeur est plus petite que les limites de l'instance, " "le paramètre sera réinitialisé." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -102,92 +103,95 @@ msgstr "" "Les deux champs sont facultatifs. Si aucun n'est rempli, le nom " "d'utilisateur sera affiché à la place " -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Nom" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Mot-clés" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Le temps de préparation en minutes" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Temps d'attente (pose/cuisson) en minutes" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Chemin" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "UID de stockage" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Nouvelle unité" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "La nouvelle unité qui remplacera l'autre." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Ancienne unité" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "L'unité qui doit être remplacée." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Nouvel ingrédient" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Nouvel ingrédient qui remplace les autres." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Ancien ingrédient" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Ingrédient qui devrait être remplacé" -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Ajoutez votre commentaire :" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" "Laissez vide pour Dropbox et renseigner votre mot de passe d'application " "pour Nextcloud." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" "Laissez vide pour Nextcloud et renseignez vote jeton d'API pour Dropbox." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -195,26 +199,26 @@ msgstr "" "Laisser vide pour Dropbox et saisissez seulement l'URL de base pour " "Nextcloud (/remote.php/webdav/ est ajouté automatiquement)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Texte recherché" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "ID du fichier" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Vous devez au moins fournir une recette ou un titre." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "Vous pouvez lister les utilisateurs par défaut avec qui partager des " "recettes dans les paramètres." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -222,52 +226,59 @@ msgstr "" "Vous pouvez utiliser du markdown pour mettre en forme ce champ. Voir la documentation ici" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"Il n'est pas obligatoire de renseigner un nom d'utilisateur. S'il est laissé " -"vide, le nouvel utilisateur pourra le choisir." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "Vous n'avez pas les droits suffisants pour afficher cette page !" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "Vous n'êtes pas connecté et ne pouvez donc pas afficher cette page !" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "Vous n'avez pas les droits suffisants pour afficher cette page !" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" "Vous ne pouvez pas interagir avec cet objet car il appartient à un autre " "utilisateur." -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "Le site web a renvoyé des données malformées et ne peut être lu." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"Le site web est dans un format qui ne permet pas d'importer automatiquement " -"la recette." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Importé depuis" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -277,47 +288,58 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importer" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, fuzzy, python-format #| msgid "Imported new recipe!" msgid "Imported %s recipes." msgstr "Nouvelle recette importée !" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 #, fuzzy #| msgid "Note" msgid "Notes" msgstr "Notes" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 #, fuzzy #| msgid "Information" msgid "Nutritional Information" msgstr "Information" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Portions" @@ -326,11 +348,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Temps de préparation" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -356,44 +378,74 @@ msgstr "Dîner" msgid "Other" msgstr "Autre" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Recherche" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Menu de la semaine" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Livres" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Petit" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Grand" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Nouveau" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Texte" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Temps" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "ID du fichier" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Modifier" @@ -407,10 +459,6 @@ msgstr "Modifier" msgid "Delete" msgstr "Supprimer" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Lien" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "Erreur 404" @@ -427,21 +475,124 @@ msgstr "Page d'accueil" msgid "Report a Bug" msgstr "Signaler un bogue" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Transformer en texte" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Avertissement" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Confirmer" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Connexion" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -455,116 +606,166 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "S'inscrire" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Créez votre compte" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Créer un utilisateur" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "Documentation API" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Ustensiles" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Courses" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Mot-clé" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Modification en masse" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Données de stockage" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Espaces de stockage" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Configurer synchro" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Recettes découvertes" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Historique des découvertes" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistiques" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Unités et ingrédients" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Importer une recette" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Paramètres" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Historique" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Paramètres" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Système" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Admin" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Guide Markdown" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "Navigateur API" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Déconnexion" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -578,7 +779,7 @@ msgstr "Modifier en masse les recettes" msgid "Add the specified keywords to all recipes containing a word" msgstr "Ajouter les mots-clés spécifiés à toutes les recettes contenant un mot" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Synchro" @@ -607,7 +808,7 @@ msgstr "Lancer la synchro !" msgid "Importing Recipes" msgstr "Importer des ecettes" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -646,26 +847,33 @@ msgid "Export Recipes" msgstr "Exporter des ecettes" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Exporter" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "ID du fichier" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Importer une nouvelle recette" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Sauvegarder" @@ -674,181 +882,190 @@ msgstr "Sauvegarder" msgid "Edit Recipe" msgstr "Modifier une recette" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Temps d'attente" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Sélectionner des mots-clés" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 #, fuzzy #| msgid "All Keywords" msgid "Add Keyword" msgstr "Tous les mots-clés" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Informations nutritionnelles" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Supprimer l'étape" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Calories" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Glucides" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Matières grasses" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Protéines" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Étape" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Afficher en entête" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Masquer en entête" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Remonter" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Descendre" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Nom de l'étape" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Type de l'étape" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Durée de l'étape en minutes" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Sélectionnez l'unité" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Faites votre choix" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Créer" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Sélectionner" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Sélectionnez l'unité" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Créer" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Sélectionnez l'ingrédient" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Notes" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Supprimer l'ingrédient" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Transformer en texte" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Transformer en ingrédient" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Sans quantité" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Avec quantité" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Instructions" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Sauvegarder et afficher" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Ajouter une étape" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Ajouter les informations nutritionnelles" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Supprimer les informations nutritionnelles" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Afficher la recette" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Supprimer la recette" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Étapes" @@ -873,7 +1090,7 @@ msgstr "" "qui les utilisent." #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Unités" @@ -895,10 +1112,6 @@ msgstr "Êtes-vous sûr(e) de vouloir fusionner ces deux ingrédients ?" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "Êtes-vous certain de vouloir supprimer %(title)s : %(object)s" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Confirmer" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Voir" @@ -920,12 +1133,6 @@ msgstr "Filtre" msgid "Import all" msgstr "Tout importer" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Nouveau" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -970,7 +1177,7 @@ msgstr "Fermer" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Recette" @@ -1010,10 +1217,6 @@ msgstr "Rechercher une recette..." msgid "New Recipe" msgstr "Nouvelle ecette" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Importer depuis un site web" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Recherche avancée" @@ -1027,7 +1230,7 @@ msgid "Last viewed" msgstr "Dernières recettes vues" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Recettes" @@ -1194,7 +1397,7 @@ msgid "New Entry" msgstr "Nouvelle ligne" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Rechercher une recette" @@ -1227,7 +1430,7 @@ msgstr "Créer uniquement une note" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Liste de courses" @@ -1278,7 +1481,7 @@ msgstr "Créé par" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Partagé avec" @@ -1355,7 +1558,6 @@ msgstr "Vous n'êtes pas connecté et ne pouvez donc pas afficher cette page !" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1372,13 +1574,50 @@ msgid "" "action." msgstr "Vous n'avez pas la permission d'effectuer cette action !" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Créer un utilisateur" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1395,28 +1634,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Commentaires" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Commentaire" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Image de la recette" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Temps de préparation" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Temps de repos" @@ -1432,27 +1672,63 @@ msgstr "Marquer cuisiné" msgid "Recipe Home" msgstr "Page d'accueil" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Compte" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Paramètres" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Paramètres" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Settings" +msgid "Password Settings" +msgstr "Paramètres" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Paramètres" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Langue" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Style" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "Jeton API" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1460,7 +1736,7 @@ msgstr "" "Vous pouvez utiliser à la fois l'authentification classique et " "l'authentification par jeton pour accéder à l'API REST." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1468,7 +1744,7 @@ msgstr "" "Utilisez le jeton dans l'entête d'autorisation préfixé par le mot \"token\" " "comme indiqué dans les exemples suivants :" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "ou" @@ -1489,59 +1765,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Recettes dans le panier" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "Pas de recettes sélectionnées" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Quantité" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Sélectionnez un utilisateur" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Terminé" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Copier/exporter" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Préfixe de la liste" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" -"Une erreur s\\\\'est produite lors de la création d\\\\'une ressource !" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1553,10 +1825,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1566,38 +1834,95 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" +msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Nombre d'objets" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Recettes importées" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Stats d'objets" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Recettes sans mots-clés" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Recettes externes" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Recettes internes" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Liens d'invitation" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Admin" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "Vous ne pouvez pas modifier ce stockage !" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "Il n'y a pas encore de recettes dans ce livre." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Liens d'invitation" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Stats" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Afficher les liens" @@ -1721,47 +2046,159 @@ msgstr "" "pas grave mais déconseillé car certaines fonctionnalités ne fonctionnent " "qu'avec une base de données Postgres." -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "Import URL" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "Marque-page enregistré !" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Saisissez l'URL du site web" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Afficher la recette" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Temps de préparation" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Temps" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Recettes découvertes" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Afficher en entête" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Supprimer l'étape" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Supprimer la recette" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Nom de la recette" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 #, fuzzy #| msgid "Recipe Markup Specification" msgid "Recipe Description" msgstr "Spécification Recipe Markup" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Faites votre choix" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Tous les mots-clés" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Information" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1777,50 +2214,79 @@ msgstr "" "données sufisamment structurées, n'hésitez pas à publier un exemple dans un " "ticket sur GitHub." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Google ld+json Info" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "Ticket GitHub" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Spécification Recipe Markup" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 #, fuzzy #| msgid "Parameter filter_list incorrectly formatted" msgid "Parameter updated_at incorrectly formatted" msgstr "Le paramètre filter_list n'est pas correctement formatté" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "Synchro réussie !" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Erreur lors de la synchronisation avec le stockage" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "Le site web a renvoyé des données malformées et ne peut être lu." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "La page souhaitée n'a pas été trouvée." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." -msgstr "La page souhaitée refuse de fournir des informations (erreur 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" +"Le site web est dans un format qui ne permet pas d'importer automatiquement " +"la recette." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "La page souhaitée n'a pas été trouvée." + +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1834,7 +2300,7 @@ msgid "Monitor" msgstr "Surveiller" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Espace de stockage" @@ -1845,8 +2311,8 @@ msgstr "" "Impossible de supprimer cet espace de stockage car il est utilisé dans au " "moins un dossier surveillé." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Livre de recettes" @@ -1854,56 +2320,56 @@ msgstr "Livre de recettes" msgid "Bookmarks" msgstr "Marque-pages" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Lien d'invitation" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Ingrédient" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "Vous ne pouvez pas modifier ce stockage !" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "Stockage sauvegardé !" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" "Une erreur s'est produite lors de la mise à jour de cet espace de stockage !" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Stockage" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "Modifications sauvegardées !" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "Erreur lors de la sauvegarde des modifications !" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "Unités fusionnées !" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "Ingrédient fusionné !" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1919,23 +2385,77 @@ msgstr "Découverte" msgid "Shopping Lists" msgstr "Listes de course" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "Nouvelle recette importée !" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "Une erreur s\\\\'est produite lors de l\\\\'import de cette recette !" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "Vous n'avez pas la permission d'effectuer cette action !" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "Commentaire enregistré !" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -1946,22 +2466,58 @@ msgstr "" "utilisateur, counsultez la documentation Django pour savoir comment " "réinitialiser le mot de passe." -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "Les mots de passe ne correspondent pas !" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "L'utilisateur a été créé, veuillez vous connecter !" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "Le lien d'invitation fourni est mal formé !" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "Vous n'êtes pas connecté et ne pouvez donc pas afficher cette page !" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "Le lien d'invitation est invalide ou déjà utilisé !" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "Il n'est pas obligatoire de renseigner un nom d'utilisateur. S'il est " +#~ "laissé vide, le nouvel utilisateur pourra le choisir." + +#~ msgid "Imported from" +#~ msgstr "Importé depuis" + +#~ msgid "Link" +#~ msgstr "Lien" + +#~ msgid "Logout" +#~ msgstr "Déconnexion" + +#~ msgid "Website Import" +#~ msgstr "Importer depuis un site web" + +#~ msgid "There was an error creating a resource!" +#~ msgstr "" +#~ "Une erreur s\\\\'est produite lors de la création d\\\\'une ressource !" + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "La page souhaitée refuse de fournir des informations (erreur 403)." + #~ msgid "" #~ "Include - [ ] in list for easier usage in markdown based " #~ "documents." @@ -1977,6 +2533,3 @@ msgstr "Le lien d'invitation est invalide ou déjà utilisé !" #~ msgid "Preference for given user already exists" #~ msgstr "Les préférences pour cet utilisateur existent déjà" - -#~ msgid "Bookmark saved!" -#~ msgstr "Marque-page enregistré !" diff --git a/cookbook/locale/hu_HU/LC_MESSAGES/django.po b/cookbook/locale/hu_HU/LC_MESSAGES/django.po index 1967c8fe..5a06ba36 100644 --- a/cookbook/locale/hu_HU/LC_MESSAGES/django.po +++ b/cookbook/locale/hu_HU/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: igazka , 2020\n" "Language-Team: Hungarian (Hungary) (https://www.transifex.com/django-recipes/" @@ -22,14 +22,15 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Hozzávalók" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -37,12 +38,12 @@ msgstr "" "A felső navigációs sáv színe. Nem minden szín működik minden témával. " "Próbáld ki őket! " -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" "Az alapértelmezett mértékegység, új hozzávaló receptbe való beillesztésekor." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -50,25 +51,25 @@ msgstr "" "Lehetővé teszi az összetevők mennyiségében a törtrészek használatát (pl. A " "tizedesjegyek automatikus törtrészekké alakítása)" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." msgstr "" -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "" -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "" -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -76,167 +77,181 @@ msgid "" "mobile data. If lower than instance limit it is reset when saving." msgstr "" -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Név" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Kulcsszavak" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Előkészítési idő percben" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Várakozási idő (sütés/főzés) percben" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Elérési útvonal" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "Tárhely UID" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Új Mértékegység" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Régi Mértékegység" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "" -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Új Étel" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Régi Étel" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "" -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Add hozzá a kommented:" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" msgstr "" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "Fájl ID:" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "" -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" msgstr "" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -246,42 +261,53 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "" @@ -290,11 +316,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -320,44 +346,74 @@ msgstr "Vacsora" msgid "Other" msgstr "" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Szöveg" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "Fájl ID:" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "" @@ -371,10 +427,6 @@ msgstr "" msgid "Delete" msgstr "" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "" @@ -391,21 +443,120 @@ msgstr "" msgid "Report a Bug" msgstr "" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +msgid "Make Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "Warning:" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -419,115 +570,161 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +msgid "Create an Account" msgstr "" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +msgid "Space Settings" +msgstr "" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "" -#: .\cookbook\templates\base.html:165 -msgid "Logout" +#: .\cookbook\templates\base.html:175 +msgid "Log out" msgstr "" #: .\cookbook\templates\batch\edit.html:6 @@ -542,7 +739,7 @@ msgstr "" msgid "Add the specified keywords to all recipes containing a word" msgstr "" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "" @@ -569,7 +766,7 @@ msgstr "" msgid "Importing Recipes" msgstr "" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -606,26 +803,33 @@ msgid "Export Recipes" msgstr "" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "Fájl ID:" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "" @@ -634,181 +838,188 @@ msgstr "" msgid "Edit Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 #, fuzzy #| msgid "Keywords" msgid "Add Keyword" msgstr "Kulcsszavak" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +msgid "Select File" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "" @@ -828,7 +1039,7 @@ msgid "" msgstr "" #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "" @@ -850,10 +1061,6 @@ msgstr "" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "" @@ -875,12 +1082,6 @@ msgstr "" msgid "Import all" msgstr "" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -925,7 +1126,7 @@ msgstr "" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "" @@ -958,10 +1159,6 @@ msgstr "" msgid "New Recipe" msgstr "" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "" @@ -975,7 +1172,7 @@ msgid "Last viewed" msgstr "" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "" @@ -1123,7 +1320,7 @@ msgid "New Entry" msgstr "" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "" @@ -1153,7 +1350,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "" @@ -1203,7 +1400,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "" @@ -1278,7 +1475,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1293,13 +1489,48 @@ msgid "" "action." msgstr "" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +msgid "Create Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1316,28 +1547,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "" @@ -1353,39 +1585,67 @@ msgstr "" msgid "Recipe Home" msgstr "" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +msgid "API-Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:39 +msgid "Name Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:47 +msgid "Password Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:55 +msgid "Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." msgstr "" -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" msgstr "" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "" @@ -1406,58 +1666,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1469,10 +1726,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1482,38 +1735,87 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +msgid "Invite User" +msgstr "" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +msgid "admin" +msgstr "" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +msgid "You cannot edit yourself." +msgstr "" + +#: .\cookbook\templates\space.html:117 +msgid "There are no members in your space yet!" +msgstr "" + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "" @@ -1611,45 +1913,141 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +msgid "Bookmark Me!" +msgstr "" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +msgid "Preview Recipe Data" +msgstr "" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +msgid "Prep Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:254 +msgid "Cook Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +msgid "Discovered Attributes" +msgstr "" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +msgid "Show Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +msgid "Delete Text" +msgstr "" + +#: .\cookbook\templates\url_import.html:413 +msgid "Delete image" +msgstr "" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1660,48 +2058,73 @@ msgid "" " github issues." msgstr "" -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "" -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +msgid "No useable data could be found." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1713,7 +2136,7 @@ msgid "Monitor" msgstr "" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "" @@ -1722,8 +2145,8 @@ msgid "" "Could not delete this storage backend as it is used in at least one monitor." msgstr "" -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "" @@ -1731,55 +2154,55 @@ msgstr "" msgid "Bookmarks" msgstr "" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1795,41 +2218,103 @@ msgstr "" msgid "Shopping Lists" msgstr "" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " "on how to reset passwords." msgstr "" -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +msgid "You are already member of a space and therefore cannot join this one." +msgstr "" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "" diff --git a/cookbook/locale/it/LC_MESSAGES/django.po b/cookbook/locale/it/LC_MESSAGES/django.po index c4578f20..77f10168 100644 --- a/cookbook/locale/it/LC_MESSAGES/django.po +++ b/cookbook/locale/it/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2021-04-11 15:23+0000\n" "Last-Translator: Oliver Cervera \n" "Language-Team: Italian /remote." "php/webdav/ is added automatically)" @@ -192,26 +196,26 @@ msgstr "" "Lascia vuoto per dropbox e inserisci solo l'url base per nextcloud (/" "remote.php/webdav/ è aggiunto automaticamente)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Stringa di Ricerca" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "ID del File" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Devi fornire almeno una ricetta o un titolo." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "È possibile visualizzare l'elenco degli utenti predefiniti con cui " "condividere le ricette nelle impostazioni." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -219,52 +223,57 @@ msgstr "" "Puoi usare markdown per formattare questo campo. Guarda la documentazione qui" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"Non è richiesto un nome utente, se lasciato vuoto il nuovo utente ne può " -"sceglierne uno." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "Non hai i permessi necessari per visualizzare questa pagina!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "Non hai fatto l'accesso e quindi non puoi visualizzare questa pagina!" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "Non hai i permessi necessari per visualizzare questa pagina!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "Non puoi interagire con questo oggetto perché non ne hai i diritti!" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" -"Il sito richiesto ha fornito dati in formato non corretto e non può essere " -"letto." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"Il sito richiesto non fornisce un formato di dati riconosciuto da cui " -"importare la ricetta." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Importato da" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -274,12 +283,16 @@ msgstr "Impossibile elaborare il codice del template." #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importa" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" @@ -287,31 +300,38 @@ msgstr "" "La procedura di import necessita di un file .zip. Hai scelto il tipo di " "importazione corretta per i tuoi dati?" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "Le seguenti ricette sono state ignorate perché già esistenti:" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "Importate %s ricette." -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "Note" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "Informazioni nutrizionali" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "Fonte" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Porzioni" @@ -320,11 +340,11 @@ msgid "Waiting time" msgstr "Tempo di cottura" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Tempo di preparazione" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -350,44 +370,74 @@ msgstr "Cena" msgid "Other" msgstr "Altro" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Cerca" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Piano alimentare" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Libri" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Piccolo" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Grande" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Nuovo" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Testo" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Tempo" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "ID del File" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Modifica" @@ -401,10 +451,6 @@ msgstr "Modifica" msgid "Delete" msgstr "Elimina" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Link" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "Errore 404" @@ -421,21 +467,126 @@ msgstr "Portami nella Home" msgid "Report a Bug" msgstr "Segnala un Bug" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Crea Intestazione" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "Rimuovi" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Avviso" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Conferma" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Login" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "Accedi" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +#, fuzzy +#| msgid "Sign In" +msgid "Sign Up" +msgstr "Accedi" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "Login con social network" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "Puoi usare uno dei seguenti provider per accedere." @@ -449,116 +600,168 @@ msgstr "Esci" msgid "Are you sure you want to sign out?" msgstr "Sei sicuro di voler uscire?" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "Recupero password" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." +msgstr "" + +#: .\cookbook\templates\account\password_reset.html:32 +#, fuzzy +#| msgid "Password reset is not implemented for the time being!" +msgid "Password reset is disabled on this instance." msgstr "Il recupero della password non è stato ancora implementato!" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "Registrati" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Crea il tuo account" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Crea utente" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "Documentazione API" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Strumenti" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Spesa" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Parola chiave" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Modifica in blocco" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Dati e Archiviazione" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Backend Archiviazione" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Configura Sincronizzazione" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Ricette trovate" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Registro ricette trovate" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistiche" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Unità di misura & Ingredienti" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Importa Ricetta" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Impostazioni" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Cronologia" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Impostazioni" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Sistema" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Amministratore" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Informazioni su Markdown" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "Browser API" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Logout" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -574,7 +777,7 @@ msgstr "" "Aggiungi le parole chiave che desideri a tutte le ricette che contengono una " "determinata stringa" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Sincronizza" @@ -603,7 +806,7 @@ msgstr "Sincronizza Ora!" msgid "Importing Recipes" msgstr "Importando Ricette" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -642,26 +845,33 @@ msgid "Export Recipes" msgstr "Esporta Ricette" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Esporta" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "ID del File" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Importa nuova Ricetta" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Salva" @@ -670,179 +880,188 @@ msgstr "Salva" msgid "Edit Recipe" msgstr "Modifica Ricetta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "Descrizione" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Tempo di cottura" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "Nome delle porzioni" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Seleziona parole chiave" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "Aggiungi parole chiave" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Nutrienti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Elimina Step" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Calorie" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Carboidrati" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Grassi" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Proteine" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Step" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Mostra come intestazione" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Nascondi come intestazione" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Sposta Sopra" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Sposta Sotto" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Nome dello Step" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Tipo dello Step" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Tempo dello step in minuti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Seleziona unità di misura" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Seleziona un elemento" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Crea" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Seleziona" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Seleziona unità di misura" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Crea" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Seleziona alimento" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Nota" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Elimina Ingredienti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Crea Intestazione" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Crea Ingrediente" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Disabilita Quantità" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Abilita Quantità" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "Copia riferimento template" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Istruzioni" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Salva & Mostra" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Aggiungi Step" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Aggiungi nutrienti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Rimuovi nutrienti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Mostra ricetta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Elimina Ricetta" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Step" @@ -868,7 +1087,7 @@ msgstr "" "utilizzano." #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Unità di misura" @@ -890,10 +1109,6 @@ msgstr "Sei sicuro di volere unire questi due ingredienti?" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "Sei sicuro di volere eliminare %(title)s: %(object)s" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Conferma" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Mostra" @@ -915,12 +1130,6 @@ msgstr "Filtro" msgid "Import all" msgstr "Importa tutto" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Nuovo" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -965,7 +1174,7 @@ msgstr "Chiudi" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Ricetta" @@ -1004,10 +1213,6 @@ msgstr "Cerca ricetta ..." msgid "New Recipe" msgstr "Nuova Ricetta" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Importa dal web" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Ricerca Avanzata" @@ -1021,7 +1226,7 @@ msgid "Last viewed" msgstr "Recenti" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Ricette" @@ -1190,7 +1395,7 @@ msgid "New Entry" msgstr "Nuovo Campo" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Cerca Ricetta" @@ -1223,7 +1428,7 @@ msgstr "Crea solo una nota" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Lista della spesa" @@ -1275,7 +1480,7 @@ msgstr "Creato da" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Condiviso con" @@ -1375,7 +1580,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "Contatta il tuo amministratore." @@ -1392,14 +1596,53 @@ msgstr "" "Non hai i permessi necessari per visualizzare questa pagina o completare " "l'operazione!" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "Nessuno spazio" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." -msgstr "Non sei membro di uno spazio." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +#, fuzzy +#| msgid "No Space" +msgid "Join Space" +msgstr "Nessuno spazio" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Crea utente" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." +msgstr "" #: .\cookbook\templates\offline.html:6 msgid "Offline" @@ -1418,28 +1661,29 @@ msgstr "" "offline perché le hai aperte di recente. Ricorda che queste informazioni " "potrebbero non essere aggiornate." -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Commenti" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Commento" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Immagine ricetta" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Tempo di preparazione circa" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Tempo di cottura circa" @@ -1455,27 +1699,67 @@ msgstr "Registo ricette cucinate" msgid "Recipe Home" msgstr "Pagina iniziale ricette" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Account" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" +msgstr "" + +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Impostazioni" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Impostazioni" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Password Reset" +msgid "Password Settings" +msgstr "Recupero password" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Impostazioni" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +#, fuzzy +#| msgid "Social Login" +msgid "Social" +msgstr "Login con social network" + +#: .\cookbook\templates\settings.html:63 +#, fuzzy +#| msgid "Link social account" +msgid "Manage Social Accounts" msgstr "Collega account social" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Lingua" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Stile" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "Token API" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1483,7 +1767,7 @@ msgstr "" "Per accedere alle API REST puoi usare sia l'autenticazione base sia quella " "tramite token." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1491,7 +1775,7 @@ msgstr "" "Usa il token come header Authorization preceduto dalla parola Token come " "negli esempi seguenti:" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "o" @@ -1513,58 +1797,55 @@ msgstr "" msgid "Create Superuser account" msgstr "Crea super utente" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Ricette per la spesa" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "Nessuna ricetta selezionata" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "Modalità di inserimento" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "Aggiungi voce" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Quantità" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "Supermercato" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "Seleziona supermercato" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Seleziona utente" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Completato" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "Sei offline: la lista della spesa potrebbe non sincronizzarsi." -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Copia/Esporta" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Prefisso lista" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "Si è verificato un errore durante la creazione di una risorsa!" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1577,10 +1858,6 @@ msgid "" msgstr "" "Puoi accedere al tuo account usando uno dei seguenti account di terze parti:" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "Rimuovi" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1590,38 +1867,99 @@ msgstr "Non hai account di social network collegati a questo account." msgid "Add a 3rd Party Account" msgstr "Aggiungi un account di terze parti" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Statistiche" +#: .\cookbook\templates\space.html:18 +#, fuzzy +#| msgid "Description" +msgid "Manage Subscription" +msgstr "Descrizione" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Numero di oggetti" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Ricette importate" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Statistiche degli oggetti" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Ricette senza parole chiave" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Ricette esterne" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Ricette interne" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Link di invito" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Amministratore" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +#, fuzzy +#| msgid "Remove" +msgid "remove" +msgstr "Rimuovi" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "Non puoi modificare questo backend!" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "Non ci sono ancora ricette in questo libro." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Link di invito" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Statistiche" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Mostra link" @@ -1743,45 +2081,157 @@ msgstr "" "raccomandato perché alcune\n" "funzionalità sono disponibili solo con un database Posgres." -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "Importa da URL" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "Preferito salvato!" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Inserisci l'indirizzo del sito web" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" -msgstr "Inserisci direttamente il json" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." +msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Mostra ricetta" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Tempo di preparazione" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Tempo" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Ricette trovate" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Mostra come intestazione" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Elimina Step" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Elimina Ricetta" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Nome Ricetta" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "Descrizione ricetta" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Seleziona un elemento" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Tutte le parole chiave" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "Importa tutte le parole chiave, non solo quelle che già esistono." -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Info" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1797,49 +2247,79 @@ msgstr "" "Se questo sito non può essere importato ma credi che abbia una qualche tipo " "di struttura dati, puoi inviare un esempio nella sezione Issues su GitHub." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Info Google Id+json" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "Issues (Problemi aperti) su GitHub" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Specifica di Markup della ricetta" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "Il parametro updated_at non è formattato correttamente" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "Questa funzione non è disponibile nella versione demo!" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "Sincronizzazione completata con successo!" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Errore di sincronizzazione con questo backend" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" +"Il sito richiesto ha fornito dati in formato non corretto e non può essere " +"letto." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "La pagina richiesta non è stata trovata." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -"La pagina richiesta si è rifiutata di fornire informazioni (Errore 403)." +"Il sito richiesto non fornisce un formato di dati riconosciuto da cui " +"importare la ricetta." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." -msgstr "Impossibile elaborare correttamente..." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "La pagina richiesta non è stata trovata." -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1852,7 +2332,7 @@ msgid "Monitor" msgstr "Monitoraggio" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Backend di archiviazione" @@ -1863,8 +2343,8 @@ msgstr "" "Non è possibile eliminare questo backend di archiviazione perchè è usato in " "almeno un monitoraggio." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Libro delle ricette" @@ -1872,57 +2352,57 @@ msgstr "Libro delle ricette" msgid "Bookmarks" msgstr "Preferiti" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Link di invito" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Alimento" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "Non puoi modificare questo backend!" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "Backend salvato!" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" "Si è verificato un errore durante l'aggiornamento di questo backend di " "archiviazione!" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Archiviazione" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "Modifiche salvate!" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "Si è verificato un errore durante il salvataggio delle modifiche!" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "Le unità sono state unite!" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "Non è possibile unirlo con lo stesso oggetto!" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "Gli alimenti sono stati uniti!" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "Questo provider non permette l'importazione" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "Questo provider non permette l'esportazione" @@ -1938,23 +2418,77 @@ msgstr "Trovate" msgid "Shopping Lists" msgstr "Liste della spesa" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "La nuova ricetta è stata importata!" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "Si è verificato un errore durante l'importazione di questa ricetta!" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "Non hai i permessi necessari per completare questa operazione!" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "Commento salvato!" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -1964,22 +2498,67 @@ msgstr "" "utente! Se hai dimenticato le credenziali del tuo super utente controlla la " "documentazione di Django per resettare le password. " -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "Le password non combaciano!" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "L'utente è stato creato e ora può essere usato per il login!" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "È stato fornito un link di invito non valido!" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "Non hai fatto l'accesso e quindi non puoi visualizzare questa pagina!" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "Il link di invito non è valido o è stato già usato!" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "Non è richiesto un nome utente, se lasciato vuoto il nuovo utente ne può " +#~ "sceglierne uno." + +#~ msgid "Imported from" +#~ msgstr "Importato da" + +#~ msgid "Link" +#~ msgstr "Link" + +#~ msgid "Logout" +#~ msgstr "Logout" + +#~ msgid "Website Import" +#~ msgstr "Importa dal web" + +#~ msgid "You are not a member of any space." +#~ msgstr "Non sei membro di uno spazio." + +#~ msgid "There was an error creating a resource!" +#~ msgstr "Si è verificato un errore durante la creazione di una risorsa!" + +#~ msgid "Enter json directly" +#~ msgstr "Inserisci direttamente il json" + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "" +#~ "La pagina richiesta si è rifiutata di fornire informazioni (Errore 403)." + +#~ msgid "Could not parse correctly..." +#~ msgstr "Impossibile elaborare correttamente..." + #~ msgid "Number of servings" #~ msgstr "Porzioni" @@ -2001,6 +2580,3 @@ msgstr "Il link di invito non è valido o è stato già usato!" #~ msgid "This recipe is already linked to the book!" #~ msgstr "Questa ricetta è già collegata al libro!" - -#~ msgid "Bookmark saved!" -#~ msgstr "Preferito salvato!" diff --git a/cookbook/locale/lv/LC_MESSAGES/django.po b/cookbook/locale/lv/LC_MESSAGES/django.po index dcc44959..561861e2 100644 --- a/cookbook/locale/lv/LC_MESSAGES/django.po +++ b/cookbook/locale/lv/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: vabene1111 , 2021\n" "Language-Team: Latvian (https://www.transifex.com/django-recipes/" @@ -23,14 +23,15 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Sastāvdaļas" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -38,11 +39,11 @@ msgstr "" "Augšējās navigācijas joslas krāsa. Ne visas krāsas darbojas ar visām tēmām, " "vienkārši izmēģiniet tās!" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "Noklusējuma vienība, ko izmantot, ievietojot receptē jaunu sastāvdaļu." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -50,7 +51,7 @@ msgstr "" "Iespējot daļskaitļus sastāvdaļu daudzumos (piemēram, decimāldaļas " "automātiski pārveidot par daļskaitļiem)" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." @@ -58,20 +59,20 @@ msgstr "" "Lietotāji, ar kuriem jaunizveidotie maltīšu saraksti/iepirkumu saraksti tiks " "kopīgoti pēc noklusējuma." -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Parādīt nesen skatītās receptes meklēšanas lapā." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Ciparu skaits pēc komata decimāldaļām sastāvdaļās." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" "Ja vēlaties, lai jūs varētu izveidot un redzēt komentārus zem receptēm." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -85,11 +86,11 @@ msgstr "" "Ja tas ir zemāks par instances ierobežojumu, tas tiek atiestatīts, " "saglabājot." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -97,89 +98,92 @@ msgstr "" "Abi lauki nav obligāti. Ja neviens nav norādīts, tā vietā tiks parādīts " "lietotājvārds" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Vārds" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Atslēgvārdi" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Pagatavošanas laiks minūtēs" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Gaidīšanas laiks (vārīšana / cepšana) minūtēs" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Ceļš" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "Krātuves UID" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Jaunā vienība" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "Jauna vienība, ar kuru cits tiek aizstāts." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Vecā vienība" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "Vienība, kas jāaizstāj." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Jauns ēdiens" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Jauns ēdiens, ar kuru citi tiek aizstāti." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Vecais ēdiens" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Ēdiens, kas būtu jāaizstāj." -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Pievienot komentāru: " -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "Atstājiet tukšu Dropbox un ievadiet lietotnes paroli Nextcloud." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "Atstājiet tukšu Nextcloud un ievadiet API tokenu Dropbox." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -187,26 +191,26 @@ msgstr "" "Atstājiet tukšu Dropbox un ievadiet tikai Nextcloud bāzes URL ( /" "remote.php/webdav/ tiek pievienots automātiski)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Meklēšanas virkne" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "Faila ID" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Jums jānorāda vismaz recepte vai nosaukums." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "Iestatījumos varat uzskaitīt noklusējuma lietotājus, ar kuriem koplietot " "receptes." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -214,50 +218,57 @@ msgstr "" "Lai formatētu šo lauku, varat izmantot Markdown. Skatiet dokumentus šeit " -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"Lietotājvārds nav nepieciešams. Ja tas tiks atstāts tukšs, lietotājs to " -"varēs izvēlēties pats." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "Jums nav nepieciešamo atļauju, lai apskatītu šo lapu!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "Jūs neesat pieteicies un tāpēc nevarat skatīt šo lapu!" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "Jums nav nepieciešamo atļauju, lai apskatītu šo lapu!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "Jūs nevarat mainīt šo objektu, jo tas nepieder jums!" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "Pieprasītā vietne sniedza nepareizus datus, kurus nevar nolasīt." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"Pieprasītajā vietnē nav norādīts atzīts datu formāts, no kura varētu " -"importēt recepti." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Importēts no" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -267,47 +278,58 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importēt" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, fuzzy, python-format #| msgid "Imported new recipe!" msgid "Imported %s recipes." msgstr "Importēta jauna recepte!" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 #, fuzzy #| msgid "Note" msgid "Notes" msgstr "Piezīme" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 #, fuzzy #| msgid "Information" msgid "Nutritional Information" msgstr "Informācija" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Porciju skaits" @@ -316,11 +338,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Pagatavošanas laiks" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -346,44 +368,74 @@ msgstr "Vakariņas" msgid "Other" msgstr "Cits" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Meklēt" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Maltīšu plāns" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Grāmatas" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Mazs" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Liels" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Jauns" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Teskts" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Laiks" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "Faila ID" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Rediģēt" @@ -397,10 +449,6 @@ msgstr "Rediģēt" msgid "Delete" msgstr "Izdzēst" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Saite" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "Kļūda 404" @@ -417,21 +465,124 @@ msgstr "Doties uz Sākumu" msgid "Report a Bug" msgstr "Ziņot par kļūdu" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Izveidot galveni" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Brīdinājums" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Apstiprināt" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Pieslēgties" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -445,116 +596,166 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "Reģistrēties" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Izveidot savu kontu" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Izveidot lietotāju" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "API dokumentācija" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Piederumi" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Iepirkšanās" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Atslēgvārds" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Rediģēt vairākus" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Krātuves dati" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Krātuves backendi" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Konfigurēt sinhronizāciju" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Atrastās receptes" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Atrastās žurnāls" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistika" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Vienības un sastāvdaļas" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Importēt recepti" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Iestatījumi" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Vēsture" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Iestatījumi" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Sistēma" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Administrators" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Markdown rokasgrāmata" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "Github" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "API pārlūks" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Izlogoties" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -569,7 +770,7 @@ msgid "Add the specified keywords to all recipes containing a word" msgstr "" "Pievienojiet norādītos atslēgvārdus visām receptēm, kurās ir atrodams vārds" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Sinhronizēt" @@ -598,7 +799,7 @@ msgstr "Sinhronizēt tagad!" msgid "Importing Recipes" msgstr "Recepšu importēšana" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -637,26 +838,33 @@ msgid "Export Recipes" msgstr "Eksportēt receptes" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Eksportēt" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "Faila ID" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Importēt jaunu recepti" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Saglabāt" @@ -665,181 +873,190 @@ msgstr "Saglabāt" msgid "Edit Recipe" msgstr "Rediģēt recepti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Gaidīšanas laiks" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Atlasīt atslēgvārdus" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 #, fuzzy #| msgid "All Keywords" msgid "Add Keyword" msgstr "Visi atslēgvārdi" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Uzturs" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Dzēst soli" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Kalorijas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Ogļhidrāti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Tauki" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Olbaltumvielas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Solis" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Rādīt kā galveni" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Slēpt kā galveni" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Pārvietot uz augšu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Pārvietot uz leju" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Soļa nosaukums" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Soļa tips" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Soļa laiks minūtēs" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Atlasiet vienību" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Izvēlies vienu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Izveidot" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Atlasīt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Atlasiet vienību" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Izveidot" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Atlasīt ēdienu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Piezīme" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Dzēst sastāvdaļu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Izveidot galveni" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Pagatavot sastāvdaļu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Atspējot summu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Iespējot summu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Instrukcijas" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Saglabāt un skatīt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Pievienot soli" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Pievienot uzturu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Noņemt uzturu" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Skatīt recepti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Dzēst recepti" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Soļi" @@ -866,7 +1083,7 @@ msgstr "" " " #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Vienības" @@ -888,10 +1105,6 @@ msgstr "Vai tiešām vēlaties apvienot šīs divas sastāvdaļas?" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "Vai tiešām vēlaties izdzēst %(title)s: %(object)s " -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Apstiprināt" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Skatīt" @@ -913,12 +1126,6 @@ msgstr "Filtrs" msgid "Import all" msgstr "Importēt visu" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Jauns" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -963,7 +1170,7 @@ msgstr "Aizvērt" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Recepte" @@ -1005,10 +1212,6 @@ msgstr "Meklēt recepti ..." msgid "New Recipe" msgstr "Jauna recepte" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Vietnes importēšana" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Izvērsta meklēšana" @@ -1022,7 +1225,7 @@ msgid "Last viewed" msgstr "Pēdējoreiz skatīts" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Receptes" @@ -1188,7 +1391,7 @@ msgid "New Entry" msgstr "Jauns ieraksts" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Meklēt recepti" @@ -1221,7 +1424,7 @@ msgstr "Izveidot tikai piezīmi" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Iepirkumu saraksts" @@ -1272,7 +1475,7 @@ msgstr "Izveidojis" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Kopīgots ar" @@ -1349,7 +1552,6 @@ msgstr "Jūs neesat pieteicies un tāpēc nevarat skatīt šo lapu!" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1366,13 +1568,50 @@ msgid "" "action." msgstr "Jums nav nepieciešamo atļauju, lai veiktu šo darbību!" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Izveidot lietotāju" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1389,28 +1628,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Komentāri" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Komentēt" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Receptes attēls" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Pagatavošanas laiks apm." #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Gaidīšanas laiks apm." @@ -1426,27 +1666,63 @@ msgstr "Veikt ierakstus pagatavošanas žurnālā" msgid "Recipe Home" msgstr "Recepšu Sākums" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Konts" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Iestatījumi" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Iestatījumi" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Settings" +msgid "Password Settings" +msgstr "Iestatījumi" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Iestatījumi" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Valoda" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Stils" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "API Tokens" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1454,7 +1730,7 @@ msgstr "" "Lai piekļūtu REST API, varat izmantot gan pamata autentifikāciju, gan tokena " "autentifikāciju." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1462,7 +1738,7 @@ msgstr "" "Izmantojiet token, kā Authorization header, kas pievienota vārdam token, kā " "parādīts šajos piemēros:" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "vai" @@ -1485,58 +1761,55 @@ msgstr "" msgid "Create Superuser account" msgstr "Izveidojiet superlietotāja kontu" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Iepirkšanās receptes" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "Nav izvēlēta neviena recepte" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Summa" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Atlasīt lietotāju" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Pabeigts" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "Jūs esat bezsaistē. Iepirkumu saraksts netiek sinhronizēts." -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Kopēt/eksportēt" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Saraksta prefikss" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "Radot resursu, radās kļūda!" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1548,10 +1821,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1561,38 +1830,95 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Statistika" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" +msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Objektu skaits" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Recepšu imports" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Objektu statistika" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Receptes bez atslēgas vārdiem" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Ārējās receptes" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Iekšējās receptes" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Uzaicinājuma saites" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Administrators" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "Jūs nevarat rediģēt šo krātuvi!" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "Šajā grāmatā vēl nav receptes." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Uzaicinājuma saites" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Statistika" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Rādīt saites" @@ -1724,47 +2050,159 @@ msgstr "" " funkcijas darbojas tikai ar Postgres datu bāzēm.\n" " " -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "URL importēšana" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "Grāmatzīme saglabāta!" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Ievadiet vietnes URL" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Skatīt recepti" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Pagatavošanas laiks" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Laiks" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Atrastās receptes" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Rādīt kā galveni" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Dzēst soli" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Dzēst recepti" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Receptes nosaukums" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 #, fuzzy #| msgid "Recipe Markup Specification" msgid "Recipe Description" msgstr "Recepšu Markup specifikācija" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Izvēlies vienu" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Visi atslēgvārdi" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "Importējiet visus atslēgvārdus, ne tikai jau esošos." -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Informācija" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1783,51 +2221,79 @@ msgstr "" "nekautrējieties ievietot piemēru\n" " Github." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Google ld+json informācija" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "GitHub Issues" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Recepšu Markup specifikācija" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 #, fuzzy #| msgid "Parameter filter_list incorrectly formatted" msgid "Parameter updated_at incorrectly formatted" msgstr "Parametrs filter_list ir nepareizi formatēts" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "Sinhronizācija ir veiksmīga!" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Sinhronizējot ar krātuvi, radās kļūda" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "Pieprasītā vietne sniedza nepareizus datus, kurus nevar nolasīt." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "Pieprasīto lapu nevarēja atrast." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -"Pieprasītā lapa atteicās sniegt jebkādu informāciju (statusa kods 403)." +"Pieprasītajā vietnē nav norādīts atzīts datu formāts, no kura varētu " +"importēt recepti." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "Pieprasīto lapu nevarēja atrast." + +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1840,7 +2306,7 @@ msgid "Monitor" msgstr "Uzraudzīt" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Krātuves aizmugursistēma" @@ -1851,8 +2317,8 @@ msgstr "" "Nevarēja izdzēst šo krātuves aizmugursistēmu, jo tā tiek izmantota vismaz " "vienā uzraugā." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Recepšu grāmata" @@ -1860,55 +2326,55 @@ msgstr "Recepšu grāmata" msgid "Bookmarks" msgstr "Grāmatzīmes" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Uzaicinājuma saite" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Ēdiens" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "Jūs nevarat rediģēt šo krātuvi!" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "Krātuve saglabāta!" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "Atjauninot šo krātuves aizmugursistēmu, radās kļūda!" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Krātuve" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "Izmaiņas saglabātas!" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "Saglabājot izmaiņas, radās kļūda!" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "Vienības ir apvienotas!" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "Ēdieni apvienoti!" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1924,23 +2390,77 @@ msgstr "Atklāšana" msgid "Shopping Lists" msgstr "Iepirkšanās saraksti" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "Importēta jauna recepte!" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "Importējot šo recepti, radās kļūda!" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "Jums nav nepieciešamo atļauju, lai veiktu šo darbību!" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "Komentārs saglabāts!" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -1950,22 +2470,58 @@ msgstr "" "aizmirsis sava superlietotāja informāciju, lūdzu, skatiet Django " "dokumentāciju par paroļu atiestatīšanu." -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "Paroles nesakrīt!" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "Lietotājs ir izveidots, lūdzu, piesakieties!" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "Nepareiza uzaicinājuma saite!" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "Jūs neesat pieteicies un tāpēc nevarat skatīt šo lapu!" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "Uzaicinājuma saite nav derīga vai jau izmantota!" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "Lietotājvārds nav nepieciešams. Ja tas tiks atstāts tukšs, lietotājs to " +#~ "varēs izvēlēties pats." + +#~ msgid "Imported from" +#~ msgstr "Importēts no" + +#~ msgid "Link" +#~ msgstr "Saite" + +#~ msgid "Logout" +#~ msgstr "Izlogoties" + +#~ msgid "Website Import" +#~ msgstr "Vietnes importēšana" + +#~ msgid "There was an error creating a resource!" +#~ msgstr "Radot resursu, radās kļūda!" + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "" +#~ "Pieprasītā lapa atteicās sniegt jebkādu informāciju (statusa kods 403)." + #~ msgid "" #~ "Include - [ ] in list for easier usage in markdown based " #~ "documents." @@ -1981,6 +2537,3 @@ msgstr "Uzaicinājuma saite nav derīga vai jau izmantota!" #~ msgid "Preference for given user already exists" #~ msgstr "Priekšroka konkrētam lietotājam jau pastāv" - -#~ msgid "Bookmark saved!" -#~ msgstr "Grāmatzīme saglabāta!" diff --git a/cookbook/locale/nl/LC_MESSAGES/django.po b/cookbook/locale/nl/LC_MESSAGES/django.po index 968a11d1..b4372099 100644 --- a/cookbook/locale/nl/LC_MESSAGES/django.po +++ b/cookbook/locale/nl/LC_MESSAGES/django.po @@ -12,11 +12,11 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2021-05-04 09:02+0000\n" "Last-Translator: Jesse \n" -"Language-Team: Dutch \n" +"Language-Team: Dutch \n" "Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -24,14 +24,15 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 4.5.3\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Ingrediënten" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -39,13 +40,13 @@ msgstr "" "De kleur van de bovenste navigatie balk. Niet alle kleuren werken met alle " "thema's, je dient ze dus simpelweg uit te proberen!" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" "Standaard eenheid die gebruikt wordt wanneer een nieuw ingrediënt aan een " "recept wordt toegevoegd." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" @@ -53,7 +54,7 @@ msgstr "" "Mogelijk maken van breuken bij ingrediënt aantallen (het automatisch " "converteren van decimalen naar breuken)" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." @@ -61,19 +62,19 @@ msgstr "" "Gebruikers waarmee nieuwe maaltijdplannen/boodschappenlijstjes standaard " "gedeeld moeten worden." -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Geef recent bekeken recepten op de zoekpagina weer." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Aantal decimalen om ingrediënten op af te ronden." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "Als je opmerkingen bij recepten wil kunnen maken en zien." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -86,11 +87,11 @@ msgstr "" "gelijktijdig boodschappen doen maar verbruikt mogelijk extra mobiele data. " "Wordt gereset bij opslaan wanneer de limiet niet bereikt is." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "Zet de navbar vast aan de bovenkant van de pagina." -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -98,39 +99,42 @@ msgstr "" "Beide velden zijn optioneel. Indien niks is opgegeven wordt de " "gebruikersnaam weergegeven" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Naam" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Etiketten" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Voorbereidingstijd in minuten" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Wacht tijd in minuten (koken en bakken)" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Pad" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "Opslag UID" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "Standaard waarde" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." @@ -138,51 +142,51 @@ msgstr "" "Om dubbelingen te voorkomen worden recepten met dezelfde naam als een " "bestaand recept genegeerd. Vink aan om alles te importeren." -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Nieuwe eenheid" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "Nieuwe eenheid waarmee de andere wordt vervangen." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Oude eenheid" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "Eenheid die vervangen dient te worden." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Nieuw Ingredïent" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Nieuw Ingredïent dat Oud Ingrediënt vervangt." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Oud Ingrediënt" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Te vervangen Ingrediënt." -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Voeg een opmerking toe: " -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "Laat leeg voor dropbox en vul het app wachtwoord in voor nextcloud." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "Laat leeg voor nextcloud en vul de api token in voor dropbox." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -190,26 +194,26 @@ msgstr "" "Laat leeg voor dropbox en vul enkel de base url voor nextcloud in. (/" "remote.php/webdav/ wordt automatisch toegevoegd.)" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Zoekopdracht" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "Bestands ID" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "Je moet minimaal één recept of titel te specificeren." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "Je kan in de instellingen standaard gebruikers in stellen om de recepten met " "te delen." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -217,53 +221,58 @@ msgstr "" "Je kunt markdown gebruiken om dit veld te op te maken. Bekijk de documentatie hier" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"Een gebruikersnaam is niet verplicht. Als het veld leeg is kan de gebruiker " -"er een kiezen." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "Je hebt niet de benodigde machtigingen om deze pagina te bekijken!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "Je bent niet ingelogd en kan deze pagina daarom niet bekijken!" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "Je hebt niet de benodigde machtigingen om deze pagina te bekijken!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" "Interactie met dit object is niet mogelijk omdat je niet de eigenaar bent!" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" -"De opgevraagde site heeft misvormde data verstrekt en kan niet gelezen " -"worden." - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" -"De opgevraagde site biedt geen bekend gegevensformaat aan om het recept van " -"te importeren." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "Geïmporteerd van" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -273,43 +282,54 @@ msgstr "Sjablooncode kon niet verwerkt worden." #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importeer" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" "De importtool verwachtte een .zip bestand. Heb je het juiste type gekozen?" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "De volgende recepten zijn genegeerd omdat ze al bestonden:" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "%s recepten geïmporteerd." -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "Notities" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "Voedingswaarde" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "Bron" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Porties" @@ -318,11 +338,11 @@ msgid "Waiting time" msgstr "Wachttijd" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "Bereidingstijd" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -348,44 +368,74 @@ msgstr "Avondeten" msgid "Other" msgstr "Overige" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Zoeken" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Maaltijdplan" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Boeken" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Klein" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Groot" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Nieuw" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Tekst" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Tijd" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "Bestands ID" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Bewerken" @@ -399,10 +449,6 @@ msgstr "Bewerken" msgid "Delete" msgstr "Verwijderen" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Link" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "404 Foutmelding" @@ -419,21 +465,126 @@ msgstr "Breng me Thuis" msgid "Report a Bug" msgstr "Rapporteer een bug" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Stel in als kop" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "Verwijder" + +#: .\cookbook\templates\account\email.html:50 +#, fuzzy +#| msgid "Warning" +msgid "Warning:" +msgstr "Waarschuwing" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Bevestigen" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Inloggen" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "Log in" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +#, fuzzy +#| msgid "Sign In" +msgid "Sign Up" +msgstr "Log in" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "Socials login" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "Je kan een van de volgende providers gebruiken om in te loggen." @@ -447,116 +598,168 @@ msgstr "Log uit" msgid "Are you sure you want to sign out?" msgstr "Weet je zeker dat je uit wil loggen?" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "Wachtwoord reset" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." +msgstr "" + +#: .\cookbook\templates\account\password_reset.html:32 +#, fuzzy +#| msgid "Password reset is not implemented for the time being!" +msgid "Password reset is disabled on this instance." msgstr "Wachtwoord reset is nog niet geïmplementeerd!" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "Registreer" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +#, fuzzy +#| msgid "Create your Account" +msgid "Create an Account" msgstr "Maak je account aan" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "Maak gebruiker aan" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "API documentatie" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Kookgerei" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Winkelen" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Etiket" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Batchbewerking" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Dataopslag" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "Opslag Backends" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Synchronisatie configureren" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Ontdekte recepten" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "Ontdekkingslogboek" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistieken" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Eenheden & Ingrediënten" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Recept importeren" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Instellingen" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Geschiedenis" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Instellingen" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Systeem" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Beheer" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "Markdown gids" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "API Browser" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Uitloggen" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -572,7 +775,7 @@ msgstr "" "Voeg de gespecificeerde etiketten toe aan alle recepten die een woord " "bevatten" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Synchroniseren" @@ -601,7 +804,7 @@ msgstr "Synchroniseer nu!" msgid "Importing Recipes" msgstr "Recepten aan het importeren" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -640,26 +843,33 @@ msgid "Export Recipes" msgstr "Recepten exporteren" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Exporteren" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "Bestands ID" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Nieuw recept importeren" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Opslaan" @@ -668,179 +878,188 @@ msgstr "Opslaan" msgid "Edit Recipe" msgstr "Recept bewerken" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "Beschrijving" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Wachttijd" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "Porties tekst" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Selecteer etiketten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "Voeg Etiket toe" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "Voedingswaarde" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Verwijder stap" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "Calorieën" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "Koolhydraten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "Vetten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "Eiwitten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Stap" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Laat als kop zien" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Verbergen als kop" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Verplaats omhoog" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Verplaats omlaag" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Stap naam" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Stap type" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Tijdsduur stap in minuten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" -msgstr "Selecteer eenheid" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select one" +msgid "Select File" +msgstr "Selecteer één" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Maak" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Selecteer" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Selecteer eenheid" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Maak" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "Selecteer ingrediënt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Notitie" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Verwijder ingrediënt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Stel in als kop" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Maak ingrediënt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Hoeveelheid uitschakelen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Hoeveelheid inschakelen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "Kopieer sjabloon referentie" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Instructies" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Opslaan & bekijken" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Voeg stap toe" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "Voedingswaarde toevoegen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "Voedingswaarde verwijderen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Bekijk recept" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Verwijder recept" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Stappen" @@ -859,15 +1078,15 @@ msgid "" " " msgstr "" "\n" -" Het volgende formulier kan worden gebruikt wanneer per ongeluk twee (" -"of meer) eenheden of ingrediënten zijn gemaakt die eigenlijk hetzelfde zijn." -"\n" +" Het volgende formulier kan worden gebruikt wanneer per ongeluk twee " +"(of meer) eenheden of ingrediënten zijn gemaakt die eigenlijk hetzelfde " +"zijn.\n" " Het voegt de twee eenheden of ingrediënten samen en past alle bijbehorende " "recepten aan.\n" " " #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Eenheden" @@ -889,10 +1108,6 @@ msgstr "Weet je zeker dat je deze ingrediënten wil samenvoegen?" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "Weet je zeker dat je %(title)s: %(object)s wil verwijderen " -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Bevestigen" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Bekijken" @@ -914,12 +1129,6 @@ msgstr "Filtreren" msgid "Import all" msgstr "Alles importeren" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Nieuw" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -964,7 +1173,7 @@ msgstr "Sluiten" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "recept" @@ -1005,10 +1214,6 @@ msgstr "Zoek recept ..." msgid "New Recipe" msgstr "Nieuw recept" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Importeer website" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Geavanceerde zoekopdracht" @@ -1022,7 +1227,7 @@ msgid "Last viewed" msgstr "Laatst bekeken" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Recepten" @@ -1190,7 +1395,7 @@ msgid "New Entry" msgstr "Nieuw item" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Zoek recept" @@ -1222,7 +1427,7 @@ msgstr "Maak alleen een notitie" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "Boodschappenlijstje" @@ -1274,7 +1479,7 @@ msgstr "Gemaakt door" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "Gedeeld met" @@ -1372,7 +1577,6 @@ msgstr "Je hebt geen groepen en kan daarom deze applicatie niet gebruiken." #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "Neem contact op met je beheerder." @@ -1389,14 +1593,53 @@ msgstr "" "Je beschikt niet over de juiste rechten om deze pagina te bekijken of deze " "actie uit te voeren." -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "Geen ruimte" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." -msgstr "Je bent geen lid van een ruimte." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +#, fuzzy +#| msgid "No Space" +msgid "Join Space" +msgstr "Geen ruimte" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create User" +msgid "Create Space" +msgstr "Maak gebruiker aan" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." +msgstr "" #: .\cookbook\templates\offline.html:6 msgid "Offline" @@ -1414,28 +1657,29 @@ msgstr "" "De recepten hieronder zijn beschikbaar om offline te bekijken omdat je ze " "recent bekeken hebt. Houd er rekening mee dat de data mogelijk verouderd is." -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Opmerkingen" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "Opmerking" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "Recept afbeelding" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "Geschatte voorbereidingstijd" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "Geschatte wachttijd" @@ -1451,27 +1695,67 @@ msgstr "Bereiding loggen" msgid "Recipe Home" msgstr "Recept thuis" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "Account" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" +msgstr "" + +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Instellingen" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Instellingen" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Password Reset" +msgid "Password Settings" +msgstr "Wachtwoord reset" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Instellingen" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +#, fuzzy +#| msgid "Social Login" +msgid "Social" +msgstr "Socials login" + +#: .\cookbook\templates\settings.html:63 +#, fuzzy +#| msgid "Link social account" +msgid "Manage Social Accounts" msgstr "Koppel account socials" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "Taal" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "Stijl" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "API Token" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." @@ -1479,7 +1763,7 @@ msgstr "" "Je kan zowel basale verificatie als verificatie op basis van tokens " "gebruiken om toegang tot de REST API te krijgen." -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" @@ -1487,7 +1771,7 @@ msgstr "" "Gebruik de token als een 'Authorization header'voorafgegaan door het woord " "token zoals in de volgende voorbeelden:" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "of" @@ -1509,58 +1793,55 @@ msgstr "" msgid "Create Superuser account" msgstr "Maak Superuser acount" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "Boodschappen recepten" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "Geen recepten geselecteerd" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "Invoermodus" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "Zet op lijst" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "Hoeveelheid" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "Supermarkt" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "Selecteer supermarkt" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "Selecteer gebruiker" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "Afgerond" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "Je bent offline, boodschappenlijst synchroniseert mogelijk niet." -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "Kopieër/exporteer" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "Lijst voorvoegsel" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "Er is een fout opgetreden bij het maken van een hulpbron!" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1574,10 +1855,6 @@ msgstr "" "Je kan inloggen met een account van een van de onderstaande derde \n" "partijen:" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "Verwijder" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1588,38 +1865,99 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "Voeg account van een 3e partij toe" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" -msgstr "Statistieken" +#: .\cookbook\templates\space.html:18 +#, fuzzy +#| msgid "Description" +msgid "Manage Subscription" +msgstr "Beschrijving" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "Aantal objecten" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "Geïmporteerde recepten" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "Object statistieken" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "Recepten zonder etiketten" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "Externe recepten" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "Interne recepten" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +#, fuzzy +#| msgid "Invite Links" +msgid "Invite User" +msgstr "Uitnodigingslink" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Beheer" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +#, fuzzy +#| msgid "Remove" +msgid "remove" +msgstr "Verwijder" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +#, fuzzy +#| msgid "You cannot edit this storage!" +msgid "You cannot edit yourself." +msgstr "Je kan deze opslag niet bewerken!" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "In dit boek bestaan nog geen recepten." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "Uitnodigingslink" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "Statistieken" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "Toon links" @@ -1748,45 +2086,157 @@ msgstr "" " alleen werken met Postgres databases.\n" " " -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "Importeer URL" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +#, fuzzy +#| msgid "Bookmark saved!" +msgid "Bookmark Me!" +msgstr "Bladwijzer opgeslagen!" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "Vul website URL in" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" -msgstr "Geef json direct op" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." +msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Bekijk recept" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Preparation Time" +msgid "Prep Time" +msgstr "Bereidingstijd" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Tijd" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Ontdekte recepten" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Laat als kop zien" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Verwijder stap" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Verwijder recept" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "Naam Recept" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "Beschrijving recept" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "Selecteer één" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "Alle etiketten" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "Importeer alle etiketten, niet alleen de bestaande." -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "Informatie" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1804,49 +2254,79 @@ msgstr "" "vrij om een voorbeeld te posten in \n" " de GitHub issues." -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "Google Id+json Info" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "GitHub issues" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "Recept opmaak specificatie" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "Parameter updatet_at is onjuist geformateerd" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "Deze optie is niet beschikbaar in de demo versie!" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "Synchronisatie succesvol!" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "Er is een fout opgetreden bij het synchroniseren met Opslag" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" +"De opgevraagde site heeft misvormde data verstrekt en kan niet gelezen " +"worden." + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "De opgevraagde pagina kon niet gevonden worden." -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -"De opgevraagde pagina weigert informatie te verstrekken (Statuscode 403)." +"De opgevraagde site biedt geen bekend gegevensformaat aan om het recept van " +"te importeren." -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." -msgstr "Kon niet goed verwerken.." +#: .\cookbook\views\api.py:694 +#, fuzzy +#| msgid "The requested page could not be found." +msgid "No useable data could be found." +msgstr "De opgevraagde pagina kon niet gevonden worden." -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1858,7 +2338,7 @@ msgid "Monitor" msgstr "Bewaker" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "Opslag backend" @@ -1869,8 +2349,8 @@ msgstr "" "Dit Opslag backend kon niet verwijderd worden omdat het gebruikt wordt in " "tenminste een Bewaker." -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "Kookboek" @@ -1878,55 +2358,55 @@ msgstr "Kookboek" msgid "Bookmarks" msgstr "Bladwijzers" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "Uitnodigingslink" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "Ingrediënt" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "Je kan deze opslag niet bewerken!" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "Opslag opgeslagen!" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "Er is een fout opgetreden bij het updaten van deze opslag backend!" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "Opslag" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "Wijzigingen opgeslagen!" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "Fout bij het opslaan van de wijzigingen!" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "Eenheden samengevoegd!" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "Kan niet met hetzelfde object samenvoegen!" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "Ingrediënten samengevoegd!" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "Importeren is voor deze provider niet geïmplementeerd" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "Exporteren is voor deze provider niet geïmplementeerd" @@ -1942,23 +2422,77 @@ msgstr "Ontdekken" msgid "Shopping Lists" msgstr "Boodschappenlijst" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "Nieuw recept geïmporteerd!" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "Er is een fout opgetreden bij het importeren van dit recept!" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "Je beschikt niet over de juiste rechten om deze actie uit te voeren!" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "Opmerking opgeslagen!" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " @@ -1969,22 +2503,67 @@ msgstr "" "documentatie raad moeten plegen voor een methode om je wachtwoord te " "resetten." -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "Wachtwoorden komen niet overeen!" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "Gebruiker is gecreëerd, Log in alstublieft!" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "Onjuiste uitnodigingslink opgegeven!" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "Je bent niet ingelogd en kan deze pagina daarom niet bekijken!" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "De uitnodigingslink is niet valide of al gebruikt!" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "Een gebruikersnaam is niet verplicht. Als het veld leeg is kan de " +#~ "gebruiker er een kiezen." + +#~ msgid "Imported from" +#~ msgstr "Geïmporteerd van" + +#~ msgid "Link" +#~ msgstr "Link" + +#~ msgid "Logout" +#~ msgstr "Uitloggen" + +#~ msgid "Website Import" +#~ msgstr "Importeer website" + +#~ msgid "You are not a member of any space." +#~ msgstr "Je bent geen lid van een ruimte." + +#~ msgid "There was an error creating a resource!" +#~ msgstr "Er is een fout opgetreden bij het maken van een hulpbron!" + +#~ msgid "Enter json directly" +#~ msgstr "Geef json direct op" + +#~ msgid "" +#~ "The requested page refused to provide any information (Status Code 403)." +#~ msgstr "" +#~ "De opgevraagde pagina weigert informatie te verstrekken (Statuscode 403)." + +#~ msgid "Could not parse correctly..." +#~ msgstr "Kon niet goed verwerken.." + #~ msgid "Number of servings" #~ msgstr "Porties" @@ -2006,6 +2585,3 @@ msgstr "De uitnodigingslink is niet valide of al gebruikt!" #~ msgid "This recipe is already linked to the book!" #~ msgstr "Dit recept is al aan het boek gekoppeld!" - -#~ msgid "Bookmark saved!" -#~ msgstr "Bladwijzer opgeslagen!" diff --git a/cookbook/locale/pt/LC_MESSAGES/django.po b/cookbook/locale/pt/LC_MESSAGES/django.po index d796cbf7..7c50f46e 100644 --- a/cookbook/locale/pt/LC_MESSAGES/django.po +++ b/cookbook/locale/pt/LC_MESSAGES/django.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: João Cunha , 2020\n" "Language-Team: Portuguese (https://www.transifex.com/django-recipes/" @@ -23,48 +23,49 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Ingredientes" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" msgstr "Cor da barra de navegação." -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "Unidade defeito a ser usada quando um novo ingrediente for inserido." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" msgstr "" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." msgstr "" -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Mostrar receitas recentes na página de pesquisa." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Número de casas decimais para arredondamentos." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -72,11 +73,11 @@ msgid "" "mobile data. If lower than instance limit it is reset when saving." msgstr "" -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -84,91 +85,94 @@ msgstr "" "Ambos os campos são opcionais. Se nenhum for preenchido o nome de utilizador " "será apresentado." -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "Nome" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "Palavras-chave" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "Tempo de preparação em minutos" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "Tempo de espera (cozedura) em minutos" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "Caminho" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "UID de armazenamento" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "Nova Unidade" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "Nova unidade substituta." -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "Unidade Anterior" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "Unidade a ser alterada." -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "Novo Prato" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "Novo prato a ser alterado." -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "Prato Anterior" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "Prato a ser alterado." -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "Adicionar comentário:" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" "Deixar vazio para Dropbox e inserir palavra-passe de aplicação para " "Nextcloud." -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "Deixar vazio para Nextcloud e inserir token api para Dropbox." -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" @@ -176,26 +180,26 @@ msgstr "" "Deixar vazio para Dropbox e inserir apenas url base para Nextcloud (/" "remote.php/webdav/é adicionado automaticamente). " -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "Procurar" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "ID the ficheiro" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "É necessário inserir uma receita ou um título." -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" "É possível escolher os utilizadores com quem partilhar receitas por defeitos " "nas definições." -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" @@ -203,48 +207,57 @@ msgstr "" "É possível utilizar markdown para editar este campo. Documentação disponível aqui" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -"Um nome de utilizador não é obrigatório. Se deixado em branco o novo " -"utilizador pode escolher o seu nome." -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" -msgstr "Sem permissões para aceder a esta página!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" +msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "Autenticação necessária para aceder a esta página!" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "Sem permissões para aceder a esta página!" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "Esta página não contém uma receita que eu consiga entender." - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -254,45 +267,56 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "Importar" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, fuzzy, python-format #| msgid "Import Recipes" msgid "Imported %s recipes." msgstr "Importar Receitas" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 #, fuzzy #| msgid "Note" msgid "Notes" msgstr "Nota" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "Porções" @@ -301,11 +325,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -331,44 +355,74 @@ msgstr "Jantar" msgid "Other" msgstr "Outro" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "Procurar" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "Plano de refeição" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "Livros" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "Pequeno" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "Grande" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "Novo" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "Texto" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "Tempo" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +#, fuzzy +#| msgid "File ID" +msgid "File" +msgstr "ID the ficheiro" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "Editar" @@ -382,10 +436,6 @@ msgstr "Editar" msgid "Delete" msgstr "Apagar" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "Ligação" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "Erro 404" @@ -402,21 +452,122 @@ msgstr "Início" msgid "Report a Bug" msgstr "Reportar defeito" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +#, fuzzy +#| msgid "Make Header" +msgid "Make Primary" +msgstr "Adicionar Cabeçalho" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "Warning:" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "Confirme" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "Iniciar sessão" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -430,116 +581,164 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +msgid "Create an Account" msgstr "" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "Documentação API" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "Utensílios" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "Compras" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "Palavra-chave" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "Editor em massa" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "Dados de armazenamento" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "Configurar sincronização" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "Descobrir Receitas" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Estatísticas" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "Unidades e Ingredientes" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "Importar Receita" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Definições" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Histórico" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +#, fuzzy +#| msgid "Settings" +msgid "Space Settings" +msgstr "Definições" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "Sistema" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "Administração" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "Navegador de API" -#: .\cookbook\templates\base.html:165 -msgid "Logout" -msgstr "Sair" +#: .\cookbook\templates\base.html:175 +msgid "Log out" +msgstr "" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" @@ -553,7 +752,7 @@ msgstr "Editar Receitas em massa" msgid "Add the specified keywords to all recipes containing a word" msgstr "Adicionar palavras-chave a todas as receitas que contenham uma palavra" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "Sincronizar" @@ -580,7 +779,7 @@ msgstr "Sincronizar" msgid "Importing Recipes" msgstr "A importar Receitas" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -619,26 +818,33 @@ msgid "Export Recipes" msgstr "Exportar Receitas" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "Exportar" +#: .\cookbook\templates\files.html:7 +#, fuzzy +#| msgid "File ID" +msgid "Files" +msgstr "ID the ficheiro" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "Importar nova Receita" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "Gravar" @@ -647,181 +853,190 @@ msgstr "Gravar" msgid "Edit Recipe" msgstr "Editar Receita" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "Tempo de Espera" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "Escolher Palavras-chave" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 #, fuzzy #| msgid "Keyword" msgid "Add Keyword" msgstr "Palavra-chave" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "Apagar Passo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "Passo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "Mostrar como cabeçalho" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "Esconder como cabeçalho" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "Mover para cima" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "Mover para baixo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "Nome do passo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "Tipo de passo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "Tempo de passo em minutos" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +#, fuzzy +#| msgid "Select Unit" +msgid "Select File" msgstr "Selecionar Unidade" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "Criar" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "Selecionar" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "Selecionar Unidade" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "Criar" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "Nota" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "Apagar Ingrediente" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "Adicionar Cabeçalho" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "Adicionar Ingrediente" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "Desativar Quantidade" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "Ativar Quantidade" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "Instruções" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "Gravar e Ver" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "Adicionar Passo" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "Ver Receita" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "Apagar Receita" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "Passos" @@ -846,7 +1061,7 @@ msgstr "" "estejam a usar. " #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "Unidades" @@ -868,10 +1083,6 @@ msgstr "" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "Tem a certeza que quer apagar %(title)s: %(object)s" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "Confirme" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "Ver" @@ -893,12 +1104,6 @@ msgstr "Filtrar" msgid "Import all" msgstr "Importar tudo" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "Novo" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -943,7 +1148,7 @@ msgstr "Fechar" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "Receita" @@ -984,10 +1189,6 @@ msgstr "Procure receita ..." msgid "New Recipe" msgstr "Nova Receita" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "Importar Website" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Procura avançada " @@ -1001,7 +1202,7 @@ msgid "Last viewed" msgstr "Ultimo visto" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Receitas" @@ -1153,7 +1354,7 @@ msgid "New Entry" msgstr "Nova Entrada" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "Procure Receita" @@ -1185,7 +1386,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "" @@ -1235,7 +1436,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "" @@ -1312,7 +1513,6 @@ msgstr "Autenticação necessária para aceder a esta página!" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1329,13 +1529,50 @@ msgid "" "action." msgstr "Sem permissões para aceder a esta página!" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +#, fuzzy +#| msgid "Create" +msgid "Create Space" +msgstr "Criar" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1352,28 +1589,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "" @@ -1389,39 +1627,75 @@ msgstr "" msgid "Recipe Home" msgstr "" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +#, fuzzy +#| msgid "Settings" +msgid "API-Settings" +msgstr "Definições" + +#: .\cookbook\templates\settings.html:39 +#, fuzzy +#| msgid "Settings" +msgid "Name Settings" +msgstr "Definições" + +#: .\cookbook\templates\settings.html:47 +#, fuzzy +#| msgid "Settings" +msgid "Password Settings" +msgstr "Definições" + +#: .\cookbook\templates\settings.html:55 +#, fuzzy +#| msgid "Settings" +msgid "Email Settings" +msgstr "Definições" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." msgstr "" -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" msgstr "" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "" @@ -1442,58 +1716,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1505,10 +1776,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1518,38 +1785,91 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +msgid "Invite User" +msgstr "" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +#, fuzzy +#| msgid "Admin" +msgid "admin" +msgstr "Administração" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +msgid "You cannot edit yourself." +msgstr "" + +#: .\cookbook\templates\space.html:117 +#, fuzzy +#| msgid "There are no recipes in this book yet." +msgid "There are no members in your space yet!" +msgstr "Ainda não há receitas neste livro." + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "" @@ -1647,45 +1967,155 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +msgid "Bookmark Me!" +msgstr "" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +#, fuzzy +#| msgid "View Recipe" +msgid "Preview Recipe Data" +msgstr "Ver Receita" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +#, fuzzy +#| msgid "Time" +msgid "Prep Time" +msgstr "Tempo" + +#: .\cookbook\templates\url_import.html:254 +#, fuzzy +#| msgid "Time" +msgid "Cook Time" +msgstr "Tempo" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +#, fuzzy +#| msgid "Discovered Recipes" +msgid "Discovered Attributes" +msgstr "Descobrir Receitas" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +#, fuzzy +#| msgid "Show as header" +msgid "Show Blank Field" +msgstr "Mostrar como cabeçalho" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +#, fuzzy +#| msgid "Delete Step" +msgid "Delete Text" +msgstr "Apagar Passo" + +#: .\cookbook\templates\url_import.html:413 +#, fuzzy +#| msgid "Delete Recipe" +msgid "Delete image" +msgstr "Apagar Receita" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1696,48 +2126,73 @@ msgid "" " github issues." msgstr "" -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "" -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "Esta página não contém uma receita que eu consiga entender." + +#: .\cookbook\views\api.py:694 +msgid "No useable data could be found." msgstr "" -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1749,7 +2204,7 @@ msgid "Monitor" msgstr "" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "" @@ -1758,8 +2213,8 @@ msgid "" "Could not delete this storage backend as it is used in at least one monitor." msgstr "" -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "" @@ -1767,55 +2222,55 @@ msgstr "" msgid "Bookmarks" msgstr "" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1831,45 +2286,124 @@ msgstr "" msgid "Shopping Lists" msgstr "" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " "on how to reset passwords." msgstr "" -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +#, fuzzy +#| msgid "You are not logged in and therefore cannot view this page!" +msgid "You are already member of a space and therefore cannot join this one." +msgstr "Autenticação necessária para aceder a esta página!" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "" +#~ msgid "" +#~ "A username is not required, if left blank the new user can choose one." +#~ msgstr "" +#~ "Um nome de utilizador não é obrigatório. Se deixado em branco o novo " +#~ "utilizador pode escolher o seu nome." + +#~ msgid "Link" +#~ msgstr "Ligação" + +#~ msgid "Logout" +#~ msgstr "Sair" + +#~ msgid "Website Import" +#~ msgstr "Importar Website" + #~ msgid "" #~ "Include - [ ] in list for easier usage in markdown based " #~ "documents." diff --git a/cookbook/locale/rn/LC_MESSAGES/django.po b/cookbook/locale/rn/LC_MESSAGES/django.po index a0a54d56..404178a1 100644 --- a/cookbook/locale/rn/LC_MESSAGES/django.po +++ b/cookbook/locale/rn/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,48 +18,49 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" msgstr "" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" msgstr "" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." msgstr "" -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "" -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "" -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -67,167 +68,181 @@ msgid "" "mobile data. If lower than instance limit it is reset when saving." msgstr "" -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "" -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "" -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" msgstr "" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "" -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" msgstr "" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -237,42 +252,53 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "" @@ -281,11 +307,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -311,44 +337,72 @@ msgstr "" msgid "Other" msgstr "" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +msgid "File" +msgstr "" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "" @@ -362,10 +416,6 @@ msgstr "" msgid "Delete" msgstr "" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "" @@ -382,21 +432,120 @@ msgstr "" msgid "Report a Bug" msgstr "" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +msgid "Make Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "Warning:" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -410,115 +559,161 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +msgid "Create an Account" msgstr "" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +msgid "Space Settings" +msgstr "" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "" -#: .\cookbook\templates\base.html:165 -msgid "Logout" +#: .\cookbook\templates\base.html:175 +msgid "Log out" msgstr "" #: .\cookbook\templates\batch\edit.html:6 @@ -533,7 +728,7 @@ msgstr "" msgid "Add the specified keywords to all recipes containing a word" msgstr "" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "" @@ -560,7 +755,7 @@ msgstr "" msgid "Importing Recipes" msgstr "" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -597,26 +792,31 @@ msgid "Export Recipes" msgstr "" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "" +#: .\cookbook\templates\files.html:7 +msgid "Files" +msgstr "" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "" @@ -625,179 +825,186 @@ msgstr "" msgid "Edit Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +msgid "Select File" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "" @@ -817,7 +1024,7 @@ msgid "" msgstr "" #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "" @@ -839,10 +1046,6 @@ msgstr "" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "" @@ -864,12 +1067,6 @@ msgstr "" msgid "Import all" msgstr "" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -914,7 +1111,7 @@ msgstr "" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "" @@ -947,10 +1144,6 @@ msgstr "" msgid "New Recipe" msgstr "" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "" @@ -964,7 +1157,7 @@ msgid "Last viewed" msgstr "" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "" @@ -1112,7 +1305,7 @@ msgid "New Entry" msgstr "" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "" @@ -1142,7 +1335,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "" @@ -1192,7 +1385,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "" @@ -1267,7 +1460,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1282,13 +1474,48 @@ msgid "" "action." msgstr "" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +msgid "Create Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1305,28 +1532,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "" @@ -1342,39 +1570,67 @@ msgstr "" msgid "Recipe Home" msgstr "" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +msgid "API-Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:39 +msgid "Name Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:47 +msgid "Password Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:55 +msgid "Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." msgstr "" -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" msgstr "" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "" @@ -1395,58 +1651,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1458,10 +1711,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1471,38 +1720,87 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +msgid "Invite User" +msgstr "" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +msgid "admin" +msgstr "" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +msgid "You cannot edit yourself." +msgstr "" + +#: .\cookbook\templates\space.html:117 +msgid "There are no members in your space yet!" +msgstr "" + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "" @@ -1600,45 +1898,141 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +msgid "Bookmark Me!" +msgstr "" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +msgid "Preview Recipe Data" +msgstr "" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +msgid "Prep Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:254 +msgid "Cook Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +msgid "Discovered Attributes" +msgstr "" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +msgid "Show Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +msgid "Delete Text" +msgstr "" + +#: .\cookbook\templates\url_import.html:413 +msgid "Delete image" +msgstr "" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1649,48 +2043,73 @@ msgid "" " github issues." msgstr "" -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "" -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +msgid "No useable data could be found." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1702,7 +2121,7 @@ msgid "Monitor" msgstr "" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "" @@ -1711,8 +2130,8 @@ msgid "" "Could not delete this storage backend as it is used in at least one monitor." msgstr "" -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "" @@ -1720,55 +2139,55 @@ msgstr "" msgid "Bookmarks" msgstr "" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1784,41 +2203,103 @@ msgstr "" msgid "Shopping Lists" msgstr "" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " "on how to reset passwords." msgstr "" -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +msgid "You are already member of a space and therefore cannot join this one." +msgstr "" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "" diff --git a/cookbook/locale/tr/LC_MESSAGES/django.po b/cookbook/locale/tr/LC_MESSAGES/django.po index 979d1713..0eb932b3 100644 --- a/cookbook/locale/tr/LC_MESSAGES/django.po +++ b/cookbook/locale/tr/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: Emre S, 2020\n" "Language-Team: Turkish (https://www.transifex.com/django-recipes/" @@ -22,14 +22,15 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "Malzemeler" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" @@ -37,35 +38,35 @@ msgstr "" "Gezinti çubuğunun rengi. Bütün renkeler bütün temalarla çalışmayabilir, önce " "deneyin!" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "Bir tarife yeni bir malzeme eklenirken kullanılacak Varsayılan Birim." -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" msgstr "" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." msgstr "" -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "Son görüntülenen tarifleri arama sayfasında göster." -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "Malzeme birimleri için yuvarlanma basamağı." -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "Tariflerin altında yorumlar oluşturup görebilmek istiyorsanız." -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -78,167 +79,181 @@ msgstr "" "fazla kişiyle alışveriş yaparken kullanışlıdır, ancak biraz mobil veri " "kullanabilir. Örnek sınırından düşükse, kaydederken sıfırlanır." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "İsim" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "" -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "" -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" msgstr "" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "" -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" msgstr "" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -248,42 +263,53 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "" @@ -292,11 +318,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -322,44 +348,72 @@ msgstr "" msgid "Other" msgstr "" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +msgid "File" +msgstr "" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "" @@ -373,10 +427,6 @@ msgstr "" msgid "Delete" msgstr "" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "" @@ -393,21 +443,120 @@ msgstr "" msgid "Report a Bug" msgstr "" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +msgid "Make Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "Warning:" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -421,115 +570,161 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +msgid "Create an Account" msgstr "" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +msgid "Space Settings" +msgstr "" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "" -#: .\cookbook\templates\base.html:165 -msgid "Logout" +#: .\cookbook\templates\base.html:175 +msgid "Log out" msgstr "" #: .\cookbook\templates\batch\edit.html:6 @@ -544,7 +739,7 @@ msgstr "" msgid "Add the specified keywords to all recipes containing a word" msgstr "" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "" @@ -571,7 +766,7 @@ msgstr "" msgid "Importing Recipes" msgstr "" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -608,26 +803,31 @@ msgid "Export Recipes" msgstr "" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "" +#: .\cookbook\templates\files.html:7 +msgid "Files" +msgstr "" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "" @@ -636,179 +836,186 @@ msgstr "" msgid "Edit Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +msgid "Select File" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "" @@ -828,7 +1035,7 @@ msgid "" msgstr "" #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "" @@ -850,10 +1057,6 @@ msgstr "" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "" @@ -875,12 +1078,6 @@ msgstr "" msgid "Import all" msgstr "" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -925,7 +1122,7 @@ msgstr "" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "" @@ -958,10 +1155,6 @@ msgstr "" msgid "New Recipe" msgstr "" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "" @@ -975,7 +1168,7 @@ msgid "Last viewed" msgstr "" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "" @@ -1123,7 +1316,7 @@ msgid "New Entry" msgstr "" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "" @@ -1153,7 +1346,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "" @@ -1203,7 +1396,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "" @@ -1278,7 +1471,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1293,13 +1485,48 @@ msgid "" "action." msgstr "" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +msgid "Create Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1316,28 +1543,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "" @@ -1353,39 +1581,67 @@ msgstr "" msgid "Recipe Home" msgstr "" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +msgid "API-Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:39 +msgid "Name Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:47 +msgid "Password Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:55 +msgid "Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." msgstr "" -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" msgstr "" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "" @@ -1406,58 +1662,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1469,10 +1722,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1482,38 +1731,87 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +msgid "Invite User" +msgstr "" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +msgid "admin" +msgstr "" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +msgid "You cannot edit yourself." +msgstr "" + +#: .\cookbook\templates\space.html:117 +msgid "There are no members in your space yet!" +msgstr "" + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "" @@ -1611,45 +1909,141 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +msgid "Bookmark Me!" +msgstr "" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +msgid "Preview Recipe Data" +msgstr "" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +msgid "Prep Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:254 +msgid "Cook Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +msgid "Discovered Attributes" +msgstr "" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +msgid "Show Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +msgid "Delete Text" +msgstr "" + +#: .\cookbook\templates\url_import.html:413 +msgid "Delete image" +msgstr "" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1660,48 +2054,73 @@ msgid "" " github issues." msgstr "" -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "" -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +msgid "No useable data could be found." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1713,7 +2132,7 @@ msgid "Monitor" msgstr "" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "" @@ -1722,8 +2141,8 @@ msgid "" "Could not delete this storage backend as it is used in at least one monitor." msgstr "" -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "" @@ -1731,55 +2150,55 @@ msgstr "" msgid "Bookmarks" msgstr "" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1795,41 +2214,103 @@ msgstr "" msgid "Shopping Lists" msgstr "" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " "on how to reset passwords." msgstr "" -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +msgid "You are already member of a space and therefore cannot join this one." +msgstr "" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "" diff --git a/cookbook/locale/zh_CN/LC_MESSAGES/django.po b/cookbook/locale/zh_CN/LC_MESSAGES/django.po index a0a54d56..404178a1 100644 --- a/cookbook/locale/zh_CN/LC_MESSAGES/django.po +++ b/cookbook/locale/zh_CN/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,48 +18,49 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:91 -#: .\cookbook\templates\forms\edit_internal_recipe.html:219 +#: .\cookbook\filters.py:23 .\cookbook\templates\base.html:98 +#: .\cookbook\templates\forms\edit_internal_recipe.html:246 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:67 +#: .\cookbook\templates\space.html:37 .\cookbook\templates\stats.html:28 +#: .\cookbook\templates\url_import.html:270 .\cookbook\views\lists.py:67 msgid "Ingredients" msgstr "" -#: .\cookbook\forms.py:45 +#: .\cookbook\forms.py:49 msgid "" "Color of the top navigation bar. Not all colors work with all themes, just " "try them out!" msgstr "" -#: .\cookbook\forms.py:46 +#: .\cookbook\forms.py:51 msgid "Default Unit to be used when inserting a new ingredient into a recipe." msgstr "" -#: .\cookbook\forms.py:47 +#: .\cookbook\forms.py:53 msgid "" "Enables support for fractions in ingredient amounts (e.g. convert decimals " "to fractions automatically)" msgstr "" -#: .\cookbook\forms.py:48 +#: .\cookbook\forms.py:56 msgid "" "Users with whom newly created meal plan/shopping list entries should be " "shared by default." msgstr "" -#: .\cookbook\forms.py:49 +#: .\cookbook\forms.py:58 msgid "Show recently viewed recipes on search page." msgstr "" -#: .\cookbook\forms.py:50 +#: .\cookbook\forms.py:59 msgid "Number of decimals to round ingredients." msgstr "" -#: .\cookbook\forms.py:51 +#: .\cookbook\forms.py:60 msgid "If you want to be able to create and see comments underneath recipes." msgstr "" -#: .\cookbook\forms.py:53 +#: .\cookbook\forms.py:62 msgid "" "Setting to 0 will disable auto sync. When viewing a shopping list the list " "is updated every set seconds to sync changes someone else might have made. " @@ -67,167 +68,181 @@ msgid "" "mobile data. If lower than instance limit it is reset when saving." msgstr "" -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:65 msgid "Makes the navbar stick to the top of the page." msgstr "" -#: .\cookbook\forms.py:72 +#: .\cookbook\forms.py:81 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -#: .\cookbook\forms.py:93 .\cookbook\forms.py:315 -#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +#: .\cookbook\forms.py:102 .\cookbook\forms.py:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:49 +#: .\cookbook\templates\url_import.html:154 msgid "Name" msgstr "" -#: .\cookbook\forms.py:94 .\cookbook\forms.py:316 -#: .\cookbook\templates\base.html:98 -#: .\cookbook\templates\forms\edit_internal_recipe.html:81 -#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:202 +#: .\cookbook\forms.py:103 .\cookbook\forms.py:332 +#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\forms\edit_internal_recipe.html:85 +#: .\cookbook\templates\space.html:33 .\cookbook\templates\stats.html:24 +#: .\cookbook\templates\url_import.html:188 +#: .\cookbook\templates\url_import.html:573 msgid "Keywords" msgstr "" -#: .\cookbook\forms.py:95 +#: .\cookbook\forms.py:104 msgid "Preparation time in minutes" msgstr "" -#: .\cookbook\forms.py:96 +#: .\cookbook\forms.py:105 msgid "Waiting time (cooking/baking) in minutes" msgstr "" -#: .\cookbook\forms.py:97 .\cookbook\forms.py:317 +#: .\cookbook\forms.py:106 .\cookbook\forms.py:333 msgid "Path" msgstr "" -#: .\cookbook\forms.py:98 +#: .\cookbook\forms.py:107 msgid "Storage UID" msgstr "" -#: .\cookbook\forms.py:121 +#: .\cookbook\forms.py:133 msgid "Default" msgstr "" -#: .\cookbook\forms.py:130 +#: .\cookbook\forms.py:144 .\cookbook\templates\url_import.html:90 msgid "" "To prevent duplicates recipes with the same name as existing ones are " "ignored. Check this box to import everything." msgstr "" -#: .\cookbook\forms.py:149 +#: .\cookbook\forms.py:164 msgid "New Unit" msgstr "" -#: .\cookbook\forms.py:150 +#: .\cookbook\forms.py:165 msgid "New unit that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:155 +#: .\cookbook\forms.py:170 msgid "Old Unit" msgstr "" -#: .\cookbook\forms.py:156 +#: .\cookbook\forms.py:171 msgid "Unit that should be replaced." msgstr "" -#: .\cookbook\forms.py:172 +#: .\cookbook\forms.py:187 msgid "New Food" msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:188 msgid "New food that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:178 +#: .\cookbook\forms.py:193 msgid "Old Food" msgstr "" -#: .\cookbook\forms.py:179 +#: .\cookbook\forms.py:194 msgid "Food that should be replaced." msgstr "" -#: .\cookbook\forms.py:197 +#: .\cookbook\forms.py:212 msgid "Add your comment: " msgstr "" -#: .\cookbook\forms.py:238 +#: .\cookbook\forms.py:253 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" -#: .\cookbook\forms.py:245 +#: .\cookbook\forms.py:260 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" -#: .\cookbook\forms.py:253 +#: .\cookbook\forms.py:269 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" msgstr "" -#: .\cookbook\forms.py:291 +#: .\cookbook\forms.py:307 msgid "Search String" msgstr "" -#: .\cookbook\forms.py:318 +#: .\cookbook\forms.py:334 msgid "File ID" msgstr "" -#: .\cookbook\forms.py:354 +#: .\cookbook\forms.py:370 msgid "You must provide at least a recipe or a title." msgstr "" -#: .\cookbook\forms.py:367 +#: .\cookbook\forms.py:383 msgid "You can list default users to share recipes with in the settings." msgstr "" -#: .\cookbook\forms.py:368 -#: .\cookbook\templates\forms\edit_internal_recipe.html:377 +#: .\cookbook\forms.py:384 +#: .\cookbook\templates\forms\edit_internal_recipe.html:404 msgid "" "You can use markdown to format this field. See the docs here" msgstr "" -#: .\cookbook\forms.py:393 -msgid "A username is not required, if left blank the new user can choose one." +#: .\cookbook\forms.py:409 +msgid "Maximum number of users for this space reached." msgstr "" -#: .\cookbook\helper\permission_helper.py:123 -#: .\cookbook\helper\permission_helper.py:129 -#: .\cookbook\helper\permission_helper.py:151 -#: .\cookbook\helper\permission_helper.py:196 -#: .\cookbook\helper\permission_helper.py:210 -#: .\cookbook\helper\permission_helper.py:221 -#: .\cookbook\helper\permission_helper.py:232 .\cookbook\views\data.py:30 -#: .\cookbook\views\views.py:112 .\cookbook\views\views.py:116 -#: .\cookbook\views\views.py:184 -msgid "You do not have the required permissions to view this page!" +#: .\cookbook\forms.py:415 +msgid "Email address already taken!" msgstr "" -#: .\cookbook\helper\permission_helper.py:141 +#: .\cookbook\forms.py:423 +msgid "" +"An email address is not required but if present the invite link will be send " +"to the user." +msgstr "" + +#: .\cookbook\forms.py:438 +msgid "Name already taken." +msgstr "" + +#: .\cookbook\forms.py:449 +msgid "Accept Terms and Privacy" +msgstr "" + +#: .\cookbook\helper\AllAuthCustomAdapter.py:30 +msgid "" +"In order to prevent spam, the requested email was not send. Please wait a " +"few minutes and try again." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:124 +#: .\cookbook\helper\permission_helper.py:144 .\cookbook\views\views.py:147 msgid "You are not logged in and therefore cannot view this page!" msgstr "" -#: .\cookbook\helper\permission_helper.py:145 -#: .\cookbook\helper\permission_helper.py:167 -#: .\cookbook\helper\permission_helper.py:182 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:132 +#: .\cookbook\helper\permission_helper.py:154 +#: .\cookbook\helper\permission_helper.py:199 +#: .\cookbook\helper\permission_helper.py:213 +#: .\cookbook\helper\permission_helper.py:224 +#: .\cookbook\helper\permission_helper.py:235 .\cookbook\views\data.py:39 +#: .\cookbook\views\views.py:158 .\cookbook\views\views.py:165 +#: .\cookbook\views\views.py:253 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:148 +#: .\cookbook\helper\permission_helper.py:170 +#: .\cookbook\helper\permission_helper.py:185 msgid "You cannot interact with this object as it is not owned by you!" msgstr "" -#: .\cookbook\helper\recipe_url_import.py:40 .\cookbook\views\api.py:549 -msgid "The requested site provided malformed data and cannot be read." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:54 -msgid "" -"The requested site does not provide any recognized data format to import the " -"recipe from." -msgstr "" - -#: .\cookbook\helper\recipe_url_import.py:160 -msgid "Imported from" -msgstr "" - #: .\cookbook\helper\template_helper.py:60 #: .\cookbook\helper\template_helper.py:62 msgid "Could not parse template code." @@ -237,42 +252,53 @@ msgstr "" #: .\cookbook\templates\import.html:14 .\cookbook\templates\import.html:20 #: .\cookbook\templates\import_response.html:7 #: .\cookbook\templates\test.html:14 .\cookbook\templates\test.html:20 -#: .\cookbook\templates\url_import.html:233 .\cookbook\views\delete.py:60 -#: .\cookbook\views\edit.py:190 +#: .\cookbook\templates\url_import.html:27 +#: .\cookbook\templates\url_import.html:101 +#: .\cookbook\templates\url_import.html:123 +#: .\cookbook\templates\url_import.html:317 +#: .\cookbook\templates\url_import.html:604 .\cookbook\views\delete.py:60 +#: .\cookbook\views\edit.py:199 msgid "Import" msgstr "" -#: .\cookbook\integration\integration.py:131 +#: .\cookbook\integration\integration.py:162 msgid "" "Importer expected a .zip file. Did you choose the correct importer type for " "your data ?" msgstr "" -#: .\cookbook\integration\integration.py:134 +#: .\cookbook\integration\integration.py:165 +msgid "" +"An unexpected error occurred during the import. Please make sure you have " +"uploaded a valid file." +msgstr "" + +#: .\cookbook\integration\integration.py:169 msgid "The following recipes were ignored because they already existed:" msgstr "" -#: .\cookbook\integration\integration.py:137 +#: .\cookbook\integration\integration.py:173 #, python-format msgid "Imported %s recipes." msgstr "" -#: .\cookbook\integration\paprika.py:44 +#: .\cookbook\integration\paprika.py:46 msgid "Notes" msgstr "" -#: .\cookbook\integration\paprika.py:47 +#: .\cookbook\integration\paprika.py:49 msgid "Nutritional Information" msgstr "" -#: .\cookbook\integration\paprika.py:50 +#: .\cookbook\integration\paprika.py:53 msgid "Source" msgstr "" #: .\cookbook\integration\safron.py:23 -#: .\cookbook\templates\forms\edit_internal_recipe.html:75 +#: .\cookbook\templates\forms\edit_internal_recipe.html:79 #: .\cookbook\templates\include\log_cooking.html:16 -#: .\cookbook\templates\url_import.html:84 +#: .\cookbook\templates\url_import.html:224 +#: .\cookbook\templates\url_import.html:455 msgid "Servings" msgstr "" @@ -281,11 +307,11 @@ msgid "Waiting time" msgstr "" #: .\cookbook\integration\safron.py:27 -#: .\cookbook\templates\forms\edit_internal_recipe.html:69 +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 msgid "Preparation Time" msgstr "" -#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:71 +#: .\cookbook\integration\safron.py:29 .\cookbook\templates\base.html:78 #: .\cookbook\templates\forms\ingredients.html:7 #: .\cookbook\templates\index.html:7 msgid "Cookbook" @@ -311,44 +337,72 @@ msgstr "" msgid "Other" msgstr "" -#: .\cookbook\models.py:110 .\cookbook\templates\shopping_list.html:48 +#: .\cookbook\models.py:71 +msgid "" +"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file " +"upload." +msgstr "" + +#: .\cookbook\models.py:121 .\cookbook\templates\search.html:7 +#: .\cookbook\templates\shopping_list.html:52 msgid "Search" msgstr "" -#: .\cookbook\models.py:111 .\cookbook\templates\base.html:85 +#: .\cookbook\models.py:122 .\cookbook\templates\base.html:92 #: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:152 -#: .\cookbook\views\edit.py:224 .\cookbook\views\new.py:188 +#: .\cookbook\views\edit.py:233 .\cookbook\views\new.py:201 msgid "Meal-Plan" msgstr "" -#: .\cookbook\models.py:112 .\cookbook\templates\base.html:82 +#: .\cookbook\models.py:123 .\cookbook\templates\base.html:89 msgid "Books" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Small" msgstr "" -#: .\cookbook\models.py:119 +#: .\cookbook\models.py:131 msgid "Large" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:198 +#: .\cookbook\models.py:131 .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:323 +msgid "New" +msgstr "" + +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:202 msgid "Text" msgstr "" -#: .\cookbook\models.py:327 -#: .\cookbook\templates\forms\edit_internal_recipe.html:199 +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:203 msgid "Time" msgstr "" +#: .\cookbook\models.py:340 +#: .\cookbook\templates\forms\edit_internal_recipe.html:204 +#: .\cookbook\templates\forms\edit_internal_recipe.html:218 +msgid "File" +msgstr "" + +#: .\cookbook\serializer.py:109 +msgid "File uploads are not enabled for this Space." +msgstr "" + +#: .\cookbook\serializer.py:117 +msgid "You have reached your file upload limit." +msgstr "" + #: .\cookbook\tables.py:35 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 #: .\cookbook\templates\meal_plan.html:281 #: .\cookbook\templates\recipes_table.html:82 #: .\cookbook\templates\shopping_list.html:33 +#: .\cookbook\templates\space.html:84 msgid "Edit" msgstr "" @@ -362,10 +416,6 @@ msgstr "" msgid "Delete" msgstr "" -#: .\cookbook\tables.py:144 -msgid "Link" -msgstr "" - #: .\cookbook\templates\404.html:5 msgid "404 Error" msgstr "" @@ -382,21 +432,120 @@ msgstr "" msgid "Report a Bug" msgstr "" -#: .\cookbook\templates\account\login.html:7 -#: .\cookbook\templates\base.html:170 +#: .\cookbook\templates\account\email.html:6 +#: .\cookbook\templates\account\email.html:9 +msgid "E-mail Addresses" +msgstr "" + +#: .\cookbook\templates\account\email.html:11 +msgid "The following e-mail addresses are associated with your account:" +msgstr "" + +#: .\cookbook\templates\account\email.html:28 +msgid "Verified" +msgstr "" + +#: .\cookbook\templates\account\email.html:30 +msgid "Unverified" +msgstr "" + +#: .\cookbook\templates\account\email.html:32 +msgid "Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:39 +msgid "Make Primary" +msgstr "" + +#: .\cookbook\templates\account\email.html:41 +msgid "Re-send Verification" +msgstr "" + +#: .\cookbook\templates\account\email.html:42 +#: .\cookbook\templates\socialaccount\connections.html:36 +msgid "Remove" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "Warning:" +msgstr "" + +#: .\cookbook\templates\account\email.html:50 +msgid "" +"You currently do not have any e-mail address set up. You should really add " +"an e-mail address so you can receive notifications, reset your password, etc." +msgstr "" + +#: .\cookbook\templates\account\email.html:56 +msgid "Add E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email.html:61 +msgid "Add E-mail" +msgstr "" + +#: .\cookbook\templates\account\email.html:71 +msgid "Do you really want to remove the selected e-mail address?" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:6 +#: .\cookbook\templates\account\email_confirm.html:10 +msgid "Confirm E-mail Address" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:16 +#, python-format +msgid "" +"Please confirm that\n" +" %(email)s is an e-mail address " +"for user %(user_display)s\n" +" ." +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:22 +#: .\cookbook\templates\generic\delete_template.html:21 +msgid "Confirm" +msgstr "" + +#: .\cookbook\templates\account\email_confirm.html:29 +#, python-format +msgid "" +"This e-mail confirmation link expired or is invalid. Please\n" +" issue a new e-mail confirmation " +"request." +msgstr "" + +#: .\cookbook\templates\account\login.html:8 +#: .\cookbook\templates\base.html:180 msgid "Login" msgstr "" -#: .\cookbook\templates\account\login.html:13 -#: .\cookbook\templates\account\login.html:28 +#: .\cookbook\templates\account\login.html:15 +#: .\cookbook\templates\account\login.html:31 +#: .\cookbook\templates\account\signup.html:69 +#: .\cookbook\templates\account\signup_closed.html:15 msgid "Sign In" msgstr "" -#: .\cookbook\templates\account\login.html:38 +#: .\cookbook\templates\account\login.html:32 +msgid "Sign Up" +msgstr "" + +#: .\cookbook\templates\account\login.html:36 +#: .\cookbook\templates\account\login.html:37 +#: .\cookbook\templates\account\password_reset.html:29 +msgid "Reset My Password" +msgstr "" + +#: .\cookbook\templates\account\login.html:37 +msgid "Lost your password?" +msgstr "" + +#: .\cookbook\templates\account\login.html:48 msgid "Social Login" msgstr "" -#: .\cookbook\templates\account\login.html:39 +#: .\cookbook\templates\account\login.html:49 msgid "You can use any of the following providers to sign in." msgstr "" @@ -410,115 +559,161 @@ msgstr "" msgid "Are you sure you want to sign out?" msgstr "" -#: .\cookbook\templates\account\password_reset.html:5 -#: .\cookbook\templates\account\password_reset_done.html:5 +#: .\cookbook\templates\account\password_reset.html:7 +#: .\cookbook\templates\account\password_reset.html:13 +#: .\cookbook\templates\account\password_reset_done.html:7 +#: .\cookbook\templates\account\password_reset_done.html:10 msgid "Password Reset" msgstr "" -#: .\cookbook\templates\account\password_reset.html:9 -#: .\cookbook\templates\account\password_reset_done.html:9 -msgid "Password reset is not implemented for the time being!" +#: .\cookbook\templates\account\password_reset.html:24 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll send you " +"an e-mail allowing you to reset it." msgstr "" -#: .\cookbook\templates\account\signup.html:5 +#: .\cookbook\templates\account\password_reset.html:32 +msgid "Password reset is disabled on this instance." +msgstr "" + +#: .\cookbook\templates\account\password_reset_done.html:16 +msgid "" +"We have sent you an e-mail. Please contact us if you do not receive it " +"within a few minutes." +msgstr "" + +#: .\cookbook\templates\account\signup.html:6 msgid "Register" msgstr "" -#: .\cookbook\templates\account\signup.html:9 -msgid "Create your Account" +#: .\cookbook\templates\account\signup.html:12 +msgid "Create an Account" msgstr "" -#: .\cookbook\templates\account\signup.html:14 +#: .\cookbook\templates\account\signup.html:42 +msgid "I accept the follwoing" +msgstr "" + +#: .\cookbook\templates\account\signup.html:45 +msgid "Terms and Conditions" +msgstr "" + +#: .\cookbook\templates\account\signup.html:48 +msgid "and" +msgstr "" + +#: .\cookbook\templates\account\signup.html:52 +msgid "Privacy Policy" +msgstr "" + +#: .\cookbook\templates\account\signup.html:65 msgid "Create User" msgstr "" -#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:160 +#: .\cookbook\templates\account\signup.html:69 +msgid "Already have an account?" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:5 +#: .\cookbook\templates\account\signup_closed.html:11 +msgid "Sign Up Closed" +msgstr "" + +#: .\cookbook\templates\account\signup_closed.html:13 +msgid "We are sorry, but the sign up is currently closed." +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:170 #: .\cookbook\templates\rest_framework\api.html:11 msgid "API Documentation" msgstr "" -#: .\cookbook\templates\base.html:78 +#: .\cookbook\templates\base.html:85 msgid "Utensils" msgstr "" -#: .\cookbook\templates\base.html:88 +#: .\cookbook\templates\base.html:95 msgid "Shopping" msgstr "" -#: .\cookbook\templates\base.html:102 .\cookbook\views\delete.py:84 -#: .\cookbook\views\edit.py:93 .\cookbook\views\lists.py:26 -#: .\cookbook\views\new.py:66 +#: .\cookbook\templates\base.html:109 .\cookbook\views\delete.py:84 +#: .\cookbook\views\edit.py:102 .\cookbook\views\lists.py:26 +#: .\cookbook\views\new.py:78 msgid "Keyword" msgstr "" -#: .\cookbook\templates\base.html:104 +#: .\cookbook\templates\base.html:111 msgid "Batch Edit" msgstr "" -#: .\cookbook\templates\base.html:109 +#: .\cookbook\templates\base.html:116 msgid "Storage Data" msgstr "" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:120 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:115 +#: .\cookbook\templates\base.html:122 msgid "Configure Sync" msgstr "" -#: .\cookbook\templates\base.html:117 +#: .\cookbook\templates\base.html:124 msgid "Discovered Recipes" msgstr "" -#: .\cookbook\templates\base.html:119 +#: .\cookbook\templates\base.html:126 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:121 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:128 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "" -#: .\cookbook\templates\base.html:123 +#: .\cookbook\templates\base.html:130 msgid "Units & Ingredients" msgstr "" -#: .\cookbook\templates\base.html:125 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\index.html:47 msgid "Import Recipe" msgstr "" -#: .\cookbook\templates\base.html:144 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:151 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "" -#: .\cookbook\templates\base.html:146 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:153 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "" -#: .\cookbook\templates\base.html:150 .\cookbook\templates\system.html:13 +#: .\cookbook\templates\base.html:155 .\cookbook\templates\space.html:7 +msgid "Space Settings" +msgstr "" + +#: .\cookbook\templates\base.html:160 .\cookbook\templates\system.html:13 msgid "System" msgstr "" -#: .\cookbook\templates\base.html:152 +#: .\cookbook\templates\base.html:162 msgid "Admin" msgstr "" -#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\base.html:166 msgid "Markdown Guide" msgstr "" -#: .\cookbook\templates\base.html:158 +#: .\cookbook\templates\base.html:168 msgid "GitHub" msgstr "" -#: .\cookbook\templates\base.html:162 +#: .\cookbook\templates\base.html:172 msgid "API Browser" msgstr "" -#: .\cookbook\templates\base.html:165 -msgid "Logout" +#: .\cookbook\templates\base.html:175 +msgid "Log out" msgstr "" #: .\cookbook\templates\batch\edit.html:6 @@ -533,7 +728,7 @@ msgstr "" msgid "Add the specified keywords to all recipes containing a word" msgstr "" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:76 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:85 msgid "Sync" msgstr "" @@ -560,7 +755,7 @@ msgstr "" msgid "Importing Recipes" msgstr "" -#: .\cookbook\templates\batch\waiting.html:23 +#: .\cookbook\templates\batch\waiting.html:28 msgid "" "This can take a few minutes, depending on the number of recipes in sync, " "please wait." @@ -597,26 +792,31 @@ msgid "Export Recipes" msgstr "" #: .\cookbook\templates\export.html:14 .\cookbook\templates\export.html:20 -#: .\cookbook\templates\shopping_list.html:347 +#: .\cookbook\templates\shopping_list.html:351 #: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20 msgid "Export" msgstr "" +#: .\cookbook\templates\files.html:7 +msgid "Files" +msgstr "" + #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" msgstr "" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:389 -#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:416 +#: .\cookbook\templates\forms\edit_internal_recipe.html:448 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 #: .\cookbook\templates\meal_plan.html:325 -#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 -#: .\cookbook\templates\settings.html:58 .\cookbook\templates\settings.html:73 -#: .\cookbook\templates\shopping_list.html:349 +#: .\cookbook\templates\settings.html:44 .\cookbook\templates\settings.html:52 +#: .\cookbook\templates\settings.html:96 +#: .\cookbook\templates\settings.html:114 +#: .\cookbook\templates\shopping_list.html:353 msgid "Save" msgstr "" @@ -625,179 +825,186 @@ msgstr "" msgid "Edit Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 +#: .\cookbook\templates\forms\edit_internal_recipe.html:56 +#: .\cookbook\templates\url_import.html:171 msgid "Description" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:72 +#: .\cookbook\templates\forms\edit_internal_recipe.html:76 msgid "Waiting Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:78 +#: .\cookbook\templates\forms\edit_internal_recipe.html:82 msgid "Servings Text" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:89 +#: .\cookbook\templates\forms\edit_internal_recipe.html:93 msgid "Select Keywords" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:90 -#: .\cookbook\templates\url_import.html:212 +#: .\cookbook\templates\forms\edit_internal_recipe.html:94 +#: .\cookbook\templates\url_import.html:583 msgid "Add Keyword" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:108 +#: .\cookbook\templates\forms\edit_internal_recipe.html:112 msgid "Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:112 -#: .\cookbook\templates\forms\edit_internal_recipe.html:162 +#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:166 msgid "Delete Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:116 +#: .\cookbook\templates\forms\edit_internal_recipe.html:120 msgid "Calories" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:119 +#: .\cookbook\templates\forms\edit_internal_recipe.html:123 msgid "Carbohydrates" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:122 +#: .\cookbook\templates\forms\edit_internal_recipe.html:126 msgid "Fats" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#: .\cookbook\templates\forms\edit_internal_recipe.html:128 msgid "Proteins" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:146 -#: .\cookbook\templates\forms\edit_internal_recipe.html:454 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +#: .\cookbook\templates\forms\edit_internal_recipe.html:481 msgid "Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:167 +#: .\cookbook\templates\forms\edit_internal_recipe.html:171 msgid "Show as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:177 msgid "Hide as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:178 +#: .\cookbook\templates\forms\edit_internal_recipe.html:182 msgid "Move Up" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:183 +#: .\cookbook\templates\forms\edit_internal_recipe.html:187 msgid "Move Down" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 +#: .\cookbook\templates\forms\edit_internal_recipe.html:196 msgid "Step Name" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:200 msgid "Step Type" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:207 +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 msgid "Step time in Minutes" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:261 -#: .\cookbook\templates\shopping_list.html:183 -msgid "Select Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:228 +msgid "Select File" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:262 -#: .\cookbook\templates\forms\edit_internal_recipe.html:286 -#: .\cookbook\templates\shopping_list.html:184 -#: .\cookbook\templates\shopping_list.html:206 -msgid "Create" -msgstr "" - -#: .\cookbook\templates\forms\edit_internal_recipe.html:263 -#: .\cookbook\templates\forms\edit_internal_recipe.html:287 -#: .\cookbook\templates\shopping_list.html:185 -#: .\cookbook\templates\shopping_list.html:207 -#: .\cookbook\templates\shopping_list.html:237 -#: .\cookbook\templates\shopping_list.html:261 -#: .\cookbook\templates\url_import.html:124 -#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\forms\edit_internal_recipe.html:229 +#: .\cookbook\templates\forms\edit_internal_recipe.html:290 +#: .\cookbook\templates\forms\edit_internal_recipe.html:314 +#: .\cookbook\templates\shopping_list.html:189 +#: .\cookbook\templates\shopping_list.html:211 +#: .\cookbook\templates\shopping_list.html:241 +#: .\cookbook\templates\shopping_list.html:265 +#: .\cookbook\templates\url_import.html:495 +#: .\cookbook\templates\url_import.html:527 msgid "Select" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:285 -#: .\cookbook\templates\shopping_list.html:205 +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#: .\cookbook\templates\shopping_list.html:187 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:289 +#: .\cookbook\templates\forms\edit_internal_recipe.html:313 +#: .\cookbook\templates\shopping_list.html:188 +#: .\cookbook\templates\shopping_list.html:210 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:312 +#: .\cookbook\templates\shopping_list.html:209 msgid "Select Food" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:302 +#: .\cookbook\templates\forms\edit_internal_recipe.html:329 #: .\cookbook\templates\meal_plan.html:256 -#: .\cookbook\templates\url_import.html:171 +#: .\cookbook\templates\url_import.html:542 msgid "Note" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:319 +#: .\cookbook\templates\forms\edit_internal_recipe.html:346 msgid "Delete Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:325 +#: .\cookbook\templates\forms\edit_internal_recipe.html:352 msgid "Make Header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:331 +#: .\cookbook\templates\forms\edit_internal_recipe.html:358 msgid "Make Ingredient" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:364 msgid "Disable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:343 +#: .\cookbook\templates\forms\edit_internal_recipe.html:370 msgid "Enable Amount" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:348 +#: .\cookbook\templates\forms\edit_internal_recipe.html:375 msgid "Copy Template Reference" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:374 -#: .\cookbook\templates\url_import.html:196 +#: .\cookbook\templates\forms\edit_internal_recipe.html:401 +#: .\cookbook\templates\url_import.html:297 +#: .\cookbook\templates\url_import.html:567 msgid "Instructions" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:387 -#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:414 +#: .\cookbook\templates\forms\edit_internal_recipe.html:445 msgid "Save & View" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:391 -#: .\cookbook\templates\forms\edit_internal_recipe.html:424 +#: .\cookbook\templates\forms\edit_internal_recipe.html:418 +#: .\cookbook\templates\forms\edit_internal_recipe.html:451 msgid "Add Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:394 -#: .\cookbook\templates\forms\edit_internal_recipe.html:428 +#: .\cookbook\templates\forms\edit_internal_recipe.html:421 +#: .\cookbook\templates\forms\edit_internal_recipe.html:455 msgid "Add Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:396 -#: .\cookbook\templates\forms\edit_internal_recipe.html:430 +#: .\cookbook\templates\forms\edit_internal_recipe.html:423 +#: .\cookbook\templates\forms\edit_internal_recipe.html:457 msgid "Remove Nutrition" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:398 -#: .\cookbook\templates\forms\edit_internal_recipe.html:433 +#: .\cookbook\templates\forms\edit_internal_recipe.html:425 +#: .\cookbook\templates\forms\edit_internal_recipe.html:460 msgid "View Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:400 -#: .\cookbook\templates\forms\edit_internal_recipe.html:435 +#: .\cookbook\templates\forms\edit_internal_recipe.html:427 +#: .\cookbook\templates\forms\edit_internal_recipe.html:462 msgid "Delete Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:441 +#: .\cookbook\templates\forms\edit_internal_recipe.html:468 msgid "Steps" msgstr "" @@ -817,7 +1024,7 @@ msgid "" msgstr "" #: .\cookbook\templates\forms\ingredients.html:24 -#: .\cookbook\templates\stats.html:26 +#: .\cookbook\templates\space.html:35 .\cookbook\templates\stats.html:26 msgid "Units" msgstr "" @@ -839,10 +1046,6 @@ msgstr "" msgid "Are you sure you want to delete the %(title)s: %(object)s " msgstr "" -#: .\cookbook\templates\generic\delete_template.html:21 -msgid "Confirm" -msgstr "" - #: .\cookbook\templates\generic\edit_template.html:30 msgid "View" msgstr "" @@ -864,12 +1067,6 @@ msgstr "" msgid "Import all" msgstr "" -#: .\cookbook\templates\generic\new_template.html:6 -#: .\cookbook\templates\generic\new_template.html:14 -#: .\cookbook\templates\meal_plan.html:323 -msgid "New" -msgstr "" - #: .\cookbook\templates\generic\table_template.html:76 #: .\cookbook\templates\recipes_table.html:121 msgid "previous" @@ -914,7 +1111,7 @@ msgstr "" #: .\cookbook\templates\include\recipe_open_modal.html:7 #: .\cookbook\templates\meal_plan.html:247 .\cookbook\views\delete.py:28 -#: .\cookbook\views\edit.py:264 .\cookbook\views\new.py:40 +#: .\cookbook\views\edit.py:273 .\cookbook\views\new.py:52 msgid "Recipe" msgstr "" @@ -947,10 +1144,6 @@ msgstr "" msgid "New Recipe" msgstr "" -#: .\cookbook\templates\index.html:47 -msgid "Website Import" -msgstr "" - #: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "" @@ -964,7 +1157,7 @@ msgid "Last viewed" msgstr "" #: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:178 -#: .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\space.html:29 .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "" @@ -1112,7 +1305,7 @@ msgid "New Entry" msgstr "" #: .\cookbook\templates\meal_plan.html:113 -#: .\cookbook\templates\shopping_list.html:52 +#: .\cookbook\templates\shopping_list.html:56 msgid "Search Recipe" msgstr "" @@ -1142,7 +1335,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:168 #: .\cookbook\templates\shopping_list.html:7 #: .\cookbook\templates\shopping_list.html:29 -#: .\cookbook\templates\shopping_list.html:705 +#: .\cookbook\templates\shopping_list.html:714 msgid "Shopping List" msgstr "" @@ -1192,7 +1385,7 @@ msgstr "" #: .\cookbook\templates\meal_plan.html:270 #: .\cookbook\templates\meal_plan_entry.html:20 -#: .\cookbook\templates\shopping_list.html:250 +#: .\cookbook\templates\shopping_list.html:254 msgid "Shared with" msgstr "" @@ -1267,7 +1460,6 @@ msgstr "" #: .\cookbook\templates\no_groups_info.html:18 #: .\cookbook\templates\no_perm_info.html:15 -#: .\cookbook\templates\no_space_info.html:15 msgid "Please contact your administrator." msgstr "" @@ -1282,13 +1474,48 @@ msgid "" "action." msgstr "" -#: .\cookbook\templates\no_space_info.html:5 -#: .\cookbook\templates\no_space_info.html:12 +#: .\cookbook\templates\no_space_info.html:6 +#: .\cookbook\templates\no_space_info.html:13 msgid "No Space" msgstr "" -#: .\cookbook\templates\no_space_info.html:15 -msgid "You are not a member of any space." +#: .\cookbook\templates\no_space_info.html:17 +msgid "" +"Recipes, foods, shopping lists and more are organized in spaces of one or " +"more people." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:18 +msgid "" +"You can either be invited into an existing space or create your own one." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:31 +#: .\cookbook\templates\no_space_info.html:40 +msgid "Join Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:34 +msgid "Join an existing space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:35 +msgid "" +"To join an existing space either enter your invite token or click on the " +"invite link the space owner send you." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:48 +#: .\cookbook\templates\no_space_info.html:56 +msgid "Create Space" +msgstr "" + +#: .\cookbook\templates\no_space_info.html:51 +msgid "Create your own recipe space." +msgstr "" + +#: .\cookbook\templates\no_space_info.html:52 +msgid "Start your own recipe space and invite other users to it." msgstr "" #: .\cookbook\templates\offline.html:6 @@ -1305,28 +1532,29 @@ msgid "" "recently viewed them. Keep in mind that data might be outdated." msgstr "" -#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\stats.html:47 +#: .\cookbook\templates\recipe_view.html:21 .\cookbook\templates\space.html:56 +#: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" #: .\cookbook\templates\recipe_view.html:44 .\cookbook\views\delete.py:118 -#: .\cookbook\views\edit.py:170 +#: .\cookbook\views\edit.py:179 msgid "Comment" msgstr "" #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 -#: .\cookbook\templates\url_import.html:69 +#: .\cookbook\templates\url_import.html:440 msgid "Recipe Image" msgstr "" #: .\cookbook\templates\recipes_table.html:51 -#: .\cookbook\templates\url_import.html:74 +#: .\cookbook\templates\url_import.html:445 msgid "Preparation time ca." msgstr "" #: .\cookbook\templates\recipes_table.html:57 -#: .\cookbook\templates\url_import.html:79 +#: .\cookbook\templates\url_import.html:450 msgid "Waiting time ca." msgstr "" @@ -1342,39 +1570,67 @@ msgstr "" msgid "Recipe Home" msgstr "" -#: .\cookbook\templates\settings.html:22 +#: .\cookbook\templates\settings.html:23 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:38 -msgid "Link social account" +#: .\cookbook\templates\settings.html:27 +msgid "Preferences" msgstr "" -#: .\cookbook\templates\settings.html:42 +#: .\cookbook\templates\settings.html:31 +msgid "API-Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:39 +msgid "Name Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:47 +msgid "Password Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:55 +msgid "Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:57 +msgid "Manage Email Settings" +msgstr "" + +#: .\cookbook\templates\settings.html:61 +msgid "Social" +msgstr "" + +#: .\cookbook\templates\settings.html:63 +msgid "Manage Social Accounts" +msgstr "" + +#: .\cookbook\templates\settings.html:75 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:67 +#: .\cookbook\templates\settings.html:105 msgid "Style" msgstr "" -#: .\cookbook\templates\settings.html:79 +#: .\cookbook\templates\settings.html:125 msgid "API Token" msgstr "" -#: .\cookbook\templates\settings.html:80 +#: .\cookbook\templates\settings.html:126 msgid "" "You can use both basic authentication and token based authentication to " "access the REST API." msgstr "" -#: .\cookbook\templates\settings.html:92 +#: .\cookbook\templates\settings.html:143 msgid "" "Use the token as an Authorization header prefixed by the word token as shown " "in the following examples:" msgstr "" -#: .\cookbook\templates\settings.html:94 +#: .\cookbook\templates\settings.html:145 msgid "or" msgstr "" @@ -1395,58 +1651,55 @@ msgstr "" msgid "Create Superuser account" msgstr "" -#: .\cookbook\templates\shopping_list.html:75 +#: .\cookbook\templates\shopping_list.html:79 msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:79 +#: .\cookbook\templates\shopping_list.html:83 msgid "No recipes selected" msgstr "" -#: .\cookbook\templates\shopping_list.html:146 +#: .\cookbook\templates\shopping_list.html:150 msgid "Entry Mode" msgstr "" -#: .\cookbook\templates\shopping_list.html:154 +#: .\cookbook\templates\shopping_list.html:158 msgid "Add Entry" msgstr "" -#: .\cookbook\templates\shopping_list.html:170 +#: .\cookbook\templates\shopping_list.html:174 msgid "Amount" msgstr "" -#: .\cookbook\templates\shopping_list.html:226 +#: .\cookbook\templates\shopping_list.html:230 +#: .\cookbook\templates\supermarket.html:7 msgid "Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:236 +#: .\cookbook\templates\shopping_list.html:240 msgid "Select Supermarket" msgstr "" -#: .\cookbook\templates\shopping_list.html:260 +#: .\cookbook\templates\shopping_list.html:264 msgid "Select User" msgstr "" -#: .\cookbook\templates\shopping_list.html:279 +#: .\cookbook\templates\shopping_list.html:283 msgid "Finished" msgstr "" -#: .\cookbook\templates\shopping_list.html:292 +#: .\cookbook\templates\shopping_list.html:296 msgid "You are offline, shopping list might not syncronize." msgstr "" -#: .\cookbook\templates\shopping_list.html:357 +#: .\cookbook\templates\shopping_list.html:361 msgid "Copy/Export" msgstr "" -#: .\cookbook\templates\shopping_list.html:361 +#: .\cookbook\templates\shopping_list.html:365 msgid "List Prefix" msgstr "" -#: .\cookbook\templates\shopping_list.html:708 -msgid "There was an error creating a resource!" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:4 #: .\cookbook\templates\socialaccount\connections.html:7 msgid "Account Connections" @@ -1458,10 +1711,6 @@ msgid "" " accounts:" msgstr "" -#: .\cookbook\templates\socialaccount\connections.html:36 -msgid "Remove" -msgstr "" - #: .\cookbook\templates\socialaccount\connections.html:44 msgid "" "You currently have no social network accounts connected to this account." @@ -1471,38 +1720,87 @@ msgstr "" msgid "Add a 3rd Party Account" msgstr "" -#: .\cookbook\templates\stats.html:4 -msgid "Stats" +#: .\cookbook\templates\space.html:18 +msgid "Manage Subscription" msgstr "" -#: .\cookbook\templates\stats.html:19 +#: .\cookbook\templates\space.html:26 .\cookbook\templates\stats.html:19 msgid "Number of objects" msgstr "" -#: .\cookbook\templates\stats.html:30 +#: .\cookbook\templates\space.html:39 .\cookbook\templates\stats.html:30 msgid "Recipe Imports" msgstr "" -#: .\cookbook\templates\stats.html:38 +#: .\cookbook\templates\space.html:47 .\cookbook\templates\stats.html:38 msgid "Objects stats" msgstr "" -#: .\cookbook\templates\stats.html:41 +#: .\cookbook\templates\space.html:50 .\cookbook\templates\stats.html:41 msgid "Recipes without Keywords" msgstr "" -#: .\cookbook\templates\stats.html:43 +#: .\cookbook\templates\space.html:52 .\cookbook\templates\stats.html:43 msgid "External Recipes" msgstr "" -#: .\cookbook\templates\stats.html:45 +#: .\cookbook\templates\space.html:54 .\cookbook\templates\stats.html:45 msgid "Internal Recipes" msgstr "" -#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:115 +#: .\cookbook\templates\space.html:67 +msgid "Members" +msgstr "" + +#: .\cookbook\templates\space.html:71 +msgid "Invite User" +msgstr "" + +#: .\cookbook\templates\space.html:82 +msgid "User" +msgstr "" + +#: .\cookbook\templates\space.html:83 +msgid "Groups" +msgstr "" + +#: .\cookbook\templates\space.html:99 +msgid "admin" +msgstr "" + +#: .\cookbook\templates\space.html:100 +msgid "user" +msgstr "" + +#: .\cookbook\templates\space.html:101 +msgid "guest" +msgstr "" + +#: .\cookbook\templates\space.html:102 +msgid "remove" +msgstr "" + +#: .\cookbook\templates\space.html:106 +msgid "Update" +msgstr "" + +#: .\cookbook\templates\space.html:110 +msgid "You cannot edit yourself." +msgstr "" + +#: .\cookbook\templates\space.html:117 +msgid "There are no members in your space yet!" +msgstr "" + +#: .\cookbook\templates\space.html:124 .\cookbook\templates\system.html:21 +#: .\cookbook\views\lists.py:115 msgid "Invite Links" msgstr "" +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + #: .\cookbook\templates\system.html:22 msgid "Show Links" msgstr "" @@ -1600,45 +1898,141 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\url_import.html:5 +#: .\cookbook\templates\url_import.html:6 msgid "URL Import" msgstr "" -#: .\cookbook\templates\url_import.html:23 +#: .\cookbook\templates\url_import.html:31 +msgid "Drag me to your bookmarks to import recipes from anywhere" +msgstr "" + +#: .\cookbook\templates\url_import.html:32 +msgid "Bookmark Me!" +msgstr "" + +#: .\cookbook\templates\url_import.html:61 msgid "Enter website URL" msgstr "" -#: .\cookbook\templates\url_import.html:36 -msgid "Enter json directly" +#: .\cookbook\templates\url_import.html:97 +msgid "Select recipe files to import or drop them here..." msgstr "" -#: .\cookbook\templates\url_import.html:57 +#: .\cookbook\templates\url_import.html:118 +msgid "Paste json or html source here to load recipe." +msgstr "" + +#: .\cookbook\templates\url_import.html:146 +msgid "Preview Recipe Data" +msgstr "" + +#: .\cookbook\templates\url_import.html:147 +msgid "Drag recipe attributes from the right into the appropriate box below." +msgstr "" + +#: .\cookbook\templates\url_import.html:156 +#: .\cookbook\templates\url_import.html:173 +#: .\cookbook\templates\url_import.html:190 +#: .\cookbook\templates\url_import.html:209 +#: .\cookbook\templates\url_import.html:227 +#: .\cookbook\templates\url_import.html:242 +#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:273 +#: .\cookbook\templates\url_import.html:300 +#: .\cookbook\templates\url_import.html:351 +msgid "Clear Contents" +msgstr "" + +#: .\cookbook\templates\url_import.html:158 +msgid "Text dragged here will be appended to the name." +msgstr "" + +#: .\cookbook\templates\url_import.html:175 +msgid "Text dragged here will be appended to the description." +msgstr "" + +#: .\cookbook\templates\url_import.html:192 +msgid "Keywords dragged here will be appended to current list" +msgstr "" + +#: .\cookbook\templates\url_import.html:207 +msgid "Image" +msgstr "" + +#: .\cookbook\templates\url_import.html:239 +msgid "Prep Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:254 +msgid "Cook Time" +msgstr "" + +#: .\cookbook\templates\url_import.html:275 +msgid "Ingredients dragged here will be appended to current list." +msgstr "" + +#: .\cookbook\templates\url_import.html:302 +msgid "" +"Recipe instructions dragged here will be appended to current instructions." +msgstr "" + +#: .\cookbook\templates\url_import.html:325 +msgid "Discovered Attributes" +msgstr "" + +#: .\cookbook\templates\url_import.html:327 +msgid "" +"Drag recipe attributes from below into the appropriate box on the left. " +"Click any node to display its full properties." +msgstr "" + +#: .\cookbook\templates\url_import.html:344 +msgid "Show Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:349 +msgid "Blank Field" +msgstr "" + +#: .\cookbook\templates\url_import.html:353 +msgid "Items dragged to Blank Field will be appended." +msgstr "" + +#: .\cookbook\templates\url_import.html:400 +msgid "Delete Text" +msgstr "" + +#: .\cookbook\templates\url_import.html:413 +msgid "Delete image" +msgstr "" + +#: .\cookbook\templates\url_import.html:429 msgid "Recipe Name" msgstr "" -#: .\cookbook\templates\url_import.html:62 +#: .\cookbook\templates\url_import.html:433 msgid "Recipe Description" msgstr "" -#: .\cookbook\templates\url_import.html:123 -#: .\cookbook\templates\url_import.html:155 -#: .\cookbook\templates\url_import.html:211 +#: .\cookbook\templates\url_import.html:494 +#: .\cookbook\templates\url_import.html:526 +#: .\cookbook\templates\url_import.html:582 msgid "Select one" msgstr "" -#: .\cookbook\templates\url_import.html:225 +#: .\cookbook\templates\url_import.html:596 msgid "All Keywords" msgstr "" -#: .\cookbook\templates\url_import.html:228 +#: .\cookbook\templates\url_import.html:599 msgid "Import all keywords, not only the ones already existing." msgstr "" -#: .\cookbook\templates\url_import.html:255 +#: .\cookbook\templates\url_import.html:626 msgid "Information" msgstr "" -#: .\cookbook\templates\url_import.html:257 +#: .\cookbook\templates\url_import.html:628 msgid "" " Only websites containing ld+json or microdata information can currently\n" " be imported. Most big recipe pages " @@ -1649,48 +2043,73 @@ msgid "" " github issues." msgstr "" -#: .\cookbook\templates\url_import.html:265 +#: .\cookbook\templates\url_import.html:636 msgid "Google ld+json Info" msgstr "" -#: .\cookbook\templates\url_import.html:268 +#: .\cookbook\templates\url_import.html:639 msgid "GitHub Issues" msgstr "" -#: .\cookbook\templates\url_import.html:270 +#: .\cookbook\templates\url_import.html:641 msgid "Recipe Markup Specification" msgstr "" -#: .\cookbook\views\api.py:71 +#: .\cookbook\views\api.py:77 msgid "Parameter updated_at incorrectly formatted" msgstr "" -#: .\cookbook\views\api.py:455 .\cookbook\views\views.py:226 +#: .\cookbook\views\api.py:553 .\cookbook\views\views.py:295 msgid "This feature is not available in the demo version!" msgstr "" -#: .\cookbook\views\api.py:478 +#: .\cookbook\views\api.py:576 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:483 +#: .\cookbook\views\api.py:581 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\api.py:556 .\cookbook\views\api.py:576 +#: .\cookbook\views\api.py:649 +msgid "Nothing to do." +msgstr "" + +#: .\cookbook\views\api.py:664 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\views\api.py:671 msgid "The requested page could not be found." msgstr "" -#: .\cookbook\views\api.py:585 +#: .\cookbook\views\api.py:680 msgid "" -"The requested page refused to provide any information (Status Code 403)." +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -#: .\cookbook\views\api.py:611 -msgid "Could not parse correctly..." +#: .\cookbook\views\api.py:694 +msgid "No useable data could be found." msgstr "" -#: .\cookbook\views\data.py:94 +#: .\cookbook\views\api.py:710 +msgid "I couldn't find anything to do." +msgstr "" + +#: .\cookbook\views\data.py:30 .\cookbook\views\data.py:121 +#: .\cookbook\views\edit.py:50 .\cookbook\views\import_export.py:67 +#: .\cookbook\views\new.py:32 +msgid "You have reached the maximum number of recipes for your space." +msgstr "" + +#: .\cookbook\views\data.py:34 .\cookbook\views\data.py:125 +#: .\cookbook\views\edit.py:54 .\cookbook\views\import_export.py:71 +#: .\cookbook\views\new.py:36 +msgid "You have more users than allowed in your space." +msgstr "" + +#: .\cookbook\views\data.py:103 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1702,7 +2121,7 @@ msgid "Monitor" msgstr "" #: .\cookbook\views\delete.py:96 .\cookbook\views\lists.py:102 -#: .\cookbook\views\new.py:86 +#: .\cookbook\views\new.py:98 msgid "Storage Backend" msgstr "" @@ -1711,8 +2130,8 @@ msgid "" "Could not delete this storage backend as it is used in at least one monitor." msgstr "" -#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:204 -#: .\cookbook\views\new.py:144 +#: .\cookbook\views\delete.py:129 .\cookbook\views\edit.py:213 +#: .\cookbook\views\new.py:156 msgid "Recipe Book" msgstr "" @@ -1720,55 +2139,55 @@ msgstr "" msgid "Bookmarks" msgstr "" -#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:214 +#: .\cookbook\views\delete.py:163 .\cookbook\views\new.py:252 msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:110 +#: .\cookbook\views\edit.py:119 msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:119 +#: .\cookbook\views\edit.py:128 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:139 +#: .\cookbook\views\edit.py:148 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:145 +#: .\cookbook\views\edit.py:154 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:156 +#: .\cookbook\views\edit.py:165 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:252 +#: .\cookbook\views\edit.py:261 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:256 +#: .\cookbook\views\edit.py:265 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:289 +#: .\cookbook\views\edit.py:299 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:291 .\cookbook\views\edit.py:307 +#: .\cookbook\views\edit.py:301 .\cookbook\views\edit.py:317 msgid "Cannot merge with the same object!" msgstr "" -#: .\cookbook\views\edit.py:305 +#: .\cookbook\views\edit.py:315 msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:73 +#: .\cookbook\views\import_export.py:93 msgid "Importing is not implemented for this provider" msgstr "" -#: .\cookbook\views\import_export.py:92 +#: .\cookbook\views\import_export.py:115 msgid "Exporting is not implemented for this provider" msgstr "" @@ -1784,41 +2203,103 @@ msgstr "" msgid "Shopping Lists" msgstr "" -#: .\cookbook\views\new.py:111 +#: .\cookbook\views\new.py:123 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:114 +#: .\cookbook\views\new.py:126 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:123 +#: .\cookbook\views\new.py:226 +msgid "Hello" +msgstr "" + +#: .\cookbook\views\new.py:226 +msgid "You have been invited by " +msgstr "" + +#: .\cookbook\views\new.py:227 +msgid " to join their Tandoor Recipes space " +msgstr "" + +#: .\cookbook\views\new.py:228 +msgid "Click the following link to activate your account: " +msgstr "" + +#: .\cookbook\views\new.py:229 +msgid "" +"If the link does not work use the following code to manually join the space: " +msgstr "" + +#: .\cookbook\views\new.py:230 +msgid "The invitation is valid until " +msgstr "" + +#: .\cookbook\views\new.py:231 +msgid "" +"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub " +msgstr "" + +#: .\cookbook\views\new.py:234 +msgid "Tandoor Recipes Invite" +msgstr "" + +#: .\cookbook\views\new.py:241 +msgid "Invite link successfully send to user." +msgstr "" + +#: .\cookbook\views\new.py:244 +msgid "" +"You have send to many emails, please share the link manually or wait a few " +"hours." +msgstr "" + +#: .\cookbook\views\new.py:246 +msgid "Email to user could not be send, please share link manually." +msgstr "" + +#: .\cookbook\views\views.py:125 +msgid "" +"You have successfully created your own recipe space. Start by adding some " +"recipes or invite other people to join you." +msgstr "" + +#: .\cookbook\views\views.py:173 msgid "You do not have the required permissions to perform this action!" msgstr "" -#: .\cookbook\views\views.py:134 +#: .\cookbook\views\views.py:184 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:326 +#: .\cookbook\views\views.py:396 msgid "" "The setup page can only be used to create the first user! If you have " "forgotten your superuser credentials please consult the django documentation " "on how to reset passwords." msgstr "" -#: .\cookbook\views\views.py:333 .\cookbook\views\views.py:378 +#: .\cookbook\views\views.py:403 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:349 .\cookbook\views\views.py:385 +#: .\cookbook\views\views.py:419 msgid "User has been created, please login!" msgstr "" -#: .\cookbook\views\views.py:365 +#: .\cookbook\views\views.py:435 msgid "Malformed Invite Link supplied!" msgstr "" -#: .\cookbook\views\views.py:405 +#: .\cookbook\views\views.py:441 +msgid "You are already member of a space and therefore cannot join this one." +msgstr "" + +#: .\cookbook\views\views.py:452 +msgid "Successfully joined space." +msgstr "" + +#: .\cookbook\views\views.py:458 msgid "Invite Link not valid or already used!" msgstr "" diff --git a/recipes/locale/ca/LC_MESSAGES/django.po b/recipes/locale/ca/LC_MESSAGES/django.po index 6a8cfc86..38116825 100644 --- a/recipes/locale/ca/LC_MESSAGES/django.po +++ b/recipes/locale/ca/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/de/LC_MESSAGES/django.po b/recipes/locale/de/LC_MESSAGES/django.po index e2a2c64b..632239c5 100644 --- a/recipes/locale/de/LC_MESSAGES/django.po +++ b/recipes/locale/de/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "Englisch" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "Deutsch" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/en/LC_MESSAGES/django.po b/recipes/locale/en/LC_MESSAGES/django.po index 6a8cfc86..38116825 100644 --- a/recipes/locale/en/LC_MESSAGES/django.po +++ b/recipes/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/es/LC_MESSAGES/django.po b/recipes/locale/es/LC_MESSAGES/django.po index 6a8cfc86..38116825 100644 --- a/recipes/locale/es/LC_MESSAGES/django.po +++ b/recipes/locale/es/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/fr/LC_MESSAGES/django.po b/recipes/locale/fr/LC_MESSAGES/django.po index 667b42f6..55242682 100644 --- a/recipes/locale/fr/LC_MESSAGES/django.po +++ b/recipes/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/hu_HU/LC_MESSAGES/django.po b/recipes/locale/hu_HU/LC_MESSAGES/django.po index 26aabd82..53f8b807 100644 --- a/recipes/locale/hu_HU/LC_MESSAGES/django.po +++ b/recipes/locale/hu_HU/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,42 +17,42 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/it/LC_MESSAGES/django.po b/recipes/locale/it/LC_MESSAGES/django.po index 6a8cfc86..38116825 100644 --- a/recipes/locale/it/LC_MESSAGES/django.po +++ b/recipes/locale/it/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/lv/LC_MESSAGES/django.po b/recipes/locale/lv/LC_MESSAGES/django.po index 0c5adc7a..19d68bab 100644 --- a/recipes/locale/lv/LC_MESSAGES/django.po +++ b/recipes/locale/lv/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -19,42 +19,42 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/nl/LC_MESSAGES/django.po b/recipes/locale/nl/LC_MESSAGES/django.po index 6a8cfc86..38116825 100644 --- a/recipes/locale/nl/LC_MESSAGES/django.po +++ b/recipes/locale/nl/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/pt/LC_MESSAGES/django.po b/recipes/locale/pt/LC_MESSAGES/django.po index 6a8cfc86..38116825 100644 --- a/recipes/locale/pt/LC_MESSAGES/django.po +++ b/recipes/locale/pt/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/rn/LC_MESSAGES/django.po b/recipes/locale/rn/LC_MESSAGES/django.po index 26aabd82..53f8b807 100644 --- a/recipes/locale/rn/LC_MESSAGES/django.po +++ b/recipes/locale/rn/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,42 +17,42 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/tr/LC_MESSAGES/django.po b/recipes/locale/tr/LC_MESSAGES/django.po index 667b42f6..55242682 100644 --- a/recipes/locale/tr/LC_MESSAGES/django.po +++ b/recipes/locale/tr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,42 +18,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" diff --git a/recipes/locale/zh_CN/LC_MESSAGES/django.po b/recipes/locale/zh_CN/LC_MESSAGES/django.po index 26aabd82..53f8b807 100644 --- a/recipes/locale/zh_CN/LC_MESSAGES/django.po +++ b/recipes/locale/zh_CN/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-04-11 15:09+0200\n" +"POT-Creation-Date: 2021-06-12 20:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,42 +17,42 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: .\recipes\settings.py:220 +#: .\recipes\settings.py:303 msgid "Armenian " msgstr "" -#: .\recipes\settings.py:221 +#: .\recipes\settings.py:304 msgid "Catalan" msgstr "" -#: .\recipes\settings.py:222 +#: .\recipes\settings.py:305 msgid "Czech" msgstr "" -#: .\recipes\settings.py:223 +#: .\recipes\settings.py:306 msgid "Dutch" msgstr "" -#: .\recipes\settings.py:224 +#: .\recipes\settings.py:307 msgid "English" msgstr "" -#: .\recipes\settings.py:225 +#: .\recipes\settings.py:308 msgid "French" msgstr "" -#: .\recipes\settings.py:226 +#: .\recipes\settings.py:309 msgid "German" msgstr "" -#: .\recipes\settings.py:227 +#: .\recipes\settings.py:310 msgid "Italian" msgstr "" -#: .\recipes\settings.py:228 +#: .\recipes\settings.py:311 msgid "Latvian" msgstr "" -#: .\recipes\settings.py:229 +#: .\recipes\settings.py:312 msgid "Spanish" msgstr "" From 08bc87960b2fb1d637e86c58a72fad54e247f379 Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Sat, 12 Jun 2021 21:15:23 +0200 Subject: [PATCH 05/70] added abuse prevention for share links --- cookbook/helper/permission_helper.py | 33 ++++++++++++++---- .../0132_sharelink_request_count.py | 18 ++++++++++ .../0133_sharelink_abuse_blocked.py | 18 ++++++++++ cookbook/models.py | 2 ++ cookbook/static/vue/js/recipe_view.js | 2 +- cookbook/urls.py | 1 + cookbook/views/views.py | 34 +++++++++++++++---- recipes/settings.py | 3 ++ vue/src/apps/RecipeView/RecipeView.vue | 11 +++++- 9 files changed, 106 insertions(+), 16 deletions(-) create mode 100644 cookbook/migrations/0132_sharelink_request_count.py create mode 100644 cookbook/migrations/0133_sharelink_abuse_blocked.py diff --git a/cookbook/helper/permission_helper.py b/cookbook/helper/permission_helper.py index 1ac842cd..73946853 100644 --- a/cookbook/helper/permission_helper.py +++ b/cookbook/helper/permission_helper.py @@ -1,6 +1,8 @@ """ Source: https://djangosnippets.org/snippets/1703/ """ +from django.conf import settings +from django.core.cache import caches from django.views.generic.detail import SingleObjectTemplateResponseMixin from django.views.generic.edit import ModelFormMixin @@ -90,7 +92,18 @@ def share_link_valid(recipe, share): :return: true if a share link with the given recipe and uuid exists """ try: - return True if ShareLink.objects.filter(recipe=recipe, uuid=share).exists() else False + CACHE_KEY = f'recipe_share_{recipe.pk}_{share}' + if c := caches['default'].get(CACHE_KEY, False): + return c + + if link := ShareLink.objects.filter(recipe=recipe, uuid=share, abuse_blocked=False).first(): + if 0 < settings.SHARING_LIMIT < link.request_count: + return False + link.request_count += 1 + link.save() + caches['default'].set(CACHE_KEY, True, timeout=3) + return True + return False except ValidationError: return False @@ -121,15 +134,18 @@ class GroupRequiredMixin(object): def dispatch(self, request, *args, **kwargs): if not has_group_permission(request.user, self.groups_required): if not request.user.is_authenticated: - messages.add_message(request, messages.ERROR, _('You are not logged in and therefore cannot view this page!')) + messages.add_message(request, messages.ERROR, + _('You are not logged in and therefore cannot view this page!')) return HttpResponseRedirect(reverse_lazy('account_login') + '?next=' + request.path) else: - messages.add_message(request, messages.ERROR, _('You do not have the required permissions to view this page!')) + messages.add_message(request, messages.ERROR, + _('You do not have the required permissions to view this page!')) return HttpResponseRedirect(reverse_lazy('index')) try: obj = self.get_object() if obj.get_space() != request.space: - messages.add_message(request, messages.ERROR, _('You do not have the required permissions to view this page!')) + messages.add_message(request, messages.ERROR, + _('You do not have the required permissions to view this page!')) return HttpResponseRedirect(reverse_lazy('index')) except AttributeError: pass @@ -141,17 +157,20 @@ class OwnerRequiredMixin(object): def dispatch(self, request, *args, **kwargs): if not request.user.is_authenticated: - messages.add_message(request, messages.ERROR, _('You are not logged in and therefore cannot view this page!')) + messages.add_message(request, messages.ERROR, + _('You are not logged in and therefore cannot view this page!')) return HttpResponseRedirect(reverse_lazy('account_login') + '?next=' + request.path) else: if not is_object_owner(request.user, self.get_object()): - messages.add_message(request, messages.ERROR, _('You cannot interact with this object as it is not owned by you!')) + messages.add_message(request, messages.ERROR, + _('You cannot interact with this object as it is not owned by you!')) return HttpResponseRedirect(reverse('index')) try: obj = self.get_object() if obj.get_space() != request.space: - messages.add_message(request, messages.ERROR, _('You do not have the required permissions to view this page!')) + messages.add_message(request, messages.ERROR, + _('You do not have the required permissions to view this page!')) return HttpResponseRedirect(reverse_lazy('index')) except AttributeError: pass diff --git a/cookbook/migrations/0132_sharelink_request_count.py b/cookbook/migrations/0132_sharelink_request_count.py new file mode 100644 index 00000000..706c34c3 --- /dev/null +++ b/cookbook/migrations/0132_sharelink_request_count.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.4 on 2021-06-12 18:39 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0131_auto_20210608_1929'), + ] + + operations = [ + migrations.AddField( + model_name='sharelink', + name='request_count', + field=models.IntegerField(default=0), + ), + ] diff --git a/cookbook/migrations/0133_sharelink_abuse_blocked.py b/cookbook/migrations/0133_sharelink_abuse_blocked.py new file mode 100644 index 00000000..ae8747ea --- /dev/null +++ b/cookbook/migrations/0133_sharelink_abuse_blocked.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.4 on 2021-06-12 18:53 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0132_sharelink_request_count'), + ] + + operations = [ + migrations.AddField( + model_name='sharelink', + name='abuse_blocked', + field=models.BooleanField(default=False), + ), + ] diff --git a/cookbook/models.py b/cookbook/models.py index cf8b2103..e6fcd60b 100644 --- a/cookbook/models.py +++ b/cookbook/models.py @@ -603,6 +603,8 @@ class ShoppingList(ExportModelOperationsMixin('shopping_list'), models.Model, Pe class ShareLink(ExportModelOperationsMixin('share_link'), models.Model, PermissionModelMixin): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) uuid = models.UUIDField(default=uuid.uuid4) + request_count = models.IntegerField(default=0) + abuse_blocked = models.BooleanField(default=False) created_by = models.ForeignKey(User, on_delete=models.CASCADE) created_at = models.DateTimeField(auto_now_add=True) diff --git a/cookbook/static/vue/js/recipe_view.js b/cookbook/static/vue/js/recipe_view.js index 64a5ab7c..64158707 100644 --- a/cookbook/static/vue/js/recipe_view.js +++ b/cookbook/static/vue/js/recipe_view.js @@ -1 +1 @@ -(function(e){function t(t){for(var n,s,o=t[0],c=t[1],l=t[2],p=0,u=[];p0?i("div",{staticClass:"col-md-6 order-md-1 col-sm-12 order-sm-2 col-12 order-2"},[i("div",{staticClass:"card border-primary"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-pepper-hot"}),e._v(" "+e._s(e.$t("Ingredients")))])])]),i("br"),i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-12"},[i("table",{staticClass:"table table-sm"},[e._l(e.recipe.steps,(function(t){return[e._l(t.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":e.updateIngredientCheckedState}})]}))]}))],2)])])])])]):e._e(),i("div",{staticClass:"col-12 order-1 col-sm-12 order-sm-1 col-md-6 order-md-2"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[null!==e.recipe.image?i("img",{staticClass:"img img-fluid rounded",staticStyle:{"max-height":"30vh"},attrs:{src:e.recipe.image,alt:e.$t("Recipe_Image")}}):e._e()])]),i("div",{staticClass:"row",staticStyle:{"margin-top":"2vh","margin-bottom":"2vh"}},[i("div",{staticClass:"col-12"},[i("Nutrition",{attrs:{recipe:e.recipe,ingredient_factor:e.ingredient_factor}})],1)])])]),e.recipe.internal?e._e():[e.recipe.file_path.includes(".pdf")?i("div",[i("PdfViewer",{attrs:{recipe:e.recipe}})],1):e._e(),e.recipe.file_path.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("ImageViewer",{attrs:{recipe:e.recipe}})],1):e._e()],e._l(e.recipe.steps,(function(t,n){return i("div",{key:t.id,staticStyle:{"margin-top":"1vh"}},[i("Step",{attrs:{recipe:e.recipe,step:t,ingredient_factor:e.ingredient_factor,index:n,start_time:e.start_time},on:{"update-start-time":e.updateStartTime,"checked-state-changed":e.updateIngredientCheckedState}})],1)}))],2),i("add-recipe-to-book",{attrs:{recipe:e.recipe}})],2)},r=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-user-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"far fa-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-pizza-slice fa-2x text-primary"})])}],s=i("b85c"),o=i("5f5b"),c=(i("2dd8"),i("7c15")),l=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("hr"),"TEXT"===e.step.type?[e.recipe.steps.length>1?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h5",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))],0!==e.step.time?i("small",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fas fa-user-clock"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min"))+" ")]):e._e(),""!==e.start_time?i("small",{staticClass:"d-print-none"},[i("b-link",{attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")])],1):e._e()],2)]),i("div",{staticClass:"col col-md-4",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]):e._e(),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[i("div",{staticClass:"row"},[e.step.ingredients.length>0&&e.recipe.steps.length>1?i("div",{staticClass:"col col-md-4"},[i("table",{staticClass:"table table-sm"},[e._l(e.step.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":function(i){return e.$emit("checked-state-changed",t)}}})]}))],2)]):e._e(),i("div",{staticClass:"col",class:{"col-md-8":e.recipe.steps.length>1,"col-md-12":e.recipe.steps.length<=1}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)])])]:e._e(),"TIME"===e.step.type||"FILE"===e.step.type?[i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-8 offset-md-2",staticStyle:{"text-align":"center"}},[i("h4",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))]],2),0!==e.step.time?i("span",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fa fa-stopwatch"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min")))]):e._e(),""!==e.start_time?i("b-link",{staticClass:"d-print-none",attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")]):e._e()],1),i("div",{staticClass:"col-md-2",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[""!==e.step.instruction?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-12",staticStyle:{"text-align":"center"}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)]):e._e()])]:e._e(),i("div",{staticClass:"row",staticStyle:{"text-align":"center"}},[i("div",{staticClass:"col col-md-12"},[null!==e.step.file?[e.step.file.file.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("img",{staticStyle:{"max-width":"50vw","max-height":"50vh"},attrs:{src:e.step.file.file}})]):i("div",[i("a",{attrs:{href:e.step.file.file,target:"_blank",rel:"noreferrer nofollow"}},[e._v(e._s(e.$t("Download"))+" "+e._s(e.$t("File")))])])]:e._e()],2)]),""!==e.start_time?i("div",[i("b-popover",{ref:"id_reactive_popover_"+e.step.id,attrs:{target:"id_reactive_popover_"+e.step.id,triggers:"click",placement:"bottom",title:e.$t("Step start time")}},[i("div",[i("b-form-group",{staticClass:"mb-1",attrs:{label:"Time","label-for":"popover-input-1","label-cols":"3"}},[i("b-form-input",{attrs:{type:"datetime-local",id:"popover-input-1",size:"sm"},model:{value:e.set_time_input,callback:function(t){e.set_time_input=t},expression:"set_time_input"}})],1)],1),i("div",{staticClass:"row",staticStyle:{"margin-top":"1vh"}},[i("div",{staticClass:"col-12",staticStyle:{"text-align":"right"}},[i("b-button",{staticStyle:{"margin-right":"8px"},attrs:{size:"sm",variant:"secondary"},on:{click:e.closePopover}},[e._v("Cancel")]),i("b-button",{attrs:{size:"sm",variant:"primary"},on:{click:e.updateTime}},[e._v("Ok")])],1)])])],1):e._e()],2)},d=[],p=(i("a9e3"),i("fa7d")),u=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("tr",{on:{click:function(t){return e.$emit("checked-state-changed",e.ingredient)}}},[e.ingredient.is_header?[i("td",{attrs:{colspan:"5"}},[i("b",[e._v(e._s(e.ingredient.note))])])]:[i("td",[e.ingredient.checked?i("i",{staticClass:"far fa-check-circle text-success"}):e._e(),e.ingredient.checked?e._e():i("i",{staticClass:"far fa-check-circle text-primary"})]),i("td",[0!==e.ingredient.amount?i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.ingredient.amount))}}):e._e()]),i("td",[null===e.ingredient.unit||e.ingredient.no_amount?e._e():i("span",[e._v(e._s(e.ingredient.unit.name))])]),i("td",[null!==e.ingredient.food?[null!==e.ingredient.food.recipe?i("a",{attrs:{href:e.resolveDjangoUrl("view_recipe",e.ingredient.food.recipe),target:"_blank",rel:"noopener noreferrer"}},[e._v(e._s(e.ingredient.food.name))]):e._e(),null===e.ingredient.food.recipe?i("span",[e._v(e._s(e.ingredient.food.name))]):e._e()]:e._e()],2),i("td",[e.ingredient.note?i("div",[i("span",{directives:[{name:"b-popover",rawName:"v-b-popover.hover",value:e.ingredient.note,expression:"ingredient.note",modifiers:{hover:!0}}],staticClass:"d-print-none"},[i("i",{staticClass:"far fa-comment"})]),i("div",{staticClass:"d-none d-print-block"},[i("i",{staticClass:"far fa-comment-alt"}),e._v(" "+e._s(e.ingredient.note)+" ")])]):e._e()])]],2)},f=[],_={name:"Ingredient",props:{ingredient:Object,ingredient_factor:{type:Number,default:1}},mixins:[p["b"]],data:function(){return{checked:!1}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},m=_,g=i("2877"),v=Object(g["a"])(m,u,f,!1,null,null,null),b=v.exports,h=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i(e.compiled,{tag:"component",attrs:{ingredient_factor:e.ingredient_factor,code:e.code}})],1)},j=[],k=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.number))}})},C=[],y={name:"ScalableNumber",props:{number:Number,factor:{type:Number,default:4}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.factor)}}},w=y,S=Object(g["a"])(w,k,C,!1,null,null,null),x=S.exports,O={name:"CompileComponent",props:["code","ingredient_factor"],data:function(){return{compiled:null}},mounted:function(){this.compiled=n["default"].component("compiled-component",{props:["ingredient_factor","code"],components:{ScalableNumber:x},template:"
".concat(this.code,"
")})}},E=O,R=Object(g["a"])(E,h,j,!1,null,null,null),$=R.exports,I=i("c1df"),P=i.n(I);n["default"].prototype.moment=P.a;var A={name:"Step",mixins:[p["a"]],components:{Ingredient:b,CompileComponent:$},props:{step:Object,ingredient_factor:Number,index:Number,recipe:Object,start_time:String},data:function(){return{details_visible:!0,set_time_input:""}},mounted:function(){this.set_time_input=P()(this.start_time).add(this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm")},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)},updateTime:function(){var e=P()(this.set_time_input).add(-1*this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm");this.$emit("update-start-time",e),this.closePopover()},closePopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("close")},openPopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("open")}}},N=A,L=Object(g["a"])(N,l,d,!1,null,null,null),z=L.exports,B=i("fc0d"),D=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("iframe",{staticStyle:{border:"none"},attrs:{src:e.pdfUrl,width:"100%",height:"700px"}})])},T=[],M={name:"PdfViewer",mixins:[p["b"]],props:{recipe:Object},computed:{pdfUrl:function(){return"/static/pdfjs/viewer.html?file="+Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},U=M,V=Object(g["a"])(U,D,T,!1,null,null,null),H=V.exports,F=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{"text-align":"center"}},[i("b-img",{attrs:{src:e.pdfUrl,alt:e.$t("External_Recipe_Image")}})],1)},K=[],Z={name:"ImageViewer",props:{recipe:Object},computed:{pdfUrl:function(){return Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},W=Z,J=Object(g["a"])(W,F,K,!1,null,null,null),q=J.exports,G=function(){var e=this,t=e.$createElement,i=e._self._c||t;return null!==e.recipe.nutrition?i("div",[i("div",{staticClass:"card border-success"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-carrot"}),e._v(" "+e._s(e.$t("Nutrition")))])])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-fire fa-fw text-primary"}),e._v(" "+e._s(e.$t("Calories"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.calories))}}),e._v(" kcal ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-bread-slice fa-fw text-primary"}),e._v(" "+e._s(e.$t("Carbohydrates"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.carbohydrates))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-cheese fa-fw text-primary"}),e._v(" "+e._s(e.$t("Fats"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.fats))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-drumstick-bite fa-fw text-primary"}),e._v(" "+e._s(e.$t("Proteins"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.proteins))}}),e._v(" g ")])])])])]):e._e()},X=[],Q={name:"Nutrition",props:{recipe:Object,ingredient_factor:Number},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},Y=Q,ee=Object(g["a"])(Y,G,X,!1,null,null,null),te=ee.exports,ie=i("81d5"),ne=i("d76c"),ae=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_add_book",title:e.$t("Add_to_Book"),"ok-title":e.$t("Add"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.addToBook()}}},[i("multiselect",{attrs:{options:e.books,"preserve-search":!0,placeholder:e.$t("Select_Book"),label:"name","track-by":"id",id:"id_books",multiple:!1},on:{"search-change":e.loadBook},model:{value:e.selected_book,callback:function(t){e.selected_book=t},expression:"selected_book"}})],1)],1)},re=[],se=i("8e5f"),oe=i.n(se);n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ce={name:"AddRecipeToBook",components:{Multiselect:oe.a},props:{recipe:Object},data:function(){return{books:[],selected_book:null}},mounted:function(){this.loadBook("")},methods:{loadBook:function(e){var t=this;Object(c["b"])(e).then((function(e){t.books=e}))},addToBook:function(){Object(c["a"])({recipe:this.recipe.id,book:this.selected_book.id})}}},le=ce,de=(i("60bc"),Object(g["a"])(le,ae,re,!1,null,null,null)),pe=de.exports;n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ue={name:"RecipeView",mixins:[p["b"],p["c"]],components:{PdfViewer:H,ImageViewer:q,Ingredient:b,Step:z,RecipeContextMenu:B["a"],Nutrition:te,Keywords:ie["a"],LoadingSpinner:ne["a"],AddRecipeToBook:pe},computed:{ingredient_factor:function(){return this.servings/this.recipe.servings}},data:function(){return{loading:!0,recipe:void 0,ingredient_count:0,servings:1,start_time:""}},mounted:function(){this.loadRecipe(window.RECIPE_ID),this.$i18n.locale=window.CUSTOM_LOCALE},methods:{loadRecipe:function(e){var t=this;Object(c["c"])(e).then((function(e){0!==window.USER_SERVINGS&&(e.servings=window.USER_SERVINGS),t.servings=e.servings;var i,n=0,a=Object(s["a"])(e.steps);try{for(a.s();!(i=a.n()).done;){var r=i.value;t.ingredient_count+=r.ingredients.length;var o,c=Object(s["a"])(r.ingredients);try{for(c.s();!(o=c.n()).done;){var l=o.value;t.$set(l,"checked",!1)}}catch(d){c.e(d)}finally{c.f()}r.time_offset=n,n+=r.time}}catch(d){a.e(d)}finally{a.f()}n>0&&(t.start_time=P()().format("yyyy-MM-DDTHH:mm")),t.recipe=e,t.loading=!1}))},updateStartTime:function(e){this.start_time=e},updateIngredientCheckedState:function(e){var t,i=Object(s["a"])(this.recipe.steps);try{for(i.s();!(t=i.n()).done;){var n,a=t.value,r=Object(s["a"])(a.ingredients);try{for(r.s();!(n=r.n()).done;){var o=n.value;o.id===e.id&&this.$set(o,"checked",!o.checked)}}catch(c){r.e(c)}finally{r.f()}}}catch(c){i.e(c)}finally{i.f()}}}},fe=ue,_e=Object(g["a"])(fe,a,r,!1,null,null,null),me=_e.exports,ge=i("9225");n["default"].config.productionTip=!1,new n["default"]({i18n:ge["a"],render:function(e){return e(me)}}).$mount("#app")},1:function(e,t,i){e.exports=i("0671")},4678:function(e,t,i){var n={"./af":"2bfb","./af.js":"2bfb","./ar":"8e73","./ar-dz":"a356","./ar-dz.js":"a356","./ar-kw":"423e","./ar-kw.js":"423e","./ar-ly":"1cfd","./ar-ly.js":"1cfd","./ar-ma":"0a84","./ar-ma.js":"0a84","./ar-sa":"8230","./ar-sa.js":"8230","./ar-tn":"6d83","./ar-tn.js":"6d83","./ar.js":"8e73","./az":"485c","./az.js":"485c","./be":"1fc1","./be.js":"1fc1","./bg":"84aa","./bg.js":"84aa","./bm":"a7fa","./bm.js":"a7fa","./bn":"9043","./bn-bd":"9686","./bn-bd.js":"9686","./bn.js":"9043","./bo":"d26a","./bo.js":"d26a","./br":"6887","./br.js":"6887","./bs":"2554","./bs.js":"2554","./ca":"d716","./ca.js":"d716","./cs":"3c0d","./cs.js":"3c0d","./cv":"03ec","./cv.js":"03ec","./cy":"9797","./cy.js":"9797","./da":"0f14","./da.js":"0f14","./de":"b469","./de-at":"b3eb","./de-at.js":"b3eb","./de-ch":"bb71","./de-ch.js":"bb71","./de.js":"b469","./dv":"598a","./dv.js":"598a","./el":"8d47","./el.js":"8d47","./en-au":"0e6b","./en-au.js":"0e6b","./en-ca":"3886","./en-ca.js":"3886","./en-gb":"39a6","./en-gb.js":"39a6","./en-ie":"e1d3","./en-ie.js":"e1d3","./en-il":"7333","./en-il.js":"7333","./en-in":"ec2e","./en-in.js":"ec2e","./en-nz":"6f50","./en-nz.js":"6f50","./en-sg":"b7e9","./en-sg.js":"b7e9","./eo":"65db","./eo.js":"65db","./es":"898b","./es-do":"0a3c","./es-do.js":"0a3c","./es-mx":"b5b7","./es-mx.js":"b5b7","./es-us":"55c9","./es-us.js":"55c9","./es.js":"898b","./et":"ec18","./et.js":"ec18","./eu":"0ff2","./eu.js":"0ff2","./fa":"8df4","./fa.js":"8df4","./fi":"81e9","./fi.js":"81e9","./fil":"d69a","./fil.js":"d69a","./fo":"0721","./fo.js":"0721","./fr":"9f26","./fr-ca":"d9f8","./fr-ca.js":"d9f8","./fr-ch":"0e49","./fr-ch.js":"0e49","./fr.js":"9f26","./fy":"7118","./fy.js":"7118","./ga":"5120","./ga.js":"5120","./gd":"f6b4","./gd.js":"f6b4","./gl":"8840","./gl.js":"8840","./gom-deva":"aaf2","./gom-deva.js":"aaf2","./gom-latn":"0caa","./gom-latn.js":"0caa","./gu":"e0c5","./gu.js":"e0c5","./he":"c7aa","./he.js":"c7aa","./hi":"dc4d","./hi.js":"dc4d","./hr":"4ba9","./hr.js":"4ba9","./hu":"5b14","./hu.js":"5b14","./hy-am":"d6b6","./hy-am.js":"d6b6","./id":"5038","./id.js":"5038","./is":"0558","./is.js":"0558","./it":"6e98","./it-ch":"6f12","./it-ch.js":"6f12","./it.js":"6e98","./ja":"079e","./ja.js":"079e","./jv":"b540","./jv.js":"b540","./ka":"201b","./ka.js":"201b","./kk":"6d79","./kk.js":"6d79","./km":"e81d","./km.js":"e81d","./kn":"3e92","./kn.js":"3e92","./ko":"22f8","./ko.js":"22f8","./ku":"2421","./ku.js":"2421","./ky":"9609","./ky.js":"9609","./lb":"440c","./lb.js":"440c","./lo":"b29d","./lo.js":"b29d","./lt":"26f9","./lt.js":"26f9","./lv":"b97c","./lv.js":"b97c","./me":"293c","./me.js":"293c","./mi":"688b","./mi.js":"688b","./mk":"6909","./mk.js":"6909","./ml":"02fb","./ml.js":"02fb","./mn":"958b","./mn.js":"958b","./mr":"39bd","./mr.js":"39bd","./ms":"ebe4","./ms-my":"6403","./ms-my.js":"6403","./ms.js":"ebe4","./mt":"1b45","./mt.js":"1b45","./my":"8689","./my.js":"8689","./nb":"6ce3","./nb.js":"6ce3","./ne":"3a39","./ne.js":"3a39","./nl":"facd","./nl-be":"db29","./nl-be.js":"db29","./nl.js":"facd","./nn":"b84c","./nn.js":"b84c","./oc-lnc":"167b","./oc-lnc.js":"167b","./pa-in":"f3ff","./pa-in.js":"f3ff","./pl":"8d57","./pl.js":"8d57","./pt":"f260","./pt-br":"d2d4","./pt-br.js":"d2d4","./pt.js":"f260","./ro":"972c","./ro.js":"972c","./ru":"957c","./ru.js":"957c","./sd":"6784","./sd.js":"6784","./se":"ffff","./se.js":"ffff","./si":"eda5","./si.js":"eda5","./sk":"7be6","./sk.js":"7be6","./sl":"8155","./sl.js":"8155","./sq":"c8f3","./sq.js":"c8f3","./sr":"cf1e","./sr-cyrl":"13e9","./sr-cyrl.js":"13e9","./sr.js":"cf1e","./ss":"52bd","./ss.js":"52bd","./sv":"5fbd","./sv.js":"5fbd","./sw":"74dc","./sw.js":"74dc","./ta":"3de5","./ta.js":"3de5","./te":"5cbb","./te.js":"5cbb","./tet":"576c","./tet.js":"576c","./tg":"3b1b","./tg.js":"3b1b","./th":"10e8","./th.js":"10e8","./tk":"5aff","./tk.js":"5aff","./tl-ph":"0f38","./tl-ph.js":"0f38","./tlh":"cf755","./tlh.js":"cf755","./tr":"0e81","./tr.js":"0e81","./tzl":"cf51","./tzl.js":"cf51","./tzm":"c109","./tzm-latn":"b53d","./tzm-latn.js":"b53d","./tzm.js":"c109","./ug-cn":"6117","./ug-cn.js":"6117","./uk":"ada2","./uk.js":"ada2","./ur":"5294","./ur.js":"5294","./uz":"2e8c","./uz-latn":"010e","./uz-latn.js":"010e","./uz.js":"2e8c","./vi":"2921","./vi.js":"2921","./x-pseudo":"fd7e","./x-pseudo.js":"fd7e","./yo":"7f33","./yo.js":"7f33","./zh-cn":"5c3a","./zh-cn.js":"5c3a","./zh-hk":"49ab","./zh-hk.js":"49ab","./zh-mo":"3a6c","./zh-mo.js":"3a6c","./zh-tw":"90ea","./zh-tw.js":"90ea"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="4678"},"49f8":function(e,t,i){var n={"./de.json":"6ce2","./en.json":"edd4","./nl.json":"a625","./sv.json":"4c5b"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="49f8"},"4c5b":function(e){e.exports=JSON.parse('{"import_running":"Import pågår, var god vänta!","all_fields_optional":"Alla rutor är valfria och kan lämnas tomma.","convert_internal":"Konvertera till internt recept","Log_Recipe_Cooking":"Logga tillagningen av receptet","External_Recipe_Image":"Externt receptbild","Add_to_Book":"Lägg till i kokbok","Add_to_Shopping":"Lägg till i handelslista","Add_to_Plan":"Lägg till i matsedel","Step_start_time":"Steg starttid","Select_Book":"Välj kokbok","Recipe_Image":"Receptbild","Import_finished":"Importering klar","View_Recipes":"Visa recept","Log_Cooking":"Logga tillagning","Proteins":"Protein","Fats":"Fett","Carbohydrates":"Kolhydrater","Calories":"Kalorier","Nutrition":"Näringsinnehåll","Date":"Datum","Share":"Dela","Export":"Exportera","Rating":"Betyg","Close":"Stäng","Add":"Lägg till","Ingredients":"Ingredienser","min":"min","Servings":"Portioner","Waiting":"Väntan","Preparation":"Förberedelse","Edit":"Redigera","Open":"Öppna","Save":"Spara","Step":"Steg","Search":"Sök","Import":"Importera","Print":"Skriv ut","Information":"Information"}')},"6ce2":function(e){e.exports=JSON.parse('{"Import":"Import","import_running":"Import läuft, bitte warten!","Import_finished":"Import fertig","View_Recipes":"Rezepte Ansehen","Information":"Information","all_fields_optional":"Alle Felder sind optional und können leer gelassen werden.","convert_internal":"Zu internem Rezept wandeln","Log_Recipe_Cooking":"Kochen protokollieren","External_Recipe_Image":"Externes Rezept Bild","Add_to_Book":"Zu Buch hinzufügen","Add_to_Shopping":"Zu Einkaufsliste hinzufügen","Add_to_Plan":"Zu Plan hinzufügen","Step_start_time":"Schritt Startzeit","Select_Book":"Buch wählen","Recipe_Image":"Rezept Bild","Log_Cooking":"Kochen protokollieren","Proteins":"Proteine","Fats":"Fette","Carbohydrates":"Kohlenhydrate","Calories":"Kalorien","Nutrition":"Nährwerte","Keywords":"Stichwörter","Books":"Bücher","show_only_internal":"Nur interne Rezepte anzeigen","Ingredients":"Zutaten","min":"Min","Servings":"Portionen","Waiting":"Wartezeit","Preparation":"Zubereitung","Edit":"Bearbeiten","Open":"Öffnen","Save":"Speichern","Step":"Schritt","Search":"Suchen","Print":"Drucken","New_Recipe":"Neues Rezept","Url_Import":"URL Import","Reset_Search":"Suche zurücksetzen","or":"oder","and":"und","Recently_Viewed":"Kürzlich angesehen","External":"Extern","Settings":"Einstellungen","Meal_Plan":"Speiseplan","Date":"Datum","Share":"Teilen","Export":"Exportieren","Rating":"Bewertung","Close":"Schließen","Add":"Hinzufügen"}')},"7c15":function(e,t,i){"use strict";i.d(t,"c",(function(){return s})),i.d(t,"d",(function(){return o})),i.d(t,"b",(function(){return c})),i.d(t,"a",(function(){return l}));var n=i("bc3a"),a=i.n(n),r=i("fa7d");function s(e){var t=Object(r["g"])("api:recipe-detail",e);return void 0!==window.SHARE_UID&&(t+="?share="+window.SHARE_UID),a.a.get(t).then((function(e){return e.data})).catch((function(e){d(e,"There was an error loading a resource!","danger")}))}function o(e){return a.a.post(Object(r["g"])("api:cooklog-list"),e).then((function(e){Object(r["f"])("Saved","Cook Log entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function c(e){return a.a.get(Object(r["g"])("api:recipebook-list")+"?query="+e).then((function(e){return e.data})).catch((function(e){}))}function l(e){return a.a.post(Object(r["g"])("api:recipebookentry-list"),e).then((function(e){Object(r["f"])("Saved","Recipe Book entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function d(e,t){if("response"in e){console.log(e.response);var i="statusText"in e.response?e.response.statusText:Object(r["e"])("Error");t+="\n\n"+JSON.stringify(e.response.data),Object(r["f"])(i,t,"danger")}else Object(r["f"])("Error",t,"danger"),console.log(e)}a.a.defaults.xsrfCookieName="csrftoken",a.a.defaults.xsrfHeaderName="X-CSRFTOKEN"},"81d5":function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.recipe.keywords.length>0?i("div",e._l(e.recipe.keywords,(function(t){return i("span",{key:t.id,staticStyle:{padding:"2px"}},[i("b-badge",{attrs:{pill:"",variant:"light"}},[e._v(e._s(t.label))])],1)})),0):e._e()},a=[],r={name:"Keywords",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},9225:function(e,t,i){"use strict";i("159b"),i("d3b7"),i("ddb0"),i("ac1f"),i("466d");var n=i("a026"),a=i("a925");function r(){var e=i("49f8"),t={};return e.keys().forEach((function(i){var n=i.match(/([A-Za-z0-9-_]+)\./i);if(n&&n.length>1){var a=n[1];t[a]=e(i)}})),t}n["default"].use(a["a"]),t["a"]=new a["a"]({locale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_LOCALE||"en",fallbackLocale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_FALLBACK_LOCALE||"en",messages:r()})},a625:function(e){e.exports=JSON.parse('{"import_running":"Er wordt geïmporteerd, even geduld!","all_fields_optional":"Alle velden zijn optioneel en kunnen leeg gelaten worden.","convert_internal":"Zet om naar intern recept","Log_Recipe_Cooking":"Log Bereiding","External_Recipe_Image":"Externe Afbeelding Recept","Add_to_Book":"Voeg toe aan Boek","Add_to_Shopping":"Voeg toe aan Boodschappenlijst","Add_to_Plan":"Voeg toe aan Plan","Step_start_time":"Starttijd stap","Select_Book":"Selecteer Boek","Recipe_Image":"Afbeelding Recept","Import_finished":"Importeren gereed","View_Recipes":"Bekijk Recepten","Log_Cooking":"Log Bereiding","Proteins":"Eiwitten","Fats":"Vetten","Carbohydrates":"Koolhydraten","Calories":"Calorieën","Nutrition":"Voedingswaarde","Date":"Datum","Share":"Deel","Export":"Exporteren","Rating":"Beoordeling","Close":"Sluiten","Add":"Voeg toe","Ingredients":"Ingrediënten","min":"min","Servings":"Porties","Waiting":"Wachten","Preparation":"Bereiding","Edit":"Bewerken","Open":"Open","Save":"Opslaan","Step":"Stap","Search":"Zoeken","Import":"Importeer","Print":"Afdrukken","Information":"Informatie","Keywords":"Etiketten","Books":"Boeken","show_only_internal":"Toon alleen interne recepten","New_Recipe":"Nieuw Recept","Url_Import":"Importeer URL","Reset_Search":"Zoeken resetten","or":"of","and":"en","Recently_Viewed":"Recent bekeken","External":"Externe","Settings":"Instellingen","Meal_Plan":"Maaltijdplan","New":"Nieuw","Supermarket":"Supermarkt","Categories":"Categorieën","Category":"Categorie","Selected":"Geselecteerd"}')},d76c:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"row"},[i("div",{staticClass:"col",staticStyle:{"text-align":"center"}},[i("img",{staticClass:"spinner-tandoor",staticStyle:{height:"30vh"},attrs:{alt:"loading spinner",src:""}})])])}],r={name:"LoadingSpinner",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},edd4:function(e){e.exports=JSON.parse('{"err_fetching_resource":"There was an error fetching a resource!","err_creating_resource":"There was an error creating a resource!","err_updating_resource":"There was an error updating a resource!","err_deleting_resource":"There was an error deleting a resource!","success_fetching_resource":"Successfully fetched a resource!","success_creating_resource":"Successfully created a resource!","success_updating_resource":"Successfully updated a resource!","success_deleting_resource":"Successfully deleted a resource!","import_running":"Import running, please wait!","all_fields_optional":"All fields are optional and can be left empty.","convert_internal":"Convert to internal recipe","show_only_internal":"Show only internal recipes","Log_Recipe_Cooking":"Log Recipe Cooking","External_Recipe_Image":"External Recipe Image","Add_to_Book":"Add to Book","Add_to_Shopping":"Add to Shopping","Add_to_Plan":"Add to Plan","Step_start_time":"Step start time","Meal_Plan":"Meal Plan","Select_Book":"Select Book","Recipe_Image":"Recipe Image","Import_finished":"Import finished","View_Recipes":"View Recipes","Log_Cooking":"Log Cooking","New_Recipe":"New Recipe","Url_Import":"Url Import","Reset_Search":"Reset Search","Recently_Viewed":"Recently Viewed","Load_More":"Load More","Keywords":"Keywords","Books":"Books","Proteins":"Proteins","Fats":"Fats","Carbohydrates":"Carbohydrates","Calories":"Calories","Nutrition":"Nutrition","Date":"Date","Share":"Share","Export":"Export","Rating":"Rating","Close":"Close","Add":"Add","New":"New","Success":"Success","Ingredients":"Ingredients","Supermarket":"Supermarket","Categories":"Categories","Category":"Category","Selected":"Selected","min":"min","Servings":"Servings","Waiting":"Waiting","Preparation":"Preparation","External":"External","Size":"Size","Files":"Files","File":"File","Edit":"Edit","Cancel":"Cancel","Delete":"Delete","Open":"Open","Ok":"Open","Save":"Save","Step":"Step","Search":"Search","Import":"Import","Print":"Print","Settings":"Settings","or":"or","and":"and","Information":"Information","Download":"Download"}')},fa7d:function(e,t,i){"use strict";i.d(t,"c",(function(){return r})),i.d(t,"f",(function(){return s})),i.d(t,"a",(function(){return o})),i.d(t,"e",(function(){return c})),i.d(t,"b",(function(){return l})),i.d(t,"g",(function(){return d})),i.d(t,"d",(function(){return u}));i("99af");var n=i("59e4");function a(e,t,i){var n=Math.floor(e),a=1,r=n+1,s=1;if(e!==n)while(a<=t&&s<=t){var o=(n+r)/(a+s);if(e===o){a+s<=t?(a+=s,n+=r,s=t+1):a>s?s=t+1:a=t+1;break}et&&(a=s,n=r),!i)return[0,n,a];var c=Math.floor(n/a);return[c,n-c*a,a]}var r={methods:{makeToast:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return s(e,t,i)}}};function s(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=new n["a"];a.$bvToast.toast(t,{title:e,variant:i,toaster:"b-toaster-top-center",solid:!0})}var o={methods:{_:function(e){return c(e)}}};function c(e){return window.gettext(e)}var l={methods:{resolveDjangoUrl:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return d(e,t)}}};function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return null!==t?window.Urls[e](t):window.Urls[e]()}function p(e){return window.USER_PREF[e]}function u(e,t){if(p("use_fractions")){var i="",n=a(e*t,9,!0);return n[0]>0&&(i+=n[0]),n[1]>0&&(i+=" ".concat(n[1],"").concat(n[2],"")),i}return f(e*t)}function f(e){var t=p("user_fractions")?p("user_fractions"):2;return+(Math.round(e+"e+".concat(t))+"e-".concat(t))}},fc0d:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"dropdown"},[e._m(0),i("div",{staticClass:"dropdown-menu dropdown-menu-right",attrs:{"aria-labelledby":"dropdownMenuLink"}},[i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-pencil-alt fa-fw"}),e._v(" "+e._s(e.$t("Edit")))]),e.recipe.internal?e._e():i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_convert_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-exchange-alt fa-fw"}),e._v(" "+e._s(e.$t("convert_internal")))]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_add_book")}}},[i("i",{staticClass:"fas fa-bookmark fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Book"))+" ")]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_shopping")+"?r=["+e.recipe.id+","+e.servings_value+"]",target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-shopping-cart fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Shopping"))+" ")]):e._e(),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_meal_plan")+"?recipe="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-calendar fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Plan"))+" ")]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_cook_log")}}},[i("i",{staticClass:"fas fa-clipboard-list fa-fw"}),e._v(" "+e._s(e.$t("Log_Cooking"))+" ")]),i("button",{staticClass:"dropdown-item",attrs:{onclick:"window.print()"}},[i("i",{staticClass:"fas fa-print fa-fw"}),e._v(" "+e._s(e.$t("Print"))+" ")]),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_export")+"?r="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-file-export fa-fw"}),e._v(" "+e._s(e.$t("Export")))]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_share_link",e.recipe.id),target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-share-alt fa-fw"}),e._v(" "+e._s(e.$t("Share")))]):e._e()])]),i("cook-log",{attrs:{recipe:e.recipe}})],1)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("a",{staticClass:"btn shadow-none",attrs:{href:"#",role:"button",id:"dropdownMenuLink","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[i("i",{staticClass:"fas fa-ellipsis-v"})])}],r=(i("a9e3"),i("fa7d")),s=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_cook_log",title:e.$t("Log_Recipe_Cooking"),"ok-title":e.$t("Save"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.logCook()}}},[i("p",[e._v(e._s(e.$t("all_fields_optional")))]),i("form",[i("label",{attrs:{for:"id_log_servings"}},[e._v(e._s(e.$t("Servings")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.servings,expression:"logObject.servings"}],staticClass:"form-control",attrs:{type:"number",id:"id_log_servings"},domProps:{value:e.logObject.servings},on:{input:function(t){t.target.composing||e.$set(e.logObject,"servings",t.target.value)}}}),i("label",{staticStyle:{"margin-top":"2vh"}},[e._v(e._s(e.$t("Rating"))+" - "),i("span",{attrs:{id:"id_rating_show"}},[e._v(e._s(e.logObject.rating)+"/5")])]),i("b-form-rating",{model:{value:e.logObject.rating,callback:function(t){e.$set(e.logObject,"rating",t)},expression:"logObject.rating"}}),i("label",{staticStyle:{"margin-top":"2vh"},attrs:{for:"id_date"}},[e._v(e._s(e.$t("Date")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.created_at,expression:"logObject.created_at"}],staticClass:"form-control",attrs:{type:"datetime-local",id:"id_date"},domProps:{value:e.logObject.created_at},on:{input:function(t){t.target.composing||e.$set(e.logObject,"created_at",t.target.value)}}})],1)])],1)},o=[],c=i("c1df"),l=i.n(c),d=i("a026"),p=i("5f5b"),u=i("7c15");d["default"].prototype.moment=l.a,d["default"].use(p["a"]);var f={name:"CookLog",props:{recipe:Object},data:function(){return{logObject:{recipe:this.recipe.id,servings:0,rating:0,created_at:l()().format("yyyy-MM-DDTHH:mm")}}},methods:{logCook:function(){Object(u["d"])(this.logObject)}}},_=f,m=i("2877"),g=Object(m["a"])(_,s,o,!1,null,null,null),v=g.exports,b={name:"RecipeContextMenu",mixins:[r["b"]],components:{CookLog:v},data:function(){return{servings_value:0}},props:{recipe:Object,servings:{type:Number,default:-1}},mounted:function(){this.servings_value=-1===this.servings?this.recipe.servings:this.servings}},h=b,j=Object(m["a"])(h,n,a,!1,null,null,null);t["a"]=j.exports}}); \ No newline at end of file +(function(e){function t(t){for(var n,s,o=t[0],c=t[1],l=t[2],p=0,u=[];p0?i("div",{staticClass:"col-md-6 order-md-1 col-sm-12 order-sm-2 col-12 order-2"},[i("div",{staticClass:"card border-primary"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-pepper-hot"}),e._v(" "+e._s(e.$t("Ingredients")))])])]),i("br"),i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-12"},[i("table",{staticClass:"table table-sm"},[e._l(e.recipe.steps,(function(t){return[e._l(t.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":e.updateIngredientCheckedState}})]}))]}))],2)])])])])]):e._e(),i("div",{staticClass:"col-12 order-1 col-sm-12 order-sm-1 col-md-6 order-md-2"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[null!==e.recipe.image?i("img",{staticClass:"img img-fluid rounded",staticStyle:{"max-height":"30vh"},attrs:{src:e.recipe.image,alt:e.$t("Recipe_Image")}}):e._e()])]),i("div",{staticClass:"row",staticStyle:{"margin-top":"2vh","margin-bottom":"2vh"}},[i("div",{staticClass:"col-12"},[i("Nutrition",{attrs:{recipe:e.recipe,ingredient_factor:e.ingredient_factor}})],1)])])]),e.recipe.internal?e._e():[e.recipe.file_path.includes(".pdf")?i("div",[i("PdfViewer",{attrs:{recipe:e.recipe}})],1):e._e(),e.recipe.file_path.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("ImageViewer",{attrs:{recipe:e.recipe}})],1):e._e()],e._l(e.recipe.steps,(function(t,n){return i("div",{key:t.id,staticStyle:{"margin-top":"1vh"}},[i("Step",{attrs:{recipe:e.recipe,step:t,ingredient_factor:e.ingredient_factor,index:n,start_time:e.start_time},on:{"update-start-time":e.updateStartTime,"checked-state-changed":e.updateIngredientCheckedState}})],1)}))],2),i("add-recipe-to-book",{attrs:{recipe:e.recipe}}),""!==e.share_uid?i("div",{staticClass:"row text-center",staticStyle:{"margin-top":"3vh","margin-bottom":"3vh"}},[i("div",{staticClass:"col col-md-12"},[i("a",{attrs:{href:e.resolveDjangoUrl("view_report_share_abuse",e.share_uid)}},[e._v(e._s(e.$t("Report Abuse")))])])]):e._e()],2)},r=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-user-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"far fa-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-pizza-slice fa-2x text-primary"})])}],s=i("b85c"),o=i("5f5b"),c=(i("2dd8"),i("7c15")),l=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("hr"),"TEXT"===e.step.type?[e.recipe.steps.length>1?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h5",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))],0!==e.step.time?i("small",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fas fa-user-clock"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min"))+" ")]):e._e(),""!==e.start_time?i("small",{staticClass:"d-print-none"},[i("b-link",{attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")])],1):e._e()],2)]),i("div",{staticClass:"col col-md-4",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]):e._e(),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[i("div",{staticClass:"row"},[e.step.ingredients.length>0&&e.recipe.steps.length>1?i("div",{staticClass:"col col-md-4"},[i("table",{staticClass:"table table-sm"},[e._l(e.step.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":function(i){return e.$emit("checked-state-changed",t)}}})]}))],2)]):e._e(),i("div",{staticClass:"col",class:{"col-md-8":e.recipe.steps.length>1,"col-md-12":e.recipe.steps.length<=1}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)])])]:e._e(),"TIME"===e.step.type||"FILE"===e.step.type?[i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-8 offset-md-2",staticStyle:{"text-align":"center"}},[i("h4",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))]],2),0!==e.step.time?i("span",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fa fa-stopwatch"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min")))]):e._e(),""!==e.start_time?i("b-link",{staticClass:"d-print-none",attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")]):e._e()],1),i("div",{staticClass:"col-md-2",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[""!==e.step.instruction?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-12",staticStyle:{"text-align":"center"}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)]):e._e()])]:e._e(),i("div",{staticClass:"row",staticStyle:{"text-align":"center"}},[i("div",{staticClass:"col col-md-12"},[null!==e.step.file?[e.step.file.file.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("img",{staticStyle:{"max-width":"50vw","max-height":"50vh"},attrs:{src:e.step.file.file}})]):i("div",[i("a",{attrs:{href:e.step.file.file,target:"_blank",rel:"noreferrer nofollow"}},[e._v(e._s(e.$t("Download"))+" "+e._s(e.$t("File")))])])]:e._e()],2)]),""!==e.start_time?i("div",[i("b-popover",{ref:"id_reactive_popover_"+e.step.id,attrs:{target:"id_reactive_popover_"+e.step.id,triggers:"click",placement:"bottom",title:e.$t("Step start time")}},[i("div",[i("b-form-group",{staticClass:"mb-1",attrs:{label:"Time","label-for":"popover-input-1","label-cols":"3"}},[i("b-form-input",{attrs:{type:"datetime-local",id:"popover-input-1",size:"sm"},model:{value:e.set_time_input,callback:function(t){e.set_time_input=t},expression:"set_time_input"}})],1)],1),i("div",{staticClass:"row",staticStyle:{"margin-top":"1vh"}},[i("div",{staticClass:"col-12",staticStyle:{"text-align":"right"}},[i("b-button",{staticStyle:{"margin-right":"8px"},attrs:{size:"sm",variant:"secondary"},on:{click:e.closePopover}},[e._v("Cancel")]),i("b-button",{attrs:{size:"sm",variant:"primary"},on:{click:e.updateTime}},[e._v("Ok")])],1)])])],1):e._e()],2)},d=[],p=(i("a9e3"),i("fa7d")),u=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("tr",{on:{click:function(t){return e.$emit("checked-state-changed",e.ingredient)}}},[e.ingredient.is_header?[i("td",{attrs:{colspan:"5"}},[i("b",[e._v(e._s(e.ingredient.note))])])]:[i("td",[e.ingredient.checked?i("i",{staticClass:"far fa-check-circle text-success"}):e._e(),e.ingredient.checked?e._e():i("i",{staticClass:"far fa-check-circle text-primary"})]),i("td",[0!==e.ingredient.amount?i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.ingredient.amount))}}):e._e()]),i("td",[null===e.ingredient.unit||e.ingredient.no_amount?e._e():i("span",[e._v(e._s(e.ingredient.unit.name))])]),i("td",[null!==e.ingredient.food?[null!==e.ingredient.food.recipe?i("a",{attrs:{href:e.resolveDjangoUrl("view_recipe",e.ingredient.food.recipe),target:"_blank",rel:"noopener noreferrer"}},[e._v(e._s(e.ingredient.food.name))]):e._e(),null===e.ingredient.food.recipe?i("span",[e._v(e._s(e.ingredient.food.name))]):e._e()]:e._e()],2),i("td",[e.ingredient.note?i("div",[i("span",{directives:[{name:"b-popover",rawName:"v-b-popover.hover",value:e.ingredient.note,expression:"ingredient.note",modifiers:{hover:!0}}],staticClass:"d-print-none"},[i("i",{staticClass:"far fa-comment"})]),i("div",{staticClass:"d-none d-print-block"},[i("i",{staticClass:"far fa-comment-alt"}),e._v(" "+e._s(e.ingredient.note)+" ")])]):e._e()])]],2)},f=[],_={name:"Ingredient",props:{ingredient:Object,ingredient_factor:{type:Number,default:1}},mixins:[p["b"]],data:function(){return{checked:!1}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},m=_,g=i("2877"),v=Object(g["a"])(m,u,f,!1,null,null,null),b=v.exports,h=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i(e.compiled,{tag:"component",attrs:{ingredient_factor:e.ingredient_factor,code:e.code}})],1)},j=[],k=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.number))}})},C=[],w={name:"ScalableNumber",props:{number:Number,factor:{type:Number,default:4}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.factor)}}},y=w,S=Object(g["a"])(y,k,C,!1,null,null,null),x=S.exports,O={name:"CompileComponent",props:["code","ingredient_factor"],data:function(){return{compiled:null}},mounted:function(){this.compiled=n["default"].component("compiled-component",{props:["ingredient_factor","code"],components:{ScalableNumber:x},template:"
".concat(this.code,"
")})}},E=O,R=Object(g["a"])(E,h,j,!1,null,null,null),$=R.exports,I=i("c1df"),P=i.n(I);n["default"].prototype.moment=P.a;var A={name:"Step",mixins:[p["a"]],components:{Ingredient:b,CompileComponent:$},props:{step:Object,ingredient_factor:Number,index:Number,recipe:Object,start_time:String},data:function(){return{details_visible:!0,set_time_input:""}},mounted:function(){this.set_time_input=P()(this.start_time).add(this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm")},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)},updateTime:function(){var e=P()(this.set_time_input).add(-1*this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm");this.$emit("update-start-time",e),this.closePopover()},closePopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("close")},openPopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("open")}}},N=A,L=Object(g["a"])(N,l,d,!1,null,null,null),z=L.exports,B=i("fc0d"),D=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("iframe",{staticStyle:{border:"none"},attrs:{src:e.pdfUrl,width:"100%",height:"700px"}})])},T=[],M={name:"PdfViewer",mixins:[p["b"]],props:{recipe:Object},computed:{pdfUrl:function(){return"/static/pdfjs/viewer.html?file="+Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},U=M,V=Object(g["a"])(U,D,T,!1,null,null,null),H=V.exports,F=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{"text-align":"center"}},[i("b-img",{attrs:{src:e.pdfUrl,alt:e.$t("External_Recipe_Image")}})],1)},K=[],Z={name:"ImageViewer",props:{recipe:Object},computed:{pdfUrl:function(){return Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},W=Z,J=Object(g["a"])(W,F,K,!1,null,null,null),q=J.exports,G=function(){var e=this,t=e.$createElement,i=e._self._c||t;return null!==e.recipe.nutrition?i("div",[i("div",{staticClass:"card border-success"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-carrot"}),e._v(" "+e._s(e.$t("Nutrition")))])])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-fire fa-fw text-primary"}),e._v(" "+e._s(e.$t("Calories"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.calories))}}),e._v(" kcal ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-bread-slice fa-fw text-primary"}),e._v(" "+e._s(e.$t("Carbohydrates"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.carbohydrates))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-cheese fa-fw text-primary"}),e._v(" "+e._s(e.$t("Fats"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.fats))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-drumstick-bite fa-fw text-primary"}),e._v(" "+e._s(e.$t("Proteins"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.proteins))}}),e._v(" g ")])])])])]):e._e()},X=[],Q={name:"Nutrition",props:{recipe:Object,ingredient_factor:Number},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},Y=Q,ee=Object(g["a"])(Y,G,X,!1,null,null,null),te=ee.exports,ie=i("81d5"),ne=i("d76c"),ae=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_add_book",title:e.$t("Add_to_Book"),"ok-title":e.$t("Add"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.addToBook()}}},[i("multiselect",{attrs:{options:e.books,"preserve-search":!0,placeholder:e.$t("Select_Book"),label:"name","track-by":"id",id:"id_books",multiple:!1},on:{"search-change":e.loadBook},model:{value:e.selected_book,callback:function(t){e.selected_book=t},expression:"selected_book"}})],1)],1)},re=[],se=i("8e5f"),oe=i.n(se);n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ce={name:"AddRecipeToBook",components:{Multiselect:oe.a},props:{recipe:Object},data:function(){return{books:[],selected_book:null}},mounted:function(){this.loadBook("")},methods:{loadBook:function(e){var t=this;Object(c["b"])(e).then((function(e){t.books=e}))},addToBook:function(){Object(c["a"])({recipe:this.recipe.id,book:this.selected_book.id})}}},le=ce,de=(i("60bc"),Object(g["a"])(le,ae,re,!1,null,null,null)),pe=de.exports;n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ue={name:"RecipeView",mixins:[p["b"],p["c"]],components:{PdfViewer:H,ImageViewer:q,Ingredient:b,Step:z,RecipeContextMenu:B["a"],Nutrition:te,Keywords:ie["a"],LoadingSpinner:ne["a"],AddRecipeToBook:pe},computed:{ingredient_factor:function(){return this.servings/this.recipe.servings}},data:function(){return{loading:!0,recipe:void 0,ingredient_count:0,servings:1,start_time:"",share_uid:window.SHARE_UID}},mounted:function(){this.loadRecipe(window.RECIPE_ID),this.$i18n.locale=window.CUSTOM_LOCALE},methods:{loadRecipe:function(e){var t=this;Object(c["c"])(e).then((function(e){0!==window.USER_SERVINGS&&(e.servings=window.USER_SERVINGS),t.servings=e.servings;var i,n=0,a=Object(s["a"])(e.steps);try{for(a.s();!(i=a.n()).done;){var r=i.value;t.ingredient_count+=r.ingredients.length;var o,c=Object(s["a"])(r.ingredients);try{for(c.s();!(o=c.n()).done;){var l=o.value;t.$set(l,"checked",!1)}}catch(d){c.e(d)}finally{c.f()}r.time_offset=n,n+=r.time}}catch(d){a.e(d)}finally{a.f()}n>0&&(t.start_time=P()().format("yyyy-MM-DDTHH:mm")),t.recipe=e,t.loading=!1}))},updateStartTime:function(e){this.start_time=e},updateIngredientCheckedState:function(e){var t,i=Object(s["a"])(this.recipe.steps);try{for(i.s();!(t=i.n()).done;){var n,a=t.value,r=Object(s["a"])(a.ingredients);try{for(r.s();!(n=r.n()).done;){var o=n.value;o.id===e.id&&this.$set(o,"checked",!o.checked)}}catch(c){r.e(c)}finally{r.f()}}}catch(c){i.e(c)}finally{i.f()}}}},fe=ue,_e=Object(g["a"])(fe,a,r,!1,null,null,null),me=_e.exports,ge=i("9225");n["default"].config.productionTip=!1,new n["default"]({i18n:ge["a"],render:function(e){return e(me)}}).$mount("#app")},1:function(e,t,i){e.exports=i("0671")},4678:function(e,t,i){var n={"./af":"2bfb","./af.js":"2bfb","./ar":"8e73","./ar-dz":"a356","./ar-dz.js":"a356","./ar-kw":"423e","./ar-kw.js":"423e","./ar-ly":"1cfd","./ar-ly.js":"1cfd","./ar-ma":"0a84","./ar-ma.js":"0a84","./ar-sa":"8230","./ar-sa.js":"8230","./ar-tn":"6d83","./ar-tn.js":"6d83","./ar.js":"8e73","./az":"485c","./az.js":"485c","./be":"1fc1","./be.js":"1fc1","./bg":"84aa","./bg.js":"84aa","./bm":"a7fa","./bm.js":"a7fa","./bn":"9043","./bn-bd":"9686","./bn-bd.js":"9686","./bn.js":"9043","./bo":"d26a","./bo.js":"d26a","./br":"6887","./br.js":"6887","./bs":"2554","./bs.js":"2554","./ca":"d716","./ca.js":"d716","./cs":"3c0d","./cs.js":"3c0d","./cv":"03ec","./cv.js":"03ec","./cy":"9797","./cy.js":"9797","./da":"0f14","./da.js":"0f14","./de":"b469","./de-at":"b3eb","./de-at.js":"b3eb","./de-ch":"bb71","./de-ch.js":"bb71","./de.js":"b469","./dv":"598a","./dv.js":"598a","./el":"8d47","./el.js":"8d47","./en-au":"0e6b","./en-au.js":"0e6b","./en-ca":"3886","./en-ca.js":"3886","./en-gb":"39a6","./en-gb.js":"39a6","./en-ie":"e1d3","./en-ie.js":"e1d3","./en-il":"7333","./en-il.js":"7333","./en-in":"ec2e","./en-in.js":"ec2e","./en-nz":"6f50","./en-nz.js":"6f50","./en-sg":"b7e9","./en-sg.js":"b7e9","./eo":"65db","./eo.js":"65db","./es":"898b","./es-do":"0a3c","./es-do.js":"0a3c","./es-mx":"b5b7","./es-mx.js":"b5b7","./es-us":"55c9","./es-us.js":"55c9","./es.js":"898b","./et":"ec18","./et.js":"ec18","./eu":"0ff2","./eu.js":"0ff2","./fa":"8df4","./fa.js":"8df4","./fi":"81e9","./fi.js":"81e9","./fil":"d69a","./fil.js":"d69a","./fo":"0721","./fo.js":"0721","./fr":"9f26","./fr-ca":"d9f8","./fr-ca.js":"d9f8","./fr-ch":"0e49","./fr-ch.js":"0e49","./fr.js":"9f26","./fy":"7118","./fy.js":"7118","./ga":"5120","./ga.js":"5120","./gd":"f6b4","./gd.js":"f6b4","./gl":"8840","./gl.js":"8840","./gom-deva":"aaf2","./gom-deva.js":"aaf2","./gom-latn":"0caa","./gom-latn.js":"0caa","./gu":"e0c5","./gu.js":"e0c5","./he":"c7aa","./he.js":"c7aa","./hi":"dc4d","./hi.js":"dc4d","./hr":"4ba9","./hr.js":"4ba9","./hu":"5b14","./hu.js":"5b14","./hy-am":"d6b6","./hy-am.js":"d6b6","./id":"5038","./id.js":"5038","./is":"0558","./is.js":"0558","./it":"6e98","./it-ch":"6f12","./it-ch.js":"6f12","./it.js":"6e98","./ja":"079e","./ja.js":"079e","./jv":"b540","./jv.js":"b540","./ka":"201b","./ka.js":"201b","./kk":"6d79","./kk.js":"6d79","./km":"e81d","./km.js":"e81d","./kn":"3e92","./kn.js":"3e92","./ko":"22f8","./ko.js":"22f8","./ku":"2421","./ku.js":"2421","./ky":"9609","./ky.js":"9609","./lb":"440c","./lb.js":"440c","./lo":"b29d","./lo.js":"b29d","./lt":"26f9","./lt.js":"26f9","./lv":"b97c","./lv.js":"b97c","./me":"293c","./me.js":"293c","./mi":"688b","./mi.js":"688b","./mk":"6909","./mk.js":"6909","./ml":"02fb","./ml.js":"02fb","./mn":"958b","./mn.js":"958b","./mr":"39bd","./mr.js":"39bd","./ms":"ebe4","./ms-my":"6403","./ms-my.js":"6403","./ms.js":"ebe4","./mt":"1b45","./mt.js":"1b45","./my":"8689","./my.js":"8689","./nb":"6ce3","./nb.js":"6ce3","./ne":"3a39","./ne.js":"3a39","./nl":"facd","./nl-be":"db29","./nl-be.js":"db29","./nl.js":"facd","./nn":"b84c","./nn.js":"b84c","./oc-lnc":"167b","./oc-lnc.js":"167b","./pa-in":"f3ff","./pa-in.js":"f3ff","./pl":"8d57","./pl.js":"8d57","./pt":"f260","./pt-br":"d2d4","./pt-br.js":"d2d4","./pt.js":"f260","./ro":"972c","./ro.js":"972c","./ru":"957c","./ru.js":"957c","./sd":"6784","./sd.js":"6784","./se":"ffff","./se.js":"ffff","./si":"eda5","./si.js":"eda5","./sk":"7be6","./sk.js":"7be6","./sl":"8155","./sl.js":"8155","./sq":"c8f3","./sq.js":"c8f3","./sr":"cf1e","./sr-cyrl":"13e9","./sr-cyrl.js":"13e9","./sr.js":"cf1e","./ss":"52bd","./ss.js":"52bd","./sv":"5fbd","./sv.js":"5fbd","./sw":"74dc","./sw.js":"74dc","./ta":"3de5","./ta.js":"3de5","./te":"5cbb","./te.js":"5cbb","./tet":"576c","./tet.js":"576c","./tg":"3b1b","./tg.js":"3b1b","./th":"10e8","./th.js":"10e8","./tk":"5aff","./tk.js":"5aff","./tl-ph":"0f38","./tl-ph.js":"0f38","./tlh":"cf755","./tlh.js":"cf755","./tr":"0e81","./tr.js":"0e81","./tzl":"cf51","./tzl.js":"cf51","./tzm":"c109","./tzm-latn":"b53d","./tzm-latn.js":"b53d","./tzm.js":"c109","./ug-cn":"6117","./ug-cn.js":"6117","./uk":"ada2","./uk.js":"ada2","./ur":"5294","./ur.js":"5294","./uz":"2e8c","./uz-latn":"010e","./uz-latn.js":"010e","./uz.js":"2e8c","./vi":"2921","./vi.js":"2921","./x-pseudo":"fd7e","./x-pseudo.js":"fd7e","./yo":"7f33","./yo.js":"7f33","./zh-cn":"5c3a","./zh-cn.js":"5c3a","./zh-hk":"49ab","./zh-hk.js":"49ab","./zh-mo":"3a6c","./zh-mo.js":"3a6c","./zh-tw":"90ea","./zh-tw.js":"90ea"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="4678"},"49f8":function(e,t,i){var n={"./de.json":"6ce2","./en.json":"edd4","./nl.json":"a625","./sv.json":"4c5b"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="49f8"},"4c5b":function(e){e.exports=JSON.parse('{"import_running":"Import pågår, var god vänta!","all_fields_optional":"Alla rutor är valfria och kan lämnas tomma.","convert_internal":"Konvertera till internt recept","Log_Recipe_Cooking":"Logga tillagningen av receptet","External_Recipe_Image":"Externt receptbild","Add_to_Book":"Lägg till i kokbok","Add_to_Shopping":"Lägg till i handelslista","Add_to_Plan":"Lägg till i matsedel","Step_start_time":"Steg starttid","Select_Book":"Välj kokbok","Recipe_Image":"Receptbild","Import_finished":"Importering klar","View_Recipes":"Visa recept","Log_Cooking":"Logga tillagning","Proteins":"Protein","Fats":"Fett","Carbohydrates":"Kolhydrater","Calories":"Kalorier","Nutrition":"Näringsinnehåll","Date":"Datum","Share":"Dela","Export":"Exportera","Rating":"Betyg","Close":"Stäng","Add":"Lägg till","Ingredients":"Ingredienser","min":"min","Servings":"Portioner","Waiting":"Väntan","Preparation":"Förberedelse","Edit":"Redigera","Open":"Öppna","Save":"Spara","Step":"Steg","Search":"Sök","Import":"Importera","Print":"Skriv ut","Information":"Information"}')},"6ce2":function(e){e.exports=JSON.parse('{"Import":"Import","import_running":"Import läuft, bitte warten!","Import_finished":"Import fertig","View_Recipes":"Rezepte Ansehen","Information":"Information","all_fields_optional":"Alle Felder sind optional und können leer gelassen werden.","convert_internal":"Zu internem Rezept wandeln","Log_Recipe_Cooking":"Kochen protokollieren","External_Recipe_Image":"Externes Rezept Bild","Add_to_Book":"Zu Buch hinzufügen","Add_to_Shopping":"Zu Einkaufsliste hinzufügen","Add_to_Plan":"Zu Plan hinzufügen","Step_start_time":"Schritt Startzeit","Select_Book":"Buch wählen","Recipe_Image":"Rezept Bild","Log_Cooking":"Kochen protokollieren","Proteins":"Proteine","Fats":"Fette","Carbohydrates":"Kohlenhydrate","Calories":"Kalorien","Nutrition":"Nährwerte","Keywords":"Stichwörter","Books":"Bücher","show_only_internal":"Nur interne Rezepte anzeigen","Ingredients":"Zutaten","min":"Min","Servings":"Portionen","Waiting":"Wartezeit","Preparation":"Zubereitung","Edit":"Bearbeiten","Open":"Öffnen","Save":"Speichern","Step":"Schritt","Search":"Suchen","Print":"Drucken","New_Recipe":"Neues Rezept","Url_Import":"URL Import","Reset_Search":"Suche zurücksetzen","or":"oder","and":"und","Recently_Viewed":"Kürzlich angesehen","External":"Extern","Settings":"Einstellungen","Meal_Plan":"Speiseplan","Date":"Datum","Share":"Teilen","Export":"Exportieren","Rating":"Bewertung","Close":"Schließen","Add":"Hinzufügen"}')},"7c15":function(e,t,i){"use strict";i.d(t,"c",(function(){return s})),i.d(t,"d",(function(){return o})),i.d(t,"b",(function(){return c})),i.d(t,"a",(function(){return l}));var n=i("bc3a"),a=i.n(n),r=i("fa7d");function s(e){var t=Object(r["g"])("api:recipe-detail",e);return void 0!==window.SHARE_UID&&(t+="?share="+window.SHARE_UID),a.a.get(t).then((function(e){return e.data})).catch((function(e){d(e,"There was an error loading a resource!","danger")}))}function o(e){return a.a.post(Object(r["g"])("api:cooklog-list"),e).then((function(e){Object(r["f"])("Saved","Cook Log entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function c(e){return a.a.get(Object(r["g"])("api:recipebook-list")+"?query="+e).then((function(e){return e.data})).catch((function(e){}))}function l(e){return a.a.post(Object(r["g"])("api:recipebookentry-list"),e).then((function(e){Object(r["f"])("Saved","Recipe Book entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function d(e,t){if("response"in e){console.log(e.response);var i="statusText"in e.response?e.response.statusText:Object(r["e"])("Error");t+="\n\n"+JSON.stringify(e.response.data),Object(r["f"])(i,t,"danger")}else Object(r["f"])("Error",t,"danger"),console.log(e)}a.a.defaults.xsrfCookieName="csrftoken",a.a.defaults.xsrfHeaderName="X-CSRFTOKEN"},"81d5":function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.recipe.keywords.length>0?i("div",e._l(e.recipe.keywords,(function(t){return i("span",{key:t.id,staticStyle:{padding:"2px"}},[i("b-badge",{attrs:{pill:"",variant:"light"}},[e._v(e._s(t.label))])],1)})),0):e._e()},a=[],r={name:"Keywords",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},9225:function(e,t,i){"use strict";i("159b"),i("d3b7"),i("ddb0"),i("ac1f"),i("466d");var n=i("a026"),a=i("a925");function r(){var e=i("49f8"),t={};return e.keys().forEach((function(i){var n=i.match(/([A-Za-z0-9-_]+)\./i);if(n&&n.length>1){var a=n[1];t[a]=e(i)}})),t}n["default"].use(a["a"]),t["a"]=new a["a"]({locale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_LOCALE||"en",fallbackLocale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_FALLBACK_LOCALE||"en",messages:r()})},a625:function(e){e.exports=JSON.parse('{"import_running":"Er wordt geïmporteerd, even geduld!","all_fields_optional":"Alle velden zijn optioneel en kunnen leeg gelaten worden.","convert_internal":"Zet om naar intern recept","Log_Recipe_Cooking":"Log Bereiding","External_Recipe_Image":"Externe Afbeelding Recept","Add_to_Book":"Voeg toe aan Boek","Add_to_Shopping":"Voeg toe aan Boodschappenlijst","Add_to_Plan":"Voeg toe aan Plan","Step_start_time":"Starttijd stap","Select_Book":"Selecteer Boek","Recipe_Image":"Afbeelding Recept","Import_finished":"Importeren gereed","View_Recipes":"Bekijk Recepten","Log_Cooking":"Log Bereiding","Proteins":"Eiwitten","Fats":"Vetten","Carbohydrates":"Koolhydraten","Calories":"Calorieën","Nutrition":"Voedingswaarde","Date":"Datum","Share":"Deel","Export":"Exporteren","Rating":"Beoordeling","Close":"Sluiten","Add":"Voeg toe","Ingredients":"Ingrediënten","min":"min","Servings":"Porties","Waiting":"Wachten","Preparation":"Bereiding","Edit":"Bewerken","Open":"Open","Save":"Opslaan","Step":"Stap","Search":"Zoeken","Import":"Importeer","Print":"Afdrukken","Information":"Informatie","Keywords":"Etiketten","Books":"Boeken","show_only_internal":"Toon alleen interne recepten","New_Recipe":"Nieuw Recept","Url_Import":"Importeer URL","Reset_Search":"Zoeken resetten","or":"of","and":"en","Recently_Viewed":"Recent bekeken","External":"Externe","Settings":"Instellingen","Meal_Plan":"Maaltijdplan","New":"Nieuw","Supermarket":"Supermarkt","Categories":"Categorieën","Category":"Categorie","Selected":"Geselecteerd"}')},d76c:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"row"},[i("div",{staticClass:"col",staticStyle:{"text-align":"center"}},[i("img",{staticClass:"spinner-tandoor",staticStyle:{height:"30vh"},attrs:{alt:"loading spinner",src:""}})])])}],r={name:"LoadingSpinner",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},edd4:function(e){e.exports=JSON.parse('{"err_fetching_resource":"There was an error fetching a resource!","err_creating_resource":"There was an error creating a resource!","err_updating_resource":"There was an error updating a resource!","err_deleting_resource":"There was an error deleting a resource!","success_fetching_resource":"Successfully fetched a resource!","success_creating_resource":"Successfully created a resource!","success_updating_resource":"Successfully updated a resource!","success_deleting_resource":"Successfully deleted a resource!","import_running":"Import running, please wait!","all_fields_optional":"All fields are optional and can be left empty.","convert_internal":"Convert to internal recipe","show_only_internal":"Show only internal recipes","Log_Recipe_Cooking":"Log Recipe Cooking","External_Recipe_Image":"External Recipe Image","Add_to_Book":"Add to Book","Add_to_Shopping":"Add to Shopping","Add_to_Plan":"Add to Plan","Step_start_time":"Step start time","Meal_Plan":"Meal Plan","Select_Book":"Select Book","Recipe_Image":"Recipe Image","Import_finished":"Import finished","View_Recipes":"View Recipes","Log_Cooking":"Log Cooking","New_Recipe":"New Recipe","Url_Import":"Url Import","Reset_Search":"Reset Search","Recently_Viewed":"Recently Viewed","Load_More":"Load More","Keywords":"Keywords","Books":"Books","Proteins":"Proteins","Fats":"Fats","Carbohydrates":"Carbohydrates","Calories":"Calories","Nutrition":"Nutrition","Date":"Date","Share":"Share","Export":"Export","Rating":"Rating","Close":"Close","Add":"Add","New":"New","Success":"Success","Ingredients":"Ingredients","Supermarket":"Supermarket","Categories":"Categories","Category":"Category","Selected":"Selected","min":"min","Servings":"Servings","Waiting":"Waiting","Preparation":"Preparation","External":"External","Size":"Size","Files":"Files","File":"File","Edit":"Edit","Cancel":"Cancel","Delete":"Delete","Open":"Open","Ok":"Open","Save":"Save","Step":"Step","Search":"Search","Import":"Import","Print":"Print","Settings":"Settings","or":"or","and":"and","Information":"Information","Download":"Download"}')},fa7d:function(e,t,i){"use strict";i.d(t,"c",(function(){return r})),i.d(t,"f",(function(){return s})),i.d(t,"a",(function(){return o})),i.d(t,"e",(function(){return c})),i.d(t,"b",(function(){return l})),i.d(t,"g",(function(){return d})),i.d(t,"d",(function(){return u}));i("99af");var n=i("59e4");function a(e,t,i){var n=Math.floor(e),a=1,r=n+1,s=1;if(e!==n)while(a<=t&&s<=t){var o=(n+r)/(a+s);if(e===o){a+s<=t?(a+=s,n+=r,s=t+1):a>s?s=t+1:a=t+1;break}et&&(a=s,n=r),!i)return[0,n,a];var c=Math.floor(n/a);return[c,n-c*a,a]}var r={methods:{makeToast:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return s(e,t,i)}}};function s(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=new n["a"];a.$bvToast.toast(t,{title:e,variant:i,toaster:"b-toaster-top-center",solid:!0})}var o={methods:{_:function(e){return c(e)}}};function c(e){return window.gettext(e)}var l={methods:{resolveDjangoUrl:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return d(e,t)}}};function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return null!==t?window.Urls[e](t):window.Urls[e]()}function p(e){return window.USER_PREF[e]}function u(e,t){if(p("use_fractions")){var i="",n=a(e*t,9,!0);return n[0]>0&&(i+=n[0]),n[1]>0&&(i+=" ".concat(n[1],"").concat(n[2],"")),i}return f(e*t)}function f(e){var t=p("user_fractions")?p("user_fractions"):2;return+(Math.round(e+"e+".concat(t))+"e-".concat(t))}},fc0d:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"dropdown"},[e._m(0),i("div",{staticClass:"dropdown-menu dropdown-menu-right",attrs:{"aria-labelledby":"dropdownMenuLink"}},[i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-pencil-alt fa-fw"}),e._v(" "+e._s(e.$t("Edit")))]),e.recipe.internal?e._e():i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_convert_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-exchange-alt fa-fw"}),e._v(" "+e._s(e.$t("convert_internal")))]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_add_book")}}},[i("i",{staticClass:"fas fa-bookmark fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Book"))+" ")]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_shopping")+"?r=["+e.recipe.id+","+e.servings_value+"]",target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-shopping-cart fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Shopping"))+" ")]):e._e(),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_meal_plan")+"?recipe="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-calendar fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Plan"))+" ")]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_cook_log")}}},[i("i",{staticClass:"fas fa-clipboard-list fa-fw"}),e._v(" "+e._s(e.$t("Log_Cooking"))+" ")]),i("button",{staticClass:"dropdown-item",attrs:{onclick:"window.print()"}},[i("i",{staticClass:"fas fa-print fa-fw"}),e._v(" "+e._s(e.$t("Print"))+" ")]),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_export")+"?r="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-file-export fa-fw"}),e._v(" "+e._s(e.$t("Export")))]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_share_link",e.recipe.id),target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-share-alt fa-fw"}),e._v(" "+e._s(e.$t("Share")))]):e._e()])]),i("cook-log",{attrs:{recipe:e.recipe}})],1)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("a",{staticClass:"btn shadow-none",attrs:{href:"#",role:"button",id:"dropdownMenuLink","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[i("i",{staticClass:"fas fa-ellipsis-v"})])}],r=(i("a9e3"),i("fa7d")),s=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_cook_log",title:e.$t("Log_Recipe_Cooking"),"ok-title":e.$t("Save"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.logCook()}}},[i("p",[e._v(e._s(e.$t("all_fields_optional")))]),i("form",[i("label",{attrs:{for:"id_log_servings"}},[e._v(e._s(e.$t("Servings")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.servings,expression:"logObject.servings"}],staticClass:"form-control",attrs:{type:"number",id:"id_log_servings"},domProps:{value:e.logObject.servings},on:{input:function(t){t.target.composing||e.$set(e.logObject,"servings",t.target.value)}}}),i("label",{staticStyle:{"margin-top":"2vh"}},[e._v(e._s(e.$t("Rating"))+" - "),i("span",{attrs:{id:"id_rating_show"}},[e._v(e._s(e.logObject.rating)+"/5")])]),i("b-form-rating",{model:{value:e.logObject.rating,callback:function(t){e.$set(e.logObject,"rating",t)},expression:"logObject.rating"}}),i("label",{staticStyle:{"margin-top":"2vh"},attrs:{for:"id_date"}},[e._v(e._s(e.$t("Date")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.created_at,expression:"logObject.created_at"}],staticClass:"form-control",attrs:{type:"datetime-local",id:"id_date"},domProps:{value:e.logObject.created_at},on:{input:function(t){t.target.composing||e.$set(e.logObject,"created_at",t.target.value)}}})],1)])],1)},o=[],c=i("c1df"),l=i.n(c),d=i("a026"),p=i("5f5b"),u=i("7c15");d["default"].prototype.moment=l.a,d["default"].use(p["a"]);var f={name:"CookLog",props:{recipe:Object},data:function(){return{logObject:{recipe:this.recipe.id,servings:0,rating:0,created_at:l()().format("yyyy-MM-DDTHH:mm")}}},methods:{logCook:function(){Object(u["d"])(this.logObject)}}},_=f,m=i("2877"),g=Object(m["a"])(_,s,o,!1,null,null,null),v=g.exports,b={name:"RecipeContextMenu",mixins:[r["b"]],components:{CookLog:v},data:function(){return{servings_value:0}},props:{recipe:Object,servings:{type:Number,default:-1}},mounted:function(){this.servings_value=-1===this.servings?this.recipe.servings:this.servings}},h=b,j=Object(m["a"])(h,n,a,!1,null,null,null);t["a"]=j.exports}}); \ No newline at end of file diff --git a/cookbook/urls.py b/cookbook/urls.py index 1b056043..011cbb6a 100644 --- a/cookbook/urls.py +++ b/cookbook/urls.py @@ -64,6 +64,7 @@ urlpatterns = [ path('history/', views.history, name='view_history'), path('supermarket/', views.supermarket, name='view_supermarket'), path('files/', views.files, name='view_files'), + path('abuse/', views.report_share_abuse, name='view_report_share_abuse'), path('test/', views.test, name='view_test'), path('test2/', views.test2, name='view_test2'), diff --git a/cookbook/views/views.py b/cookbook/views/views.py index 350ff887..896df38f 100644 --- a/cookbook/views/views.py +++ b/cookbook/views/views.py @@ -30,7 +30,7 @@ from cookbook.forms import (CommentForm, Recipe, RecipeBookEntryForm, User, from cookbook.helper.permission_helper import group_required, share_link_valid, has_group_permission from cookbook.models import (Comment, CookLog, InviteLink, MealPlan, RecipeBook, RecipeBookEntry, ViewLog, ShoppingList, Space, Keyword, RecipeImport, Unit, - Food, UserFile) + Food, UserFile, ShareLink) from cookbook.tables import (CookLogTable, RecipeTable, RecipeTableSmall, ViewLogTable, InviteLinkTable) from cookbook.views.data import Object @@ -122,7 +122,8 @@ def no_space(request): request.user.userpreference.save() request.user.groups.add(Group.objects.filter(name='admin').get()) - messages.add_message(request, messages.SUCCESS, _('You have successfully created your own recipe space. Start by adding some recipes or invite other people to join you.')) + messages.add_message(request, messages.SUCCESS, + _('You have successfully created your own recipe space. Start by adding some recipes or invite other people to join you.')) return HttpResponseRedirect(reverse('index')) if join_form.is_valid(): @@ -239,10 +240,12 @@ def supermarket(request): @group_required('user') def files(request): try: - current_file_size_mb = UserFile.objects.filter(space=request.space).aggregate(Sum('file_size_kb'))['file_size_kb__sum'] / 1000 + current_file_size_mb = UserFile.objects.filter(space=request.space).aggregate(Sum('file_size_kb'))[ + 'file_size_kb__sum'] / 1000 except TypeError: current_file_size_mb = 0 - return render(request, 'files.html', {'current_file_size_mb': current_file_size_mb, 'max_file_size_mb': request.space.max_file_storage_mb}) + return render(request, 'files.html', + {'current_file_size_mb': current_file_size_mb, 'max_file_size_mb': request.space.max_file_storage_mb}) @group_required('user') @@ -264,7 +267,9 @@ def meal_plan_entry(request, pk): @group_required('user') def latest_shopping_list(request): - sl = ShoppingList.objects.filter(Q(created_by=request.user) | Q(shared=request.user)).filter(finished=False, pace=request.space).order_by('-created_at').first() + sl = ShoppingList.objects.filter(Q(created_by=request.user) | Q(shared=request.user)).filter(finished=False, + pace=request.space).order_by( + '-created_at').first() if sl: return HttpResponseRedirect(reverse('view_shopping', kwargs={'pk': sl.pk}) + '?edit=true') @@ -438,7 +443,8 @@ def invite_link(request, token): if link := InviteLink.objects.filter(valid_until__gte=datetime.today(), used_by=None, uuid=token).first(): if request.user.is_authenticated: if request.user.userpreference.space: - messages.add_message(request, messages.WARNING, _('You are already member of a space and therefore cannot join this one.')) + messages.add_message(request, messages.WARNING, + _('You are already member of a space and therefore cannot join this one.')) return HttpResponseRedirect(reverse('index')) link.used_by = request.user @@ -481,7 +487,8 @@ def space(request): counts.recipes_no_keyword = Recipe.objects.filter(keywords=None, space=request.space).count() - invite_links = InviteLinkTable(InviteLink.objects.filter(valid_until__gte=datetime.today(), used_by=None, space=request.space).all()) + invite_links = InviteLinkTable( + InviteLink.objects.filter(valid_until__gte=datetime.today(), used_by=None, space=request.space).all()) RequestConfig(request, paginate={'per_page': 25}).configure(invite_links) return render(request, 'space.html', {'space_users': space_users, 'counts': counts, 'invite_links': invite_links}) @@ -515,6 +522,19 @@ def space_change_member(request, user_id, space_id, group): return HttpResponseRedirect(reverse('view_space')) +def report_share_abuse(request, token): + if not settings.SHARING_ABUSE: + messages.add_message(request, messages.WARNING, + _('Reporting share links is not enabled for this instance. Please notify the page administrator to report problems.')) + else: + if link := ShareLink.objects.filter(uuid=token).first(): + link.abuse_blocked = True + link.save() + messages.add_message(request, messages.WARNING, + _('Recipe sharing link has been disabled! For additional information please contact the page administrator.')) + return HttpResponseRedirect(reverse('index')) + + def markdown_info(request): return render(request, 'markdown_info.html', {}) diff --git a/recipes/settings.py b/recipes/settings.py index 6d86fa11..6fa021ec 100644 --- a/recipes/settings.py +++ b/recipes/settings.py @@ -67,6 +67,9 @@ DJANGO_TABLES2_PAGE_RANGE = 8 HCAPTCHA_SITEKEY = os.getenv('HCAPTCHA_SITEKEY', '') HCAPTCHA_SECRET = os.getenv('HCAPTCHA_SECRET', '') +SHARING_ABUSE = bool(int(os.getenv('SHARING_ABUSE', False))) +SHARING_LIMIT = int(os.getenv('SHARING_LIMIT', 0)) + ACCOUNT_SIGNUP_FORM_CLASS = 'cookbook.forms.AllAuthSignupForm' TERMS_URL = os.getenv('TERMS_URL', '') diff --git a/vue/src/apps/RecipeView/RecipeView.vue b/vue/src/apps/RecipeView/RecipeView.vue index 54fe3ba8..d2708f97 100644 --- a/vue/src/apps/RecipeView/RecipeView.vue +++ b/vue/src/apps/RecipeView/RecipeView.vue @@ -134,6 +134,14 @@ + + + + @@ -191,7 +199,8 @@ export default { recipe: undefined, ingredient_count: 0, servings: 1, - start_time: "" + start_time: "", + share_uid: window.SHARE_UID } }, mounted() { From 24e4ea354dfed727112015cc4c2d5fea86f779c4 Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Sun, 13 Jun 2021 16:55:27 +0200 Subject: [PATCH 06/70] catch all exception image import --- cookbook/views/data.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cookbook/views/data.py b/cookbook/views/data.py index 52c2fb4e..caa4f55d 100644 --- a/cookbook/views/data.py +++ b/cookbook/views/data.py @@ -204,6 +204,8 @@ def import_url(request): pass except MissingSchema: pass + except: + pass return HttpResponse(reverse('view_recipe', args=[recipe.pk])) From 0b3e86f6fd393d0f7efac5090538c05d1395cfa1 Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Sun, 13 Jun 2021 17:04:52 +0200 Subject: [PATCH 07/70] imprioved recipe print view --- cookbook/static/vue/js/recipe_search_view.js | 2 +- cookbook/static/vue/js/recipe_view.js | 2 +- vue/src/apps/RecipeView/RecipeView.vue | 2 +- vue/src/components/Ingredient.vue | 4 ++-- vue/src/components/RecipeContextMenu.vue | 2 +- vue/src/components/Step.vue | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cookbook/static/vue/js/recipe_search_view.js b/cookbook/static/vue/js/recipe_search_view.js index fc808809..69120021 100644 --- a/cookbook/static/vue/js/recipe_search_view.js +++ b/cookbook/static/vue/js/recipe_search_view.js @@ -1 +1 @@ -(function(e){function t(t){for(var n,a,s=t[0],c=t[1],u=t[2],p=0,h=[];pnew Date(Date.now()-6048e5)?r("b-badge",{attrs:{pill:"",variant:"success"}},[e._v(e._s(e.$t("New")))]):e._e()]:[e._v(e._s(e.meal_plan.note))]],2)],1),void 0!==e.footer_text?r("b-card-footer",[r("i",{class:e.footer_icon}),e._v(" "+e._s(e.footer_text)+" ")]):e._e()],1)},O=[],v=r("fc0d"),g=r("81d5"),m={name:"RecipeCard",mixins:[l["b"]],components:{Keywords:g["a"],RecipeContextMenu:v["a"]},props:{recipe:Object,meal_plan:Object,footer_text:String,footer_icon:String},data:function(){return{recipe_image:""}},mounted:function(){null==this.recipe||null===this.recipe.image?this.recipe_image=window.IMAGE_PLACEHOLDER:this.recipe_image=this.recipe.image},methods:{clickUrl:function(){return null!==this.recipe?Object(l["g"])("view_recipe",this.recipe.id):Object(l["g"])("view_plan_entry",this.meal_plan.id)}}},y=m,S=r("2877"),P=Object(S["a"])(y,j,O,!1,null,"2bdfc3cc",null),U=P.exports,w=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("multiselect",{attrs:{options:e.objects,"close-on-select":!0,"clear-on-select":!0,"hide-selected":!0,"preserve-search":!0,placeholder:e.placeholder,label:e.label,"track-by":"id",multiple:!0,loading:e.loading},on:{"search-change":e.search,input:e.selectionChanged},model:{value:e.selected_objects,callback:function(t){e.selected_objects=t},expression:"selected_objects"}})},k=[],R=r("8e5f"),L=r.n(R),_={name:"GenericMultiselect",components:{Multiselect:L.a},data:function(){return{loading:!1,objects:[],selected_objects:[]}},props:{placeholder:String,search_function:String,label:String,parent_variable:String,initial_selection:Array},watch:{initial_selection:function(e,t){this.selected_objects=e}},mounted:function(){this.search("")},methods:{search:function(e){var t=this,r=new f["a"];r[this.search_function]({query:{query:e,limit:10}}).then((function(e){t.objects=e.data}))},selectionChanged:function(){this.$emit("change",{var:this.parent_variable,val:this.selected_objects})}}},C=_,I=Object(S["a"])(C,w,k,!1,null,"20923c58",null),T=I.exports;n["default"].use(b.a),n["default"].use(s["a"]);var E={name:"RecipeSearchView",mixins:[l["b"]],components:{GenericMultiselect:T,RecipeCard:U},data:function(){return{recipes:[],meal_plans:[],last_viewed_recipes:[],settings:{search_input:"",search_internal:!1,search_keywords:[],search_foods:[],search_books:[],search_keywords_or:!0,search_foods_or:!0,search_books_or:!0,advanced_search_visible:!1,show_meal_plan:!0,recently_viewed:5},pagination_more:!0,pagination_page:1}},mounted:function(){this.$nextTick((function(){var e=this;this.$cookies.isKey("search_settings_v2")&&(this.settings=this.$cookies.get("search_settings_v2"));var t=new URLSearchParams(window.location.search),r=new f["a"];if(t.has("keyword")){this.settings.search_keywords=[];var n,i=Object(a["a"])(t.getAll("keyword"));try{var o=function(){var t=n.value,i={id:t,name:"loading"};e.settings.search_keywords.push(i),r.retrieveKeyword(t).then((function(t){e.$set(e.settings.search_keywords,e.settings.search_keywords.indexOf(i),t.data)}))};for(i.s();!(n=i.n()).done;)o()}catch(s){i.e(s)}finally{i.f()}}this.loadMealPlan(),this.loadRecentlyViewed(),this.refreshData(!1)})),this.$i18n.locale=window.CUSTOM_LOCALE},watch:{settings:{handler:function(){this.$cookies.set("search_settings_v2",this.settings,-1)},deep:!0},"settings.show_meal_plan":function(){this.loadMealPlan()},"settings.recently_viewed":function(){this.loadRecentlyViewed()},"settings.search_input":p()((function(){this.refreshData(!1)}),300)},methods:{refreshData:function(e){var t=this,r=new f["a"];r.listRecipes(this.settings.search_input,this.settings.search_keywords.map((function(e){return e["id"]})),this.settings.search_foods.map((function(e){return e["id"]})),this.settings.search_books.map((function(e){return e["id"]})),this.settings.search_keywords_or,this.settings.search_foods_or,this.settings.search_books_or,this.settings.search_internal,void 0,this.pagination_page).then((function(r){if(t.pagination_more=null!==r.data.next,e){var n,i=Object(a["a"])(r.data.results);try{for(i.s();!(n=i.n()).done;){var o=n.value;t.recipes.push(o)}}catch(s){i.e(s)}finally{i.f()}}else t.recipes=r.data.results}))},loadMealPlan:function(){var e=this,t=new f["a"];this.settings.show_meal_plan?t.listMealPlans({query:{from_date:u()().format("YYYY-MM-DD"),to_date:u()().format("YYYY-MM-DD")}}).then((function(t){e.meal_plans=t.data})):this.meal_plans=[]},loadRecentlyViewed:function(){var e=this,t=new f["a"];this.settings.recently_viewed>0?t.listRecipes(void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,{query:{last_viewed:this.settings.recently_viewed}}).then((function(t){e.last_viewed_recipes=t.data.results})):this.last_viewed_recipes=[]},genericSelectChanged:function(e){this.settings[e.var]=e.val,this.refreshData(!1)},resetSearch:function(){this.settings.search_input="",this.settings.search_internal=!1,this.settings.search_keywords=[],this.settings.search_foods=[],this.settings.search_books=[],this.refreshData(!1)},loadMore:function(e){this.pagination_page++,this.refreshData(!0)}}},x=E,B=(r("60bc"),Object(S["a"])(x,i,o,!1,null,null,null)),q=B.exports,M=r("9225");n["default"].config.productionTip=!1,new n["default"]({i18n:M["a"],render:function(e){return e(q)}}).$mount("#app")},"6ce2":function(e){e.exports=JSON.parse('{"Import":"Import","import_running":"Import läuft, bitte warten!","Import_finished":"Import fertig","View_Recipes":"Rezepte Ansehen","Information":"Information","all_fields_optional":"Alle Felder sind optional und können leer gelassen werden.","convert_internal":"Zu internem Rezept wandeln","Log_Recipe_Cooking":"Kochen protokollieren","External_Recipe_Image":"Externes Rezept Bild","Add_to_Book":"Zu Buch hinzufügen","Add_to_Shopping":"Zu Einkaufsliste hinzufügen","Add_to_Plan":"Zu Plan hinzufügen","Step_start_time":"Schritt Startzeit","Select_Book":"Buch wählen","Recipe_Image":"Rezept Bild","Log_Cooking":"Kochen protokollieren","Proteins":"Proteine","Fats":"Fette","Carbohydrates":"Kohlenhydrate","Calories":"Kalorien","Nutrition":"Nährwerte","Keywords":"Stichwörter","Books":"Bücher","show_only_internal":"Nur interne Rezepte anzeigen","Ingredients":"Zutaten","min":"Min","Servings":"Portionen","Waiting":"Wartezeit","Preparation":"Zubereitung","Edit":"Bearbeiten","Open":"Öffnen","Save":"Speichern","Step":"Schritt","Search":"Suchen","Print":"Drucken","New_Recipe":"Neues Rezept","Url_Import":"URL Import","Reset_Search":"Suche zurücksetzen","or":"oder","and":"und","Recently_Viewed":"Kürzlich angesehen","External":"Extern","Settings":"Einstellungen","Meal_Plan":"Speiseplan","Date":"Datum","Share":"Teilen","Export":"Exportieren","Rating":"Bewertung","Close":"Schließen","Add":"Hinzufügen"}')},"7c15":function(e,t,r){"use strict";r.d(t,"c",(function(){return a})),r.d(t,"d",(function(){return s})),r.d(t,"b",(function(){return c})),r.d(t,"a",(function(){return u}));var n=r("bc3a"),i=r.n(n),o=r("fa7d");function a(e){var t=Object(o["g"])("api:recipe-detail",e);return void 0!==window.SHARE_UID&&(t+="?share="+window.SHARE_UID),i.a.get(t).then((function(e){return e.data})).catch((function(e){d(e,"There was an error loading a resource!","danger")}))}function s(e){return i.a.post(Object(o["g"])("api:cooklog-list"),e).then((function(e){Object(o["f"])("Saved","Cook Log entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function c(e){return i.a.get(Object(o["g"])("api:recipebook-list")+"?query="+e).then((function(e){return e.data})).catch((function(e){}))}function u(e){return i.a.post(Object(o["g"])("api:recipebookentry-list"),e).then((function(e){Object(o["f"])("Saved","Recipe Book entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function d(e,t){if("response"in e){console.log(e.response);var r="statusText"in e.response?e.response.statusText:Object(o["e"])("Error");t+="\n\n"+JSON.stringify(e.response.data),Object(o["f"])(r,t,"danger")}else Object(o["f"])("Error",t,"danger"),console.log(e)}i.a.defaults.xsrfCookieName="csrftoken",i.a.defaults.xsrfHeaderName="X-CSRFTOKEN"},"81d5":function(e,t,r){"use strict";var n=function(){var e=this,t=e.$createElement,r=e._self._c||t;return e.recipe.keywords.length>0?r("div",e._l(e.recipe.keywords,(function(t){return r("span",{key:t.id,staticStyle:{padding:"2px"}},[r("b-badge",{attrs:{pill:"",variant:"light"}},[e._v(e._s(t.label))])],1)})),0):e._e()},i=[],o={name:"Keywords",props:{recipe:Object}},a=o,s=r("2877"),c=Object(s["a"])(a,n,i,!1,null,null,null);t["a"]=c.exports},9225:function(e,t,r){"use strict";r("159b"),r("d3b7"),r("ddb0"),r("ac1f"),r("466d");var n=r("a026"),i=r("a925");function o(){var e=r("49f8"),t={};return e.keys().forEach((function(r){var n=r.match(/([A-Za-z0-9-_]+)\./i);if(n&&n.length>1){var i=n[1];t[i]=e(r)}})),t}n["default"].use(i["a"]),t["a"]=new i["a"]({locale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_LOCALE||"en",fallbackLocale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_FALLBACK_LOCALE||"en",messages:o()})},a625:function(e){e.exports=JSON.parse('{"import_running":"Er wordt geïmporteerd, even geduld!","all_fields_optional":"Alle velden zijn optioneel en kunnen leeg gelaten worden.","convert_internal":"Zet om naar intern recept","Log_Recipe_Cooking":"Log Bereiding","External_Recipe_Image":"Externe Afbeelding Recept","Add_to_Book":"Voeg toe aan Boek","Add_to_Shopping":"Voeg toe aan Boodschappenlijst","Add_to_Plan":"Voeg toe aan Plan","Step_start_time":"Starttijd stap","Select_Book":"Selecteer Boek","Recipe_Image":"Afbeelding Recept","Import_finished":"Importeren gereed","View_Recipes":"Bekijk Recepten","Log_Cooking":"Log Bereiding","Proteins":"Eiwitten","Fats":"Vetten","Carbohydrates":"Koolhydraten","Calories":"Calorieën","Nutrition":"Voedingswaarde","Date":"Datum","Share":"Deel","Export":"Exporteren","Rating":"Beoordeling","Close":"Sluiten","Add":"Voeg toe","Ingredients":"Ingrediënten","min":"min","Servings":"Porties","Waiting":"Wachten","Preparation":"Bereiding","Edit":"Bewerken","Open":"Open","Save":"Opslaan","Step":"Stap","Search":"Zoeken","Import":"Importeer","Print":"Afdrukken","Information":"Informatie","Keywords":"Etiketten","Books":"Boeken","show_only_internal":"Toon alleen interne recepten","New_Recipe":"Nieuw Recept","Url_Import":"Importeer URL","Reset_Search":"Zoeken resetten","or":"of","and":"en","Recently_Viewed":"Recent bekeken","External":"Externe","Settings":"Instellingen","Meal_Plan":"Maaltijdplan","New":"Nieuw","Supermarket":"Supermarkt","Categories":"Categorieën","Category":"Categorie","Selected":"Geselecteerd"}')},d76c:function(e,t,r){"use strict";var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"row"},[r("div",{staticClass:"col",staticStyle:{"text-align":"center"}},[r("img",{staticClass:"spinner-tandoor",staticStyle:{height:"30vh"},attrs:{alt:"loading spinner",src:""}})])])}],o={name:"LoadingSpinner",props:{recipe:Object}},a=o,s=r("2877"),c=Object(s["a"])(a,n,i,!1,null,null,null);t["a"]=c.exports},edd4:function(e){e.exports=JSON.parse('{"err_fetching_resource":"There was an error fetching a resource!","err_creating_resource":"There was an error creating a resource!","err_updating_resource":"There was an error updating a resource!","err_deleting_resource":"There was an error deleting a resource!","success_fetching_resource":"Successfully fetched a resource!","success_creating_resource":"Successfully created a resource!","success_updating_resource":"Successfully updated a resource!","success_deleting_resource":"Successfully deleted a resource!","import_running":"Import running, please wait!","all_fields_optional":"All fields are optional and can be left empty.","convert_internal":"Convert to internal recipe","show_only_internal":"Show only internal recipes","Log_Recipe_Cooking":"Log Recipe Cooking","External_Recipe_Image":"External Recipe Image","Add_to_Book":"Add to Book","Add_to_Shopping":"Add to Shopping","Add_to_Plan":"Add to Plan","Step_start_time":"Step start time","Meal_Plan":"Meal Plan","Select_Book":"Select Book","Recipe_Image":"Recipe Image","Import_finished":"Import finished","View_Recipes":"View Recipes","Log_Cooking":"Log Cooking","New_Recipe":"New Recipe","Url_Import":"Url Import","Reset_Search":"Reset Search","Recently_Viewed":"Recently Viewed","Load_More":"Load More","Keywords":"Keywords","Books":"Books","Proteins":"Proteins","Fats":"Fats","Carbohydrates":"Carbohydrates","Calories":"Calories","Nutrition":"Nutrition","Date":"Date","Share":"Share","Export":"Export","Rating":"Rating","Close":"Close","Add":"Add","New":"New","Success":"Success","Ingredients":"Ingredients","Supermarket":"Supermarket","Categories":"Categories","Category":"Category","Selected":"Selected","min":"min","Servings":"Servings","Waiting":"Waiting","Preparation":"Preparation","External":"External","Size":"Size","Files":"Files","File":"File","Edit":"Edit","Cancel":"Cancel","Delete":"Delete","Open":"Open","Ok":"Open","Save":"Save","Step":"Step","Search":"Search","Import":"Import","Print":"Print","Settings":"Settings","or":"or","and":"and","Information":"Information","Download":"Download"}')},fa7d:function(e,t,r){"use strict";r.d(t,"c",(function(){return o})),r.d(t,"f",(function(){return a})),r.d(t,"a",(function(){return s})),r.d(t,"e",(function(){return c})),r.d(t,"b",(function(){return u})),r.d(t,"g",(function(){return d})),r.d(t,"d",(function(){return h}));r("99af");var n=r("59e4");function i(e,t,r){var n=Math.floor(e),i=1,o=n+1,a=1;if(e!==n)while(i<=t&&a<=t){var s=(n+o)/(i+a);if(e===s){i+a<=t?(i+=a,n+=o,a=t+1):i>a?a=t+1:i=t+1;break}et&&(i=a,n=o),!r)return[0,n,i];var c=Math.floor(n/i);return[c,n-c*i,i]}var o={methods:{makeToast:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return a(e,t,r)}}};function a(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=new n["a"];i.$bvToast.toast(t,{title:e,variant:r,toaster:"b-toaster-top-center",solid:!0})}var s={methods:{_:function(e){return c(e)}}};function c(e){return window.gettext(e)}var u={methods:{resolveDjangoUrl:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return d(e,t)}}};function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return null!==t?window.Urls[e](t):window.Urls[e]()}function p(e){return window.USER_PREF[e]}function h(e,t){if(p("use_fractions")){var r="",n=i(e*t,9,!0);return n[0]>0&&(r+=n[0]),n[1]>0&&(r+=" ".concat(n[1],"").concat(n[2],"")),r}return b(e*t)}function b(e){var t=p("user_fractions")?p("user_fractions"):2;return+(Math.round(e+"e+".concat(t))+"e-".concat(t))}},fc0d:function(e,t,r){"use strict";var n=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("div",{staticClass:"dropdown"},[e._m(0),r("div",{staticClass:"dropdown-menu dropdown-menu-right",attrs:{"aria-labelledby":"dropdownMenuLink"}},[r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_recipe",e.recipe.id)}},[r("i",{staticClass:"fas fa-pencil-alt fa-fw"}),e._v(" "+e._s(e.$t("Edit")))]),e.recipe.internal?e._e():r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_convert_recipe",e.recipe.id)}},[r("i",{staticClass:"fas fa-exchange-alt fa-fw"}),e._v(" "+e._s(e.$t("convert_internal")))]),r("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_add_book")}}},[r("i",{staticClass:"fas fa-bookmark fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Book"))+" ")]),e.recipe.internal?r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_shopping")+"?r=["+e.recipe.id+","+e.servings_value+"]",target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-shopping-cart fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Shopping"))+" ")]):e._e(),r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_meal_plan")+"?recipe="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-calendar fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Plan"))+" ")]),r("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_cook_log")}}},[r("i",{staticClass:"fas fa-clipboard-list fa-fw"}),e._v(" "+e._s(e.$t("Log_Cooking"))+" ")]),r("button",{staticClass:"dropdown-item",attrs:{onclick:"window.print()"}},[r("i",{staticClass:"fas fa-print fa-fw"}),e._v(" "+e._s(e.$t("Print"))+" ")]),r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_export")+"?r="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-file-export fa-fw"}),e._v(" "+e._s(e.$t("Export")))]),e.recipe.internal?r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_share_link",e.recipe.id),target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-share-alt fa-fw"}),e._v(" "+e._s(e.$t("Share")))]):e._e()])]),r("cook-log",{attrs:{recipe:e.recipe}})],1)},i=[function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("a",{staticClass:"btn shadow-none",attrs:{href:"#",role:"button",id:"dropdownMenuLink","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[r("i",{staticClass:"fas fa-ellipsis-v"})])}],o=(r("a9e3"),r("fa7d")),a=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("b-modal",{staticClass:"modal",attrs:{id:"id_modal_cook_log",title:e.$t("Log_Recipe_Cooking"),"ok-title":e.$t("Save"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.logCook()}}},[r("p",[e._v(e._s(e.$t("all_fields_optional")))]),r("form",[r("label",{attrs:{for:"id_log_servings"}},[e._v(e._s(e.$t("Servings")))]),r("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.servings,expression:"logObject.servings"}],staticClass:"form-control",attrs:{type:"number",id:"id_log_servings"},domProps:{value:e.logObject.servings},on:{input:function(t){t.target.composing||e.$set(e.logObject,"servings",t.target.value)}}}),r("label",{staticStyle:{"margin-top":"2vh"}},[e._v(e._s(e.$t("Rating"))+" - "),r("span",{attrs:{id:"id_rating_show"}},[e._v(e._s(e.logObject.rating)+"/5")])]),r("b-form-rating",{model:{value:e.logObject.rating,callback:function(t){e.$set(e.logObject,"rating",t)},expression:"logObject.rating"}}),r("label",{staticStyle:{"margin-top":"2vh"},attrs:{for:"id_date"}},[e._v(e._s(e.$t("Date")))]),r("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.created_at,expression:"logObject.created_at"}],staticClass:"form-control",attrs:{type:"datetime-local",id:"id_date"},domProps:{value:e.logObject.created_at},on:{input:function(t){t.target.composing||e.$set(e.logObject,"created_at",t.target.value)}}})],1)])],1)},s=[],c=r("c1df"),u=r.n(c),d=r("a026"),p=r("5f5b"),h=r("7c15");d["default"].prototype.moment=u.a,d["default"].use(p["a"]);var b={name:"CookLog",props:{recipe:Object},data:function(){return{logObject:{recipe:this.recipe.id,servings:0,rating:0,created_at:u()().format("yyyy-MM-DDTHH:mm")}}},methods:{logCook:function(){Object(h["d"])(this.logObject)}}},l=b,f=r("2877"),j=Object(f["a"])(l,a,s,!1,null,null,null),O=j.exports,v={name:"RecipeContextMenu",mixins:[o["b"]],components:{CookLog:O},data:function(){return{servings_value:0}},props:{recipe:Object,servings:{type:Number,default:-1}},mounted:function(){this.servings_value=-1===this.servings?this.recipe.servings:this.servings}},g=v,m=Object(f["a"])(g,n,i,!1,null,null,null);t["a"]=m.exports}}); \ No newline at end of file +(function(e){function t(t){for(var n,a,s=t[0],c=t[1],u=t[2],p=0,h=[];pnew Date(Date.now()-6048e5)?r("b-badge",{attrs:{pill:"",variant:"success"}},[e._v(e._s(e.$t("New")))]):e._e()]:[e._v(e._s(e.meal_plan.note))]],2)],1),void 0!==e.footer_text?r("b-card-footer",[r("i",{class:e.footer_icon}),e._v(" "+e._s(e.footer_text)+" ")]):e._e()],1)},O=[],v=r("fc0d"),g=r("81d5"),m={name:"RecipeCard",mixins:[l["b"]],components:{Keywords:g["a"],RecipeContextMenu:v["a"]},props:{recipe:Object,meal_plan:Object,footer_text:String,footer_icon:String},data:function(){return{recipe_image:""}},mounted:function(){null==this.recipe||null===this.recipe.image?this.recipe_image=window.IMAGE_PLACEHOLDER:this.recipe_image=this.recipe.image},methods:{clickUrl:function(){return null!==this.recipe?Object(l["g"])("view_recipe",this.recipe.id):Object(l["g"])("view_plan_entry",this.meal_plan.id)}}},y=m,S=r("2877"),P=Object(S["a"])(y,j,O,!1,null,"2bdfc3cc",null),U=P.exports,w=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("multiselect",{attrs:{options:e.objects,"close-on-select":!0,"clear-on-select":!0,"hide-selected":!0,"preserve-search":!0,placeholder:e.placeholder,label:e.label,"track-by":"id",multiple:!0,loading:e.loading},on:{"search-change":e.search,input:e.selectionChanged},model:{value:e.selected_objects,callback:function(t){e.selected_objects=t},expression:"selected_objects"}})},k=[],R=r("8e5f"),L=r.n(R),_={name:"GenericMultiselect",components:{Multiselect:L.a},data:function(){return{loading:!1,objects:[],selected_objects:[]}},props:{placeholder:String,search_function:String,label:String,parent_variable:String,initial_selection:Array},watch:{initial_selection:function(e,t){this.selected_objects=e}},mounted:function(){this.search("")},methods:{search:function(e){var t=this,r=new f["a"];r[this.search_function]({query:{query:e,limit:10}}).then((function(e){t.objects=e.data}))},selectionChanged:function(){this.$emit("change",{var:this.parent_variable,val:this.selected_objects})}}},C=_,I=Object(S["a"])(C,w,k,!1,null,"20923c58",null),T=I.exports;n["default"].use(b.a),n["default"].use(s["a"]);var E={name:"RecipeSearchView",mixins:[l["b"]],components:{GenericMultiselect:T,RecipeCard:U},data:function(){return{recipes:[],meal_plans:[],last_viewed_recipes:[],settings:{search_input:"",search_internal:!1,search_keywords:[],search_foods:[],search_books:[],search_keywords_or:!0,search_foods_or:!0,search_books_or:!0,advanced_search_visible:!1,show_meal_plan:!0,recently_viewed:5},pagination_more:!0,pagination_page:1}},mounted:function(){this.$nextTick((function(){var e=this;this.$cookies.isKey("search_settings_v2")&&(this.settings=this.$cookies.get("search_settings_v2"));var t=new URLSearchParams(window.location.search),r=new f["a"];if(t.has("keyword")){this.settings.search_keywords=[];var n,i=Object(a["a"])(t.getAll("keyword"));try{var o=function(){var t=n.value,i={id:t,name:"loading"};e.settings.search_keywords.push(i),r.retrieveKeyword(t).then((function(t){e.$set(e.settings.search_keywords,e.settings.search_keywords.indexOf(i),t.data)}))};for(i.s();!(n=i.n()).done;)o()}catch(s){i.e(s)}finally{i.f()}}this.loadMealPlan(),this.loadRecentlyViewed(),this.refreshData(!1)})),this.$i18n.locale=window.CUSTOM_LOCALE},watch:{settings:{handler:function(){this.$cookies.set("search_settings_v2",this.settings,-1)},deep:!0},"settings.show_meal_plan":function(){this.loadMealPlan()},"settings.recently_viewed":function(){this.loadRecentlyViewed()},"settings.search_input":p()((function(){this.refreshData(!1)}),300)},methods:{refreshData:function(e){var t=this,r=new f["a"];r.listRecipes(this.settings.search_input,this.settings.search_keywords.map((function(e){return e["id"]})),this.settings.search_foods.map((function(e){return e["id"]})),this.settings.search_books.map((function(e){return e["id"]})),this.settings.search_keywords_or,this.settings.search_foods_or,this.settings.search_books_or,this.settings.search_internal,void 0,this.pagination_page).then((function(r){if(t.pagination_more=null!==r.data.next,e){var n,i=Object(a["a"])(r.data.results);try{for(i.s();!(n=i.n()).done;){var o=n.value;t.recipes.push(o)}}catch(s){i.e(s)}finally{i.f()}}else t.recipes=r.data.results}))},loadMealPlan:function(){var e=this,t=new f["a"];this.settings.show_meal_plan?t.listMealPlans({query:{from_date:u()().format("YYYY-MM-DD"),to_date:u()().format("YYYY-MM-DD")}}).then((function(t){e.meal_plans=t.data})):this.meal_plans=[]},loadRecentlyViewed:function(){var e=this,t=new f["a"];this.settings.recently_viewed>0?t.listRecipes(void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,{query:{last_viewed:this.settings.recently_viewed}}).then((function(t){e.last_viewed_recipes=t.data.results})):this.last_viewed_recipes=[]},genericSelectChanged:function(e){this.settings[e.var]=e.val,this.refreshData(!1)},resetSearch:function(){this.settings.search_input="",this.settings.search_internal=!1,this.settings.search_keywords=[],this.settings.search_foods=[],this.settings.search_books=[],this.refreshData(!1)},loadMore:function(e){this.pagination_page++,this.refreshData(!0)}}},x=E,B=(r("60bc"),Object(S["a"])(x,i,o,!1,null,null,null)),q=B.exports,M=r("9225");n["default"].config.productionTip=!1,new n["default"]({i18n:M["a"],render:function(e){return e(q)}}).$mount("#app")},"6ce2":function(e){e.exports=JSON.parse('{"Import":"Import","import_running":"Import läuft, bitte warten!","Import_finished":"Import fertig","View_Recipes":"Rezepte Ansehen","Information":"Information","all_fields_optional":"Alle Felder sind optional und können leer gelassen werden.","convert_internal":"Zu internem Rezept wandeln","Log_Recipe_Cooking":"Kochen protokollieren","External_Recipe_Image":"Externes Rezept Bild","Add_to_Book":"Zu Buch hinzufügen","Add_to_Shopping":"Zu Einkaufsliste hinzufügen","Add_to_Plan":"Zu Plan hinzufügen","Step_start_time":"Schritt Startzeit","Select_Book":"Buch wählen","Recipe_Image":"Rezept Bild","Log_Cooking":"Kochen protokollieren","Proteins":"Proteine","Fats":"Fette","Carbohydrates":"Kohlenhydrate","Calories":"Kalorien","Nutrition":"Nährwerte","Keywords":"Stichwörter","Books":"Bücher","show_only_internal":"Nur interne Rezepte anzeigen","Ingredients":"Zutaten","min":"Min","Servings":"Portionen","Waiting":"Wartezeit","Preparation":"Zubereitung","Edit":"Bearbeiten","Open":"Öffnen","Save":"Speichern","Step":"Schritt","Search":"Suchen","Print":"Drucken","New_Recipe":"Neues Rezept","Url_Import":"URL Import","Reset_Search":"Suche zurücksetzen","or":"oder","and":"und","Recently_Viewed":"Kürzlich angesehen","External":"Extern","Settings":"Einstellungen","Meal_Plan":"Speiseplan","Date":"Datum","Share":"Teilen","Export":"Exportieren","Rating":"Bewertung","Close":"Schließen","Add":"Hinzufügen"}')},"7c15":function(e,t,r){"use strict";r.d(t,"c",(function(){return a})),r.d(t,"d",(function(){return s})),r.d(t,"b",(function(){return c})),r.d(t,"a",(function(){return u}));var n=r("bc3a"),i=r.n(n),o=r("fa7d");function a(e){var t=Object(o["g"])("api:recipe-detail",e);return void 0!==window.SHARE_UID&&(t+="?share="+window.SHARE_UID),i.a.get(t).then((function(e){return e.data})).catch((function(e){d(e,"There was an error loading a resource!","danger")}))}function s(e){return i.a.post(Object(o["g"])("api:cooklog-list"),e).then((function(e){Object(o["f"])("Saved","Cook Log entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function c(e){return i.a.get(Object(o["g"])("api:recipebook-list")+"?query="+e).then((function(e){return e.data})).catch((function(e){}))}function u(e){return i.a.post(Object(o["g"])("api:recipebookentry-list"),e).then((function(e){Object(o["f"])("Saved","Recipe Book entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function d(e,t){if("response"in e){console.log(e.response);var r="statusText"in e.response?e.response.statusText:Object(o["e"])("Error");t+="\n\n"+JSON.stringify(e.response.data),Object(o["f"])(r,t,"danger")}else Object(o["f"])("Error",t,"danger"),console.log(e)}i.a.defaults.xsrfCookieName="csrftoken",i.a.defaults.xsrfHeaderName="X-CSRFTOKEN"},"81d5":function(e,t,r){"use strict";var n=function(){var e=this,t=e.$createElement,r=e._self._c||t;return e.recipe.keywords.length>0?r("div",e._l(e.recipe.keywords,(function(t){return r("span",{key:t.id,staticStyle:{padding:"2px"}},[r("b-badge",{attrs:{pill:"",variant:"light"}},[e._v(e._s(t.label))])],1)})),0):e._e()},i=[],o={name:"Keywords",props:{recipe:Object}},a=o,s=r("2877"),c=Object(s["a"])(a,n,i,!1,null,null,null);t["a"]=c.exports},9225:function(e,t,r){"use strict";r("159b"),r("d3b7"),r("ddb0"),r("ac1f"),r("466d");var n=r("a026"),i=r("a925");function o(){var e=r("49f8"),t={};return e.keys().forEach((function(r){var n=r.match(/([A-Za-z0-9-_]+)\./i);if(n&&n.length>1){var i=n[1];t[i]=e(r)}})),t}n["default"].use(i["a"]),t["a"]=new i["a"]({locale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_LOCALE||"en",fallbackLocale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_FALLBACK_LOCALE||"en",messages:o()})},a625:function(e){e.exports=JSON.parse('{"import_running":"Er wordt geïmporteerd, even geduld!","all_fields_optional":"Alle velden zijn optioneel en kunnen leeg gelaten worden.","convert_internal":"Zet om naar intern recept","Log_Recipe_Cooking":"Log Bereiding","External_Recipe_Image":"Externe Afbeelding Recept","Add_to_Book":"Voeg toe aan Boek","Add_to_Shopping":"Voeg toe aan Boodschappenlijst","Add_to_Plan":"Voeg toe aan Plan","Step_start_time":"Starttijd stap","Select_Book":"Selecteer Boek","Recipe_Image":"Afbeelding Recept","Import_finished":"Importeren gereed","View_Recipes":"Bekijk Recepten","Log_Cooking":"Log Bereiding","Proteins":"Eiwitten","Fats":"Vetten","Carbohydrates":"Koolhydraten","Calories":"Calorieën","Nutrition":"Voedingswaarde","Date":"Datum","Share":"Deel","Export":"Exporteren","Rating":"Beoordeling","Close":"Sluiten","Add":"Voeg toe","Ingredients":"Ingrediënten","min":"min","Servings":"Porties","Waiting":"Wachten","Preparation":"Bereiding","Edit":"Bewerken","Open":"Open","Save":"Opslaan","Step":"Stap","Search":"Zoeken","Import":"Importeer","Print":"Afdrukken","Information":"Informatie","Keywords":"Etiketten","Books":"Boeken","show_only_internal":"Toon alleen interne recepten","New_Recipe":"Nieuw Recept","Url_Import":"Importeer URL","Reset_Search":"Zoeken resetten","or":"of","and":"en","Recently_Viewed":"Recent bekeken","External":"Externe","Settings":"Instellingen","Meal_Plan":"Maaltijdplan","New":"Nieuw","Supermarket":"Supermarkt","Categories":"Categorieën","Category":"Categorie","Selected":"Geselecteerd"}')},d76c:function(e,t,r){"use strict";var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"row"},[r("div",{staticClass:"col",staticStyle:{"text-align":"center"}},[r("img",{staticClass:"spinner-tandoor",staticStyle:{height:"30vh"},attrs:{alt:"loading spinner",src:""}})])])}],o={name:"LoadingSpinner",props:{recipe:Object}},a=o,s=r("2877"),c=Object(s["a"])(a,n,i,!1,null,null,null);t["a"]=c.exports},edd4:function(e){e.exports=JSON.parse('{"err_fetching_resource":"There was an error fetching a resource!","err_creating_resource":"There was an error creating a resource!","err_updating_resource":"There was an error updating a resource!","err_deleting_resource":"There was an error deleting a resource!","success_fetching_resource":"Successfully fetched a resource!","success_creating_resource":"Successfully created a resource!","success_updating_resource":"Successfully updated a resource!","success_deleting_resource":"Successfully deleted a resource!","import_running":"Import running, please wait!","all_fields_optional":"All fields are optional and can be left empty.","convert_internal":"Convert to internal recipe","show_only_internal":"Show only internal recipes","Log_Recipe_Cooking":"Log Recipe Cooking","External_Recipe_Image":"External Recipe Image","Add_to_Book":"Add to Book","Add_to_Shopping":"Add to Shopping","Add_to_Plan":"Add to Plan","Step_start_time":"Step start time","Meal_Plan":"Meal Plan","Select_Book":"Select Book","Recipe_Image":"Recipe Image","Import_finished":"Import finished","View_Recipes":"View Recipes","Log_Cooking":"Log Cooking","New_Recipe":"New Recipe","Url_Import":"Url Import","Reset_Search":"Reset Search","Recently_Viewed":"Recently Viewed","Load_More":"Load More","Keywords":"Keywords","Books":"Books","Proteins":"Proteins","Fats":"Fats","Carbohydrates":"Carbohydrates","Calories":"Calories","Nutrition":"Nutrition","Date":"Date","Share":"Share","Export":"Export","Rating":"Rating","Close":"Close","Add":"Add","New":"New","Success":"Success","Ingredients":"Ingredients","Supermarket":"Supermarket","Categories":"Categories","Category":"Category","Selected":"Selected","min":"min","Servings":"Servings","Waiting":"Waiting","Preparation":"Preparation","External":"External","Size":"Size","Files":"Files","File":"File","Edit":"Edit","Cancel":"Cancel","Delete":"Delete","Open":"Open","Ok":"Open","Save":"Save","Step":"Step","Search":"Search","Import":"Import","Print":"Print","Settings":"Settings","or":"or","and":"and","Information":"Information","Download":"Download"}')},fa7d:function(e,t,r){"use strict";r.d(t,"c",(function(){return o})),r.d(t,"f",(function(){return a})),r.d(t,"a",(function(){return s})),r.d(t,"e",(function(){return c})),r.d(t,"b",(function(){return u})),r.d(t,"g",(function(){return d})),r.d(t,"d",(function(){return h}));r("99af");var n=r("59e4");function i(e,t,r){var n=Math.floor(e),i=1,o=n+1,a=1;if(e!==n)while(i<=t&&a<=t){var s=(n+o)/(i+a);if(e===s){i+a<=t?(i+=a,n+=o,a=t+1):i>a?a=t+1:i=t+1;break}et&&(i=a,n=o),!r)return[0,n,i];var c=Math.floor(n/i);return[c,n-c*i,i]}var o={methods:{makeToast:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return a(e,t,r)}}};function a(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=new n["a"];i.$bvToast.toast(t,{title:e,variant:r,toaster:"b-toaster-top-center",solid:!0})}var s={methods:{_:function(e){return c(e)}}};function c(e){return window.gettext(e)}var u={methods:{resolveDjangoUrl:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return d(e,t)}}};function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return null!==t?window.Urls[e](t):window.Urls[e]()}function p(e){return window.USER_PREF[e]}function h(e,t){if(p("use_fractions")){var r="",n=i(e*t,9,!0);return n[0]>0&&(r+=n[0]),n[1]>0&&(r+=" ".concat(n[1],"").concat(n[2],"")),r}return b(e*t)}function b(e){var t=p("user_fractions")?p("user_fractions"):2;return+(Math.round(e+"e+".concat(t))+"e-".concat(t))}},fc0d:function(e,t,r){"use strict";var n=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("div",{staticClass:"dropdown d-print-none"},[e._m(0),r("div",{staticClass:"dropdown-menu dropdown-menu-right",attrs:{"aria-labelledby":"dropdownMenuLink"}},[r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_recipe",e.recipe.id)}},[r("i",{staticClass:"fas fa-pencil-alt fa-fw"}),e._v(" "+e._s(e.$t("Edit")))]),e.recipe.internal?e._e():r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_convert_recipe",e.recipe.id)}},[r("i",{staticClass:"fas fa-exchange-alt fa-fw"}),e._v(" "+e._s(e.$t("convert_internal")))]),r("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_add_book")}}},[r("i",{staticClass:"fas fa-bookmark fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Book"))+" ")]),e.recipe.internal?r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_shopping")+"?r=["+e.recipe.id+","+e.servings_value+"]",target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-shopping-cart fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Shopping"))+" ")]):e._e(),r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_meal_plan")+"?recipe="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-calendar fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Plan"))+" ")]),r("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_cook_log")}}},[r("i",{staticClass:"fas fa-clipboard-list fa-fw"}),e._v(" "+e._s(e.$t("Log_Cooking"))+" ")]),r("button",{staticClass:"dropdown-item",attrs:{onclick:"window.print()"}},[r("i",{staticClass:"fas fa-print fa-fw"}),e._v(" "+e._s(e.$t("Print"))+" ")]),r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_export")+"?r="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-file-export fa-fw"}),e._v(" "+e._s(e.$t("Export")))]),e.recipe.internal?r("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_share_link",e.recipe.id),target:"_blank",rel:"noopener noreferrer"}},[r("i",{staticClass:"fas fa-share-alt fa-fw"}),e._v(" "+e._s(e.$t("Share")))]):e._e()])]),r("cook-log",{attrs:{recipe:e.recipe}})],1)},i=[function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("a",{staticClass:"btn shadow-none",attrs:{href:"#",role:"button",id:"dropdownMenuLink","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[r("i",{staticClass:"fas fa-ellipsis-v"})])}],o=(r("a9e3"),r("fa7d")),a=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",[r("b-modal",{staticClass:"modal",attrs:{id:"id_modal_cook_log",title:e.$t("Log_Recipe_Cooking"),"ok-title":e.$t("Save"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.logCook()}}},[r("p",[e._v(e._s(e.$t("all_fields_optional")))]),r("form",[r("label",{attrs:{for:"id_log_servings"}},[e._v(e._s(e.$t("Servings")))]),r("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.servings,expression:"logObject.servings"}],staticClass:"form-control",attrs:{type:"number",id:"id_log_servings"},domProps:{value:e.logObject.servings},on:{input:function(t){t.target.composing||e.$set(e.logObject,"servings",t.target.value)}}}),r("label",{staticStyle:{"margin-top":"2vh"}},[e._v(e._s(e.$t("Rating"))+" - "),r("span",{attrs:{id:"id_rating_show"}},[e._v(e._s(e.logObject.rating)+"/5")])]),r("b-form-rating",{model:{value:e.logObject.rating,callback:function(t){e.$set(e.logObject,"rating",t)},expression:"logObject.rating"}}),r("label",{staticStyle:{"margin-top":"2vh"},attrs:{for:"id_date"}},[e._v(e._s(e.$t("Date")))]),r("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.created_at,expression:"logObject.created_at"}],staticClass:"form-control",attrs:{type:"datetime-local",id:"id_date"},domProps:{value:e.logObject.created_at},on:{input:function(t){t.target.composing||e.$set(e.logObject,"created_at",t.target.value)}}})],1)])],1)},s=[],c=r("c1df"),u=r.n(c),d=r("a026"),p=r("5f5b"),h=r("7c15");d["default"].prototype.moment=u.a,d["default"].use(p["a"]);var b={name:"CookLog",props:{recipe:Object},data:function(){return{logObject:{recipe:this.recipe.id,servings:0,rating:0,created_at:u()().format("yyyy-MM-DDTHH:mm")}}},methods:{logCook:function(){Object(h["d"])(this.logObject)}}},l=b,f=r("2877"),j=Object(f["a"])(l,a,s,!1,null,null,null),O=j.exports,v={name:"RecipeContextMenu",mixins:[o["b"]],components:{CookLog:O},data:function(){return{servings_value:0}},props:{recipe:Object,servings:{type:Number,default:-1}},mounted:function(){this.servings_value=-1===this.servings?this.recipe.servings:this.servings}},g=v,m=Object(f["a"])(g,n,i,!1,null,null,null);t["a"]=m.exports}}); \ No newline at end of file diff --git a/cookbook/static/vue/js/recipe_view.js b/cookbook/static/vue/js/recipe_view.js index 64158707..8df00f37 100644 --- a/cookbook/static/vue/js/recipe_view.js +++ b/cookbook/static/vue/js/recipe_view.js @@ -1 +1 @@ -(function(e){function t(t){for(var n,s,o=t[0],c=t[1],l=t[2],p=0,u=[];p0?i("div",{staticClass:"col-md-6 order-md-1 col-sm-12 order-sm-2 col-12 order-2"},[i("div",{staticClass:"card border-primary"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-pepper-hot"}),e._v(" "+e._s(e.$t("Ingredients")))])])]),i("br"),i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-12"},[i("table",{staticClass:"table table-sm"},[e._l(e.recipe.steps,(function(t){return[e._l(t.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":e.updateIngredientCheckedState}})]}))]}))],2)])])])])]):e._e(),i("div",{staticClass:"col-12 order-1 col-sm-12 order-sm-1 col-md-6 order-md-2"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[null!==e.recipe.image?i("img",{staticClass:"img img-fluid rounded",staticStyle:{"max-height":"30vh"},attrs:{src:e.recipe.image,alt:e.$t("Recipe_Image")}}):e._e()])]),i("div",{staticClass:"row",staticStyle:{"margin-top":"2vh","margin-bottom":"2vh"}},[i("div",{staticClass:"col-12"},[i("Nutrition",{attrs:{recipe:e.recipe,ingredient_factor:e.ingredient_factor}})],1)])])]),e.recipe.internal?e._e():[e.recipe.file_path.includes(".pdf")?i("div",[i("PdfViewer",{attrs:{recipe:e.recipe}})],1):e._e(),e.recipe.file_path.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("ImageViewer",{attrs:{recipe:e.recipe}})],1):e._e()],e._l(e.recipe.steps,(function(t,n){return i("div",{key:t.id,staticStyle:{"margin-top":"1vh"}},[i("Step",{attrs:{recipe:e.recipe,step:t,ingredient_factor:e.ingredient_factor,index:n,start_time:e.start_time},on:{"update-start-time":e.updateStartTime,"checked-state-changed":e.updateIngredientCheckedState}})],1)}))],2),i("add-recipe-to-book",{attrs:{recipe:e.recipe}}),""!==e.share_uid?i("div",{staticClass:"row text-center",staticStyle:{"margin-top":"3vh","margin-bottom":"3vh"}},[i("div",{staticClass:"col col-md-12"},[i("a",{attrs:{href:e.resolveDjangoUrl("view_report_share_abuse",e.share_uid)}},[e._v(e._s(e.$t("Report Abuse")))])])]):e._e()],2)},r=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-user-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"far fa-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-pizza-slice fa-2x text-primary"})])}],s=i("b85c"),o=i("5f5b"),c=(i("2dd8"),i("7c15")),l=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("hr"),"TEXT"===e.step.type?[e.recipe.steps.length>1?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h5",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))],0!==e.step.time?i("small",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fas fa-user-clock"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min"))+" ")]):e._e(),""!==e.start_time?i("small",{staticClass:"d-print-none"},[i("b-link",{attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")])],1):e._e()],2)]),i("div",{staticClass:"col col-md-4",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]):e._e(),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[i("div",{staticClass:"row"},[e.step.ingredients.length>0&&e.recipe.steps.length>1?i("div",{staticClass:"col col-md-4"},[i("table",{staticClass:"table table-sm"},[e._l(e.step.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":function(i){return e.$emit("checked-state-changed",t)}}})]}))],2)]):e._e(),i("div",{staticClass:"col",class:{"col-md-8":e.recipe.steps.length>1,"col-md-12":e.recipe.steps.length<=1}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)])])]:e._e(),"TIME"===e.step.type||"FILE"===e.step.type?[i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-8 offset-md-2",staticStyle:{"text-align":"center"}},[i("h4",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))]],2),0!==e.step.time?i("span",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fa fa-stopwatch"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min")))]):e._e(),""!==e.start_time?i("b-link",{staticClass:"d-print-none",attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")]):e._e()],1),i("div",{staticClass:"col-md-2",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[""!==e.step.instruction?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-12",staticStyle:{"text-align":"center"}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)]):e._e()])]:e._e(),i("div",{staticClass:"row",staticStyle:{"text-align":"center"}},[i("div",{staticClass:"col col-md-12"},[null!==e.step.file?[e.step.file.file.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("img",{staticStyle:{"max-width":"50vw","max-height":"50vh"},attrs:{src:e.step.file.file}})]):i("div",[i("a",{attrs:{href:e.step.file.file,target:"_blank",rel:"noreferrer nofollow"}},[e._v(e._s(e.$t("Download"))+" "+e._s(e.$t("File")))])])]:e._e()],2)]),""!==e.start_time?i("div",[i("b-popover",{ref:"id_reactive_popover_"+e.step.id,attrs:{target:"id_reactive_popover_"+e.step.id,triggers:"click",placement:"bottom",title:e.$t("Step start time")}},[i("div",[i("b-form-group",{staticClass:"mb-1",attrs:{label:"Time","label-for":"popover-input-1","label-cols":"3"}},[i("b-form-input",{attrs:{type:"datetime-local",id:"popover-input-1",size:"sm"},model:{value:e.set_time_input,callback:function(t){e.set_time_input=t},expression:"set_time_input"}})],1)],1),i("div",{staticClass:"row",staticStyle:{"margin-top":"1vh"}},[i("div",{staticClass:"col-12",staticStyle:{"text-align":"right"}},[i("b-button",{staticStyle:{"margin-right":"8px"},attrs:{size:"sm",variant:"secondary"},on:{click:e.closePopover}},[e._v("Cancel")]),i("b-button",{attrs:{size:"sm",variant:"primary"},on:{click:e.updateTime}},[e._v("Ok")])],1)])])],1):e._e()],2)},d=[],p=(i("a9e3"),i("fa7d")),u=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("tr",{on:{click:function(t){return e.$emit("checked-state-changed",e.ingredient)}}},[e.ingredient.is_header?[i("td",{attrs:{colspan:"5"}},[i("b",[e._v(e._s(e.ingredient.note))])])]:[i("td",[e.ingredient.checked?i("i",{staticClass:"far fa-check-circle text-success"}):e._e(),e.ingredient.checked?e._e():i("i",{staticClass:"far fa-check-circle text-primary"})]),i("td",[0!==e.ingredient.amount?i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.ingredient.amount))}}):e._e()]),i("td",[null===e.ingredient.unit||e.ingredient.no_amount?e._e():i("span",[e._v(e._s(e.ingredient.unit.name))])]),i("td",[null!==e.ingredient.food?[null!==e.ingredient.food.recipe?i("a",{attrs:{href:e.resolveDjangoUrl("view_recipe",e.ingredient.food.recipe),target:"_blank",rel:"noopener noreferrer"}},[e._v(e._s(e.ingredient.food.name))]):e._e(),null===e.ingredient.food.recipe?i("span",[e._v(e._s(e.ingredient.food.name))]):e._e()]:e._e()],2),i("td",[e.ingredient.note?i("div",[i("span",{directives:[{name:"b-popover",rawName:"v-b-popover.hover",value:e.ingredient.note,expression:"ingredient.note",modifiers:{hover:!0}}],staticClass:"d-print-none"},[i("i",{staticClass:"far fa-comment"})]),i("div",{staticClass:"d-none d-print-block"},[i("i",{staticClass:"far fa-comment-alt"}),e._v(" "+e._s(e.ingredient.note)+" ")])]):e._e()])]],2)},f=[],_={name:"Ingredient",props:{ingredient:Object,ingredient_factor:{type:Number,default:1}},mixins:[p["b"]],data:function(){return{checked:!1}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},m=_,g=i("2877"),v=Object(g["a"])(m,u,f,!1,null,null,null),b=v.exports,h=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i(e.compiled,{tag:"component",attrs:{ingredient_factor:e.ingredient_factor,code:e.code}})],1)},j=[],k=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.number))}})},C=[],w={name:"ScalableNumber",props:{number:Number,factor:{type:Number,default:4}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.factor)}}},y=w,S=Object(g["a"])(y,k,C,!1,null,null,null),x=S.exports,O={name:"CompileComponent",props:["code","ingredient_factor"],data:function(){return{compiled:null}},mounted:function(){this.compiled=n["default"].component("compiled-component",{props:["ingredient_factor","code"],components:{ScalableNumber:x},template:"
".concat(this.code,"
")})}},E=O,R=Object(g["a"])(E,h,j,!1,null,null,null),$=R.exports,I=i("c1df"),P=i.n(I);n["default"].prototype.moment=P.a;var A={name:"Step",mixins:[p["a"]],components:{Ingredient:b,CompileComponent:$},props:{step:Object,ingredient_factor:Number,index:Number,recipe:Object,start_time:String},data:function(){return{details_visible:!0,set_time_input:""}},mounted:function(){this.set_time_input=P()(this.start_time).add(this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm")},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)},updateTime:function(){var e=P()(this.set_time_input).add(-1*this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm");this.$emit("update-start-time",e),this.closePopover()},closePopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("close")},openPopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("open")}}},N=A,L=Object(g["a"])(N,l,d,!1,null,null,null),z=L.exports,B=i("fc0d"),D=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("iframe",{staticStyle:{border:"none"},attrs:{src:e.pdfUrl,width:"100%",height:"700px"}})])},T=[],M={name:"PdfViewer",mixins:[p["b"]],props:{recipe:Object},computed:{pdfUrl:function(){return"/static/pdfjs/viewer.html?file="+Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},U=M,V=Object(g["a"])(U,D,T,!1,null,null,null),H=V.exports,F=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{"text-align":"center"}},[i("b-img",{attrs:{src:e.pdfUrl,alt:e.$t("External_Recipe_Image")}})],1)},K=[],Z={name:"ImageViewer",props:{recipe:Object},computed:{pdfUrl:function(){return Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},W=Z,J=Object(g["a"])(W,F,K,!1,null,null,null),q=J.exports,G=function(){var e=this,t=e.$createElement,i=e._self._c||t;return null!==e.recipe.nutrition?i("div",[i("div",{staticClass:"card border-success"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-carrot"}),e._v(" "+e._s(e.$t("Nutrition")))])])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-fire fa-fw text-primary"}),e._v(" "+e._s(e.$t("Calories"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.calories))}}),e._v(" kcal ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-bread-slice fa-fw text-primary"}),e._v(" "+e._s(e.$t("Carbohydrates"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.carbohydrates))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-cheese fa-fw text-primary"}),e._v(" "+e._s(e.$t("Fats"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.fats))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-drumstick-bite fa-fw text-primary"}),e._v(" "+e._s(e.$t("Proteins"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.proteins))}}),e._v(" g ")])])])])]):e._e()},X=[],Q={name:"Nutrition",props:{recipe:Object,ingredient_factor:Number},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},Y=Q,ee=Object(g["a"])(Y,G,X,!1,null,null,null),te=ee.exports,ie=i("81d5"),ne=i("d76c"),ae=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_add_book",title:e.$t("Add_to_Book"),"ok-title":e.$t("Add"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.addToBook()}}},[i("multiselect",{attrs:{options:e.books,"preserve-search":!0,placeholder:e.$t("Select_Book"),label:"name","track-by":"id",id:"id_books",multiple:!1},on:{"search-change":e.loadBook},model:{value:e.selected_book,callback:function(t){e.selected_book=t},expression:"selected_book"}})],1)],1)},re=[],se=i("8e5f"),oe=i.n(se);n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ce={name:"AddRecipeToBook",components:{Multiselect:oe.a},props:{recipe:Object},data:function(){return{books:[],selected_book:null}},mounted:function(){this.loadBook("")},methods:{loadBook:function(e){var t=this;Object(c["b"])(e).then((function(e){t.books=e}))},addToBook:function(){Object(c["a"])({recipe:this.recipe.id,book:this.selected_book.id})}}},le=ce,de=(i("60bc"),Object(g["a"])(le,ae,re,!1,null,null,null)),pe=de.exports;n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ue={name:"RecipeView",mixins:[p["b"],p["c"]],components:{PdfViewer:H,ImageViewer:q,Ingredient:b,Step:z,RecipeContextMenu:B["a"],Nutrition:te,Keywords:ie["a"],LoadingSpinner:ne["a"],AddRecipeToBook:pe},computed:{ingredient_factor:function(){return this.servings/this.recipe.servings}},data:function(){return{loading:!0,recipe:void 0,ingredient_count:0,servings:1,start_time:"",share_uid:window.SHARE_UID}},mounted:function(){this.loadRecipe(window.RECIPE_ID),this.$i18n.locale=window.CUSTOM_LOCALE},methods:{loadRecipe:function(e){var t=this;Object(c["c"])(e).then((function(e){0!==window.USER_SERVINGS&&(e.servings=window.USER_SERVINGS),t.servings=e.servings;var i,n=0,a=Object(s["a"])(e.steps);try{for(a.s();!(i=a.n()).done;){var r=i.value;t.ingredient_count+=r.ingredients.length;var o,c=Object(s["a"])(r.ingredients);try{for(c.s();!(o=c.n()).done;){var l=o.value;t.$set(l,"checked",!1)}}catch(d){c.e(d)}finally{c.f()}r.time_offset=n,n+=r.time}}catch(d){a.e(d)}finally{a.f()}n>0&&(t.start_time=P()().format("yyyy-MM-DDTHH:mm")),t.recipe=e,t.loading=!1}))},updateStartTime:function(e){this.start_time=e},updateIngredientCheckedState:function(e){var t,i=Object(s["a"])(this.recipe.steps);try{for(i.s();!(t=i.n()).done;){var n,a=t.value,r=Object(s["a"])(a.ingredients);try{for(r.s();!(n=r.n()).done;){var o=n.value;o.id===e.id&&this.$set(o,"checked",!o.checked)}}catch(c){r.e(c)}finally{r.f()}}}catch(c){i.e(c)}finally{i.f()}}}},fe=ue,_e=Object(g["a"])(fe,a,r,!1,null,null,null),me=_e.exports,ge=i("9225");n["default"].config.productionTip=!1,new n["default"]({i18n:ge["a"],render:function(e){return e(me)}}).$mount("#app")},1:function(e,t,i){e.exports=i("0671")},4678:function(e,t,i){var n={"./af":"2bfb","./af.js":"2bfb","./ar":"8e73","./ar-dz":"a356","./ar-dz.js":"a356","./ar-kw":"423e","./ar-kw.js":"423e","./ar-ly":"1cfd","./ar-ly.js":"1cfd","./ar-ma":"0a84","./ar-ma.js":"0a84","./ar-sa":"8230","./ar-sa.js":"8230","./ar-tn":"6d83","./ar-tn.js":"6d83","./ar.js":"8e73","./az":"485c","./az.js":"485c","./be":"1fc1","./be.js":"1fc1","./bg":"84aa","./bg.js":"84aa","./bm":"a7fa","./bm.js":"a7fa","./bn":"9043","./bn-bd":"9686","./bn-bd.js":"9686","./bn.js":"9043","./bo":"d26a","./bo.js":"d26a","./br":"6887","./br.js":"6887","./bs":"2554","./bs.js":"2554","./ca":"d716","./ca.js":"d716","./cs":"3c0d","./cs.js":"3c0d","./cv":"03ec","./cv.js":"03ec","./cy":"9797","./cy.js":"9797","./da":"0f14","./da.js":"0f14","./de":"b469","./de-at":"b3eb","./de-at.js":"b3eb","./de-ch":"bb71","./de-ch.js":"bb71","./de.js":"b469","./dv":"598a","./dv.js":"598a","./el":"8d47","./el.js":"8d47","./en-au":"0e6b","./en-au.js":"0e6b","./en-ca":"3886","./en-ca.js":"3886","./en-gb":"39a6","./en-gb.js":"39a6","./en-ie":"e1d3","./en-ie.js":"e1d3","./en-il":"7333","./en-il.js":"7333","./en-in":"ec2e","./en-in.js":"ec2e","./en-nz":"6f50","./en-nz.js":"6f50","./en-sg":"b7e9","./en-sg.js":"b7e9","./eo":"65db","./eo.js":"65db","./es":"898b","./es-do":"0a3c","./es-do.js":"0a3c","./es-mx":"b5b7","./es-mx.js":"b5b7","./es-us":"55c9","./es-us.js":"55c9","./es.js":"898b","./et":"ec18","./et.js":"ec18","./eu":"0ff2","./eu.js":"0ff2","./fa":"8df4","./fa.js":"8df4","./fi":"81e9","./fi.js":"81e9","./fil":"d69a","./fil.js":"d69a","./fo":"0721","./fo.js":"0721","./fr":"9f26","./fr-ca":"d9f8","./fr-ca.js":"d9f8","./fr-ch":"0e49","./fr-ch.js":"0e49","./fr.js":"9f26","./fy":"7118","./fy.js":"7118","./ga":"5120","./ga.js":"5120","./gd":"f6b4","./gd.js":"f6b4","./gl":"8840","./gl.js":"8840","./gom-deva":"aaf2","./gom-deva.js":"aaf2","./gom-latn":"0caa","./gom-latn.js":"0caa","./gu":"e0c5","./gu.js":"e0c5","./he":"c7aa","./he.js":"c7aa","./hi":"dc4d","./hi.js":"dc4d","./hr":"4ba9","./hr.js":"4ba9","./hu":"5b14","./hu.js":"5b14","./hy-am":"d6b6","./hy-am.js":"d6b6","./id":"5038","./id.js":"5038","./is":"0558","./is.js":"0558","./it":"6e98","./it-ch":"6f12","./it-ch.js":"6f12","./it.js":"6e98","./ja":"079e","./ja.js":"079e","./jv":"b540","./jv.js":"b540","./ka":"201b","./ka.js":"201b","./kk":"6d79","./kk.js":"6d79","./km":"e81d","./km.js":"e81d","./kn":"3e92","./kn.js":"3e92","./ko":"22f8","./ko.js":"22f8","./ku":"2421","./ku.js":"2421","./ky":"9609","./ky.js":"9609","./lb":"440c","./lb.js":"440c","./lo":"b29d","./lo.js":"b29d","./lt":"26f9","./lt.js":"26f9","./lv":"b97c","./lv.js":"b97c","./me":"293c","./me.js":"293c","./mi":"688b","./mi.js":"688b","./mk":"6909","./mk.js":"6909","./ml":"02fb","./ml.js":"02fb","./mn":"958b","./mn.js":"958b","./mr":"39bd","./mr.js":"39bd","./ms":"ebe4","./ms-my":"6403","./ms-my.js":"6403","./ms.js":"ebe4","./mt":"1b45","./mt.js":"1b45","./my":"8689","./my.js":"8689","./nb":"6ce3","./nb.js":"6ce3","./ne":"3a39","./ne.js":"3a39","./nl":"facd","./nl-be":"db29","./nl-be.js":"db29","./nl.js":"facd","./nn":"b84c","./nn.js":"b84c","./oc-lnc":"167b","./oc-lnc.js":"167b","./pa-in":"f3ff","./pa-in.js":"f3ff","./pl":"8d57","./pl.js":"8d57","./pt":"f260","./pt-br":"d2d4","./pt-br.js":"d2d4","./pt.js":"f260","./ro":"972c","./ro.js":"972c","./ru":"957c","./ru.js":"957c","./sd":"6784","./sd.js":"6784","./se":"ffff","./se.js":"ffff","./si":"eda5","./si.js":"eda5","./sk":"7be6","./sk.js":"7be6","./sl":"8155","./sl.js":"8155","./sq":"c8f3","./sq.js":"c8f3","./sr":"cf1e","./sr-cyrl":"13e9","./sr-cyrl.js":"13e9","./sr.js":"cf1e","./ss":"52bd","./ss.js":"52bd","./sv":"5fbd","./sv.js":"5fbd","./sw":"74dc","./sw.js":"74dc","./ta":"3de5","./ta.js":"3de5","./te":"5cbb","./te.js":"5cbb","./tet":"576c","./tet.js":"576c","./tg":"3b1b","./tg.js":"3b1b","./th":"10e8","./th.js":"10e8","./tk":"5aff","./tk.js":"5aff","./tl-ph":"0f38","./tl-ph.js":"0f38","./tlh":"cf755","./tlh.js":"cf755","./tr":"0e81","./tr.js":"0e81","./tzl":"cf51","./tzl.js":"cf51","./tzm":"c109","./tzm-latn":"b53d","./tzm-latn.js":"b53d","./tzm.js":"c109","./ug-cn":"6117","./ug-cn.js":"6117","./uk":"ada2","./uk.js":"ada2","./ur":"5294","./ur.js":"5294","./uz":"2e8c","./uz-latn":"010e","./uz-latn.js":"010e","./uz.js":"2e8c","./vi":"2921","./vi.js":"2921","./x-pseudo":"fd7e","./x-pseudo.js":"fd7e","./yo":"7f33","./yo.js":"7f33","./zh-cn":"5c3a","./zh-cn.js":"5c3a","./zh-hk":"49ab","./zh-hk.js":"49ab","./zh-mo":"3a6c","./zh-mo.js":"3a6c","./zh-tw":"90ea","./zh-tw.js":"90ea"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="4678"},"49f8":function(e,t,i){var n={"./de.json":"6ce2","./en.json":"edd4","./nl.json":"a625","./sv.json":"4c5b"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="49f8"},"4c5b":function(e){e.exports=JSON.parse('{"import_running":"Import pågår, var god vänta!","all_fields_optional":"Alla rutor är valfria och kan lämnas tomma.","convert_internal":"Konvertera till internt recept","Log_Recipe_Cooking":"Logga tillagningen av receptet","External_Recipe_Image":"Externt receptbild","Add_to_Book":"Lägg till i kokbok","Add_to_Shopping":"Lägg till i handelslista","Add_to_Plan":"Lägg till i matsedel","Step_start_time":"Steg starttid","Select_Book":"Välj kokbok","Recipe_Image":"Receptbild","Import_finished":"Importering klar","View_Recipes":"Visa recept","Log_Cooking":"Logga tillagning","Proteins":"Protein","Fats":"Fett","Carbohydrates":"Kolhydrater","Calories":"Kalorier","Nutrition":"Näringsinnehåll","Date":"Datum","Share":"Dela","Export":"Exportera","Rating":"Betyg","Close":"Stäng","Add":"Lägg till","Ingredients":"Ingredienser","min":"min","Servings":"Portioner","Waiting":"Väntan","Preparation":"Förberedelse","Edit":"Redigera","Open":"Öppna","Save":"Spara","Step":"Steg","Search":"Sök","Import":"Importera","Print":"Skriv ut","Information":"Information"}')},"6ce2":function(e){e.exports=JSON.parse('{"Import":"Import","import_running":"Import läuft, bitte warten!","Import_finished":"Import fertig","View_Recipes":"Rezepte Ansehen","Information":"Information","all_fields_optional":"Alle Felder sind optional und können leer gelassen werden.","convert_internal":"Zu internem Rezept wandeln","Log_Recipe_Cooking":"Kochen protokollieren","External_Recipe_Image":"Externes Rezept Bild","Add_to_Book":"Zu Buch hinzufügen","Add_to_Shopping":"Zu Einkaufsliste hinzufügen","Add_to_Plan":"Zu Plan hinzufügen","Step_start_time":"Schritt Startzeit","Select_Book":"Buch wählen","Recipe_Image":"Rezept Bild","Log_Cooking":"Kochen protokollieren","Proteins":"Proteine","Fats":"Fette","Carbohydrates":"Kohlenhydrate","Calories":"Kalorien","Nutrition":"Nährwerte","Keywords":"Stichwörter","Books":"Bücher","show_only_internal":"Nur interne Rezepte anzeigen","Ingredients":"Zutaten","min":"Min","Servings":"Portionen","Waiting":"Wartezeit","Preparation":"Zubereitung","Edit":"Bearbeiten","Open":"Öffnen","Save":"Speichern","Step":"Schritt","Search":"Suchen","Print":"Drucken","New_Recipe":"Neues Rezept","Url_Import":"URL Import","Reset_Search":"Suche zurücksetzen","or":"oder","and":"und","Recently_Viewed":"Kürzlich angesehen","External":"Extern","Settings":"Einstellungen","Meal_Plan":"Speiseplan","Date":"Datum","Share":"Teilen","Export":"Exportieren","Rating":"Bewertung","Close":"Schließen","Add":"Hinzufügen"}')},"7c15":function(e,t,i){"use strict";i.d(t,"c",(function(){return s})),i.d(t,"d",(function(){return o})),i.d(t,"b",(function(){return c})),i.d(t,"a",(function(){return l}));var n=i("bc3a"),a=i.n(n),r=i("fa7d");function s(e){var t=Object(r["g"])("api:recipe-detail",e);return void 0!==window.SHARE_UID&&(t+="?share="+window.SHARE_UID),a.a.get(t).then((function(e){return e.data})).catch((function(e){d(e,"There was an error loading a resource!","danger")}))}function o(e){return a.a.post(Object(r["g"])("api:cooklog-list"),e).then((function(e){Object(r["f"])("Saved","Cook Log entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function c(e){return a.a.get(Object(r["g"])("api:recipebook-list")+"?query="+e).then((function(e){return e.data})).catch((function(e){}))}function l(e){return a.a.post(Object(r["g"])("api:recipebookentry-list"),e).then((function(e){Object(r["f"])("Saved","Recipe Book entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function d(e,t){if("response"in e){console.log(e.response);var i="statusText"in e.response?e.response.statusText:Object(r["e"])("Error");t+="\n\n"+JSON.stringify(e.response.data),Object(r["f"])(i,t,"danger")}else Object(r["f"])("Error",t,"danger"),console.log(e)}a.a.defaults.xsrfCookieName="csrftoken",a.a.defaults.xsrfHeaderName="X-CSRFTOKEN"},"81d5":function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.recipe.keywords.length>0?i("div",e._l(e.recipe.keywords,(function(t){return i("span",{key:t.id,staticStyle:{padding:"2px"}},[i("b-badge",{attrs:{pill:"",variant:"light"}},[e._v(e._s(t.label))])],1)})),0):e._e()},a=[],r={name:"Keywords",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},9225:function(e,t,i){"use strict";i("159b"),i("d3b7"),i("ddb0"),i("ac1f"),i("466d");var n=i("a026"),a=i("a925");function r(){var e=i("49f8"),t={};return e.keys().forEach((function(i){var n=i.match(/([A-Za-z0-9-_]+)\./i);if(n&&n.length>1){var a=n[1];t[a]=e(i)}})),t}n["default"].use(a["a"]),t["a"]=new a["a"]({locale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_LOCALE||"en",fallbackLocale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_FALLBACK_LOCALE||"en",messages:r()})},a625:function(e){e.exports=JSON.parse('{"import_running":"Er wordt geïmporteerd, even geduld!","all_fields_optional":"Alle velden zijn optioneel en kunnen leeg gelaten worden.","convert_internal":"Zet om naar intern recept","Log_Recipe_Cooking":"Log Bereiding","External_Recipe_Image":"Externe Afbeelding Recept","Add_to_Book":"Voeg toe aan Boek","Add_to_Shopping":"Voeg toe aan Boodschappenlijst","Add_to_Plan":"Voeg toe aan Plan","Step_start_time":"Starttijd stap","Select_Book":"Selecteer Boek","Recipe_Image":"Afbeelding Recept","Import_finished":"Importeren gereed","View_Recipes":"Bekijk Recepten","Log_Cooking":"Log Bereiding","Proteins":"Eiwitten","Fats":"Vetten","Carbohydrates":"Koolhydraten","Calories":"Calorieën","Nutrition":"Voedingswaarde","Date":"Datum","Share":"Deel","Export":"Exporteren","Rating":"Beoordeling","Close":"Sluiten","Add":"Voeg toe","Ingredients":"Ingrediënten","min":"min","Servings":"Porties","Waiting":"Wachten","Preparation":"Bereiding","Edit":"Bewerken","Open":"Open","Save":"Opslaan","Step":"Stap","Search":"Zoeken","Import":"Importeer","Print":"Afdrukken","Information":"Informatie","Keywords":"Etiketten","Books":"Boeken","show_only_internal":"Toon alleen interne recepten","New_Recipe":"Nieuw Recept","Url_Import":"Importeer URL","Reset_Search":"Zoeken resetten","or":"of","and":"en","Recently_Viewed":"Recent bekeken","External":"Externe","Settings":"Instellingen","Meal_Plan":"Maaltijdplan","New":"Nieuw","Supermarket":"Supermarkt","Categories":"Categorieën","Category":"Categorie","Selected":"Geselecteerd"}')},d76c:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"row"},[i("div",{staticClass:"col",staticStyle:{"text-align":"center"}},[i("img",{staticClass:"spinner-tandoor",staticStyle:{height:"30vh"},attrs:{alt:"loading spinner",src:""}})])])}],r={name:"LoadingSpinner",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},edd4:function(e){e.exports=JSON.parse('{"err_fetching_resource":"There was an error fetching a resource!","err_creating_resource":"There was an error creating a resource!","err_updating_resource":"There was an error updating a resource!","err_deleting_resource":"There was an error deleting a resource!","success_fetching_resource":"Successfully fetched a resource!","success_creating_resource":"Successfully created a resource!","success_updating_resource":"Successfully updated a resource!","success_deleting_resource":"Successfully deleted a resource!","import_running":"Import running, please wait!","all_fields_optional":"All fields are optional and can be left empty.","convert_internal":"Convert to internal recipe","show_only_internal":"Show only internal recipes","Log_Recipe_Cooking":"Log Recipe Cooking","External_Recipe_Image":"External Recipe Image","Add_to_Book":"Add to Book","Add_to_Shopping":"Add to Shopping","Add_to_Plan":"Add to Plan","Step_start_time":"Step start time","Meal_Plan":"Meal Plan","Select_Book":"Select Book","Recipe_Image":"Recipe Image","Import_finished":"Import finished","View_Recipes":"View Recipes","Log_Cooking":"Log Cooking","New_Recipe":"New Recipe","Url_Import":"Url Import","Reset_Search":"Reset Search","Recently_Viewed":"Recently Viewed","Load_More":"Load More","Keywords":"Keywords","Books":"Books","Proteins":"Proteins","Fats":"Fats","Carbohydrates":"Carbohydrates","Calories":"Calories","Nutrition":"Nutrition","Date":"Date","Share":"Share","Export":"Export","Rating":"Rating","Close":"Close","Add":"Add","New":"New","Success":"Success","Ingredients":"Ingredients","Supermarket":"Supermarket","Categories":"Categories","Category":"Category","Selected":"Selected","min":"min","Servings":"Servings","Waiting":"Waiting","Preparation":"Preparation","External":"External","Size":"Size","Files":"Files","File":"File","Edit":"Edit","Cancel":"Cancel","Delete":"Delete","Open":"Open","Ok":"Open","Save":"Save","Step":"Step","Search":"Search","Import":"Import","Print":"Print","Settings":"Settings","or":"or","and":"and","Information":"Information","Download":"Download"}')},fa7d:function(e,t,i){"use strict";i.d(t,"c",(function(){return r})),i.d(t,"f",(function(){return s})),i.d(t,"a",(function(){return o})),i.d(t,"e",(function(){return c})),i.d(t,"b",(function(){return l})),i.d(t,"g",(function(){return d})),i.d(t,"d",(function(){return u}));i("99af");var n=i("59e4");function a(e,t,i){var n=Math.floor(e),a=1,r=n+1,s=1;if(e!==n)while(a<=t&&s<=t){var o=(n+r)/(a+s);if(e===o){a+s<=t?(a+=s,n+=r,s=t+1):a>s?s=t+1:a=t+1;break}et&&(a=s,n=r),!i)return[0,n,a];var c=Math.floor(n/a);return[c,n-c*a,a]}var r={methods:{makeToast:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return s(e,t,i)}}};function s(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=new n["a"];a.$bvToast.toast(t,{title:e,variant:i,toaster:"b-toaster-top-center",solid:!0})}var o={methods:{_:function(e){return c(e)}}};function c(e){return window.gettext(e)}var l={methods:{resolveDjangoUrl:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return d(e,t)}}};function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return null!==t?window.Urls[e](t):window.Urls[e]()}function p(e){return window.USER_PREF[e]}function u(e,t){if(p("use_fractions")){var i="",n=a(e*t,9,!0);return n[0]>0&&(i+=n[0]),n[1]>0&&(i+=" ".concat(n[1],"").concat(n[2],"")),i}return f(e*t)}function f(e){var t=p("user_fractions")?p("user_fractions"):2;return+(Math.round(e+"e+".concat(t))+"e-".concat(t))}},fc0d:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"dropdown"},[e._m(0),i("div",{staticClass:"dropdown-menu dropdown-menu-right",attrs:{"aria-labelledby":"dropdownMenuLink"}},[i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-pencil-alt fa-fw"}),e._v(" "+e._s(e.$t("Edit")))]),e.recipe.internal?e._e():i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_convert_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-exchange-alt fa-fw"}),e._v(" "+e._s(e.$t("convert_internal")))]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_add_book")}}},[i("i",{staticClass:"fas fa-bookmark fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Book"))+" ")]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_shopping")+"?r=["+e.recipe.id+","+e.servings_value+"]",target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-shopping-cart fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Shopping"))+" ")]):e._e(),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_meal_plan")+"?recipe="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-calendar fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Plan"))+" ")]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_cook_log")}}},[i("i",{staticClass:"fas fa-clipboard-list fa-fw"}),e._v(" "+e._s(e.$t("Log_Cooking"))+" ")]),i("button",{staticClass:"dropdown-item",attrs:{onclick:"window.print()"}},[i("i",{staticClass:"fas fa-print fa-fw"}),e._v(" "+e._s(e.$t("Print"))+" ")]),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_export")+"?r="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-file-export fa-fw"}),e._v(" "+e._s(e.$t("Export")))]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_share_link",e.recipe.id),target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-share-alt fa-fw"}),e._v(" "+e._s(e.$t("Share")))]):e._e()])]),i("cook-log",{attrs:{recipe:e.recipe}})],1)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("a",{staticClass:"btn shadow-none",attrs:{href:"#",role:"button",id:"dropdownMenuLink","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[i("i",{staticClass:"fas fa-ellipsis-v"})])}],r=(i("a9e3"),i("fa7d")),s=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_cook_log",title:e.$t("Log_Recipe_Cooking"),"ok-title":e.$t("Save"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.logCook()}}},[i("p",[e._v(e._s(e.$t("all_fields_optional")))]),i("form",[i("label",{attrs:{for:"id_log_servings"}},[e._v(e._s(e.$t("Servings")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.servings,expression:"logObject.servings"}],staticClass:"form-control",attrs:{type:"number",id:"id_log_servings"},domProps:{value:e.logObject.servings},on:{input:function(t){t.target.composing||e.$set(e.logObject,"servings",t.target.value)}}}),i("label",{staticStyle:{"margin-top":"2vh"}},[e._v(e._s(e.$t("Rating"))+" - "),i("span",{attrs:{id:"id_rating_show"}},[e._v(e._s(e.logObject.rating)+"/5")])]),i("b-form-rating",{model:{value:e.logObject.rating,callback:function(t){e.$set(e.logObject,"rating",t)},expression:"logObject.rating"}}),i("label",{staticStyle:{"margin-top":"2vh"},attrs:{for:"id_date"}},[e._v(e._s(e.$t("Date")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.created_at,expression:"logObject.created_at"}],staticClass:"form-control",attrs:{type:"datetime-local",id:"id_date"},domProps:{value:e.logObject.created_at},on:{input:function(t){t.target.composing||e.$set(e.logObject,"created_at",t.target.value)}}})],1)])],1)},o=[],c=i("c1df"),l=i.n(c),d=i("a026"),p=i("5f5b"),u=i("7c15");d["default"].prototype.moment=l.a,d["default"].use(p["a"]);var f={name:"CookLog",props:{recipe:Object},data:function(){return{logObject:{recipe:this.recipe.id,servings:0,rating:0,created_at:l()().format("yyyy-MM-DDTHH:mm")}}},methods:{logCook:function(){Object(u["d"])(this.logObject)}}},_=f,m=i("2877"),g=Object(m["a"])(_,s,o,!1,null,null,null),v=g.exports,b={name:"RecipeContextMenu",mixins:[r["b"]],components:{CookLog:v},data:function(){return{servings_value:0}},props:{recipe:Object,servings:{type:Number,default:-1}},mounted:function(){this.servings_value=-1===this.servings?this.recipe.servings:this.servings}},h=b,j=Object(m["a"])(h,n,a,!1,null,null,null);t["a"]=j.exports}}); \ No newline at end of file +(function(e){function t(t){for(var n,s,o=t[0],c=t[1],l=t[2],p=0,u=[];p0?i("div",{staticClass:"col-md-6 order-md-1 col-sm-12 order-sm-2 col-12 order-2"},[i("div",{staticClass:"card border-primary"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-pepper-hot"}),e._v(" "+e._s(e.$t("Ingredients")))])])]),i("br"),i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-12"},[i("table",{staticClass:"table table-sm"},[e._l(e.recipe.steps,(function(t){return[e._l(t.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":e.updateIngredientCheckedState}})]}))]}))],2)])])])])]):e._e(),i("div",{staticClass:"col-12 order-1 col-sm-12 order-sm-1 col-md-6 order-md-2"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[null!==e.recipe.image?i("img",{staticClass:"img img-fluid rounded",staticStyle:{"max-height":"30vh"},attrs:{src:e.recipe.image,alt:e.$t("Recipe_Image")}}):e._e()])]),i("div",{staticClass:"row",staticStyle:{"margin-top":"2vh","margin-bottom":"2vh"}},[i("div",{staticClass:"col-12"},[i("Nutrition",{attrs:{recipe:e.recipe,ingredient_factor:e.ingredient_factor}})],1)])])]),e.recipe.internal?e._e():[e.recipe.file_path.includes(".pdf")?i("div",[i("PdfViewer",{attrs:{recipe:e.recipe}})],1):e._e(),e.recipe.file_path.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("ImageViewer",{attrs:{recipe:e.recipe}})],1):e._e()],e._l(e.recipe.steps,(function(t,n){return i("div",{key:t.id,staticStyle:{"margin-top":"1vh"}},[i("Step",{attrs:{recipe:e.recipe,step:t,ingredient_factor:e.ingredient_factor,index:n,start_time:e.start_time},on:{"update-start-time":e.updateStartTime,"checked-state-changed":e.updateIngredientCheckedState}})],1)}))],2),i("add-recipe-to-book",{attrs:{recipe:e.recipe}}),""!==e.share_uid?i("div",{staticClass:"row text-center d-print-none",staticStyle:{"margin-top":"3vh","margin-bottom":"3vh"}},[i("div",{staticClass:"col col-md-12"},[i("a",{attrs:{href:e.resolveDjangoUrl("view_report_share_abuse",e.share_uid)}},[e._v(e._s(e.$t("Report Abuse")))])])]):e._e()],2)},r=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-user-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"far fa-clock fa-2x text-primary"})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"my-auto",staticStyle:{"padding-right":"4px"}},[i("i",{staticClass:"fas fa-pizza-slice fa-2x text-primary"})])}],s=i("b85c"),o=i("5f5b"),c=(i("2dd8"),i("7c15")),l=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("hr"),"TEXT"===e.step.type?[e.recipe.steps.length>1?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-8"},[i("h5",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))],0!==e.step.time?i("small",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fas fa-user-clock"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min"))+" ")]):e._e(),""!==e.start_time?i("small",{staticClass:"d-print-none"},[i("b-link",{attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")])],1):e._e()],2)]),i("div",{staticClass:"col col-md-4",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none d-print-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]):e._e(),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[i("div",{staticClass:"row"},[e.step.ingredients.length>0&&e.recipe.steps.length>1?i("div",{staticClass:"col col-md-4"},[i("table",{staticClass:"table table-sm"},[e._l(e.step.ingredients,(function(t){return[i("Ingredient",{key:t.id,attrs:{ingredient:t,ingredient_factor:e.ingredient_factor},on:{"checked-state-changed":function(i){return e.$emit("checked-state-changed",t)}}})]}))],2)]):e._e(),i("div",{staticClass:"col",class:{"col-md-8":e.recipe.steps.length>1,"col-md-12":e.recipe.steps.length<=1}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)])])]:e._e(),"TIME"===e.step.type||"FILE"===e.step.type?[i("div",{staticClass:"row"},[i("div",{staticClass:"col-md-8 offset-md-2",staticStyle:{"text-align":"center"}},[i("h4",{staticClass:"text-primary"},[e.step.name?[e._v(e._s(e.step.name))]:[e._v(e._s(e.$t("Step"))+" "+e._s(e.index+1))]],2),0!==e.step.time?i("span",{staticClass:"text-muted",staticStyle:{"margin-left":"4px"}},[i("i",{staticClass:"fa fa-stopwatch"}),e._v(" "+e._s(e.step.time)+" "+e._s(e.$t("min")))]):e._e(),""!==e.start_time?i("b-link",{staticClass:"d-print-none",attrs:{id:"id_reactive_popover_"+e.step.id,href:"#"},on:{click:e.openPopover}},[e._v(" "+e._s(e.moment(e.start_time).add(e.step.time_offset,"minutes").format("HH:mm"))+" ")]):e._e()],1),i("div",{staticClass:"col-md-2",staticStyle:{"text-align":"right"}},[i("b-button",{staticClass:"shadow-none d-print-none",class:{"text-primary":e.details_visible,"text-success":!e.details_visible},staticStyle:{border:"none",background:"none"},on:{click:function(t){e.details_visible=!e.details_visible}}},[i("i",{staticClass:"far fa-check-circle"})])],1)]),i("b-collapse",{attrs:{id:"collapse-1"},model:{value:e.details_visible,callback:function(t){e.details_visible=t},expression:"details_visible"}},[""!==e.step.instruction?i("div",{staticClass:"row"},[i("div",{staticClass:"col col-md-12",staticStyle:{"text-align":"center"}},[i("compile-component",{attrs:{code:e.step.ingredients_markdown,ingredient_factor:e.ingredient_factor}})],1)]):e._e()])]:e._e(),i("div",{staticClass:"row",staticStyle:{"text-align":"center"}},[i("div",{staticClass:"col col-md-12"},[null!==e.step.file?[e.step.file.file.includes(".png")||e.recipe.file_path.includes(".jpg")||e.recipe.file_path.includes(".jpeg")||e.recipe.file_path.includes(".gif")?i("div",[i("img",{staticStyle:{"max-width":"50vw","max-height":"50vh"},attrs:{src:e.step.file.file}})]):i("div",[i("a",{attrs:{href:e.step.file.file,target:"_blank",rel:"noreferrer nofollow"}},[e._v(e._s(e.$t("Download"))+" "+e._s(e.$t("File")))])])]:e._e()],2)]),""!==e.start_time?i("div",[i("b-popover",{ref:"id_reactive_popover_"+e.step.id,attrs:{target:"id_reactive_popover_"+e.step.id,triggers:"click",placement:"bottom",title:e.$t("Step start time")}},[i("div",[i("b-form-group",{staticClass:"mb-1",attrs:{label:"Time","label-for":"popover-input-1","label-cols":"3"}},[i("b-form-input",{attrs:{type:"datetime-local",id:"popover-input-1",size:"sm"},model:{value:e.set_time_input,callback:function(t){e.set_time_input=t},expression:"set_time_input"}})],1)],1),i("div",{staticClass:"row",staticStyle:{"margin-top":"1vh"}},[i("div",{staticClass:"col-12",staticStyle:{"text-align":"right"}},[i("b-button",{staticStyle:{"margin-right":"8px"},attrs:{size:"sm",variant:"secondary"},on:{click:e.closePopover}},[e._v("Cancel")]),i("b-button",{attrs:{size:"sm",variant:"primary"},on:{click:e.updateTime}},[e._v("Ok")])],1)])])],1):e._e()],2)},d=[],p=(i("a9e3"),i("fa7d")),u=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("tr",{on:{click:function(t){return e.$emit("checked-state-changed",e.ingredient)}}},[e.ingredient.is_header?[i("td",{attrs:{colspan:"5"}},[i("b",[e._v(e._s(e.ingredient.note))])])]:[i("td",{staticClass:"d-print-none"},[e.ingredient.checked?i("i",{staticClass:"far fa-check-circle text-success"}):e._e(),e.ingredient.checked?e._e():i("i",{staticClass:"far fa-check-circle text-primary"})]),i("td",[0!==e.ingredient.amount?i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.ingredient.amount))}}):e._e()]),i("td",[null===e.ingredient.unit||e.ingredient.no_amount?e._e():i("span",[e._v(e._s(e.ingredient.unit.name))])]),i("td",[null!==e.ingredient.food?[null!==e.ingredient.food.recipe?i("a",{attrs:{href:e.resolveDjangoUrl("view_recipe",e.ingredient.food.recipe),target:"_blank",rel:"noopener noreferrer"}},[e._v(e._s(e.ingredient.food.name))]):e._e(),null===e.ingredient.food.recipe?i("span",[e._v(e._s(e.ingredient.food.name))]):e._e()]:e._e()],2),i("td",[e.ingredient.note?i("div",[i("span",{directives:[{name:"b-popover",rawName:"v-b-popover.hover",value:e.ingredient.note,expression:"ingredient.note",modifiers:{hover:!0}}],staticClass:"d-print-none"},[i("i",{staticClass:"far fa-comment"})]),i("div",{staticClass:"d-none d-print-block"},[i("i",{staticClass:"far fa-comment-alt d-print-none"}),e._v(" "+e._s(e.ingredient.note)+" ")])]):e._e()])]],2)},f=[],_={name:"Ingredient",props:{ingredient:Object,ingredient_factor:{type:Number,default:1}},mixins:[p["b"]],data:function(){return{checked:!1}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},m=_,g=i("2877"),v=Object(g["a"])(m,u,f,!1,null,null,null),b=v.exports,h=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i(e.compiled,{tag:"component",attrs:{ingredient_factor:e.ingredient_factor,code:e.code}})],1)},j=[],k=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.number))}})},C=[],w={name:"ScalableNumber",props:{number:Number,factor:{type:Number,default:4}},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.factor)}}},y=w,S=Object(g["a"])(y,k,C,!1,null,null,null),x=S.exports,O={name:"CompileComponent",props:["code","ingredient_factor"],data:function(){return{compiled:null}},mounted:function(){this.compiled=n["default"].component("compiled-component",{props:["ingredient_factor","code"],components:{ScalableNumber:x},template:"
".concat(this.code,"
")})}},E=O,R=Object(g["a"])(E,h,j,!1,null,null,null),$=R.exports,I=i("c1df"),P=i.n(I);n["default"].prototype.moment=P.a;var A={name:"Step",mixins:[p["a"]],components:{Ingredient:b,CompileComponent:$},props:{step:Object,ingredient_factor:Number,index:Number,recipe:Object,start_time:String},data:function(){return{details_visible:!0,set_time_input:""}},mounted:function(){this.set_time_input=P()(this.start_time).add(this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm")},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)},updateTime:function(){var e=P()(this.set_time_input).add(-1*this.step.time_offset,"minutes").format("yyyy-MM-DDTHH:mm");this.$emit("update-start-time",e),this.closePopover()},closePopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("close")},openPopover:function(){this.$refs["id_reactive_popover_".concat(this.step.id)].$emit("open")}}},N=A,L=Object(g["a"])(N,l,d,!1,null,null,null),z=L.exports,B=i("fc0d"),D=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("iframe",{staticStyle:{border:"none"},attrs:{src:e.pdfUrl,width:"100%",height:"700px"}})])},T=[],M={name:"PdfViewer",mixins:[p["b"]],props:{recipe:Object},computed:{pdfUrl:function(){return"/static/pdfjs/viewer.html?file="+Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},U=M,V=Object(g["a"])(U,D,T,!1,null,null,null),H=V.exports,F=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticStyle:{"text-align":"center"}},[i("b-img",{attrs:{src:e.pdfUrl,alt:e.$t("External_Recipe_Image")}})],1)},K=[],Z={name:"ImageViewer",props:{recipe:Object},computed:{pdfUrl:function(){return Object(p["g"])("api_get_recipe_file",this.recipe.id)}}},W=Z,J=Object(g["a"])(W,F,K,!1,null,null,null),q=J.exports,G=function(){var e=this,t=e.$createElement,i=e._self._c||t;return null!==e.recipe.nutrition?i("div",[i("div",{staticClass:"card border-success"},[i("div",{staticClass:"card-body"},[i("div",{staticClass:"row"},[i("div",{staticClass:"col-12"},[i("h4",{staticClass:"card-title"},[i("i",{staticClass:"fas fa-carrot"}),e._v(" "+e._s(e.$t("Nutrition")))])])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-fire fa-fw text-primary"}),e._v(" "+e._s(e.$t("Calories"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.calories))}}),e._v(" kcal ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-bread-slice fa-fw text-primary"}),e._v(" "+e._s(e.$t("Carbohydrates"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.carbohydrates))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-cheese fa-fw text-primary"}),e._v(" "+e._s(e.$t("Fats"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.fats))}}),e._v(" g ")])]),i("div",{staticClass:"row"},[i("div",{staticClass:"col-6"},[i("i",{staticClass:"fas fa-drumstick-bite fa-fw text-primary"}),e._v(" "+e._s(e.$t("Proteins"))+" ")]),i("div",{staticClass:"col-6"},[i("span",{domProps:{innerHTML:e._s(e.calculateAmount(e.recipe.nutrition.proteins))}}),e._v(" g ")])])])])]):e._e()},X=[],Q={name:"Nutrition",props:{recipe:Object,ingredient_factor:Number},methods:{calculateAmount:function(e){return Object(p["d"])(e,this.ingredient_factor)}}},Y=Q,ee=Object(g["a"])(Y,G,X,!1,null,null,null),te=ee.exports,ie=i("81d5"),ne=i("d76c"),ae=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_add_book",title:e.$t("Add_to_Book"),"ok-title":e.$t("Add"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.addToBook()}}},[i("multiselect",{attrs:{options:e.books,"preserve-search":!0,placeholder:e.$t("Select_Book"),label:"name","track-by":"id",id:"id_books",multiple:!1},on:{"search-change":e.loadBook},model:{value:e.selected_book,callback:function(t){e.selected_book=t},expression:"selected_book"}})],1)],1)},re=[],se=i("8e5f"),oe=i.n(se);n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ce={name:"AddRecipeToBook",components:{Multiselect:oe.a},props:{recipe:Object},data:function(){return{books:[],selected_book:null}},mounted:function(){this.loadBook("")},methods:{loadBook:function(e){var t=this;Object(c["b"])(e).then((function(e){t.books=e}))},addToBook:function(){Object(c["a"])({recipe:this.recipe.id,book:this.selected_book.id})}}},le=ce,de=(i("60bc"),Object(g["a"])(le,ae,re,!1,null,null,null)),pe=de.exports;n["default"].prototype.moment=P.a,n["default"].use(o["a"]);var ue={name:"RecipeView",mixins:[p["b"],p["c"]],components:{PdfViewer:H,ImageViewer:q,Ingredient:b,Step:z,RecipeContextMenu:B["a"],Nutrition:te,Keywords:ie["a"],LoadingSpinner:ne["a"],AddRecipeToBook:pe},computed:{ingredient_factor:function(){return this.servings/this.recipe.servings}},data:function(){return{loading:!0,recipe:void 0,ingredient_count:0,servings:1,start_time:"",share_uid:window.SHARE_UID}},mounted:function(){this.loadRecipe(window.RECIPE_ID),this.$i18n.locale=window.CUSTOM_LOCALE},methods:{loadRecipe:function(e){var t=this;Object(c["c"])(e).then((function(e){0!==window.USER_SERVINGS&&(e.servings=window.USER_SERVINGS),t.servings=e.servings;var i,n=0,a=Object(s["a"])(e.steps);try{for(a.s();!(i=a.n()).done;){var r=i.value;t.ingredient_count+=r.ingredients.length;var o,c=Object(s["a"])(r.ingredients);try{for(c.s();!(o=c.n()).done;){var l=o.value;t.$set(l,"checked",!1)}}catch(d){c.e(d)}finally{c.f()}r.time_offset=n,n+=r.time}}catch(d){a.e(d)}finally{a.f()}n>0&&(t.start_time=P()().format("yyyy-MM-DDTHH:mm")),t.recipe=e,t.loading=!1}))},updateStartTime:function(e){this.start_time=e},updateIngredientCheckedState:function(e){var t,i=Object(s["a"])(this.recipe.steps);try{for(i.s();!(t=i.n()).done;){var n,a=t.value,r=Object(s["a"])(a.ingredients);try{for(r.s();!(n=r.n()).done;){var o=n.value;o.id===e.id&&this.$set(o,"checked",!o.checked)}}catch(c){r.e(c)}finally{r.f()}}}catch(c){i.e(c)}finally{i.f()}}}},fe=ue,_e=Object(g["a"])(fe,a,r,!1,null,null,null),me=_e.exports,ge=i("9225");n["default"].config.productionTip=!1,new n["default"]({i18n:ge["a"],render:function(e){return e(me)}}).$mount("#app")},1:function(e,t,i){e.exports=i("0671")},4678:function(e,t,i){var n={"./af":"2bfb","./af.js":"2bfb","./ar":"8e73","./ar-dz":"a356","./ar-dz.js":"a356","./ar-kw":"423e","./ar-kw.js":"423e","./ar-ly":"1cfd","./ar-ly.js":"1cfd","./ar-ma":"0a84","./ar-ma.js":"0a84","./ar-sa":"8230","./ar-sa.js":"8230","./ar-tn":"6d83","./ar-tn.js":"6d83","./ar.js":"8e73","./az":"485c","./az.js":"485c","./be":"1fc1","./be.js":"1fc1","./bg":"84aa","./bg.js":"84aa","./bm":"a7fa","./bm.js":"a7fa","./bn":"9043","./bn-bd":"9686","./bn-bd.js":"9686","./bn.js":"9043","./bo":"d26a","./bo.js":"d26a","./br":"6887","./br.js":"6887","./bs":"2554","./bs.js":"2554","./ca":"d716","./ca.js":"d716","./cs":"3c0d","./cs.js":"3c0d","./cv":"03ec","./cv.js":"03ec","./cy":"9797","./cy.js":"9797","./da":"0f14","./da.js":"0f14","./de":"b469","./de-at":"b3eb","./de-at.js":"b3eb","./de-ch":"bb71","./de-ch.js":"bb71","./de.js":"b469","./dv":"598a","./dv.js":"598a","./el":"8d47","./el.js":"8d47","./en-au":"0e6b","./en-au.js":"0e6b","./en-ca":"3886","./en-ca.js":"3886","./en-gb":"39a6","./en-gb.js":"39a6","./en-ie":"e1d3","./en-ie.js":"e1d3","./en-il":"7333","./en-il.js":"7333","./en-in":"ec2e","./en-in.js":"ec2e","./en-nz":"6f50","./en-nz.js":"6f50","./en-sg":"b7e9","./en-sg.js":"b7e9","./eo":"65db","./eo.js":"65db","./es":"898b","./es-do":"0a3c","./es-do.js":"0a3c","./es-mx":"b5b7","./es-mx.js":"b5b7","./es-us":"55c9","./es-us.js":"55c9","./es.js":"898b","./et":"ec18","./et.js":"ec18","./eu":"0ff2","./eu.js":"0ff2","./fa":"8df4","./fa.js":"8df4","./fi":"81e9","./fi.js":"81e9","./fil":"d69a","./fil.js":"d69a","./fo":"0721","./fo.js":"0721","./fr":"9f26","./fr-ca":"d9f8","./fr-ca.js":"d9f8","./fr-ch":"0e49","./fr-ch.js":"0e49","./fr.js":"9f26","./fy":"7118","./fy.js":"7118","./ga":"5120","./ga.js":"5120","./gd":"f6b4","./gd.js":"f6b4","./gl":"8840","./gl.js":"8840","./gom-deva":"aaf2","./gom-deva.js":"aaf2","./gom-latn":"0caa","./gom-latn.js":"0caa","./gu":"e0c5","./gu.js":"e0c5","./he":"c7aa","./he.js":"c7aa","./hi":"dc4d","./hi.js":"dc4d","./hr":"4ba9","./hr.js":"4ba9","./hu":"5b14","./hu.js":"5b14","./hy-am":"d6b6","./hy-am.js":"d6b6","./id":"5038","./id.js":"5038","./is":"0558","./is.js":"0558","./it":"6e98","./it-ch":"6f12","./it-ch.js":"6f12","./it.js":"6e98","./ja":"079e","./ja.js":"079e","./jv":"b540","./jv.js":"b540","./ka":"201b","./ka.js":"201b","./kk":"6d79","./kk.js":"6d79","./km":"e81d","./km.js":"e81d","./kn":"3e92","./kn.js":"3e92","./ko":"22f8","./ko.js":"22f8","./ku":"2421","./ku.js":"2421","./ky":"9609","./ky.js":"9609","./lb":"440c","./lb.js":"440c","./lo":"b29d","./lo.js":"b29d","./lt":"26f9","./lt.js":"26f9","./lv":"b97c","./lv.js":"b97c","./me":"293c","./me.js":"293c","./mi":"688b","./mi.js":"688b","./mk":"6909","./mk.js":"6909","./ml":"02fb","./ml.js":"02fb","./mn":"958b","./mn.js":"958b","./mr":"39bd","./mr.js":"39bd","./ms":"ebe4","./ms-my":"6403","./ms-my.js":"6403","./ms.js":"ebe4","./mt":"1b45","./mt.js":"1b45","./my":"8689","./my.js":"8689","./nb":"6ce3","./nb.js":"6ce3","./ne":"3a39","./ne.js":"3a39","./nl":"facd","./nl-be":"db29","./nl-be.js":"db29","./nl.js":"facd","./nn":"b84c","./nn.js":"b84c","./oc-lnc":"167b","./oc-lnc.js":"167b","./pa-in":"f3ff","./pa-in.js":"f3ff","./pl":"8d57","./pl.js":"8d57","./pt":"f260","./pt-br":"d2d4","./pt-br.js":"d2d4","./pt.js":"f260","./ro":"972c","./ro.js":"972c","./ru":"957c","./ru.js":"957c","./sd":"6784","./sd.js":"6784","./se":"ffff","./se.js":"ffff","./si":"eda5","./si.js":"eda5","./sk":"7be6","./sk.js":"7be6","./sl":"8155","./sl.js":"8155","./sq":"c8f3","./sq.js":"c8f3","./sr":"cf1e","./sr-cyrl":"13e9","./sr-cyrl.js":"13e9","./sr.js":"cf1e","./ss":"52bd","./ss.js":"52bd","./sv":"5fbd","./sv.js":"5fbd","./sw":"74dc","./sw.js":"74dc","./ta":"3de5","./ta.js":"3de5","./te":"5cbb","./te.js":"5cbb","./tet":"576c","./tet.js":"576c","./tg":"3b1b","./tg.js":"3b1b","./th":"10e8","./th.js":"10e8","./tk":"5aff","./tk.js":"5aff","./tl-ph":"0f38","./tl-ph.js":"0f38","./tlh":"cf755","./tlh.js":"cf755","./tr":"0e81","./tr.js":"0e81","./tzl":"cf51","./tzl.js":"cf51","./tzm":"c109","./tzm-latn":"b53d","./tzm-latn.js":"b53d","./tzm.js":"c109","./ug-cn":"6117","./ug-cn.js":"6117","./uk":"ada2","./uk.js":"ada2","./ur":"5294","./ur.js":"5294","./uz":"2e8c","./uz-latn":"010e","./uz-latn.js":"010e","./uz.js":"2e8c","./vi":"2921","./vi.js":"2921","./x-pseudo":"fd7e","./x-pseudo.js":"fd7e","./yo":"7f33","./yo.js":"7f33","./zh-cn":"5c3a","./zh-cn.js":"5c3a","./zh-hk":"49ab","./zh-hk.js":"49ab","./zh-mo":"3a6c","./zh-mo.js":"3a6c","./zh-tw":"90ea","./zh-tw.js":"90ea"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="4678"},"49f8":function(e,t,i){var n={"./de.json":"6ce2","./en.json":"edd4","./nl.json":"a625","./sv.json":"4c5b"};function a(e){var t=r(e);return i(t)}function r(e){if(!i.o(n,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return n[e]}a.keys=function(){return Object.keys(n)},a.resolve=r,e.exports=a,a.id="49f8"},"4c5b":function(e){e.exports=JSON.parse('{"import_running":"Import pågår, var god vänta!","all_fields_optional":"Alla rutor är valfria och kan lämnas tomma.","convert_internal":"Konvertera till internt recept","Log_Recipe_Cooking":"Logga tillagningen av receptet","External_Recipe_Image":"Externt receptbild","Add_to_Book":"Lägg till i kokbok","Add_to_Shopping":"Lägg till i handelslista","Add_to_Plan":"Lägg till i matsedel","Step_start_time":"Steg starttid","Select_Book":"Välj kokbok","Recipe_Image":"Receptbild","Import_finished":"Importering klar","View_Recipes":"Visa recept","Log_Cooking":"Logga tillagning","Proteins":"Protein","Fats":"Fett","Carbohydrates":"Kolhydrater","Calories":"Kalorier","Nutrition":"Näringsinnehåll","Date":"Datum","Share":"Dela","Export":"Exportera","Rating":"Betyg","Close":"Stäng","Add":"Lägg till","Ingredients":"Ingredienser","min":"min","Servings":"Portioner","Waiting":"Väntan","Preparation":"Förberedelse","Edit":"Redigera","Open":"Öppna","Save":"Spara","Step":"Steg","Search":"Sök","Import":"Importera","Print":"Skriv ut","Information":"Information"}')},"6ce2":function(e){e.exports=JSON.parse('{"Import":"Import","import_running":"Import läuft, bitte warten!","Import_finished":"Import fertig","View_Recipes":"Rezepte Ansehen","Information":"Information","all_fields_optional":"Alle Felder sind optional und können leer gelassen werden.","convert_internal":"Zu internem Rezept wandeln","Log_Recipe_Cooking":"Kochen protokollieren","External_Recipe_Image":"Externes Rezept Bild","Add_to_Book":"Zu Buch hinzufügen","Add_to_Shopping":"Zu Einkaufsliste hinzufügen","Add_to_Plan":"Zu Plan hinzufügen","Step_start_time":"Schritt Startzeit","Select_Book":"Buch wählen","Recipe_Image":"Rezept Bild","Log_Cooking":"Kochen protokollieren","Proteins":"Proteine","Fats":"Fette","Carbohydrates":"Kohlenhydrate","Calories":"Kalorien","Nutrition":"Nährwerte","Keywords":"Stichwörter","Books":"Bücher","show_only_internal":"Nur interne Rezepte anzeigen","Ingredients":"Zutaten","min":"Min","Servings":"Portionen","Waiting":"Wartezeit","Preparation":"Zubereitung","Edit":"Bearbeiten","Open":"Öffnen","Save":"Speichern","Step":"Schritt","Search":"Suchen","Print":"Drucken","New_Recipe":"Neues Rezept","Url_Import":"URL Import","Reset_Search":"Suche zurücksetzen","or":"oder","and":"und","Recently_Viewed":"Kürzlich angesehen","External":"Extern","Settings":"Einstellungen","Meal_Plan":"Speiseplan","Date":"Datum","Share":"Teilen","Export":"Exportieren","Rating":"Bewertung","Close":"Schließen","Add":"Hinzufügen"}')},"7c15":function(e,t,i){"use strict";i.d(t,"c",(function(){return s})),i.d(t,"d",(function(){return o})),i.d(t,"b",(function(){return c})),i.d(t,"a",(function(){return l}));var n=i("bc3a"),a=i.n(n),r=i("fa7d");function s(e){var t=Object(r["g"])("api:recipe-detail",e);return void 0!==window.SHARE_UID&&(t+="?share="+window.SHARE_UID),a.a.get(t).then((function(e){return e.data})).catch((function(e){d(e,"There was an error loading a resource!","danger")}))}function o(e){return a.a.post(Object(r["g"])("api:cooklog-list"),e).then((function(e){Object(r["f"])("Saved","Cook Log entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function c(e){return a.a.get(Object(r["g"])("api:recipebook-list")+"?query="+e).then((function(e){return e.data})).catch((function(e){}))}function l(e){return a.a.post(Object(r["g"])("api:recipebookentry-list"),e).then((function(e){Object(r["f"])("Saved","Recipe Book entry saved!","success")})).catch((function(e){d(e,"There was an error creating a resource!","danger")}))}function d(e,t){if("response"in e){console.log(e.response);var i="statusText"in e.response?e.response.statusText:Object(r["e"])("Error");t+="\n\n"+JSON.stringify(e.response.data),Object(r["f"])(i,t,"danger")}else Object(r["f"])("Error",t,"danger"),console.log(e)}a.a.defaults.xsrfCookieName="csrftoken",a.a.defaults.xsrfHeaderName="X-CSRFTOKEN"},"81d5":function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.recipe.keywords.length>0?i("div",e._l(e.recipe.keywords,(function(t){return i("span",{key:t.id,staticStyle:{padding:"2px"}},[i("b-badge",{attrs:{pill:"",variant:"light"}},[e._v(e._s(t.label))])],1)})),0):e._e()},a=[],r={name:"Keywords",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},9225:function(e,t,i){"use strict";i("159b"),i("d3b7"),i("ddb0"),i("ac1f"),i("466d");var n=i("a026"),a=i("a925");function r(){var e=i("49f8"),t={};return e.keys().forEach((function(i){var n=i.match(/([A-Za-z0-9-_]+)\./i);if(n&&n.length>1){var a=n[1];t[a]=e(i)}})),t}n["default"].use(a["a"]),t["a"]=new a["a"]({locale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_LOCALE||"en",fallbackLocale:Object({NODE_ENV:"production",BASE_URL:""}).VUE_APP_I18N_FALLBACK_LOCALE||"en",messages:r()})},a625:function(e){e.exports=JSON.parse('{"import_running":"Er wordt geïmporteerd, even geduld!","all_fields_optional":"Alle velden zijn optioneel en kunnen leeg gelaten worden.","convert_internal":"Zet om naar intern recept","Log_Recipe_Cooking":"Log Bereiding","External_Recipe_Image":"Externe Afbeelding Recept","Add_to_Book":"Voeg toe aan Boek","Add_to_Shopping":"Voeg toe aan Boodschappenlijst","Add_to_Plan":"Voeg toe aan Plan","Step_start_time":"Starttijd stap","Select_Book":"Selecteer Boek","Recipe_Image":"Afbeelding Recept","Import_finished":"Importeren gereed","View_Recipes":"Bekijk Recepten","Log_Cooking":"Log Bereiding","Proteins":"Eiwitten","Fats":"Vetten","Carbohydrates":"Koolhydraten","Calories":"Calorieën","Nutrition":"Voedingswaarde","Date":"Datum","Share":"Deel","Export":"Exporteren","Rating":"Beoordeling","Close":"Sluiten","Add":"Voeg toe","Ingredients":"Ingrediënten","min":"min","Servings":"Porties","Waiting":"Wachten","Preparation":"Bereiding","Edit":"Bewerken","Open":"Open","Save":"Opslaan","Step":"Stap","Search":"Zoeken","Import":"Importeer","Print":"Afdrukken","Information":"Informatie","Keywords":"Etiketten","Books":"Boeken","show_only_internal":"Toon alleen interne recepten","New_Recipe":"Nieuw Recept","Url_Import":"Importeer URL","Reset_Search":"Zoeken resetten","or":"of","and":"en","Recently_Viewed":"Recent bekeken","External":"Externe","Settings":"Instellingen","Meal_Plan":"Maaltijdplan","New":"Nieuw","Supermarket":"Supermarkt","Categories":"Categorieën","Category":"Categorie","Selected":"Geselecteerd"}')},d76c:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"row"},[i("div",{staticClass:"col",staticStyle:{"text-align":"center"}},[i("img",{staticClass:"spinner-tandoor",staticStyle:{height:"30vh"},attrs:{alt:"loading spinner",src:""}})])])}],r={name:"LoadingSpinner",props:{recipe:Object}},s=r,o=i("2877"),c=Object(o["a"])(s,n,a,!1,null,null,null);t["a"]=c.exports},edd4:function(e){e.exports=JSON.parse('{"err_fetching_resource":"There was an error fetching a resource!","err_creating_resource":"There was an error creating a resource!","err_updating_resource":"There was an error updating a resource!","err_deleting_resource":"There was an error deleting a resource!","success_fetching_resource":"Successfully fetched a resource!","success_creating_resource":"Successfully created a resource!","success_updating_resource":"Successfully updated a resource!","success_deleting_resource":"Successfully deleted a resource!","import_running":"Import running, please wait!","all_fields_optional":"All fields are optional and can be left empty.","convert_internal":"Convert to internal recipe","show_only_internal":"Show only internal recipes","Log_Recipe_Cooking":"Log Recipe Cooking","External_Recipe_Image":"External Recipe Image","Add_to_Book":"Add to Book","Add_to_Shopping":"Add to Shopping","Add_to_Plan":"Add to Plan","Step_start_time":"Step start time","Meal_Plan":"Meal Plan","Select_Book":"Select Book","Recipe_Image":"Recipe Image","Import_finished":"Import finished","View_Recipes":"View Recipes","Log_Cooking":"Log Cooking","New_Recipe":"New Recipe","Url_Import":"Url Import","Reset_Search":"Reset Search","Recently_Viewed":"Recently Viewed","Load_More":"Load More","Keywords":"Keywords","Books":"Books","Proteins":"Proteins","Fats":"Fats","Carbohydrates":"Carbohydrates","Calories":"Calories","Nutrition":"Nutrition","Date":"Date","Share":"Share","Export":"Export","Rating":"Rating","Close":"Close","Add":"Add","New":"New","Success":"Success","Ingredients":"Ingredients","Supermarket":"Supermarket","Categories":"Categories","Category":"Category","Selected":"Selected","min":"min","Servings":"Servings","Waiting":"Waiting","Preparation":"Preparation","External":"External","Size":"Size","Files":"Files","File":"File","Edit":"Edit","Cancel":"Cancel","Delete":"Delete","Open":"Open","Ok":"Open","Save":"Save","Step":"Step","Search":"Search","Import":"Import","Print":"Print","Settings":"Settings","or":"or","and":"and","Information":"Information","Download":"Download"}')},fa7d:function(e,t,i){"use strict";i.d(t,"c",(function(){return r})),i.d(t,"f",(function(){return s})),i.d(t,"a",(function(){return o})),i.d(t,"e",(function(){return c})),i.d(t,"b",(function(){return l})),i.d(t,"g",(function(){return d})),i.d(t,"d",(function(){return u}));i("99af");var n=i("59e4");function a(e,t,i){var n=Math.floor(e),a=1,r=n+1,s=1;if(e!==n)while(a<=t&&s<=t){var o=(n+r)/(a+s);if(e===o){a+s<=t?(a+=s,n+=r,s=t+1):a>s?s=t+1:a=t+1;break}et&&(a=s,n=r),!i)return[0,n,a];var c=Math.floor(n/a);return[c,n-c*a,a]}var r={methods:{makeToast:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return s(e,t,i)}}};function s(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=new n["a"];a.$bvToast.toast(t,{title:e,variant:i,toaster:"b-toaster-top-center",solid:!0})}var o={methods:{_:function(e){return c(e)}}};function c(e){return window.gettext(e)}var l={methods:{resolveDjangoUrl:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return d(e,t)}}};function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return null!==t?window.Urls[e](t):window.Urls[e]()}function p(e){return window.USER_PREF[e]}function u(e,t){if(p("use_fractions")){var i="",n=a(e*t,9,!0);return n[0]>0&&(i+=n[0]),n[1]>0&&(i+=" ".concat(n[1],"").concat(n[2],"")),i}return f(e*t)}function f(e){var t=p("user_fractions")?p("user_fractions"):2;return+(Math.round(e+"e+".concat(t))+"e-".concat(t))}},fc0d:function(e,t,i){"use strict";var n=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"dropdown d-print-none"},[e._m(0),i("div",{staticClass:"dropdown-menu dropdown-menu-right",attrs:{"aria-labelledby":"dropdownMenuLink"}},[i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-pencil-alt fa-fw"}),e._v(" "+e._s(e.$t("Edit")))]),e.recipe.internal?e._e():i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("edit_convert_recipe",e.recipe.id)}},[i("i",{staticClass:"fas fa-exchange-alt fa-fw"}),e._v(" "+e._s(e.$t("convert_internal")))]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_add_book")}}},[i("i",{staticClass:"fas fa-bookmark fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Book"))+" ")]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_shopping")+"?r=["+e.recipe.id+","+e.servings_value+"]",target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-shopping-cart fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Shopping"))+" ")]):e._e(),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_meal_plan")+"?recipe="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-calendar fa-fw"}),e._v(" "+e._s(e.$t("Add_to_Plan"))+" ")]),i("button",{staticClass:"dropdown-item",on:{click:function(t){return e.$bvModal.show("id_modal_cook_log")}}},[i("i",{staticClass:"fas fa-clipboard-list fa-fw"}),e._v(" "+e._s(e.$t("Log_Cooking"))+" ")]),i("button",{staticClass:"dropdown-item",attrs:{onclick:"window.print()"}},[i("i",{staticClass:"fas fa-print fa-fw"}),e._v(" "+e._s(e.$t("Print"))+" ")]),i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("view_export")+"?r="+e.recipe.id,target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-file-export fa-fw"}),e._v(" "+e._s(e.$t("Export")))]),e.recipe.internal?i("a",{staticClass:"dropdown-item",attrs:{href:e.resolveDjangoUrl("new_share_link",e.recipe.id),target:"_blank",rel:"noopener noreferrer"}},[i("i",{staticClass:"fas fa-share-alt fa-fw"}),e._v(" "+e._s(e.$t("Share")))]):e._e()])]),i("cook-log",{attrs:{recipe:e.recipe}})],1)},a=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("a",{staticClass:"btn shadow-none",attrs:{href:"#",role:"button",id:"dropdownMenuLink","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[i("i",{staticClass:"fas fa-ellipsis-v"})])}],r=(i("a9e3"),i("fa7d")),s=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("b-modal",{staticClass:"modal",attrs:{id:"id_modal_cook_log",title:e.$t("Log_Recipe_Cooking"),"ok-title":e.$t("Save"),"cancel-title":e.$t("Close")},on:{ok:function(t){return e.logCook()}}},[i("p",[e._v(e._s(e.$t("all_fields_optional")))]),i("form",[i("label",{attrs:{for:"id_log_servings"}},[e._v(e._s(e.$t("Servings")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.servings,expression:"logObject.servings"}],staticClass:"form-control",attrs:{type:"number",id:"id_log_servings"},domProps:{value:e.logObject.servings},on:{input:function(t){t.target.composing||e.$set(e.logObject,"servings",t.target.value)}}}),i("label",{staticStyle:{"margin-top":"2vh"}},[e._v(e._s(e.$t("Rating"))+" - "),i("span",{attrs:{id:"id_rating_show"}},[e._v(e._s(e.logObject.rating)+"/5")])]),i("b-form-rating",{model:{value:e.logObject.rating,callback:function(t){e.$set(e.logObject,"rating",t)},expression:"logObject.rating"}}),i("label",{staticStyle:{"margin-top":"2vh"},attrs:{for:"id_date"}},[e._v(e._s(e.$t("Date")))]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.logObject.created_at,expression:"logObject.created_at"}],staticClass:"form-control",attrs:{type:"datetime-local",id:"id_date"},domProps:{value:e.logObject.created_at},on:{input:function(t){t.target.composing||e.$set(e.logObject,"created_at",t.target.value)}}})],1)])],1)},o=[],c=i("c1df"),l=i.n(c),d=i("a026"),p=i("5f5b"),u=i("7c15");d["default"].prototype.moment=l.a,d["default"].use(p["a"]);var f={name:"CookLog",props:{recipe:Object},data:function(){return{logObject:{recipe:this.recipe.id,servings:0,rating:0,created_at:l()().format("yyyy-MM-DDTHH:mm")}}},methods:{logCook:function(){Object(u["d"])(this.logObject)}}},_=f,m=i("2877"),g=Object(m["a"])(_,s,o,!1,null,null,null),v=g.exports,b={name:"RecipeContextMenu",mixins:[r["b"]],components:{CookLog:v},data:function(){return{servings_value:0}},props:{recipe:Object,servings:{type:Number,default:-1}},mounted:function(){this.servings_value=-1===this.servings?this.recipe.servings:this.servings}},h=b,j=Object(m["a"])(h,n,a,!1,null,null,null);t["a"]=j.exports}}); \ No newline at end of file diff --git a/vue/src/apps/RecipeView/RecipeView.vue b/vue/src/apps/RecipeView/RecipeView.vue index d2708f97..ee2a6047 100644 --- a/vue/src/apps/RecipeView/RecipeView.vue +++ b/vue/src/apps/RecipeView/RecipeView.vue @@ -135,7 +135,7 @@ -
+
diff --git a/vue/src/components/Ingredient.vue b/vue/src/components/Ingredient.vue index 5b20373f..97759f8a 100644 --- a/vue/src/components/Ingredient.vue +++ b/vue/src/components/Ingredient.vue @@ -7,7 +7,7 @@