diff --git a/.env.template b/.env.template index 9ae5d9756..958447bf7 100644 --- a/.env.template +++ b/.env.template @@ -16,6 +16,17 @@ POSTGRES_USER=djangodb POSTGRES_PASSWORD= POSTGRES_DB=djangodb +# Users can set a amount of time after which the shopping list is refreshed when they are in viewing mode +# This is the minimum interval users can set. Setting this to low will allow users to refresh very frequently which +# might cause high load on the server. (Technically they can obviously refresh as often as they want with their own scripts) +SHOPPING_MIN_AUTOSYNC_INTERVAL=5 + +# If staticfiles are stored at a different location uncomment and change accordingly +# STATIC_URL=/static/ + +# If mediafiles are stored at a different location uncomment and change accordingly +# MEDIA_URL=/media/ + # Serve mediafiles directly using gunicorn. Basically everyone recommends not doing this. Please use any of the examples # provided that include an additional nxginx container to handle media file serving. # If you know what you are doing turn this back on (1) to serve media files using djangos serve() method. diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..cf7a39fb6 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "pip" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "daily" diff --git a/.github/workflows/docker-publish-release.yml b/.github/workflows/docker-publish-release.yml index 0942b847f..665625d51 100644 --- a/.github/workflows/docker-publish-release.yml +++ b/.github/workflows/docker-publish-release.yml @@ -11,7 +11,7 @@ jobs: name: Build image job steps: - name: Checkout master - uses: actions/checkout@master# + uses: actions/checkout@master - name: Get version number id: get_version run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 000000000..a55e7a179 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/dictionaries/vabene1111_PC.xml b/.idea/dictionaries/vabene1111_PC.xml index 13cb1b328..cfd8a9e64 100644 --- a/.idea/dictionaries/vabene1111_PC.xml +++ b/.idea/dictionaries/vabene1111_PC.xml @@ -1,6 +1,7 @@ + autosync csrftoken gunicorn ical diff --git a/README.md b/README.md index 29d665f5c..bad3bec07 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,17 @@ # Recipes ![CI](https://github.com/vabene1111/recipes/workflows/Continous%20Integration/badge.svg?branch=develop) + Recipes is a Django application to manage, tag and search recipes using either built in models or external storage providers hosting PDF's, Images or other files. ![Preview](docs/preview.png) [More Screenshots](https://imgur.com/a/V01151p) -### Features +## Features - :package: **Sync** files with Dropbox and Nextcloud (more can easily be added) - :mag: Powerful **search** with Djangos [TrigramSimilarity](https://docs.djangoproject.com/en/3.0/ref/contrib/postgres/search/#trigram-similarity) - :label: Create and search for **tags**, assign them in batch to all files matching certain filters -- :page_facing_up: **Create recipes** locally within a nice, standardized web interface +- :page_facing_up: **Create recipes** locally within a nice, standardized web interface - :arrow_down: **Import recipes** from thousands of websites supporting [ld+json or microdata](https://schema.org/Recipe) - :iphone: Optimized for use on **mobile** devices like phones and tablets - :shopping_cart: Generate **shopping** lists from recipes @@ -21,30 +22,29 @@ Recipes is a Django application to manage, tag and search recipes using either b - :envelope: Export and import recipes from other users - :heavy_plus_sign: Many more like recipe scaling, image compression, cookbooks, printing views, ... -This application is meant for people with a collection of recipes they want to share with family and friends or simply +This application is meant for people with a collection of recipes they want to share with family and friends or simply store them in a nicely organized way. A basic permission system exists but this application is not meant to be run as a public page. Some Documentation can be found [here](https://github.com/vabene1111/recipes/wiki) -# Installation + +## Installation The docker image (`vabene1111/recipes`) simply exposes the application on port `8080`. You may choose any preferred installation method, the following are just examples to make it easier. ### Docker-Compose -2. Choose one of the included configurations [here](docs/docker). -2. Download the environment (config) file template and fill it out `wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template -O .env ` +1. Choose one of the included configurations [here](docs/docker). +2. Download the environment (config) file template and fill it out `wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template -O .env` 3. Start the container `docker-compose up -d` -4. Open the page to create the first user. Alternatively use `docker-compose exec web_recipes createsuperuser` +4. Open the page to create the first user. Alternatively use `docker-compose exec web_recipes createsuperuser` ### Manual -**Python >= 3.8** is required to run this! -Copy `.env.template` to `.env` and fill in the missing values accordingly. -Make sure all variables are available to whatever serves your application. +**Python >= 3.8** is required to run this! -Otherwise simply follow the instructions for any django based deployment -(for example [this one](http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html)). +Refer to [manual install](docs/manual_install) for detailled instructions. ## Updating + While intermediate updates can be skipped when updating please make sure to **read the release notes** in case some special action is required to update. 0. Before updating it is recommended to **create a backup!** @@ -57,25 +57,27 @@ While intermediate updates can be skipped when updating please make sure to **re You can find a basic kubernetes setup [here](docs/k8s/). Please see the README in the folder for more detail. ## Contributing + Pull Requests and ideas are welcome, feel free to contribute in any way. For any questions on how to work with django please refer to their excellent [documentation](https://www.djangoproject.com/start/). ### Translating + There is a [transifex project](https://www.transifex.com/django-recipes/django-cookbook/) project to enable community driven translations. If you want to contribute a new language or help maintain an already existing one feel free to create a transifex account (using the link above) and request to join the project. It is also possible to provide the translations directly by creating a new language using `manage.py makemessages -l -i venv`. Once finished simply open a PR with the changed files. ## License + Beginning with version 0.10.0 the code in this repository is licensed under the [GNU AGPL v3](https://www.gnu.org/licenses/agpl-3.0.de.html) license with an [common clause](https://commonsclause.com/) selling exception. See [LICENSE.md](https://github.com/vabene1111/recipes/blob/develop/LICENSE.md) for details. **Reasoning** +**This software and *all* its features are and will always be free for everyone to use and enjoy.** -#### This software and **all** its features are and will always be free for everyone to use and enjoy. - -The reason for the selling exception is that a significant amount of time was spend over multiple years to develop this software. +The reason for the selling exception is that a significant amount of time was spend over multiple years to develop this software. A payed hosted version which will be identical in features and code base to the software offered in this repository will likely be released in the future (including all features needed to sell a hosted version as they might also be useful for personal use). -This will not only benefit me personally but also everyone who self-hosts this software as any profits made trough selling the hosted option +This will not only benefit me personally but also everyone who self-hosts this software as any profits made trough selling the hosted option allow me to spend more time developing and improving the software for everyone. Selling exceptions are [approved by Richard Stallman](http://www.gnu.org/philosophy/selling-exceptions.en.html) and the -common clause license is very permissive (see the [FAQ](https://commonsclause.com/)). \ No newline at end of file +common clause license is very permissive (see the [FAQ](https://commonsclause.com/)). diff --git a/cookbook/admin.py b/cookbook/admin.py index b4e4de26c..e667a1614 100644 --- a/cookbook/admin.py +++ b/cookbook/admin.py @@ -2,6 +2,13 @@ from django.contrib import admin from .models import * +class SpaceAdmin(admin.ModelAdmin): + list_display = ('name', 'message') + + +admin.site.register(Space, SpaceAdmin) + + class UserPreferenceAdmin(admin.ModelAdmin): list_display = ('name', 'theme', 'nav_color', 'default_page', 'search_style', 'comments') @@ -125,6 +132,13 @@ class ViewLogAdmin(admin.ModelAdmin): admin.site.register(ViewLog, ViewLogAdmin) +class InviteLinkAdmin(admin.ModelAdmin): + list_display = ('username', 'group', 'valid_until', 'created_by', 'created_at', 'used_by') + + +admin.site.register(InviteLink, InviteLinkAdmin) + + class CookLogAdmin(admin.ModelAdmin): list_display = ('recipe', 'created_by', 'created_at', 'rating', 'servings') @@ -132,6 +146,27 @@ class CookLogAdmin(admin.ModelAdmin): admin.site.register(CookLog, CookLogAdmin) +class ShoppingListRecipeAdmin(admin.ModelAdmin): + list_display = ('id', 'recipe', 'multiplier') + + +admin.site.register(ShoppingListRecipe, ShoppingListRecipeAdmin) + + +class ShoppingListEntryAdmin(admin.ModelAdmin): + list_display = ('id', 'food', 'unit', 'list_recipe', 'checked') + + +admin.site.register(ShoppingListEntry, ShoppingListEntryAdmin) + + +class ShoppingListAdmin(admin.ModelAdmin): + list_display = ('id', 'created_by', 'created_at') + + +admin.site.register(ShoppingList, ShoppingListAdmin) + + class ShareLinkAdmin(admin.ModelAdmin): list_display = ('recipe', 'created_by', 'uuid', 'created_at',) diff --git a/cookbook/filters.py b/cookbook/filters.py index 916435009..88e4c94b7 100644 --- a/cookbook/filters.py +++ b/cookbook/filters.py @@ -2,7 +2,7 @@ import django_filters from django.contrib.postgres.search import TrigramSimilarity from django.db.models import Q from cookbook.forms import MultiSelectWidget -from cookbook.models import Recipe, Keyword, Food +from cookbook.models import Recipe, Keyword, Food, ShoppingList from django.conf import settings from django.utils.translation import gettext as _ @@ -52,3 +52,16 @@ class IngredientFilter(django_filters.FilterSet): class Meta: model = Food fields = ['name'] + + +class ShoppingListFilter(django_filters.FilterSet): + + def __init__(self, data=None, *args, **kwargs): + if data is not None: + data = data.copy() + data.setdefault("finished", False) + super(ShoppingListFilter, self).__init__(data, *args, **kwargs) + + class Meta: + model = ShoppingList + fields = ['finished'] diff --git a/cookbook/forms.py b/cookbook/forms.py index c1de68bc9..5b4d5259b 100644 --- a/cookbook/forms.py +++ b/cookbook/forms.py @@ -31,7 +31,7 @@ class UserPreferenceForm(forms.ModelForm): class Meta: model = UserPreference - fields = ('default_unit', 'theme', 'nav_color', 'default_page', 'show_recent', 'search_style', 'plan_share', 'ingredient_decimals', 'comments') + fields = ('default_unit', 'theme', 'nav_color', 'default_page', 'show_recent', 'search_style', 'plan_share', 'ingredient_decimals', 'shopping_auto_sync', 'comments') help_texts = { 'nav_color': _('Color of the top navigation bar. Not all colors work with all themes, just try them out!'), @@ -39,7 +39,10 @@ class UserPreferenceForm(forms.ModelForm): 'plan_share': _('Default user to share newly created meal plan entries with.'), 'show_recent': _('Show recently viewed recipes on search page.'), 'ingredient_decimals': _('Number of decimals to round ingredients.'), - 'comments': _('If you want to be able to create and see comments underneath recipes.') + 'comments': _('If you want to be able to create and see comments underneath recipes.'), + 'shopping_auto_sync': _( + '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. Useful when shopping with multiple people but might use a little bit ' + 'of mobile data. If lower than instance limit it is reset when saving.') } widgets = { @@ -262,17 +265,27 @@ class MealPlanForm(forms.ModelForm): class Meta: model = MealPlan - fields = ('recipe', 'title', 'meal_type', 'note', 'date', 'shared') + fields = ('recipe', 'title', 'meal_type', 'note', 'recipe_multiplier', 'date', 'shared') help_texts = { 'shared': _('You can list default users to share recipes with in the settings.'), - 'note': _('You can use markdown to format this field. See the docs here') + 'note': _('You can use markdown to format this field. See the docs here'), + 'recipe_multiplier': _('Scaling factor for recipe.') } widgets = {'recipe': SelectWidget, 'date': DateWidget, 'shared': MultiSelectWidget} -class SuperUserForm(forms.Form): - name = forms.CharField() +class InviteLinkForm(forms.ModelForm): + class Meta: + model = InviteLink + fields = ('username', 'group', 'valid_until') + help_texts = { + 'username': _('A username is not required, if left blank the new user can choose one.') + } + + +class UserCreateForm(forms.Form): + name = forms.CharField(label='Username') password = forms.CharField(widget=forms.TextInput(attrs={'autocomplete': 'new-password', 'type': 'password'})) password_confirm = forms.CharField(widget=forms.TextInput(attrs={'autocomplete': 'new-password', 'type': 'password'})) diff --git a/cookbook/helper/permission_helper.py b/cookbook/helper/permission_helper.py index 1c9f49f97..54e5dd61e 100644 --- a/cookbook/helper/permission_helper.py +++ b/cookbook/helper/permission_helper.py @@ -67,9 +67,28 @@ def is_object_owner(user, obj): return owner == user if owner := getattr(obj, 'user', None): return owner == user + if getattr(obj, 'get_owner', None): + return obj.get_owner() == user return False +def is_object_shared(user, obj): + """ + Tests if a given user is shared for a given object + test performed by checking user against the objects shared table + superusers bypass all checks, unauthenticated users cannot own anything + :param user django auth user object + :param obj any object that should be tested + :return: true if user is shared for object, false otherwise + """ + # TODO this could be improved/cleaned up by adding share checks for relevant objects + if not user.is_authenticated: + return False + if user.is_superuser: + return True + return user in obj.shared.all() + + def share_link_valid(recipe, share): """ Verifies the validity of a share uuid @@ -145,6 +164,20 @@ class CustomIsOwner(permissions.BasePermission): return is_object_owner(request.user, obj) +class CustomIsShared(permissions.BasePermission): # TODO function duplicate/too similar name + """ + Custom permission class for django rest framework views + verifies user is shared for the object he is trying to access + """ + message = _('You cannot interact with this object as its not owned by you!') + + def has_permission(self, request, view): + return request.user.is_authenticated + + def has_object_permission(self, request, view, obj): + return is_object_shared(request.user, obj) + + class CustomIsGuest(permissions.BasePermission): """ Custom permission class for django rest framework views diff --git a/cookbook/helper/recipe_url_import.py b/cookbook/helper/recipe_url_import.py index 94e352ca1..a8dd84b4e 100644 --- a/cookbook/helper/recipe_url_import.py +++ b/cookbook/helper/recipe_url_import.py @@ -18,7 +18,7 @@ def get_from_html(html_text, url): # first try finding ld+json as its most common for ld in soup.find_all('script', type='application/ld+json'): try: - ld_json = json.loads(ld.string) + ld_json = json.loads(ld.string.replace('\n', '')) if type(ld_json) != list: ld_json = [ld_json] @@ -31,8 +31,8 @@ def get_from_html(html_text, url): if '@type' in ld_json_item and ld_json_item['@type'] == 'Recipe': return find_recipe_json(ld_json_item, url) - except JSONDecodeError: - JsonResponse({'error': True, 'msg': _('The requested site provided malformed data and cannot be read.')}, status=400) + except JSONDecodeError as e: + return JsonResponse({'error': True, 'msg': _('The requested site provided malformed data and cannot be read.')}, status=400) # now try to find microdata items = microdata.get_items(html_text) diff --git a/cookbook/locale/de/LC_MESSAGES/django.mo b/cookbook/locale/de/LC_MESSAGES/django.mo index ca3db4cd0..c30ee8b75 100644 Binary files a/cookbook/locale/de/LC_MESSAGES/django.mo and b/cookbook/locale/de/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/de/LC_MESSAGES/django.po b/cookbook/locale/de/LC_MESSAGES/django.po index 0f7a7f582..6fa8c2439 100644 --- a/cookbook/locale/de/LC_MESSAGES/django.po +++ b/cookbook/locale/de/LC_MESSAGES/django.po @@ -4,6 +4,7 @@ # FIRST AUTHOR , YEAR. # # Translators: +# Benjamin Danowski , 2020 # vabene1111 , 2020 # #, fuzzy @@ -11,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-06-02 21:20+0200\n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: vabene1111 , 2020\n" "Language-Team: German (https://www.transifex.com/django-recipes/teams/110507/de/)\n" @@ -21,11 +22,11 @@ msgstr "" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:79 -#: .\cookbook\templates\forms\edit_internal_recipe.html:28 +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\recipe_view.html:111 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:45 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 msgid "Ingredients" msgstr "Zutaten" @@ -39,325 +40,425 @@ msgstr "" #: .\cookbook\forms.py:38 msgid "Default Unit to be used when inserting a new ingredient into a recipe." -msgstr "Standard Einheit für neue Zutaten." +msgstr "Standardeinheit für neue Zutaten." #: .\cookbook\forms.py:39 msgid "Default user to share newly created meal plan entries with." -msgstr "Benutzer mit denen alle neue Plan Einträge geteilt werden sollen." +msgstr "" +"Standardbenutzer, mit denen neue Einträge in der Mahlzeitenplanung geteilt " +"werden sollen." #: .\cookbook\forms.py:40 msgid "Show recently viewed recipes on search page." -msgstr "Zeige zuletzt angeschaute über der Suche." +msgstr "Zeige zuletzt angeschaute Rezepte über den Suchergebnissen." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "Anzahl Dezimalstellen, auf die gerundet werden soll." + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "Ob Kommentare unter Rezepten erstellt und angesehen werden können." + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" +"0 deaktiviert automatische Synchronisation. Wird eine Einkaufsliste " +"betrachtet, wird wird sie gemäß der Einstellung alle paar Sekunden " +"aktualisiert. Dies ist nützlich, wenn mehrere Personen eine Liste beim " +"Einkaufen verwenden, benötigt jedoch etwas Datenvolumen." + +#: .\cookbook\forms.py:61 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -"Beide Felder sind optional, wenn keins von beiden gegeben ist wird der " +"Beide Felder sind optional, wenn keins von beiden gegeben ist, wird der " "Nutzername angezeigt" -#: .\cookbook\forms.py:70 .\cookbook\forms.py:88 .\cookbook\forms.py:239 +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 msgid "Name" msgstr "Name" -#: .\cookbook\forms.py:71 .\cookbook\forms.py:89 .\cookbook\forms.py:240 -#: .\cookbook\templates\stats.html:24 +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 msgid "Keywords" msgstr "Schlagwörter" -#: .\cookbook\forms.py:72 .\cookbook\forms.py:91 +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 msgid "Preparation time in minutes" msgstr "Zubereitungszeit in Minuten" -#: .\cookbook\forms.py:73 .\cookbook\forms.py:92 +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 msgid "Waiting time (cooking/baking) in minutes" msgstr "Wartezeit (kochen/backen) in Minuten" -#: .\cookbook\forms.py:74 .\cookbook\forms.py:241 +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 msgid "Path" msgstr "Pfad" -#: .\cookbook\forms.py:75 +#: .\cookbook\forms.py:80 msgid "Storage UID" msgstr "Speicher ID" -#: .\cookbook\forms.py:90 -msgid "Instructions" -msgstr "Anleitung" - -#: .\cookbook\forms.py:96 .\cookbook\forms.py:270 -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 Informationen" - -#: .\cookbook\forms.py:106 +#: .\cookbook\forms.py:107 msgid "" "Include - [ ] in list for easier usage in markdown based " "documents." msgstr "" -"Füge - [ ] vor den Zutaten ein um sie besser in einem Markdown " -"Dokument zu verwenden." +"Füge - [ ] vor den Zutaten ein, um sie besser in einem " +"Markdown-Dokument zu verwenden." -#: .\cookbook\forms.py:118 +#: .\cookbook\forms.py:119 msgid "Export Base64 encoded image?" -msgstr "Base64 kodiertes Bild exportieren ?" +msgstr "Base64 kodiertes Bild exportieren?" -#: .\cookbook\forms.py:122 +#: .\cookbook\forms.py:123 msgid "Download export directly or show on page?" -msgstr "Direkter Download oder anzeige auf Seite ?" +msgstr "Direkter Download oder Anzeige auf Seite ?" -#: .\cookbook\forms.py:128 +#: .\cookbook\forms.py:129 msgid "Simply paste a JSON export into this textarea and click import." -msgstr "Einfach JSON in die Textbox einfügen und importieren klicken." +msgstr "Einfach JSON in die Textbox einfügen und \"Importieren\" klicken." -#: .\cookbook\forms.py:137 +#: .\cookbook\forms.py:138 msgid "New Unit" msgstr "Neue Einheit" -#: .\cookbook\forms.py:138 +#: .\cookbook\forms.py:139 msgid "New unit that other gets replaced by." -msgstr "Neue Einheit die die alte ersetzt." +msgstr "Neue Einheit, die die alte ersetzt." -#: .\cookbook\forms.py:143 +#: .\cookbook\forms.py:144 msgid "Old Unit" msgstr "Alte Einheit" -#: .\cookbook\forms.py:144 +#: .\cookbook\forms.py:145 msgid "Unit that should be replaced." -msgstr "Einheit die ersetzt werden soll." - -#: .\cookbook\forms.py:154 -msgid "New Ingredient" -msgstr "Neue Zutat" +msgstr "Einheit, die ersetzt werden soll." #: .\cookbook\forms.py:155 -msgid "New ingredient that other gets replaced by." -msgstr "Neue Zutat die die alte ersetzt." +msgid "New Food" +msgstr "Neue Zutat" -#: .\cookbook\forms.py:160 -msgid "Old Ingredient" -msgstr "Alte Zutat" +#: .\cookbook\forms.py:156 +msgid "New food that other gets replaced by." +msgstr "Neue Zutat, die die alte ersetzt." #: .\cookbook\forms.py:161 -msgid "Ingredient that should be replaced." -msgstr "Zutat die ersetzt werden soll." +msgid "Old Food" +msgstr "Alte Zutat." -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:162 +msgid "Food that should be replaced." +msgstr "Zutat, die ersetzt werden soll." + +#: .\cookbook\forms.py:174 msgid "Add your comment: " msgstr "Schreibe einen Kommentar: " -#: .\cookbook\forms.py:198 +#: .\cookbook\forms.py:199 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:201 +#: .\cookbook\forms.py:202 msgid "Leave empty for nextcloud and enter api token for dropbox." -msgstr "Bei Nextcloud leer lassen, bei Dropbox API Token eingeben." +msgstr "Für Nextcloud leer lassen, für Dropbox API-Token eingeben." -#: .\cookbook\forms.py:209 +#: .\cookbook\forms.py:210 msgid "" "Leave empty for dropbox and enter only base url for nextcloud " "(/remote.php/webdav/ is added automatically)" msgstr "" -"Bei Dropbox leer lassen, bei Nextcloud Server URL angeben " +"Für Dropbox leer lassen. Für Nextcloud Server-URL angeben, " "(/remote.php/webdav/ wird automatisch hinzugefügt)" -#: .\cookbook\forms.py:228 +#: .\cookbook\forms.py:229 msgid "Search String" -msgstr "Such Wort" +msgstr "Suchwort" -#: .\cookbook\forms.py:242 +#: .\cookbook\forms.py:243 msgid "File ID" msgstr "Datei ID" -#: .\cookbook\forms.py:260 +#: .\cookbook\forms.py:261 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:269 +#: .\cookbook\forms.py:270 msgid "You can list default users to share recipes with in the settings." msgstr "" -"Benutzer mit denen neue Rezepte standardmäßig geteilt werden sollen können " -"in den Einstellungen angegeben werden." +"Benutzer, mit denen neue Rezepte standardmäßig geteilt werden sollen, können" +" in den Einstellungen angegeben werden." -#: .\cookbook\helper\permission_helper.py:42 -#: .\cookbook\helper\permission_helper.py:60 +#: .\cookbook\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +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." + +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "Skalierungsfaktor für das Rezept." + +#: .\cookbook\forms.py:283 +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." + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 +msgid "You do not have the required permissions to view this page!" +msgstr "Du hast nicht die notwendigen Rechte, um diese Seite zu anzuzeigen!" + +#: .\cookbook\helper\permission_helper.py:123 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:51 .\cookbook\views\views.py:167 -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:65 .\cookbook\views\delete.py:136 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 msgid "You cannot interact with this object as its not owned by you!" msgstr "" -"Du kannst mit diesem Objekt nicht interagieren da es dir nicht gehört!" +"Du kannst mit diesem Objekt nicht interagieren, da es dir nicht gehört!" -#: .\cookbook\models.py:50 -msgid "Search" -msgstr "Suche" +#: .\cookbook\helper\recipe_url_import.py:35 +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\models.py:50 .\cookbook\templates\base.html:73 -#: .\cookbook\templates\meal_plan.html:4 -#: .\cookbook\templates\meal_plan.html:32 .\cookbook\views\delete.py:153 -#: .\cookbook\views\edit.py:279 .\cookbook\views\new.py:143 -msgid "Meal-Plan" -msgstr "Plan" +#: .\cookbook\helper\recipe_url_import.py:44 +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\models.py:50 .\cookbook\templates\base.html:70 -msgid "Books" -msgstr "Bücher" +#: .\cookbook\helper\recipe_url_import.py:152 +msgid "Imported from " +msgstr "Importiert von" -#: .\cookbook\models.py:56 -msgid "Small" -msgstr "Klein" - -#: .\cookbook\models.py:56 -msgid "Large" -msgstr "Groß" - -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 msgid "Breakfast" msgstr "Frühstück" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 msgid "Lunch" msgstr "Mittagessen" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 msgid "Dinner" msgstr "Abendessen" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 msgid "Other" msgstr "Andere" +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "Suche" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "Plan" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "Bücher" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "Klein" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "Groß" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "Text" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "Zeit" + #: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 msgid "Edit" msgstr "Bearbeiten" -#: .\cookbook\tables.py:103 .\cookbook\templates\books.html:38 -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 -#: .\cookbook\templates\forms\edit_internal_recipe.html:163 +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 #: .\cookbook\templates\generic\delete_template.html:5 #: .\cookbook\templates\generic\delete_template.html:13 -#: .\cookbook\templates\generic\edit_template.html:25 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 msgid "Delete" msgstr "Löschen" -#: .\cookbook\templates\base.html:59 +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "Link" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "404 Fehler" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "Die angeforderte Seite konnte nicht gefunden werden." + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "Zur Hauptseite" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "Einen Bug melden" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "API-Dokumentation" + +#: .\cookbook\templates\base.html:60 #: .\cookbook\templates\forms\ingredients.html:7 -#: .\cookbook\templates\index.html:7 .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\index.html:7 msgid "Cookbook" msgstr "Kochbuch" -#: .\cookbook\templates\base.html:66 +#: .\cookbook\templates\base.html:67 msgid "Utensils" msgstr "Utensilien" -#: .\cookbook\templates\base.html:76 +#: .\cookbook\templates\base.html:77 msgid "Shopping" msgstr "Einkaufsliste" -#: .\cookbook\templates\base.html:86 +#: .\cookbook\templates\base.html:87 msgid "Tags" msgstr "Schlagwörter" -#: .\cookbook\templates\base.html:90 .\cookbook\views\delete.py:77 -#: .\cookbook\views\edit.py:166 .\cookbook\views\lists.py:18 -#: .\cookbook\views\new.py:48 +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 msgid "Keyword" msgstr "Schlagwort" -#: .\cookbook\templates\base.html:92 +#: .\cookbook\templates\base.html:93 msgid "Batch Edit" msgstr "Massenbearbeitung" -#: .\cookbook\templates\base.html:97 +#: .\cookbook\templates\base.html:98 msgid "Storage Data" msgstr "Datenquellen" -#: .\cookbook\templates\base.html:101 +#: .\cookbook\templates\base.html:102 msgid "Storage Backends" -msgstr "Speicher Quellen" +msgstr "Speicherquellen" -#: .\cookbook\templates\base.html:103 +#: .\cookbook\templates\base.html:104 msgid "Configure Sync" -msgstr "Sync Einstellen" +msgstr "Sync einstellen" -#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\base.html:106 msgid "Discovered Recipes" msgstr "Entdeckte Rezepte" -#: .\cookbook\templates\base.html:107 +#: .\cookbook\templates\base.html:108 msgid "Discovery Log" -msgstr "Entdeckungs Log" +msgstr "Entdeckungs-Log" -#: .\cookbook\templates\base.html:109 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistiken" -#: .\cookbook\templates\base.html:111 +#: .\cookbook\templates\base.html:112 msgid "Units & Ingredients" msgstr "Einheiten & Zutaten" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:114 msgid "Import Recipe" -msgstr "Importier Rezept" +msgstr "Importiere Rezept" -#: .\cookbook\templates\base.html:129 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Einstellungen" -#: .\cookbook\templates\base.html:131 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Geschichte" -#: .\cookbook\templates\base.html:134 +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" +msgstr "System" + +#: .\cookbook\templates\base.html:138 msgid "Admin" msgstr "Admin" -#: .\cookbook\templates\base.html:138 +#: .\cookbook\templates\base.html:142 msgid "Markdown Help" -msgstr "Markdown Hilfe" +msgstr "Markdown-Hilfe" -#: .\cookbook\templates\base.html:140 +#: .\cookbook\templates\base.html:144 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:143 +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "API Browser" + +#: .\cookbook\templates\base.html:151 msgid "Logout" msgstr "Ausloggen" -#: .\cookbook\templates\base.html:148 -#: .\cookbook\templates\registration\login.html:44 +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 msgid "Login" msgstr "Einloggen" #: .\cookbook\templates\batch\edit.html:6 msgid "Batch edit Category" -msgstr "Kategorie massenbearbeitung" +msgstr "Kategorie-Massenbearbeitung" #: .\cookbook\templates\batch\edit.html:15 msgid "Batch edit Recipes" -msgstr "Rezept massenbearbeitung" +msgstr "Rezept-Massenbearbeitung" #: .\cookbook\templates\batch\edit.html:20 msgid "Add the specified keywords to all recipes containing a word" msgstr "" -"Ausgewählte Schlagwörter zu allen Rezepten die das Suchwort enthalten " +"Ausgewählte Schlagwörter zu allen Rezepten, die das Suchwort enthalten, " "hinzufügen" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:149 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 msgid "Sync" msgstr "Synchronisieren" @@ -370,12 +471,12 @@ msgid "" "On this Page you can manage all storage folder locations that should be " "monitored and synced" msgstr "" -"Auf dieser Seite kannst du alle Ordner verwalten die überwacht und " -"synchronisiert werden sollen" +"Auf dieser Seite kannst du alle Ordner verwalten, die überwacht und " +"synchronisiert werden sollen." #: .\cookbook\templates\batch\monitor.html:16 msgid "The path must be in the following format" -msgstr "Der Pfad muss in folgendem Format sein" +msgstr "Der Pfad muss folgendes Format haben" #: .\cookbook\templates\batch\monitor.html:27 msgid "Sync Now!" @@ -384,7 +485,7 @@ msgstr "Jetzt Synchronisieren!" #: .\cookbook\templates\batch\waiting.html:4 #: .\cookbook\templates\batch\waiting.html:10 msgid "Importing Recipes" -msgstr "Rezept werden importiert" +msgstr "Rezepte werden importiert" #: .\cookbook\templates\batch\waiting.html:23 msgid "" @@ -396,14 +497,14 @@ msgstr "" #: .\cookbook\templates\books.html:5 .\cookbook\templates\books.html:11 msgid "Recipe Books" -msgstr "Rezept Bücher" +msgstr "Rezeptbuch" #: .\cookbook\templates\books.html:15 msgid "New Book" msgstr "Neues Buch" -#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:73 -#: .\cookbook\templates\recipe_view.html:320 +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 msgid "by" msgstr "von" @@ -413,8 +514,8 @@ msgstr "Rezepte umschalten" #: .\cookbook\templates\books.html:54 #: .\cookbook\templates\meal_plan_entry.html:48 -#: .\cookbook\templates\recipe_view.html:96 -#: .\cookbook\templates\recipes_table.html:57 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 msgid "Last cooked" msgstr "Zuletzt gekocht" @@ -424,9 +525,11 @@ msgstr "In diesem Buch sind bisher keine Rezepte." #: .\cookbook\templates\export.html:6 msgid "Export Recipes" -msgstr "Exportier Rezepte" +msgstr "Exportiere Rezepte" #: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 msgid "Export" msgstr "Export" @@ -439,91 +542,260 @@ msgid "Copy to clipboard" msgstr "In Zwischenablage kopieren" #: .\cookbook\templates\export.html:54 -#: .\cookbook\templates\shopping_list.html:48 msgid "Copied!" msgstr "Kopiert!" #: .\cookbook\templates\export.html:61 -#: .\cookbook\templates\shopping_list.html:37 -#: .\cookbook\templates\shopping_list.html:55 msgid "Copy list to clipboard" msgstr "Kopiere Liste in Zwischenablage" #: .\cookbook\templates\forms\edit_import_recipe.html:5 #: .\cookbook\templates\forms\edit_import_recipe.html:9 msgid "Import new Recipe" -msgstr "Rezept Importieren" +msgstr "Rezept importieren" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:50 +#: .\cookbook\templates\forms\edit_internal_recipe.html:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 -#: .\cookbook\templates\recipe_view.html:367 -#: .\cookbook\templates\settings.html:27 .\cookbook\templates\settings.html:33 -#: .\cookbook\templates\settings.html:55 .\cookbook\templates\settings.html:69 +#: .\cookbook\templates\meal_plan.html:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 msgid "Save" msgstr "Speichern" -#: .\cookbook\templates\forms\edit_internal_recipe.html:8 -#: .\cookbook\templates\forms\edit_internal_recipe.html:18 +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 msgid "Edit Recipe" msgstr "Rezept bearbeiten" -#: .\cookbook\templates\forms\edit_internal_recipe.html:36 -msgid "Insert a header between the ingredients." -msgstr "Füge eine Überschrift zwischen den Zutaten ein." +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +msgid "Preperation Time" +msgstr "Vorbereitungszeit" -#: .\cookbook\templates\forms\edit_internal_recipe.html:40 -msgid "" -"Use Ctrl+Space to insert new Ingredient!
You can also save" -" the recipe using Ctrl+Shift+S." -msgstr "" -"Benutze Strg+Leertaste um eine neue Zutat " -"einzufügen!
Rezepte können mitStrg+Shift+S " -"gespeichert werden." +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +msgid "Waiting Time" +msgstr "Wartezeit" -#: .\cookbook\templates\forms\edit_internal_recipe.html:54 -#: .\cookbook\templates\generic\edit_template.html:27 -msgid "View" -msgstr "Angucken" +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +msgid "Select Keywords" +msgstr "Schlagwort wählen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:58 -#: .\cookbook\templates\generic\edit_template.html:30 -msgid "Delete original file" -msgstr "Original löschen" +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" +msgstr "Schritt" -#: .\cookbook\templates\forms\edit_internal_recipe.html:145 -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 -#: .\cookbook\views\delete.py:89 .\cookbook\views\edit.py:183 -msgid "Ingredient" -msgstr "Zutat" +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +msgid "Delete Step" +msgstr "Schritt löschen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:150 -msgid "Amount" -msgstr "Menge" +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" +msgstr "Als Überschrift anzeigen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:152 -msgid "Unit" -msgstr "Einheit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +msgid "Hide as header" +msgstr "nicht als Überschrift anzeigen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:157 +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "Nach oben" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "Nach unten" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +msgid "Step Name" +msgstr "Name des Schritts" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "Art des Schritts" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +msgid "Step time in Minutes" +msgstr "Zeit in Minuten" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +msgid "Select Unit" +msgstr "Einheit auswählen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +msgid "Create" +msgstr "Erstellen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "Wählen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "Zutat wählen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 msgid "Note" msgstr "Notiz" -#: .\cookbook\templates\forms\edit_internal_recipe.html:166 +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +msgid "Delete Ingredient" +msgstr "Zutat löschen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +msgid "Make Header" +msgstr "Überschrift machen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +msgid "Make Ingredient" +msgstr "Zutat machen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +msgid "Disable Amount" +msgstr "Menge deaktivieren" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +msgid "Enable Amount" +msgstr "Menge aktivieren" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "Anleitung" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "Speichern & Ansehen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +msgid "Add Step" +msgstr "Schritt hinzufügen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +msgid "View Recipe" +msgstr "Rezept ansehen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +msgid "Delete Recipe" +msgstr "Rezept löschen" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "Schritte" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "Fehler" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +msgid "There was an error loading the recipe!" +msgstr "Es gab einen Fehler beim Laden des Rezepts!" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "Aktualisiert" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Changes saved successfully!" +msgstr "Änderungen erfolgreich gespeichert!" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +msgid "There was an error updating the recipe!" +msgstr "Es gab einen Fehler beim aktualisieren des Rezepts!" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 msgid "Are you sure that you want to delete this ingredient?" msgstr "Bist du sicher das du diese Zutat löschen willst?" -#: .\cookbook\templates\forms\edit_internal_recipe.html:206 -#: .\cookbook\templates\markdown_info.html:155 -#: .\cookbook\templates\markdown_info.html:172 -msgid "Header" -msgstr "Überschrift" +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +msgid "Are you sure that you want to delete this step?" +msgstr "Soll dieser Schritt wirklich gelöscht werden?" -#: .\cookbook\templates\forms\edit_internal_recipe.html:209 -msgid "write header here" -msgstr "Überschrift hier eintragen" +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "There was an error loading a resource!" +msgstr "Es gab einen Fehler beim laden der Ressource!" #: .\cookbook\templates\forms\ingredients.html:15 msgid "Edit Ingredients" @@ -570,6 +842,14 @@ msgstr "Bist du sicher das %(title)s: %(object)s gelöscht werden soll " msgid "Confirm" msgstr "Bestätigen" +#: .\cookbook\templates\generic\edit_template.html:30 +msgid "View" +msgstr "Angucken" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "Original löschen" + #: .\cookbook\templates\generic\list_template.html:6 #: .\cookbook\templates\generic\list_template.html:12 msgid "List" @@ -585,16 +865,17 @@ msgstr "Alle importieren" #: .\cookbook\templates\generic\new_template.html:6 #: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 msgid "New" msgstr "Neu" #: .\cookbook\templates\generic\table_template.html:76 -#: .\cookbook\templates\recipes_table.html:86 +#: .\cookbook\templates\recipes_table.html:112 msgid "previous" msgstr "vorherige" #: .\cookbook\templates\generic\table_template.html:98 -#: .\cookbook\templates\recipes_table.html:108 +#: .\cookbook\templates\recipes_table.html:134 msgid "next" msgstr "nächste" @@ -610,8 +891,9 @@ msgstr "Koch Log" msgid "Import Recipes" msgstr "Importierte Rezepte" -#: .\cookbook\templates\import.html:14 .\cookbook\views\delete.py:53 -#: .\cookbook\views\edit.py:251 +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 msgid "Import" msgstr "Rezept Importieren" @@ -632,17 +914,20 @@ msgid "Rating" msgstr "Bewertung" #: .\cookbook\templates\include\log_cooking.html:27 -#: .\cookbook\templates\include\recipe_open_modal.html:39 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 msgid "Close" msgstr "Schließen" -#: .\cookbook\templates\include\recipe_open_modal.html:28 -#: .\cookbook\views\delete.py:24 .\cookbook\views\edit.py:312 -#: .\cookbook\views\new.py:35 +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 msgid "Recipe" msgstr "Rezept" -#: .\cookbook\templates\include\recipe_open_modal.html:53 +#: .\cookbook\templates\include\recipe_open_modal.html:32 msgid "Open Recipe" msgstr "Rezept öffnen" @@ -673,25 +958,30 @@ msgstr "Suche Rezept ..." msgid "New Recipe" msgstr "Neues Rezept" -#: .\cookbook\templates\index.html:49 +#: .\cookbook\templates\index.html:47 +msgid "Website Import" +msgstr "Webseiten Import" + +#: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Erweiterte Suche" -#: .\cookbook\templates\index.html:53 +#: .\cookbook\templates\index.html:57 msgid "Reset Search" msgstr "Suche zurücksetzen" -#: .\cookbook\templates\index.html:81 +#: .\cookbook\templates\index.html:85 msgid "Last viewed" msgstr "Zuletzt angesehen" -#: .\cookbook\templates\index.html:83 .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Rezepte" -#: .\cookbook\templates\index.html:90 -msgid "Log in to view Recipies" -msgstr "Bitte einloggen um Rezepte zu sehen" +#: .\cookbook\templates\index.html:94 +msgid "Log in to view Recipes" +msgstr "Einloggen um Rezepte anzusehen" #: .\cookbook\templates\markdown_info.html:5 #: .\cookbook\templates\markdown_info.html:13 @@ -823,27 +1113,152 @@ msgstr "" msgid "Table" msgstr "Tabelle" +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "Überschrift" + #: .\cookbook\templates\markdown_info.html:157 #: .\cookbook\templates\markdown_info.html:178 msgid "Cell" msgstr "Zelle" -#: .\cookbook\templates\meal_plan.html:39 -msgid "Week" -msgstr "Woche" +#: .\cookbook\templates\meal_plan.html:96 +msgid "New Entry" +msgstr "Neuer Eintrag" -#: .\cookbook\templates\meal_plan_entry.html:6 -msgid "Meal Plan View" -msgstr "Plan Ansicht" +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +msgid "Search Recipe" +msgstr "Rezept Suchen" +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "Titel" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "Notiz (optional)" + +#: .\cookbook\templates\meal_plan.html:126 +msgid "" +"You can use markdown to format this field. See the docs " +"here" +msgstr "" +"Dieses Feld Unterstützt Markdown Formatierung. Siehe Dokumentation" + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "Rezept Multiplikator" + +#: .\cookbook\templates\meal_plan.html:136 +msgid "Create only note" +msgstr "Nur Notiz erstellen" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "Einkaufsliste" + +#: .\cookbook\templates\meal_plan.html:155 +msgid "Shopping List currently empty" +msgstr "Einkaufsliste aktuell leer" + +#: .\cookbook\templates\meal_plan.html:158 +msgid "Open Shopping List" +msgstr "Einkaufsliste öffnen" + +#: .\cookbook\templates\meal_plan.html:172 +msgid "Plan" +msgstr "Plan" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "Plan Typen editieren" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "Hilfe anzeigen" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "Woche als iCal exportieren" + +#: .\cookbook\templates\meal_plan.html:221 #: .\cookbook\templates\meal_plan_entry.html:18 msgid "Created by" msgstr "Erstellt von" +#: .\cookbook\templates\meal_plan.html:227 #: .\cookbook\templates\meal_plan_entry.html:20 msgid "Shared with" msgstr "Geteilt mit" +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +msgid "Add to Shopping" +msgstr "Zur Einkaufsliste hinzufügen" + +#: .\cookbook\templates\meal_plan.html:280 +msgid "New meal type" +msgstr "Neue Mahlzeit" + +#: .\cookbook\templates\meal_plan.html:295 +msgid "Meal Plan Help" +msgstr "Plan Hilfe" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals both with recipes or just notes.

\n" +"

Simply select a recipe from the list of recently viewed recipes or search the one you\n" +" want and drag it to the desired plan position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry with a custom title and note. Creating only\n" +" Notes is possible by dragging the create note box into the plan.

\n" +"

Click on a recipe in order to open the detail view. Here you can also add it to the\n" +" shopping list. You can also add all recipes of a day to the shopping list by\n" +" clicking the shopping cart at the top of the table.

\n" +"

Since a common use case is to plan meals together you can define\n" +" users you want to share your plan with in the settings.\n" +"

\n" +"

You can also edit the types of meals you want to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" +"\n" +"

Das Plan Modul erlaubt das Planen von Rezepten oder auch nur Notizen.

\n" +"

Einfach ein Rezept raussuchen und an die Stelle im Plan ziehen an der es gekocht werden soll. Es kann außerdem eine Notiz und ein Titel hinzugefügt werden. Einen Eintrag nur als Notiz zu erstellen ist durch Eingabe einer Notiz und schieben des Notiz Blocks in den Plan möglich.

\n" +"

Durch klicken auf ein Rezept öffnet sich die Detailansicht. Hier kann es auch auf die Einkaufsliste hinzugefügt werden. Es können auch alle Rezepte eines Tages auf die Einkaufsliste gesetzt werden indem der Einkaufswagen in der Tabelle angeklickt wird.

\n" +"

Da Pläne häufig für mehrere Nutzer erstellt werden können andere Nutzer in den Einstellungen angegeben werden mit denen neue Pläne automatisch geteilt werden sollen.\n" +"

\n" +"

Die Mahlzeiten die geplant werden sollen können bearbeitet werden. Wenn Pläne zwischen Nutzern mit unterschiedlichen Mahlzeiten geteilt werden erscheinen alle Mahlzeiten. Um Duplikate zu vermeiden (z.B. Mittagessen und Mittag) sollten Mahlzeiten teilender Nutzer gleich benannt werden, dadurch kann das System sie zusammenfassen.

\n" +" " + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" +"Wenn eine Mahlzeit gelöscht wird werden auch alle Einträge mit dieser " +"Mahlzeit gelöscht. Die Löschung wird erst aktiv wenn die Konfiguration " +"gespeichert wird. Fortfahren ?" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "Plan Ansicht" + #: .\cookbook\templates\meal_plan_entry.html:50 msgid "Never cooked before." msgstr "Noch nie gekocht." @@ -852,66 +1267,68 @@ msgstr "Noch nie gekocht." msgid "Other meals on this day" msgstr "Andere Mahlzeiten an diesem Tag" -#: .\cookbook\templates\recipe_view.html:44 +#: .\cookbook\templates\recipe_view.html:38 msgid "Add to Book" msgstr "Zu Buch hinzufügen" -#: .\cookbook\templates\recipe_view.html:48 -msgid "Generate shopping list" -msgstr "Einkaufszettel erstellen" +#: .\cookbook\templates\recipe_view.html:44 +msgid "Add to Plan" +msgstr "Zum Plan hinzufügen" -#: .\cookbook\templates\recipe_view.html:52 -msgid "Add to Mealplan" -msgstr "Zu Plan hinzufügen" - -#: .\cookbook\templates\recipe_view.html:55 +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 msgid "Log Cooking" msgstr "Kochen Protokollieren" -#: .\cookbook\templates\recipe_view.html:58 +#: .\cookbook\templates\recipe_view.html:48 msgid "Print" msgstr "Drucken" -#: .\cookbook\templates\recipe_view.html:62 -msgid "Export recipe" -msgstr "Rezept Exportieren" +#: .\cookbook\templates\recipe_view.html:53 +msgid "Share" +msgstr "Teilen" -#: .\cookbook\templates\recipe_view.html:68 +#: .\cookbook\templates\recipe_view.html:62 msgid "in" msgstr "in" -#: .\cookbook\templates\recipe_view.html:86 -#: .\cookbook\templates\recipes_table.html:44 +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 msgid "Preparation time ca." msgstr "Zubereitungszeit ca." -#: .\cookbook\templates\recipe_view.html:92 -#: .\cookbook\templates\recipes_table.html:50 +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 msgid "Waiting time ca." msgstr "Wartezeit ca." -#: .\cookbook\templates\recipe_view.html:200 +#: .\cookbook\templates\recipe_view.html:201 #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 msgid "Recipe Image" msgstr "Rezept Bild" -#: .\cookbook\templates\recipe_view.html:223 -#: .\cookbook\templates\recipe_view.html:257 +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "Minuten" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 msgid "View external recipe" msgstr "Externes Rezept ansehen" -#: .\cookbook\templates\recipe_view.html:235 -msgid "Cloud not show a file preview. Maybe its not a PDF ?" -msgstr "" -"Datei konnte nicht angezeigt werden. Direkte anzeige funktioniert nur mit " -"PDF Dateien." +#: .\cookbook\templates\recipe_view.html:346 +msgid "External recipe image" +msgstr "Externes Rezeptbild" -#: .\cookbook\templates\recipe_view.html:242 +#: .\cookbook\templates\recipe_view.html:353 msgid "External recipe" msgstr "Externes Rezept" -#: .\cookbook\templates\recipe_view.html:244 +#: .\cookbook\templates\recipe_view.html:355 msgid "" "\n" " This is an external recipe, which means you can only view it by opening the link\n" @@ -927,45 +1344,81 @@ msgstr "" " Das Rezept kann durch drücken des Umwandeln Knopfes in ein schickes lokales Rezept verwandelt werden. Die originale Datei bleibt weiterhin verfügbar.\n" " " -#: .\cookbook\templates\recipe_view.html:255 +#: .\cookbook\templates\recipe_view.html:366 msgid "Convert now!" msgstr "Jetzt umwandeln!" -#: .\cookbook\templates\recipe_view.html:315 +#: .\cookbook\templates\recipe_view.html:384 #: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Kommentare" -#: .\cookbook\templates\recipe_view.html:336 .\cookbook\views\delete.py:112 -#: .\cookbook\views\edit.py:233 +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 msgid "Comment" msgstr "Kommentar" -#: .\cookbook\templates\recipes_table.html:53 +#: .\cookbook\templates\recipes_table.html:55 msgid "External" msgstr "Extern" -#: .\cookbook\templates\recipes_table.html:61 -msgid "Log" -msgstr "Log" - -#: .\cookbook\templates\registration\login.html:8 +#: .\cookbook\templates\registration\login.html:10 msgid "Your username and password didn't match. Please try again." msgstr "Nutzername oder Passwort falsch. Bitte versuch es erneut." +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "Registrieren" + +#: .\cookbook\templates\registration\signup.html:9 +msgid "Create your Account" +msgstr "Account erstellen" + +#: .\cookbook\templates\registration\signup.html:14 +msgid "Create User" +msgstr "Nutzer erstellen" + +#: .\cookbook\templates\rest_framework\api.html:5 +msgid "Recipe Home" +msgstr "Rezept Hauptseite" + #: .\cookbook\templates\settings.html:22 msgid "Account" msgstr "Account" -#: .\cookbook\templates\settings.html:39 +#: .\cookbook\templates\settings.html:41 msgid "Language" msgstr "Sprache" -#: .\cookbook\templates\settings.html:64 +#: .\cookbook\templates\settings.html:66 msgid "Style" msgstr "Stil" -#: .\cookbook\templates\setup.html:6 +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "API Token" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" +"Sowohl basic auth als auch token basierte Authentifizierung können für die " +"REST API verwendet werden." + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown" +" in the following examples:" +msgstr "" +"Benutzt das Token als Authorization header mit dem präfix token wie in " +"folgendem Beispiel:" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "oder" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 msgid "Cookbook Setup" msgstr "Kochbuch Setup" @@ -983,13 +1436,47 @@ msgstr "" msgid "Create Superuser" msgstr "Administrator Erstellen" -#: .\cookbook\templates\shopping_list.html:15 -msgid "Shopping List" -msgstr "Einkaufsliste" +#: .\cookbook\templates\shopping_list.html:71 +msgid "Shopping Recipes" +msgstr "Einkaufs Rezepte" -#: .\cookbook\templates\shopping_list.html:20 -msgid "Load" -msgstr "Laden" +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "Keine Rezepte ausgewählt" + +#: .\cookbook\templates\shopping_list.html:145 +msgid "Amount" +msgstr "Menge" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "Erledigt" + +#: .\cookbook\templates\shopping_list.html:257 +msgid "Copy/Export" +msgstr "Kopieren/Exportieren" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "Listen Präfix" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +msgid "There was an error updating a resource!" +msgstr "Es gab einen Fehler beim aktualisieren der Ressource!" + +#: .\cookbook\templates\shopping_list.html:487 +msgid "Object created successfully!" +msgstr "Objekt erfolgreich erstellt!" + +#: .\cookbook\templates\shopping_list.html:496 +msgid "There was an error creating a resource!" +msgstr "Es gab einen Fehler beim erstellen einer Ressource!" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" +msgstr "Bitte ein gültiges Lebensmittel eingeben" #: .\cookbook\templates\stats.html:4 msgid "Stats" @@ -1019,15 +1506,220 @@ msgstr "Externe Rezepte" msgid "Internal Recipes" msgstr "Interne Rezepte" -#: .\cookbook\views\api.py:66 +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +msgid "Invite Links" +msgstr "Einladungs Link" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "Links anzeigen" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "Backup & Wiederherstellung" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "Backup herunterladen" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "System Information" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" +"\n" +" Django Rezepte ist eine kostenlose OpenSource Anwendung. Der Source Code befindet sich auf\n" +" GitHub.\n" +" Eine Übersicht über alle Änderungen findet sich hier.\n" +" " + +#: .\cookbook\templates\system.html:53 +msgid "Media Serving" +msgstr "Media Serving" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +msgid "Warning" +msgstr "Warnung" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "Ok" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "Alles ok!" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "Secret Key" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your .env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and insecure! Please set\n" +" SECRET_KEY int the .env configuration file.\n" +" " +msgstr "" +"\n" +" You do not have a SECRET_KEY configured in your .env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and insecure! Please set\n" +" SECRET_KEY int the .env configuration file.\n" +" " + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "Debug Mode" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration file.\n" +" " +msgstr "" +"\n" +" This application is still running in debug mode. This is most likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration file.\n" +" " + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "Datenbank" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "Information" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" +"\n" +" This application is not running with a Postgres database backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " + +#: .\cookbook\templates\url_import.html:5 +msgid "URL Import" +msgstr "URL Import" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "Webseiten URL eingeben" + +#: .\cookbook\templates\url_import.html:44 +msgid "Recipe Name" +msgstr "Rezept Name" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "Auswählen" + +#: .\cookbook\templates\url_import.html:197 +msgid "All Keywords" +msgstr "Alle Schlagwörter" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "Importiert alle Schlagwörter, nicht nur die die bereits existieren." + +#: .\cookbook\templates\url_import.html:225 +msgid "Information" +msgstr "Information" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured data feel free to post an example in the\n" +" github issues." +msgstr "" +"Nur Webseiten mit ld+json oder microdata können importiert werden. Die " +"meisten großen Seiten unterstützen diese Formate. Wenn eine Seite nicht " +"importiert werden kann sie aber strukturierte Daten aufweist kann ein GitHub" +" Issue geöffnet werden." + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "Google ld+json Informationen" + +#: .\cookbook\templates\url_import.html:238 +msgid "GitHub Issues" +msgstr "GitHub Issues" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "Recipe Markup Spezifikation" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "Das Rezept wird bereits importiert, bitte warten!" + +#: .\cookbook\templates\url_import.html:322 +msgid "An error occurred while trying to import this recipe!" +msgstr "Beim importieren der Webseite ist ein Fehler aufgetreten!" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "Parameter filter_list incorrectly formatted" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "Preference for given user already exists" + +#: .\cookbook\views\api.py:338 msgid "Sync successful!" msgstr "Synchronisation erfolgreich!" -#: .\cookbook\views\api.py:69 +#: .\cookbook\views\api.py:341 msgid "Error synchronizing with Storage" msgstr "Fehler beim Synchronisieren" -#: .\cookbook\views\data.py:72 +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "Die Angefragte Seite konnte nicht gefunden werden." + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "Die angefragte Seite hat die Anfrage abgelehnt (Status Code 403)." + +#: .\cookbook\views\data.py:83 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1036,73 +1728,84 @@ msgstr[0] "" msgstr[1] "" "Massenbearbeitung erfolgreich. %(count)d Rezepte wurden aktualisiert." -#: .\cookbook\views\delete.py:65 +#: .\cookbook\views\delete.py:66 msgid "Monitor" msgstr "Monitor" -#: .\cookbook\views\delete.py:101 .\cookbook\views\lists.py:53 -#: .\cookbook\views\new.py:67 +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 msgid "Storage Backend" msgstr "Speicher Quelle" -#: .\cookbook\views\delete.py:123 .\cookbook\views\edit.py:265 -#: .\cookbook\views\new.py:117 +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" +"Speicherquelle konnte nicht gelöscht werden da sie in mindestens einem " +"Monitor verwendet wird." + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 msgid "Recipe Book" msgstr "Rezeptbuch" -#: .\cookbook\views\delete.py:142 +#: .\cookbook\views\delete.py:138 msgid "Bookmarks" msgstr "Lesezeichen" -#: .\cookbook\views\edit.py:106 -msgid "There was an error converting your ingredients amount to a number: " -msgstr "Es gab einen Fehler beim umwandeln der Menge in eine Zahl: " +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" +msgstr "Einladungslink" -#: .\cookbook\views\edit.py:122 -msgid "Recipe saved!" -msgstr "Rezept gespeichert!" +#: .\cookbook\views\edit.py:93 +msgid "Food" +msgstr "Lebensmittel" -#: .\cookbook\views\edit.py:124 -msgid "There was an error saving this recipe!" -msgstr "Es gab einen Fehler beim Speichern des Rezepts!" - -#: .\cookbook\views\edit.py:192 +#: .\cookbook\views\edit.py:102 msgid "You cannot edit this storage!" msgstr "Du kannst diese Speicherquelle nicht bearbeiten!" -#: .\cookbook\views\edit.py:211 +#: .\cookbook\views\edit.py:121 msgid "Storage saved!" msgstr "Speicherquelle gespeichert!" -#: .\cookbook\views\edit.py:213 +#: .\cookbook\views\edit.py:123 msgid "There was an error updating this storage backend!" msgstr "Es gab einen Fehler beim aktualisierung dieser Speicher Quelle!" -#: .\cookbook\views\edit.py:220 +#: .\cookbook\views\edit.py:130 msgid "Storage" msgstr "Speicher" -#: .\cookbook\views\edit.py:300 +#: .\cookbook\views\edit.py:215 msgid "Changes saved!" msgstr "Änderungen gespeichert!" -#: .\cookbook\views\edit.py:304 +#: .\cookbook\views\edit.py:219 msgid "Error saving changes!" msgstr "Fehler beim Speichern der Daten!" -#: .\cookbook\views\edit.py:334 +#: .\cookbook\views\edit.py:249 msgid "Units merged!" msgstr "Einheiten zusammengeführt!" -#: .\cookbook\views\edit.py:347 -msgid "Ingredients merged!" -msgstr "Zutaten zusammengeführt!" +#: .\cookbook\views\edit.py:262 +msgid "Foods merged!" +msgstr "Lebensmittel vereint" -#: .\cookbook\views\import_export.py:59 +#: .\cookbook\views\import_export.py:42 msgid "Recipe imported successfully!" msgstr "Rezept erfolgreich importiert!" -#: .\cookbook\views\import_export.py:106 +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "Beim Import ist etwas schief gegangen!" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "Das JSON konnte nicht gelesen werden!" + +#: .\cookbook\views\import_export.py:79 msgid "" "External recipes cannot be exported, please share the file directly or " "select an internal recipe." @@ -1110,31 +1813,41 @@ msgstr "" "Externe Rezepte können nicht exportiert werden, bitte Datei direkt teilen " "oder ein Internes Rezept auswählen." -#: .\cookbook\views\lists.py:26 +#: .\cookbook\views\lists.py:28 msgid "Import Log" msgstr "Import Log" -#: .\cookbook\views\lists.py:35 +#: .\cookbook\views\lists.py:37 msgid "Discovery" msgstr "Entdeckung" -#: .\cookbook\views\new.py:90 +#: .\cookbook\views\lists.py:57 +msgid "Shopping Lists" +msgstr "Einkaufslisten" + +#: .\cookbook\views\new.py:98 msgid "Imported new recipe!" msgstr "Importier neue Rezepte!" -#: .\cookbook\views\new.py:93 +#: .\cookbook\views\new.py:101 msgid "There was an error importing this recipe!" msgstr "Beim importieren des Rezeptes ist ein Fehler aufgetreten!" -#: .\cookbook\views\views.py:84 +#: .\cookbook\views\views.py:86 +msgid "You do not have the required permissions to perform this action!" +msgstr "" +"Sie haben nicht die notwendigen Berechtigungen um diese Aktion " +"durchzuführen!" + +#: .\cookbook\views\views.py:98 msgid "Comment saved!" msgstr "Kommentar gespeichert!" -#: .\cookbook\views\views.py:94 +#: .\cookbook\views\views.py:108 msgid "Bookmark saved!" msgstr "Lesezeichen gespeichert!" -#: .\cookbook\views\views.py:267 +#: .\cookbook\views\views.py:254 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" @@ -1143,10 +1856,18 @@ 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:274 +#: .\cookbook\views\views.py:261 .\cookbook\views\views.py:301 msgid "Passwords dont match!" msgstr "Passwörter stimmen nicht überein!" -#: .\cookbook\views\views.py:284 +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 msgid "User has been created, please login!" msgstr "Benutzer wurde erstellt, bitte einloggen!" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "Fehlerhaften Einladungslink angegeben!" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "Einladungslink ungültig oder bereits genutzt!" diff --git a/cookbook/locale/en/LC_MESSAGES/django.mo b/cookbook/locale/en/LC_MESSAGES/django.mo index 69f914c2b..edf2f8b0d 100644 Binary files a/cookbook/locale/en/LC_MESSAGES/django.mo and b/cookbook/locale/en/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/en/LC_MESSAGES/django.po b/cookbook/locale/en/LC_MESSAGES/django.po index 91f384b48..51ede4484 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: 2020-06-02 21:20+0200\n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,11 +18,11 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:79 -#: .\cookbook\templates\forms\edit_internal_recipe.html:28 +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\recipe_view.html:111 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:45 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 msgid "Ingredients" msgstr "" @@ -44,286 +44,375 @@ msgstr "" msgid "Show recently viewed recipes on search page." msgstr "" -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "" + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "" + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" + +#: .\cookbook\forms.py:61 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" msgstr "" -#: .\cookbook\forms.py:70 .\cookbook\forms.py:88 .\cookbook\forms.py:239 +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 msgid "Name" msgstr "" -#: .\cookbook\forms.py:71 .\cookbook\forms.py:89 .\cookbook\forms.py:240 -#: .\cookbook\templates\stats.html:24 +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 msgid "Keywords" msgstr "" -#: .\cookbook\forms.py:72 .\cookbook\forms.py:91 +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 msgid "Preparation time in minutes" msgstr "" -#: .\cookbook\forms.py:73 .\cookbook\forms.py:92 +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 msgid "Waiting time (cooking/baking) in minutes" msgstr "" -#: .\cookbook\forms.py:74 .\cookbook\forms.py:241 +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 msgid "Path" msgstr "" -#: .\cookbook\forms.py:75 +#: .\cookbook\forms.py:80 msgid "Storage UID" msgstr "" -#: .\cookbook\forms.py:90 -msgid "Instructions" -msgstr "" - -#: .\cookbook\forms.py:96 .\cookbook\forms.py:270 -msgid "" -"You can use markdown to format this field. See the docs here" -msgstr "" - -#: .\cookbook\forms.py:106 +#: .\cookbook\forms.py:107 msgid "" "Include - [ ] in list for easier usage in markdown based " "documents." msgstr "" -#: .\cookbook\forms.py:118 +#: .\cookbook\forms.py:119 msgid "Export Base64 encoded image?" msgstr "" -#: .\cookbook\forms.py:122 +#: .\cookbook\forms.py:123 msgid "Download export directly or show on page?" msgstr "" -#: .\cookbook\forms.py:128 +#: .\cookbook\forms.py:129 msgid "Simply paste a JSON export into this textarea and click import." msgstr "" -#: .\cookbook\forms.py:137 +#: .\cookbook\forms.py:138 msgid "New Unit" msgstr "" -#: .\cookbook\forms.py:138 +#: .\cookbook\forms.py:139 msgid "New unit that other gets replaced by." msgstr "" -#: .\cookbook\forms.py:143 +#: .\cookbook\forms.py:144 msgid "Old Unit" msgstr "" -#: .\cookbook\forms.py:144 +#: .\cookbook\forms.py:145 msgid "Unit that should be replaced." msgstr "" -#: .\cookbook\forms.py:154 -msgid "New Ingredient" -msgstr "" - #: .\cookbook\forms.py:155 -msgid "New ingredient that other gets replaced by." +msgid "New Food" msgstr "" -#: .\cookbook\forms.py:160 -msgid "Old Ingredient" +#: .\cookbook\forms.py:156 +msgid "New food that other gets replaced by." msgstr "" #: .\cookbook\forms.py:161 -msgid "Ingredient that should be replaced." +msgid "Old Food" msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:162 +msgid "Food that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:174 msgid "Add your comment: " msgstr "" -#: .\cookbook\forms.py:198 +#: .\cookbook\forms.py:199 msgid "Leave empty for dropbox and enter app password for nextcloud." msgstr "" -#: .\cookbook\forms.py:201 +#: .\cookbook\forms.py:202 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" -#: .\cookbook\forms.py:209 +#: .\cookbook\forms.py:210 msgid "" "Leave empty for dropbox and enter only base url for nextcloud (/remote." "php/webdav/ is added automatically)" msgstr "" -#: .\cookbook\forms.py:228 +#: .\cookbook\forms.py:229 msgid "Search String" msgstr "" -#: .\cookbook\forms.py:242 +#: .\cookbook\forms.py:243 msgid "File ID" msgstr "" -#: .\cookbook\forms.py:260 +#: .\cookbook\forms.py:261 msgid "You must provide at least a recipe or a title." msgstr "" -#: .\cookbook\forms.py:269 +#: .\cookbook\forms.py:270 msgid "You can list default users to share recipes with in the settings." msgstr "" -#: .\cookbook\helper\permission_helper.py:42 -#: .\cookbook\helper\permission_helper.py:60 -msgid "You are not logged in and therefore cannot view this page!" +#: .\cookbook\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +msgid "" +"You can use markdown to format this field. See the docs here" msgstr "" -#: .\cookbook\helper\permission_helper.py:51 .\cookbook\views\views.py:167 +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "" + +#: .\cookbook\forms.py:283 +msgid "A username is not required, if left blank the new user can choose one." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 msgid "You do not have the required permissions to view this page!" msgstr "" -#: .\cookbook\helper\permission_helper.py:65 .\cookbook\views\delete.py:136 +#: .\cookbook\helper\permission_helper.py:123 +msgid "You are not logged in and therefore cannot view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 msgid "You cannot interact with this object as its not owned by you!" msgstr "" -#: .\cookbook\models.py:50 -msgid "Search" +#: .\cookbook\helper\recipe_url_import.py:35 +msgid "The requested site provided malformed data and cannot be read." msgstr "" -#: .\cookbook\models.py:50 .\cookbook\templates\base.html:73 -#: .\cookbook\templates\meal_plan.html:4 -#: .\cookbook\templates\meal_plan.html:32 .\cookbook\views\delete.py:153 -#: .\cookbook\views\edit.py:279 .\cookbook\views\new.py:143 -msgid "Meal-Plan" +#: .\cookbook\helper\recipe_url_import.py:44 +msgid "" +"The requested site does not provide any recognized data format to import the " +"recipe from." msgstr "" -#: .\cookbook\models.py:50 .\cookbook\templates\base.html:70 -msgid "Books" +#: .\cookbook\helper\recipe_url_import.py:152 +msgid "Imported from " msgstr "" -#: .\cookbook\models.py:56 -msgid "Small" -msgstr "" - -#: .\cookbook\models.py:56 -msgid "Large" -msgstr "" - -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 msgid "Breakfast" msgstr "" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 msgid "Lunch" msgstr "" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 msgid "Dinner" msgstr "" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 msgid "Other" msgstr "" +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "" + #: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 msgid "Edit" msgstr "" -#: .\cookbook\tables.py:103 .\cookbook\templates\books.html:38 -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 -#: .\cookbook\templates\forms\edit_internal_recipe.html:163 +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 #: .\cookbook\templates\generic\delete_template.html:5 #: .\cookbook\templates\generic\delete_template.html:13 -#: .\cookbook\templates\generic\edit_template.html:25 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 msgid "Delete" msgstr "" -#: .\cookbook\templates\base.html:59 +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "" + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "" + +#: .\cookbook\templates\base.html:60 #: .\cookbook\templates\forms\ingredients.html:7 -#: .\cookbook\templates\index.html:7 .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\index.html:7 msgid "Cookbook" msgstr "" -#: .\cookbook\templates\base.html:66 +#: .\cookbook\templates\base.html:67 msgid "Utensils" msgstr "" -#: .\cookbook\templates\base.html:76 +#: .\cookbook\templates\base.html:77 msgid "Shopping" msgstr "" -#: .\cookbook\templates\base.html:86 +#: .\cookbook\templates\base.html:87 msgid "Tags" msgstr "" -#: .\cookbook\templates\base.html:90 .\cookbook\views\delete.py:77 -#: .\cookbook\views\edit.py:166 .\cookbook\views\lists.py:18 -#: .\cookbook\views\new.py:48 +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 msgid "Keyword" msgstr "" -#: .\cookbook\templates\base.html:92 +#: .\cookbook\templates\base.html:93 msgid "Batch Edit" msgstr "" -#: .\cookbook\templates\base.html:97 +#: .\cookbook\templates\base.html:98 msgid "Storage Data" msgstr "" -#: .\cookbook\templates\base.html:101 +#: .\cookbook\templates\base.html:102 msgid "Storage Backends" msgstr "" -#: .\cookbook\templates\base.html:103 +#: .\cookbook\templates\base.html:104 msgid "Configure Sync" msgstr "" -#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\base.html:106 msgid "Discovered Recipes" msgstr "" -#: .\cookbook\templates\base.html:107 +#: .\cookbook\templates\base.html:108 msgid "Discovery Log" msgstr "" -#: .\cookbook\templates\base.html:109 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "" -#: .\cookbook\templates\base.html:111 +#: .\cookbook\templates\base.html:112 msgid "Units & Ingredients" msgstr "" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:114 msgid "Import Recipe" msgstr "" -#: .\cookbook\templates\base.html:129 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "" -#: .\cookbook\templates\base.html:131 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "" -#: .\cookbook\templates\base.html:134 -msgid "Admin" +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" msgstr "" #: .\cookbook\templates\base.html:138 +msgid "Admin" +msgstr "" + +#: .\cookbook\templates\base.html:142 msgid "Markdown Help" msgstr "" -#: .\cookbook\templates\base.html:140 +#: .\cookbook\templates\base.html:144 msgid "GitHub" msgstr "" -#: .\cookbook\templates\base.html:143 +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "" + +#: .\cookbook\templates\base.html:151 msgid "Logout" msgstr "" -#: .\cookbook\templates\base.html:148 -#: .\cookbook\templates\registration\login.html:44 +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 msgid "Login" msgstr "" @@ -339,7 +428,7 @@ msgstr "" msgid "Add the specified keywords to all recipes containing a word" msgstr "" -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:149 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 msgid "Sync" msgstr "" @@ -380,8 +469,8 @@ msgstr "" msgid "New Book" msgstr "" -#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:73 -#: .\cookbook\templates\recipe_view.html:320 +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 msgid "by" msgstr "" @@ -391,8 +480,8 @@ msgstr "" #: .\cookbook\templates\books.html:54 #: .\cookbook\templates\meal_plan_entry.html:48 -#: .\cookbook\templates\recipe_view.html:96 -#: .\cookbook\templates\recipes_table.html:57 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 msgid "Last cooked" msgstr "" @@ -405,6 +494,8 @@ msgid "Export Recipes" msgstr "" #: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 msgid "Export" msgstr "" @@ -417,13 +508,10 @@ msgid "Copy to clipboard" msgstr "" #: .\cookbook\templates\export.html:54 -#: .\cookbook\templates\shopping_list.html:48 msgid "Copied!" msgstr "" #: .\cookbook\templates\export.html:61 -#: .\cookbook\templates\shopping_list.html:37 -#: .\cookbook\templates\shopping_list.html:55 msgid "Copy list to clipboard" msgstr "" @@ -433,71 +521,246 @@ msgid "Import new Recipe" msgstr "" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:50 +#: .\cookbook\templates\forms\edit_internal_recipe.html:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 -#: .\cookbook\templates\recipe_view.html:367 -#: .\cookbook\templates\settings.html:27 .\cookbook\templates\settings.html:33 -#: .\cookbook\templates\settings.html:55 .\cookbook\templates\settings.html:69 +#: .\cookbook\templates\meal_plan.html:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 msgid "Save" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:8 -#: .\cookbook\templates\forms\edit_internal_recipe.html:18 +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 msgid "Edit Recipe" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:36 -msgid "Insert a header between the ingredients." +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +msgid "Preperation Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:40 -msgid "" -"Use Ctrl+Space to insert new Ingredient!
You can also save " -"the recipe using Ctrl+Shift+S." +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +msgid "Waiting Time" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:54 -#: .\cookbook\templates\generic\edit_template.html:27 -msgid "View" +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +msgid "Select Keywords" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:58 -#: .\cookbook\templates\generic\edit_template.html:30 -msgid "Delete original file" +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:145 -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 -#: .\cookbook\views\delete.py:89 .\cookbook\views\edit.py:183 -msgid "Ingredient" +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +msgid "Delete Step" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:150 -msgid "Amount" +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:152 -msgid "Unit" +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +msgid "Hide as header" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:157 +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +msgid "Step Name" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +msgid "Step time in Minutes" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 msgid "Note" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:166 +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +msgid "Delete Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +msgid "Make Header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +msgid "Make Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +msgid "Disable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +msgid "Enable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +msgid "Add Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +msgid "View Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +msgid "Delete Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +msgid "There was an error loading the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Changes saved successfully!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +msgid "There was an error updating the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 msgid "Are you sure that you want to delete this ingredient?" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:206 -#: .\cookbook\templates\markdown_info.html:155 -#: .\cookbook\templates\markdown_info.html:172 -msgid "Header" +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +msgid "Are you sure that you want to delete this step?" msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:209 -msgid "write header here" +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "There was an error loading a resource!" msgstr "" #: .\cookbook\templates\forms\ingredients.html:15 @@ -542,6 +805,14 @@ msgstr "" msgid "Confirm" msgstr "" +#: .\cookbook\templates\generic\edit_template.html:30 +msgid "View" +msgstr "" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "" + #: .\cookbook\templates\generic\list_template.html:6 #: .\cookbook\templates\generic\list_template.html:12 msgid "List" @@ -557,16 +828,17 @@ msgstr "" #: .\cookbook\templates\generic\new_template.html:6 #: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 msgid "New" msgstr "" #: .\cookbook\templates\generic\table_template.html:76 -#: .\cookbook\templates\recipes_table.html:86 +#: .\cookbook\templates\recipes_table.html:112 msgid "previous" msgstr "" #: .\cookbook\templates\generic\table_template.html:98 -#: .\cookbook\templates\recipes_table.html:108 +#: .\cookbook\templates\recipes_table.html:134 msgid "next" msgstr "" @@ -582,8 +854,9 @@ msgstr "" msgid "Import Recipes" msgstr "" -#: .\cookbook\templates\import.html:14 .\cookbook\views\delete.py:53 -#: .\cookbook\views\edit.py:251 +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 msgid "Import" msgstr "" @@ -604,17 +877,20 @@ msgid "Rating" msgstr "" #: .\cookbook\templates\include\log_cooking.html:27 -#: .\cookbook\templates\include\recipe_open_modal.html:39 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 msgid "Close" msgstr "" -#: .\cookbook\templates\include\recipe_open_modal.html:28 -#: .\cookbook\views\delete.py:24 .\cookbook\views\edit.py:312 -#: .\cookbook\views\new.py:35 +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 msgid "Recipe" msgstr "" -#: .\cookbook\templates\include\recipe_open_modal.html:53 +#: .\cookbook\templates\include\recipe_open_modal.html:32 msgid "Open Recipe" msgstr "" @@ -643,24 +919,29 @@ msgstr "" msgid "New Recipe" msgstr "" -#: .\cookbook\templates\index.html:49 -msgid "Advanced Search" +#: .\cookbook\templates\index.html:47 +msgid "Website Import" msgstr "" #: .\cookbook\templates\index.html:53 +msgid "Advanced Search" +msgstr "" + +#: .\cookbook\templates\index.html:57 msgid "Reset Search" msgstr "" -#: .\cookbook\templates\index.html:81 +#: .\cookbook\templates\index.html:85 msgid "Last viewed" msgstr "" -#: .\cookbook\templates\index.html:83 .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "" -#: .\cookbook\templates\index.html:90 -msgid "Log in to view Recipies" +#: .\cookbook\templates\index.html:94 +msgid "Log in to view Recipes" msgstr "" #: .\cookbook\templates\markdown_info.html:5 @@ -788,27 +1069,150 @@ msgstr "" msgid "Table" msgstr "" +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "" + #: .\cookbook\templates\markdown_info.html:157 #: .\cookbook\templates\markdown_info.html:178 msgid "Cell" msgstr "" -#: .\cookbook\templates\meal_plan.html:39 -msgid "Week" +#: .\cookbook\templates\meal_plan.html:96 +msgid "New Entry" msgstr "" -#: .\cookbook\templates\meal_plan_entry.html:6 -msgid "Meal Plan View" +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +msgid "Search Recipe" msgstr "" +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:126 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:136 +msgid "Create only note" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:155 +msgid "Shopping List currently empty" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:158 +msgid "Open Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:172 +msgid "Plan" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:221 #: .\cookbook\templates\meal_plan_entry.html:18 msgid "Created by" msgstr "" +#: .\cookbook\templates\meal_plan.html:227 #: .\cookbook\templates\meal_plan_entry.html:20 msgid "Shared with" msgstr "" +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +msgid "Add to Shopping" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:280 +msgid "New meal type" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:295 +msgid "Meal Plan Help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals " +"both with recipes or just notes.

\n" +"

Simply select a recipe from the list of " +"recently viewed recipes or search the one you\n" +" want and drag it to the desired plan " +"position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry " +"with a custom title and note. Creating only\n" +" Notes is possible by dragging the create " +"note box into the plan.

\n" +"

Click on a recipe in order to open the detail " +"view. Here you can also add it to the\n" +" shopping list. You can also add all recipes " +"of a day to the shopping list by\n" +" clicking the shopping cart at the top of the " +"table.

\n" +"

Since a common use case is to plan meals " +"together you can define\n" +" users you want to share your plan with in " +"the settings.\n" +"

\n" +"

You can also edit the types of meals you want " +"to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will " +"appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users " +"you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "" + #: .\cookbook\templates\meal_plan_entry.html:50 msgid "Never cooked before." msgstr "" @@ -817,64 +1221,68 @@ msgstr "" msgid "Other meals on this day" msgstr "" -#: .\cookbook\templates\recipe_view.html:44 +#: .\cookbook\templates\recipe_view.html:38 msgid "Add to Book" msgstr "" -#: .\cookbook\templates\recipe_view.html:48 -msgid "Generate shopping list" +#: .\cookbook\templates\recipe_view.html:44 +msgid "Add to Plan" msgstr "" -#: .\cookbook\templates\recipe_view.html:52 -msgid "Add to Mealplan" -msgstr "" - -#: .\cookbook\templates\recipe_view.html:55 +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 msgid "Log Cooking" msgstr "" -#: .\cookbook\templates\recipe_view.html:58 +#: .\cookbook\templates\recipe_view.html:48 msgid "Print" msgstr "" -#: .\cookbook\templates\recipe_view.html:62 -msgid "Export recipe" +#: .\cookbook\templates\recipe_view.html:53 +msgid "Share" msgstr "" -#: .\cookbook\templates\recipe_view.html:68 +#: .\cookbook\templates\recipe_view.html:62 msgid "in" msgstr "" -#: .\cookbook\templates\recipe_view.html:86 -#: .\cookbook\templates\recipes_table.html:44 +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 msgid "Preparation time ca." msgstr "" -#: .\cookbook\templates\recipe_view.html:92 -#: .\cookbook\templates\recipes_table.html:50 +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 msgid "Waiting time ca." msgstr "" -#: .\cookbook\templates\recipe_view.html:200 +#: .\cookbook\templates\recipe_view.html:201 #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 msgid "Recipe Image" msgstr "" -#: .\cookbook\templates\recipe_view.html:223 -#: .\cookbook\templates\recipe_view.html:257 +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 msgid "View external recipe" msgstr "" -#: .\cookbook\templates\recipe_view.html:235 -msgid "Cloud not show a file preview. Maybe its not a PDF ?" +#: .\cookbook\templates\recipe_view.html:346 +msgid "External recipe image" msgstr "" -#: .\cookbook\templates\recipe_view.html:242 +#: .\cookbook\templates\recipe_view.html:353 msgid "External recipe" msgstr "" -#: .\cookbook\templates\recipe_view.html:244 +#: .\cookbook\templates\recipe_view.html:355 msgid "" "\n" " This is an external recipe, which means " @@ -888,45 +1296,77 @@ msgid "" " " msgstr "" -#: .\cookbook\templates\recipe_view.html:255 +#: .\cookbook\templates\recipe_view.html:366 msgid "Convert now!" msgstr "" -#: .\cookbook\templates\recipe_view.html:315 +#: .\cookbook\templates\recipe_view.html:384 #: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "" -#: .\cookbook\templates\recipe_view.html:336 .\cookbook\views\delete.py:112 -#: .\cookbook\views\edit.py:233 +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 msgid "Comment" msgstr "" -#: .\cookbook\templates\recipes_table.html:53 +#: .\cookbook\templates\recipes_table.html:55 msgid "External" msgstr "" -#: .\cookbook\templates\recipes_table.html:61 -msgid "Log" +#: .\cookbook\templates\registration\login.html:10 +msgid "Your username and password didn't match. Please try again." msgstr "" -#: .\cookbook\templates\registration\login.html:8 -msgid "Your username and password didn't match. Please try again." +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:9 +msgid "Create your Account" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:14 +msgid "Create User" +msgstr "" + +#: .\cookbook\templates\rest_framework\api.html:5 +msgid "Recipe Home" msgstr "" #: .\cookbook\templates\settings.html:22 msgid "Account" msgstr "" -#: .\cookbook\templates\settings.html:39 +#: .\cookbook\templates\settings.html:41 msgid "Language" msgstr "" -#: .\cookbook\templates\settings.html:64 +#: .\cookbook\templates\settings.html:66 msgid "Style" msgstr "" -#: .\cookbook\templates\setup.html:6 +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown " +"in the following examples:" +msgstr "" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 msgid "Cookbook Setup" msgstr "" @@ -942,12 +1382,46 @@ msgstr "" msgid "Create Superuser" msgstr "" -#: .\cookbook\templates\shopping_list.html:15 -msgid "Shopping List" +#: .\cookbook\templates\shopping_list.html:71 +msgid "Shopping Recipes" msgstr "" -#: .\cookbook\templates\shopping_list.html:20 -msgid "Load" +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:145 +msgid "Amount" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:257 +msgid "Copy/Export" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +msgid "There was an error updating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:487 +msgid "Object created successfully!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:496 +msgid "There was an error creating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" msgstr "" #: .\cookbook\templates\stats.html:4 @@ -978,128 +1452,340 @@ msgstr "" msgid "Internal Recipes" msgstr "" -#: .\cookbook\views\api.py:66 +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +msgid "Invite Links" +msgstr "" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can " +"be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:53 +msgid "Media Serving" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +msgid "Warning" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your " +".env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and " +"insecure! Please set\n" +" SECRET_KEY int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most " +"likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database " +"backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" + +#: .\cookbook\templates\url_import.html:5 +msgid "URL Import" +msgstr "" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "" + +#: .\cookbook\templates\url_import.html:44 +msgid "Recipe Name" +msgstr "" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "" + +#: .\cookbook\templates\url_import.html:197 +msgid "All Keywords" +msgstr "" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "" + +#: .\cookbook\templates\url_import.html:225 +msgid "Information" +msgstr "" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages " +"support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured " +"data feel free to post an example in the\n" +" github issues." +msgstr "" + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "" + +#: .\cookbook\templates\url_import.html:238 +msgid "GitHub Issues" +msgstr "" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "" + +#: .\cookbook\templates\url_import.html:322 +msgid "An error occurred while trying to import this recipe!" +msgstr "" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "" + +#: .\cookbook\views\api.py:338 msgid "Sync successful!" msgstr "" -#: .\cookbook\views\api.py:69 +#: .\cookbook\views\api.py:341 msgid "Error synchronizing with Storage" msgstr "" -#: .\cookbook\views\data.py:72 +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "" + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "" + +#: .\cookbook\views\data.py:83 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." msgstr[0] "" msgstr[1] "" -#: .\cookbook\views\delete.py:65 +#: .\cookbook\views\delete.py:66 msgid "Monitor" msgstr "" -#: .\cookbook\views\delete.py:101 .\cookbook\views\lists.py:53 -#: .\cookbook\views\new.py:67 +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 msgid "Storage Backend" msgstr "" -#: .\cookbook\views\delete.py:123 .\cookbook\views\edit.py:265 -#: .\cookbook\views\new.py:117 +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 msgid "Recipe Book" msgstr "" -#: .\cookbook\views\delete.py:142 +#: .\cookbook\views\delete.py:138 msgid "Bookmarks" msgstr "" -#: .\cookbook\views\edit.py:106 -msgid "There was an error converting your ingredients amount to a number: " +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" msgstr "" -#: .\cookbook\views\edit.py:122 -msgid "Recipe saved!" +#: .\cookbook\views\edit.py:93 +msgid "Food" msgstr "" -#: .\cookbook\views\edit.py:124 -msgid "There was an error saving this recipe!" -msgstr "" - -#: .\cookbook\views\edit.py:192 +#: .\cookbook\views\edit.py:102 msgid "You cannot edit this storage!" msgstr "" -#: .\cookbook\views\edit.py:211 +#: .\cookbook\views\edit.py:121 msgid "Storage saved!" msgstr "" -#: .\cookbook\views\edit.py:213 +#: .\cookbook\views\edit.py:123 msgid "There was an error updating this storage backend!" msgstr "" -#: .\cookbook\views\edit.py:220 +#: .\cookbook\views\edit.py:130 msgid "Storage" msgstr "" -#: .\cookbook\views\edit.py:300 +#: .\cookbook\views\edit.py:215 msgid "Changes saved!" msgstr "" -#: .\cookbook\views\edit.py:304 +#: .\cookbook\views\edit.py:219 msgid "Error saving changes!" msgstr "" -#: .\cookbook\views\edit.py:334 +#: .\cookbook\views\edit.py:249 msgid "Units merged!" msgstr "" -#: .\cookbook\views\edit.py:347 -msgid "Ingredients merged!" +#: .\cookbook\views\edit.py:262 +msgid "Foods merged!" msgstr "" -#: .\cookbook\views\import_export.py:59 +#: .\cookbook\views\import_export.py:42 msgid "Recipe imported successfully!" msgstr "" -#: .\cookbook\views\import_export.py:106 +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "" + +#: .\cookbook\views\import_export.py:79 msgid "" "External recipes cannot be exported, please share the file directly or " "select an internal recipe." msgstr "" -#: .\cookbook\views\lists.py:26 +#: .\cookbook\views\lists.py:28 msgid "Import Log" msgstr "" -#: .\cookbook\views\lists.py:35 +#: .\cookbook\views\lists.py:37 msgid "Discovery" msgstr "" -#: .\cookbook\views\new.py:90 +#: .\cookbook\views\lists.py:57 +msgid "Shopping Lists" +msgstr "" + +#: .\cookbook\views\new.py:98 msgid "Imported new recipe!" msgstr "" -#: .\cookbook\views\new.py:93 +#: .\cookbook\views\new.py:101 msgid "There was an error importing this recipe!" msgstr "" -#: .\cookbook\views\views.py:84 +#: .\cookbook\views\views.py:86 +msgid "You do not have the required permissions to perform this action!" +msgstr "" + +#: .\cookbook\views\views.py:98 msgid "Comment saved!" msgstr "" -#: .\cookbook\views\views.py:94 +#: .\cookbook\views\views.py:108 msgid "Bookmark saved!" msgstr "" -#: .\cookbook\views\views.py:267 +#: .\cookbook\views\views.py:254 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:274 +#: .\cookbook\views\views.py:261 .\cookbook\views\views.py:301 msgid "Passwords dont match!" msgstr "" -#: .\cookbook\views\views.py:284 +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 msgid "User has been created, please login!" msgstr "" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "" diff --git a/cookbook/locale/fr/LC_MESSAGES/django.mo b/cookbook/locale/fr/LC_MESSAGES/django.mo index 53e521b80..860e8ca32 100644 Binary files a/cookbook/locale/fr/LC_MESSAGES/django.mo and b/cookbook/locale/fr/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/fr/LC_MESSAGES/django.po b/cookbook/locale/fr/LC_MESSAGES/django.po index 01a801b8d..558fe6fe5 100644 --- a/cookbook/locale/fr/LC_MESSAGES/django.po +++ b/cookbook/locale/fr/LC_MESSAGES/django.po @@ -2,31 +2,32 @@ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. -# +# # Translators: -# Julien Teruel, 2020 +# vabene1111 , 2020 # nerdinator , 2020 -# +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-06-02 21:20+0200\n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: nerdinator , 2020\n" -"Language-Team: French (France) (https://www.transifex.com/django-recipes/teams/110507/fr_FR/)\n" +"Language-Team: French (https://www.transifex.com/django-recipes/teams/110507/" +"fr/)\n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: fr_FR\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:79 -#: .\cookbook\templates\forms\edit_internal_recipe.html:28 +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\recipe_view.html:111 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:45 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 msgid "Ingredients" msgstr "Ingrédients" @@ -52,7 +53,23 @@ msgstr "Utilisateur par défaut avec qui partager des nouveaux plans de repas." msgid "Show recently viewed recipes on search page." msgstr "Afficher les recettes récemment consultées sur la page de recherche." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "" + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "" + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" + +#: .\cookbook\forms.py:61 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -60,294 +77,375 @@ msgstr "" "Les deux champs sont optionnels. Si aucun n'est rempli le nom d'utilisateur " "sera affiché à la place " -#: .\cookbook\forms.py:70 .\cookbook\forms.py:88 .\cookbook\forms.py:239 +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 msgid "Name" msgstr "Nom" -#: .\cookbook\forms.py:71 .\cookbook\forms.py:89 .\cookbook\forms.py:240 -#: .\cookbook\templates\stats.html:24 +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 msgid "Keywords" msgstr "Mot-clés" -#: .\cookbook\forms.py:72 .\cookbook\forms.py:91 +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 msgid "Preparation time in minutes" msgstr "Le temps de préparation en minutes" -#: .\cookbook\forms.py:73 .\cookbook\forms.py:92 +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 msgid "Waiting time (cooking/baking) in minutes" msgstr "Temps d'attente (préparation/cuisson) en minutes" -#: .\cookbook\forms.py:74 .\cookbook\forms.py:241 +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 msgid "Path" msgstr "Chemin" -#: .\cookbook\forms.py:75 +#: .\cookbook\forms.py:80 msgid "Storage UID" msgstr "UID de stockage" -#: .\cookbook\forms.py:90 -msgid "Instructions" -msgstr "Instructions" - -#: .\cookbook\forms.py:96 .\cookbook\forms.py:270 -msgid "" -"You can use markdown to format this field. See the docs here" -msgstr "" -"Vous pouvez utiliser du markdown pour mettre ne forme ce champ. Voir la documentation ici" - -#: .\cookbook\forms.py:106 +#: .\cookbook\forms.py:107 msgid "" "Include - [ ] in list for easier usage in markdown based " "documents." msgstr "" -"Inclure - [ ] dans les listes pour une utilisation plus facile" -" dans les documents Markdown." +"Inclure - [ ] dans les listes pour une utilisation plus facile " +"dans les documents Markdown." -#: .\cookbook\forms.py:118 +#: .\cookbook\forms.py:119 msgid "Export Base64 encoded image?" msgstr "Exporter l'image encodée en Base64?" -#: .\cookbook\forms.py:122 +#: .\cookbook\forms.py:123 msgid "Download export directly or show on page?" msgstr "Téléchargez directement l'exportation ou la montrer sur la page?" -#: .\cookbook\forms.py:128 +#: .\cookbook\forms.py:129 msgid "Simply paste a JSON export into this textarea and click import." msgstr "" "Coller simplement une exportation JSON dans ce champ texte et cliquez sur " "importer." -#: .\cookbook\forms.py:137 +#: .\cookbook\forms.py:138 msgid "New Unit" msgstr "Nouvelle Unité" -#: .\cookbook\forms.py:138 +#: .\cookbook\forms.py:139 msgid "New unit that other gets replaced by." msgstr "La nouvelle unité qui remplacera l'autre." -#: .\cookbook\forms.py:143 +#: .\cookbook\forms.py:144 msgid "Old Unit" msgstr "Ancienne Unité" -#: .\cookbook\forms.py:144 +#: .\cookbook\forms.py:145 msgid "Unit that should be replaced." msgstr "L'unité qui doit être remplacée." -#: .\cookbook\forms.py:154 -msgid "New Ingredient" -msgstr "Nouvel Ingrédient" - #: .\cookbook\forms.py:155 -msgid "New ingredient that other gets replaced by." -msgstr "Le nouvel Ingrédient qui remplacera l'autre." +#, fuzzy +#| msgid "New Book" +msgid "New Food" +msgstr "Nouveau livre" -#: .\cookbook\forms.py:160 -msgid "Old Ingredient" -msgstr "Ancien Ingrédient" +#: .\cookbook\forms.py:156 +#, fuzzy +#| msgid "New unit that other gets replaced by." +msgid "New food that other gets replaced by." +msgstr "La nouvelle unité qui remplacera l'autre." #: .\cookbook\forms.py:161 -msgid "Ingredient that should be replaced." -msgstr "L'ingrédient qui doit être remplacé." +msgid "Old Food" +msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:162 +#, fuzzy +#| msgid "Unit that should be replaced." +msgid "Food that should be replaced." +msgstr "L'unité qui doit être remplacée." + +#: .\cookbook\forms.py:174 msgid "Add your comment: " msgstr "Ajoutez votre commentaire:" -#: .\cookbook\forms.py:198 +#: .\cookbook\forms.py:199 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:201 +#: .\cookbook\forms.py:202 msgid "Leave empty for nextcloud and enter api token for dropbox." msgstr "" "Laissez vide pour nextcloud et renseigner vote jeton d'api pour dropbox." -#: .\cookbook\forms.py:209 +#: .\cookbook\forms.py:210 msgid "" -"Leave empty for dropbox and enter only base url for nextcloud " -"(/remote.php/webdav/ is added automatically)" +"Leave empty for dropbox and enter only base url for nextcloud (/remote." +"php/webdav/ is added automatically)" msgstr "" "Laisser vide pour Dropbox et saisissez seulement l'URL de base pour " "Nextcloud (/remote.php/webdav/ est ajouté automatiquement)" -#: .\cookbook\forms.py:228 +#: .\cookbook\forms.py:229 msgid "Search String" msgstr "Texte recherché" -#: .\cookbook\forms.py:242 +#: .\cookbook\forms.py:243 msgid "File ID" msgstr "Fichier ID" -#: .\cookbook\forms.py:260 +#: .\cookbook\forms.py:261 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:269 +#: .\cookbook\forms.py:270 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\helper\permission_helper.py:42 -#: .\cookbook\helper\permission_helper.py:60 -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\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" +"Vous pouvez utiliser du markdown pour mettre ne forme ce champ. Voir la documentation ici" -#: .\cookbook\helper\permission_helper.py:51 .\cookbook\views\views.py:167 +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "" + +#: .\cookbook\forms.py:283 +msgid "A username is not required, if left blank the new user can choose one." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 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:65 .\cookbook\views\delete.py:136 +#: .\cookbook\helper\permission_helper.py:123 +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:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 msgid "You cannot interact with this object as its not owned by you!" msgstr "" "Vous ne pouvez pas interagir avec cet objet car vous ne le possédez pas!" -#: .\cookbook\models.py:50 -msgid "Search" -msgstr "Recherche" +#: .\cookbook\helper\recipe_url_import.py:35 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" -#: .\cookbook\models.py:50 .\cookbook\templates\base.html:73 -#: .\cookbook\templates\meal_plan.html:4 -#: .\cookbook\templates\meal_plan.html:32 .\cookbook\views\delete.py:153 -#: .\cookbook\views\edit.py:279 .\cookbook\views\new.py:143 -msgid "Meal-Plan" -msgstr "Plan de repas" +#: .\cookbook\helper\recipe_url_import.py:44 +msgid "" +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" -#: .\cookbook\models.py:50 .\cookbook\templates\base.html:70 -msgid "Books" -msgstr "Livres" +#: .\cookbook\helper\recipe_url_import.py:152 +#, fuzzy +#| msgid "Import Log" +msgid "Imported from " +msgstr "Importer les logs" -#: .\cookbook\models.py:56 -msgid "Small" -msgstr "Petit" - -#: .\cookbook\models.py:56 -msgid "Large" -msgstr "Grand" - -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 msgid "Breakfast" msgstr "Petit-déjeuner" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 msgid "Lunch" msgstr "Déjeuner" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 msgid "Dinner" msgstr "Diner" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 msgid "Other" msgstr "Autre" +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "Recherche" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "Plan de repas" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "Livres" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "Petit" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "Grand" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "" + #: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 msgid "Edit" msgstr "Editer" -#: .\cookbook\tables.py:103 .\cookbook\templates\books.html:38 -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 -#: .\cookbook\templates\forms\edit_internal_recipe.html:163 +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 #: .\cookbook\templates\generic\delete_template.html:5 #: .\cookbook\templates\generic\delete_template.html:13 -#: .\cookbook\templates\generic\edit_template.html:25 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 msgid "Delete" msgstr "Supprimer" -#: .\cookbook\templates\base.html:59 +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "" + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "" + +#: .\cookbook\templates\base.html:60 #: .\cookbook\templates\forms\ingredients.html:7 -#: .\cookbook\templates\index.html:7 .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\index.html:7 msgid "Cookbook" msgstr "Livre de recettes" -#: .\cookbook\templates\base.html:66 +#: .\cookbook\templates\base.html:67 msgid "Utensils" msgstr "Ustensiles" -#: .\cookbook\templates\base.html:76 +#: .\cookbook\templates\base.html:77 msgid "Shopping" msgstr "Courses" -#: .\cookbook\templates\base.html:86 +#: .\cookbook\templates\base.html:87 msgid "Tags" msgstr "Tags" -#: .\cookbook\templates\base.html:90 .\cookbook\views\delete.py:77 -#: .\cookbook\views\edit.py:166 .\cookbook\views\lists.py:18 -#: .\cookbook\views\new.py:48 +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 msgid "Keyword" msgstr "Mot-clé" -#: .\cookbook\templates\base.html:92 +#: .\cookbook\templates\base.html:93 msgid "Batch Edit" msgstr "Modification en masse" -#: .\cookbook\templates\base.html:97 +#: .\cookbook\templates\base.html:98 msgid "Storage Data" msgstr "Données de stockage" -#: .\cookbook\templates\base.html:101 +#: .\cookbook\templates\base.html:102 msgid "Storage Backends" msgstr "Backends de stockage" -#: .\cookbook\templates\base.html:103 +#: .\cookbook\templates\base.html:104 msgid "Configure Sync" msgstr "Configurer synchro" -#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\base.html:106 msgid "Discovered Recipes" msgstr "Recettes découvertes" -#: .\cookbook\templates\base.html:107 +#: .\cookbook\templates\base.html:108 msgid "Discovery Log" msgstr "Journal des découvertes" -#: .\cookbook\templates\base.html:109 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "Statistiques" -#: .\cookbook\templates\base.html:111 +#: .\cookbook\templates\base.html:112 msgid "Units & Ingredients" msgstr "Unités et ingrédients" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:114 msgid "Import Recipe" msgstr "Importer une Recette" -#: .\cookbook\templates\base.html:129 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "Paramètres" -#: .\cookbook\templates\base.html:131 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Historique" -#: .\cookbook\templates\base.html:134 +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" +msgstr "" + +#: .\cookbook\templates\base.html:138 msgid "Admin" msgstr "Admin" -#: .\cookbook\templates\base.html:138 +#: .\cookbook\templates\base.html:142 msgid "Markdown Help" msgstr "Aide Markdown" -#: .\cookbook\templates\base.html:140 +#: .\cookbook\templates\base.html:144 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:143 +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "" + +#: .\cookbook\templates\base.html:151 msgid "Logout" msgstr "Déconnexion" -#: .\cookbook\templates\base.html:148 -#: .\cookbook\templates\registration\login.html:44 +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 msgid "Login" msgstr "Connexion" @@ -361,10 +459,9 @@ msgstr "Modifier en masse les recettes" #: .\cookbook\templates\batch\edit.html:20 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" +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:149 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 msgid "Sync" msgstr "Synchro" @@ -409,8 +506,8 @@ msgstr "Livres de recettes" msgid "New Book" msgstr "Nouveau livre" -#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:73 -#: .\cookbook\templates\recipe_view.html:320 +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 msgid "by" msgstr "par" @@ -420,8 +517,8 @@ msgstr "Activer les Recettes" #: .\cookbook\templates\books.html:54 #: .\cookbook\templates\meal_plan_entry.html:48 -#: .\cookbook\templates\recipe_view.html:96 -#: .\cookbook\templates\recipes_table.html:57 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 msgid "Last cooked" msgstr "Cuisiné récemment" @@ -434,6 +531,8 @@ msgid "Export Recipes" msgstr "Exporter des Recettes" #: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 msgid "Export" msgstr "Exporter" @@ -446,13 +545,10 @@ msgid "Copy to clipboard" msgstr "Copier dans le presse-papier" #: .\cookbook\templates\export.html:54 -#: .\cookbook\templates\shopping_list.html:48 msgid "Copied!" msgstr "Copié!" #: .\cookbook\templates\export.html:61 -#: .\cookbook\templates\shopping_list.html:37 -#: .\cookbook\templates\shopping_list.html:55 msgid "Copy list to clipboard" msgstr "Copier la liste dans le presse-papier" @@ -462,75 +558,291 @@ msgid "Import new Recipe" msgstr "Importer une nouvelle Recette" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:50 +#: .\cookbook\templates\forms\edit_internal_recipe.html:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 -#: .\cookbook\templates\recipe_view.html:367 -#: .\cookbook\templates\settings.html:27 .\cookbook\templates\settings.html:33 -#: .\cookbook\templates\settings.html:55 .\cookbook\templates\settings.html:69 +#: .\cookbook\templates\meal_plan.html:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 msgid "Save" msgstr "Sauvegarder" -#: .\cookbook\templates\forms\edit_internal_recipe.html:8 -#: .\cookbook\templates\forms\edit_internal_recipe.html:18 +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 msgid "Edit Recipe" msgstr "Éditer une Recette" -#: .\cookbook\templates\forms\edit_internal_recipe.html:36 -msgid "Insert a header between the ingredients." -msgstr "Insérer un en-tête entre les ingrédients." +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +#, fuzzy +#| msgid "Preparation time ca." +msgid "Preperation Time" +msgstr "Temps de préparation appr." -#: .\cookbook\templates\forms\edit_internal_recipe.html:40 -msgid "" -"Use Ctrl+Space to insert new Ingredient!
You can also save" -" the recipe using Ctrl+Shift+S." +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +#, fuzzy +#| msgid "Waiting time ca." +msgid "Waiting Time" +msgstr "Temps de repos appr." + +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +#, fuzzy +#| msgid "Keywords" +msgid "Select Keywords" +msgstr "Mot-clés" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" msgstr "" -"Utilisez Ctrl+Espace pour insérer un nouvel Ingrédient ! " -"
Vous pouvez aussi sauvegarder la recette avec " -"Ctrl+Maj+S." -#: .\cookbook\templates\forms\edit_internal_recipe.html:54 -#: .\cookbook\templates\generic\edit_template.html:27 -msgid "View" -msgstr "Voir" +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +#, fuzzy +#| msgid "Delete" +msgid "Delete Step" +msgstr "Supprimer" -#: .\cookbook\templates\forms\edit_internal_recipe.html:58 -#: .\cookbook\templates\generic\edit_template.html:30 -msgid "Delete original file" -msgstr "Supprimer le fichier original" +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" +msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:145 -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 -#: .\cookbook\views\delete.py:89 .\cookbook\views\edit.py:183 -msgid "Ingredient" -msgstr "Ingrédients" +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#, fuzzy +#| msgid "Header" +msgid "Hide as header" +msgstr "En-tête" -#: .\cookbook\templates\forms\edit_internal_recipe.html:150 -msgid "Amount" -msgstr "Quantité" +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:152 -msgid "Unit" -msgstr "Unité" +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:157 +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +#, fuzzy +#| msgid "Name" +msgid "Step Name" +msgstr "Nom" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +#, fuzzy +#| msgid "Preparation time in minutes" +msgid "Step time in Minutes" +msgstr "Le temps de préparation en minutes" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +#, fuzzy +#| msgid "New Unit" +msgid "Select Unit" +msgstr "Nouvelle Unité" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +#, fuzzy +#| msgid "Created by" +msgid "Create" +msgstr "Créé par" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 msgid "Note" msgstr "Notes" -#: .\cookbook\templates\forms\edit_internal_recipe.html:166 +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +#, fuzzy +#| msgid "New Ingredient" +msgid "Delete Ingredient" +msgstr "Nouvel Ingrédient" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +#, fuzzy +#| msgid "Header" +msgid "Make Header" +msgstr "En-tête" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +#, fuzzy +#| msgid "New Ingredient" +msgid "Make Ingredient" +msgstr "Nouvel Ingrédient" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#, fuzzy +#| msgid "Amount" +msgid "Disable Amount" +msgstr "Quantité" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +#, fuzzy +#| msgid "Amount" +msgid "Enable Amount" +msgstr "Quantité" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "Instructions" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +#, fuzzy +#| msgid "Add to Mealplan" +msgid "Add Step" +msgstr "Ajouter au Plan des Repas" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +#, fuzzy +#| msgid "New Recipe" +msgid "View Recipe" +msgstr "Nouvelle Recette" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +#, fuzzy +#| msgid "New Recipe" +msgid "Delete Recipe" +msgstr "Nouvelle Recette" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error loading the recipe!" +msgstr "Erreur lors de la sauvegarde de cette recette !" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +#, fuzzy +#| msgid "Changes saved!" +msgid "Changes saved successfully!" +msgstr "Modifications sauvegardées !" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error updating the recipe!" +msgstr "Erreur lors de la sauvegarde de cette recette !" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 msgid "Are you sure that you want to delete this ingredient?" msgstr "Êtes-vous sur de vouloir supprimer cet ingrédient ?" -#: .\cookbook\templates\forms\edit_internal_recipe.html:206 -#: .\cookbook\templates\markdown_info.html:155 -#: .\cookbook\templates\markdown_info.html:172 -msgid "Header" -msgstr "En-tête" +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +#, fuzzy +#| msgid "Are you sure that you want to delete this ingredient?" +msgid "Are you sure that you want to delete this step?" +msgstr "Êtes-vous sur de vouloir supprimer cet ingrédient ?" -#: .\cookbook\templates\forms\edit_internal_recipe.html:209 -msgid "write header here" -msgstr "écrivez l'entête ici" +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error loading a resource!" +msgstr "Erreur lors de la sauvegarde de cette recette !" #: .\cookbook\templates\forms\ingredients.html:15 msgid "Edit Ingredients" @@ -539,14 +851,18 @@ msgstr "Editer les Ingrédients" #: .\cookbook\templates\forms\ingredients.html:16 msgid "" "\n" -" The following form can be used if, accidentally, two (or more) units or ingredients where created that should be\n" +" The following form can be used if, accidentally, two (or more) units " +"or ingredients where created that should be\n" " the same.\n" -" It merges two units or ingredients and updates all recipes using them.\n" +" It merges two units or ingredients and updates all recipes using " +"them.\n" " " msgstr "" "\n" -"Le formulaire suivant est utile lorsqu'il y a des doublons dans les unités ou les ingrédients.\n" -"Cela fusionne deux unités ou ingrédients et met à jour toutes les recettes qui les utilisent." +"Le formulaire suivant est utile lorsqu'il y a des doublons dans les unités " +"ou les ingrédients.\n" +"Cela fusionne deux unités ou ingrédients et met à jour toutes les recettes " +"qui les utilisent." #: .\cookbook\templates\forms\ingredients.html:24 #: .\cookbook\templates\stats.html:26 @@ -575,6 +891,14 @@ msgstr "Êtes-vous certain de vouloir supprimer %(title)s : %(object)s" msgid "Confirm" msgstr "Confirmer" +#: .\cookbook\templates\generic\edit_template.html:30 +msgid "View" +msgstr "Voir" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "Supprimer le fichier original" + #: .\cookbook\templates\generic\list_template.html:6 #: .\cookbook\templates\generic\list_template.html:12 msgid "List" @@ -590,16 +914,17 @@ msgstr "Tout importer" #: .\cookbook\templates\generic\new_template.html:6 #: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 msgid "New" msgstr "Nouveau" #: .\cookbook\templates\generic\table_template.html:76 -#: .\cookbook\templates\recipes_table.html:86 +#: .\cookbook\templates\recipes_table.html:112 msgid "previous" msgstr "précédent" #: .\cookbook\templates\generic\table_template.html:98 -#: .\cookbook\templates\recipes_table.html:108 +#: .\cookbook\templates\recipes_table.html:134 msgid "next" msgstr "suivant" @@ -615,8 +940,9 @@ msgstr "Log de cuisine" msgid "Import Recipes" msgstr "Importer des Recettes" -#: .\cookbook\templates\import.html:14 .\cookbook\views\delete.py:53 -#: .\cookbook\views\edit.py:251 +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 msgid "Import" msgstr "Importer" @@ -637,17 +963,20 @@ msgid "Rating" msgstr "Note" #: .\cookbook\templates\include\log_cooking.html:27 -#: .\cookbook\templates\include\recipe_open_modal.html:39 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 msgid "Close" msgstr "Fermer" -#: .\cookbook\templates\include\recipe_open_modal.html:28 -#: .\cookbook\views\delete.py:24 .\cookbook\views\edit.py:312 -#: .\cookbook\views\new.py:35 +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 msgid "Recipe" msgstr "Recette" -#: .\cookbook\templates\include\recipe_open_modal.html:53 +#: .\cookbook\templates\include\recipe_open_modal.html:32 msgid "Open Recipe" msgstr "Ouvrir la Recette" @@ -658,16 +987,22 @@ msgstr "Avertissement de sécurité" #: .\cookbook\templates\include\storage_backend_warning.html:5 msgid "" "\n" -" The Password and Token field are stored as plain text inside the database.\n" -" This is necessary because they are needed to make API requests, but it also increases the risk of\n" +" The Password and Token field are stored as plain text " +"inside the database.\n" +" This is necessary because they are needed to make API requests, but " +"it also increases the risk of\n" " someone stealing it.
\n" -" To limit the possible damage tokens or accounts with limited access can be used.\n" +" To limit the possible damage tokens or accounts with limited access " +"can be used.\n" " " msgstr "" "\n" -"Les champs Mot de passe et Token sont stockés en texte brutdans la base de données.\n" -"C'est nécessaire car ils sont utilisés pour faire des requêtes API, mais cela accroît le risque que quelqu'un les vole.
\n" -"Pour limiter la casse, des tokens ou comptes avec un accès limité devraient être utilisés." +"Les champs Mot de passe et Token sont stockés en texte brutdans la base de données.\n" +"C'est nécessaire car ils sont utilisés pour faire des requêtes API, mais " +"cela accroît le risque que quelqu'un les vole.
\n" +"Pour limiter la casse, des tokens ou comptes avec un accès limité devraient " +"être utilisés." #: .\cookbook\templates\index.html:29 msgid "Search recipe ..." @@ -677,24 +1012,33 @@ msgstr "Rechercher une recette..." msgid "New Recipe" msgstr "Nouvelle Recette" -#: .\cookbook\templates\index.html:49 +#: .\cookbook\templates\index.html:47 +#, fuzzy +#| msgid "Recipe Imports" +msgid "Website Import" +msgstr "Imports de Recette" + +#: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "Recherche avancée" -#: .\cookbook\templates\index.html:53 +#: .\cookbook\templates\index.html:57 msgid "Reset Search" msgstr "Réinitialiser la recherche" -#: .\cookbook\templates\index.html:81 +#: .\cookbook\templates\index.html:85 msgid "Last viewed" msgstr "Récemment vue" -#: .\cookbook\templates\index.html:83 .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "Recettes" -#: .\cookbook\templates\index.html:90 -msgid "Log in to view Recipies" +#: .\cookbook\templates\index.html:94 +#, fuzzy +#| msgid "Log in to view Recipies" +msgid "Log in to view Recipes" msgstr "Connectez-vous pour voir les recettes" #: .\cookbook\templates\markdown_info.html:5 @@ -705,16 +1049,26 @@ msgstr "Infos Markdown" #: .\cookbook\templates\markdown_info.html:14 msgid "" "\n" -" Markdown is lightweight markup language that can be used to format plain text easily.\n" -" This site uses the Python Markdown library to\n" -" convert your text into nice looking html. Its full markdown documentation can be found\n" -" here.\n" -" An incomplete but most likely sufficient documentation can be found below.\n" +" Markdown is lightweight markup language that can be used to format " +"plain text easily.\n" +" This site uses the Python Markdown library to\n" +" convert your text into nice looking html. Its full markdown " +"documentation can be found\n" +" here.\n" +" An incomplete but most likely sufficient documentation can be found " +"below.\n" " " msgstr "" "\n" -"Markdown est un langage de balisage léger utilisé pour formatter du texte facilement.\n" -"Ce site utilise la bibliothèque Python Markdown pour convertir votre texte en un joli format HTML. Sa documentation complète est consultable ici.\n" +"Markdown est un langage de balisage léger utilisé pour formatter du texte " +"facilement.\n" +"Ce site utilise la bibliothèque Python Markdown pour convertir votre texte en un " +"joli format HTML. Sa documentation complète est consultable ici.\n" "Une documentation incomplète mais probablement suffisante se trouve plus bas." #: .\cookbook\templates\markdown_info.html:25 @@ -761,8 +1115,8 @@ msgid "" "Lists can ordered or unorderd. It is important to leave a blank line " "before the list!" msgstr "" -"Les listes peuvent être ordonnées ou non. Il est important de laisser une" -" ligne vide avant la liste !" +"Les listes peuvent être ordonnées ou non. Il est important de laisser une " +"ligne vide avant la liste !" #: .\cookbook\templates\markdown_info.html:87 #: .\cookbook\templates\markdown_info.html:108 @@ -815,14 +1169,13 @@ msgstr "Tableaux" #: .\cookbook\templates\markdown_info.html:153 msgid "" -"Markdown tables are hard to create by hand. It is recommended to use a table" -" editor like this one." msgstr "" "Les tableaux Markdown sont difficiles à créer à la main. Il est recommandé " -"d'utiliser un éditeur de tableau comme celui-ci." +"d'utiliser un éditeur de tableau comme celui-ci." #: .\cookbook\templates\markdown_info.html:155 #: .\cookbook\templates\markdown_info.html:157 @@ -831,27 +1184,174 @@ msgstr "" msgid "Table" msgstr "Tableau" +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "En-tête" + #: .\cookbook\templates\markdown_info.html:157 #: .\cookbook\templates\markdown_info.html:178 msgid "Cell" msgstr "Cellule" -#: .\cookbook\templates\meal_plan.html:39 -msgid "Week" -msgstr "Semaine" +#: .\cookbook\templates\meal_plan.html:96 +#, fuzzy +#| msgid "New Unit" +msgid "New Entry" +msgstr "Nouvelle Unité" -#: .\cookbook\templates\meal_plan_entry.html:6 -msgid "Meal Plan View" -msgstr "Vue Plan des Repas" +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +#, fuzzy +#| msgid "Search recipe ..." +msgid "Search Recipe" +msgstr "Rechercher une recette..." +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:126 +#, fuzzy +#| msgid "" +#| "You can use markdown to format this field. See the docs here" +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" +"Vous pouvez utiliser du markdown pour mettre ne forme ce champ. Voir la documentation ici" + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:136 +#, fuzzy +#| msgid "Created by" +msgid "Create only note" +msgstr "Créé par" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "Liste de courses" + +#: .\cookbook\templates\meal_plan.html:155 +#, fuzzy +#| msgid "Shopping List" +msgid "Shopping List currently empty" +msgstr "Liste de courses" + +#: .\cookbook\templates\meal_plan.html:158 +#, fuzzy +#| msgid "Shopping List" +msgid "Open Shopping List" +msgstr "Liste de courses" + +#: .\cookbook\templates\meal_plan.html:172 +#, fuzzy +#| msgid "Meal-Plan" +msgid "Plan" +msgstr "Plan de repas" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:221 #: .\cookbook\templates\meal_plan_entry.html:18 msgid "Created by" msgstr "Créé par" +#: .\cookbook\templates\meal_plan.html:227 #: .\cookbook\templates\meal_plan_entry.html:20 msgid "Shared with" msgstr "Partagé avec" +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +#, fuzzy +#| msgid "Shopping" +msgid "Add to Shopping" +msgstr "Courses" + +#: .\cookbook\templates\meal_plan.html:280 +#, fuzzy +#| msgid "New Recipe" +msgid "New meal type" +msgstr "Nouvelle Recette" + +#: .\cookbook\templates\meal_plan.html:295 +#, fuzzy +#| msgid "Meal Plan View" +msgid "Meal Plan Help" +msgstr "Vue Plan des Repas" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals " +"both with recipes or just notes.

\n" +"

Simply select a recipe from the list of " +"recently viewed recipes or search the one you\n" +" want and drag it to the desired plan " +"position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry " +"with a custom title and note. Creating only\n" +" Notes is possible by dragging the create " +"note box into the plan.

\n" +"

Click on a recipe in order to open the detail " +"view. Here you can also add it to the\n" +" shopping list. You can also add all recipes " +"of a day to the shopping list by\n" +" clicking the shopping cart at the top of the " +"table.

\n" +"

Since a common use case is to plan meals " +"together you can define\n" +" users you want to share your plan with in " +"the settings.\n" +"

\n" +"

You can also edit the types of meals you want " +"to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will " +"appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users " +"you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "Vue Plan des Repas" + #: .\cookbook\templates\meal_plan_entry.html:50 msgid "Never cooked before." msgstr "N'a jamais été cuisiné." @@ -860,119 +1360,171 @@ msgstr "N'a jamais été cuisiné." msgid "Other meals on this day" msgstr "Autres repas ce jour" -#: .\cookbook\templates\recipe_view.html:44 +#: .\cookbook\templates\recipe_view.html:38 msgid "Add to Book" msgstr "Ajouter au Livre" -#: .\cookbook\templates\recipe_view.html:48 -msgid "Generate shopping list" -msgstr "Générer une liste de courses" - -#: .\cookbook\templates\recipe_view.html:52 -msgid "Add to Mealplan" +#: .\cookbook\templates\recipe_view.html:44 +#, fuzzy +#| msgid "Add to Mealplan" +msgid "Add to Plan" msgstr "Ajouter au Plan des Repas" -#: .\cookbook\templates\recipe_view.html:55 +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 msgid "Log Cooking" msgstr "Mémoriser la cuisine" -#: .\cookbook\templates\recipe_view.html:58 +#: .\cookbook\templates\recipe_view.html:48 msgid "Print" msgstr "Imprimer" -#: .\cookbook\templates\recipe_view.html:62 -msgid "Export recipe" -msgstr "Exporter la recette" +#: .\cookbook\templates\recipe_view.html:53 +#, fuzzy +#| msgid "Shared with" +msgid "Share" +msgstr "Partagé avec" -#: .\cookbook\templates\recipe_view.html:68 +#: .\cookbook\templates\recipe_view.html:62 msgid "in" msgstr "en" -#: .\cookbook\templates\recipe_view.html:86 -#: .\cookbook\templates\recipes_table.html:44 +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 msgid "Preparation time ca." msgstr "Temps de préparation appr." -#: .\cookbook\templates\recipe_view.html:92 -#: .\cookbook\templates\recipes_table.html:50 +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 msgid "Waiting time ca." msgstr "Temps de repos appr." -#: .\cookbook\templates\recipe_view.html:200 +#: .\cookbook\templates\recipe_view.html:201 #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 msgid "Recipe Image" msgstr "Image de la Recette" -#: .\cookbook\templates\recipe_view.html:223 -#: .\cookbook\templates\recipe_view.html:257 +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 msgid "View external recipe" msgstr "Voir la recette externe" -#: .\cookbook\templates\recipe_view.html:235 -msgid "Cloud not show a file preview. Maybe its not a PDF ?" -msgstr "" +#: .\cookbook\templates\recipe_view.html:346 +#, fuzzy +#| msgid "External recipe" +msgid "External recipe image" +msgstr "Recette externe" -#: .\cookbook\templates\recipe_view.html:242 +#: .\cookbook\templates\recipe_view.html:353 msgid "External recipe" msgstr "Recette externe" -#: .\cookbook\templates\recipe_view.html:244 +#: .\cookbook\templates\recipe_view.html:355 msgid "" "\n" -" This is an external recipe, which means you can only view it by opening the link\n" +" This is an external recipe, which means " +"you can only view it by opening the link\n" " above.\n" -" You can convert this recipe to a fancy recipe by pressing the convert button. The\n" +" You can convert this recipe to a fancy " +"recipe by pressing the convert button. The\n" " original\n" " file\n" " will still be accessible.\n" " " msgstr "" "\n" -"Ceci est une recette externe, ce qui veut dire qu'elle ne peut être consultée qu'en cliquant sur le lien ci-dessus.\n" -"Vous pouvez convertir cette recette en une Recette à l'aide du bouton Convertir. Le fichier original sera toujours accessible." +"Ceci est une recette externe, ce qui veut dire qu'elle ne peut être " +"consultée qu'en cliquant sur le lien ci-dessus.\n" +"Vous pouvez convertir cette recette en une Recette à l'aide du bouton " +"Convertir. Le fichier original sera toujours accessible." -#: .\cookbook\templates\recipe_view.html:255 +#: .\cookbook\templates\recipe_view.html:366 msgid "Convert now!" msgstr "Convertir !" -#: .\cookbook\templates\recipe_view.html:315 +#: .\cookbook\templates\recipe_view.html:384 #: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Commentaires" -#: .\cookbook\templates\recipe_view.html:336 .\cookbook\views\delete.py:112 -#: .\cookbook\views\edit.py:233 +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 msgid "Comment" msgstr "Commentaire" -#: .\cookbook\templates\recipes_table.html:53 +#: .\cookbook\templates\recipes_table.html:55 msgid "External" msgstr "Externe" -#: .\cookbook\templates\recipes_table.html:61 -msgid "Log" -msgstr "Log" - -#: .\cookbook\templates\registration\login.html:8 +#: .\cookbook\templates\registration\login.html:10 msgid "Your username and password didn't match. Please try again." msgstr "" "Votre nom d'utilisateur et mot de passe ne correspondent pas. Veuillez " "réessayer." +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:9 +#, fuzzy +#| msgid "Created by" +msgid "Create your Account" +msgstr "Créé par" + +#: .\cookbook\templates\registration\signup.html:14 +#, fuzzy +#| msgid "Create Superuser" +msgid "Create User" +msgstr "Créer un super-utilisateur" + +#: .\cookbook\templates\rest_framework\api.html:5 +#, fuzzy +#| msgid "Recipe Image" +msgid "Recipe Home" +msgstr "Image de la Recette" + #: .\cookbook\templates\settings.html:22 msgid "Account" msgstr "Compte" -#: .\cookbook\templates\settings.html:39 +#: .\cookbook\templates\settings.html:41 msgid "Language" msgstr "Langue" -#: .\cookbook\templates\settings.html:64 +#: .\cookbook\templates\settings.html:66 msgid "Style" msgstr "Style" -#: .\cookbook\templates\setup.html:6 +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown " +"in the following examples:" +msgstr "" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 msgid "Cookbook Setup" msgstr "Paramètres du Livre de recettes" @@ -990,13 +1542,59 @@ msgstr "" msgid "Create Superuser" msgstr "Créer un super-utilisateur" -#: .\cookbook\templates\shopping_list.html:15 -msgid "Shopping List" +#: .\cookbook\templates\shopping_list.html:71 +#, fuzzy +#| msgid "Shopping List" +msgid "Shopping Recipes" msgstr "Liste de courses" -#: .\cookbook\templates\shopping_list.html:20 -msgid "Load" -msgstr "Charger" +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:145 +#, fuzzy +#| msgid "Account" +msgid "Amount" +msgstr "Compte" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:257 +#, fuzzy +#| msgid "Export" +msgid "Copy/Export" +msgstr "Exporter" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error updating a resource!" +msgstr "Erreur lors de la sauvegarde de cette recette !" + +#: .\cookbook\templates\shopping_list.html:487 +#, fuzzy +#| msgid "Recipe imported successfully!" +msgid "Object created successfully!" +msgstr "Recette importée avec succès !" + +#: .\cookbook\templates\shopping_list.html:496 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error creating a resource!" +msgstr "Erreur lors de la sauvegarde de cette recette !" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" +msgstr "" #: .\cookbook\templates\stats.html:4 msgid "Stats" @@ -1026,15 +1624,220 @@ msgstr "Recettes externes" msgid "Internal Recipes" msgstr "Recettes internes" -#: .\cookbook\views\api.py:66 +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +#, fuzzy +#| msgid "Images & Links" +msgid "Invite Links" +msgstr "Images & Liens" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can " +"be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:53 +#, fuzzy +#| msgid "Servings" +msgid "Media Serving" +msgstr "Portion" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +#, fuzzy +#| msgid "Security Warning" +msgid "Warning" +msgstr "Avertissement de sécurité" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your " +".env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and " +"insecure! Please set\n" +" SECRET_KEY int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most " +"likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database " +"backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" + +#: .\cookbook\templates\url_import.html:5 +#, fuzzy +#| msgid "Import" +msgid "URL Import" +msgstr "Importer" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "" + +#: .\cookbook\templates\url_import.html:44 +#, fuzzy +#| msgid "Recipe Image" +msgid "Recipe Name" +msgstr "Image de la Recette" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "" + +#: .\cookbook\templates\url_import.html:197 +#, fuzzy +#| msgid "Keywords" +msgid "All Keywords" +msgstr "Mot-clés" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "" + +#: .\cookbook\templates\url_import.html:225 +#, fuzzy +#| msgid "Formatting" +msgid "Information" +msgstr "Mise en forme" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages " +"support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured " +"data feel free to post an example in the\n" +" github issues." +msgstr "" + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "" + +#: .\cookbook\templates\url_import.html:238 +#, fuzzy +#| msgid "GitHub" +msgid "GitHub Issues" +msgstr "GitHub" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "" + +#: .\cookbook\templates\url_import.html:322 +#, fuzzy +#| msgid "There was an error importing this recipe!" +msgid "An error occurred while trying to import this recipe!" +msgstr "Une erreur s'est produite lors de l'import de cette recette !" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "" + +#: .\cookbook\views\api.py:338 msgid "Sync successful!" msgstr "Synchro réussie !" -#: .\cookbook\views\api.py:69 +#: .\cookbook\views\api.py:341 msgid "Error synchronizing with Storage" msgstr "Erreur lors de la synchronisation avec le stockage" -#: .\cookbook\views\data.py:72 +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "" + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "" + +#: .\cookbook\views\data.py:83 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." @@ -1043,120 +1846,208 @@ msgstr[0] "" msgstr[1] "" "Modification en masse effectuée. %(count)drecettes ont été mises à jour." -#: .\cookbook\views\delete.py:65 +#: .\cookbook\views\delete.py:66 msgid "Monitor" msgstr "Surveiller" -#: .\cookbook\views\delete.py:101 .\cookbook\views\lists.py:53 -#: .\cookbook\views\new.py:67 +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 msgid "Storage Backend" msgstr "Backend de stockage" -#: .\cookbook\views\delete.py:123 .\cookbook\views\edit.py:265 -#: .\cookbook\views\new.py:117 +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 msgid "Recipe Book" msgstr "Livre de recettes" -#: .\cookbook\views\delete.py:142 +#: .\cookbook\views\delete.py:138 msgid "Bookmarks" msgstr "Marques pages" -#: .\cookbook\views\edit.py:106 -msgid "There was an error converting your ingredients amount to a number: " -msgstr "La conversion des quantités d'ingrédients en nombre a échoué :" +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" +msgstr "" -#: .\cookbook\views\edit.py:122 -msgid "Recipe saved!" -msgstr "Recette sauvegardée !" +#: .\cookbook\views\edit.py:93 +msgid "Food" +msgstr "" -#: .\cookbook\views\edit.py:124 -msgid "There was an error saving this recipe!" -msgstr "Erreur lors de la sauvegarde de cette recette !" - -#: .\cookbook\views\edit.py:192 +#: .\cookbook\views\edit.py:102 msgid "You cannot edit this storage!" msgstr "Vous ne pouvez pas modifier ce stockage !" -#: .\cookbook\views\edit.py:211 +#: .\cookbook\views\edit.py:121 msgid "Storage saved!" msgstr "Stockage sauvegardé !" -#: .\cookbook\views\edit.py:213 +#: .\cookbook\views\edit.py:123 msgid "There was an error updating this storage backend!" msgstr "" "Une erreur s'est produite lors de la mise à jour de ce backend de stockage !" -#: .\cookbook\views\edit.py:220 +#: .\cookbook\views\edit.py:130 msgid "Storage" msgstr "Stockage" -#: .\cookbook\views\edit.py:300 +#: .\cookbook\views\edit.py:215 msgid "Changes saved!" msgstr "Modifications sauvegardées !" -#: .\cookbook\views\edit.py:304 +#: .\cookbook\views\edit.py:219 msgid "Error saving changes!" msgstr "Erreur lors de la sauvegarde des modifications !" -#: .\cookbook\views\edit.py:334 +#: .\cookbook\views\edit.py:249 msgid "Units merged!" msgstr "Unités fusionnées !" -#: .\cookbook\views\edit.py:347 -msgid "Ingredients merged!" -msgstr "Ingrédients fusionnés !" +#: .\cookbook\views\edit.py:262 +#, fuzzy +#| msgid "Units merged!" +msgid "Foods merged!" +msgstr "Unités fusionnées !" -#: .\cookbook\views\import_export.py:59 +#: .\cookbook\views\import_export.py:42 msgid "Recipe imported successfully!" msgstr "Recette importée avec succès !" -#: .\cookbook\views\import_export.py:106 +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "" + +#: .\cookbook\views\import_export.py:79 msgid "" "External recipes cannot be exported, please share the file directly or " "select an internal recipe." msgstr "" -"Les recettes externes ne peuvent pas être exportées. Vous pouvez partager ce" -" fichier directement ou sélectionner une recette interne." +"Les recettes externes ne peuvent pas être exportées. Vous pouvez partager ce " +"fichier directement ou sélectionner une recette interne." -#: .\cookbook\views\lists.py:26 +#: .\cookbook\views\lists.py:28 msgid "Import Log" msgstr "Importer les logs" -#: .\cookbook\views\lists.py:35 +#: .\cookbook\views\lists.py:37 msgid "Discovery" msgstr "Découverte" -#: .\cookbook\views\new.py:90 +#: .\cookbook\views\lists.py:57 +#, fuzzy +#| msgid "Shopping List" +msgid "Shopping Lists" +msgstr "Liste de courses" + +#: .\cookbook\views\new.py:98 msgid "Imported new recipe!" msgstr "Nouvelle recette importée !" -#: .\cookbook\views\new.py:93 +#: .\cookbook\views\new.py:101 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:84 +#: .\cookbook\views\views.py:86 +#, fuzzy +#| msgid "You do not have the required permissions to view this page!" +msgid "You do not have the required permissions to perform this action!" +msgstr "Vous n'avez pas les droits suffisants pour afficher cette page !" + +#: .\cookbook\views\views.py:98 msgid "Comment saved!" msgstr "Commentaire enregistré !" -#: .\cookbook\views\views.py:94 +#: .\cookbook\views\views.py:108 msgid "Bookmark saved!" msgstr "Marque-page enregistré !" -#: .\cookbook\views\views.py:267 +#: .\cookbook\views\views.py:254 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." +"forgotten your superuser credentials please consult the django documentation " +"on how to reset passwords." msgstr "" "Cette page d'installation peut uniquement être utilisée pour créer le " "premier utilisateur ! Si vous avez oublié vos identifiants de super-" "utilisateur, counsultez la documentation Django pour savoir comment " "réinitialiser le mot de passe." -#: .\cookbook\views\views.py:274 +#: .\cookbook\views\views.py:261 .\cookbook\views\views.py:301 msgid "Passwords dont match!" msgstr "Les mots de passe ne correspondent pas !" -#: .\cookbook\views\views.py:284 +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 msgid "User has been created, please login!" msgstr "L'utilisateur a été créer, veuillez vous connecter !" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "" + +#~ msgid "New ingredient that other gets replaced by." +#~ msgstr "Le nouvel Ingrédient qui remplacera l'autre." + +#~ msgid "Old Ingredient" +#~ msgstr "Ancien Ingrédient" + +#~ msgid "Ingredient that should be replaced." +#~ msgstr "L'ingrédient qui doit être remplacé." + +#~ msgid "Insert a header between the ingredients." +#~ msgstr "Insérer un en-tête entre les ingrédients." + +#~ msgid "" +#~ "Use Ctrl+Space to insert new Ingredient!
You can also " +#~ "save the recipe using Ctrl+Shift+S." +#~ msgstr "" +#~ "Utilisez Ctrl+Espace pour insérer un nouvel Ingrédient ! " +#~ "
Vous pouvez aussi sauvegarder la recette avec Ctrl+Maj" +#~ "+S." + +#~ msgid "Ingredient" +#~ msgstr "Ingrédients" + +#~ msgid "Unit" +#~ msgstr "Unité" + +#~ msgid "write header here" +#~ msgstr "écrivez l'entête ici" + +#~ msgid "Week" +#~ msgstr "Semaine" + +#~ msgid "Generate shopping list" +#~ msgstr "Générer une liste de courses" + +#~ msgid "Export recipe" +#~ msgstr "Exporter la recette" + +#~ msgid "Cloud not show a file preview. Maybe its not a PDF ?" +#~ msgstr "" +#~ "Impossible de prévisualiser le fichier. Il s'agit peut-être d'un PDF ?" + +#~ msgid "Log" +#~ msgstr "Log" + +#~ msgid "Load" +#~ msgstr "Charger" + +#~ msgid "There was an error converting your ingredients amount to a number: " +#~ msgstr "La conversion des quantités d'ingrédients en nombre a échoué :" + +#~ msgid "Recipe saved!" +#~ msgstr "Recette sauvegardée !" + +#~ msgid "Ingredients merged!" +#~ msgstr "Ingrédients fusionnés !" diff --git a/cookbook/locale/nl/LC_MESSAGES/django.mo b/cookbook/locale/nl/LC_MESSAGES/django.mo index 8325cadf7..dc496223e 100644 Binary files a/cookbook/locale/nl/LC_MESSAGES/django.mo and b/cookbook/locale/nl/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/nl/LC_MESSAGES/django.po b/cookbook/locale/nl/LC_MESSAGES/django.po index 31f013d78..670cc2866 100644 --- a/cookbook/locale/nl/LC_MESSAGES/django.po +++ b/cookbook/locale/nl/LC_MESSAGES/django.po @@ -2,30 +2,31 @@ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. -# +# # Translators: # D0T1X , 2020 -# +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-06-02 21:20+0200\n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" "PO-Revision-Date: 2020-06-02 19:28+0000\n" "Last-Translator: D0T1X , 2020\n" -"Language-Team: Dutch (https://www.transifex.com/django-recipes/teams/110507/nl/)\n" +"Language-Team: Dutch (https://www.transifex.com/django-recipes/teams/110507/" +"nl/)\n" +"Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:79 -#: .\cookbook\templates\forms\edit_internal_recipe.html:28 +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 #: .\cookbook\templates\forms\ingredients.html:34 -#: .\cookbook\templates\recipe_view.html:111 -#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:45 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 msgid "Ingredients" msgstr "ingrediënten" @@ -45,14 +46,29 @@ msgstr "" #: .\cookbook\forms.py:39 msgid "Default user to share newly created meal plan entries with." -msgstr "" -"Standaard gebruiker om nieuw gecreëerde mailtijdsplannen met te delen." +msgstr "Standaard gebruiker om nieuw gecreëerde mailtijdsplannen met te delen." #: .\cookbook\forms.py:40 msgid "Show recently viewed recipes on search page." msgstr "Geef recent bekeken recepten op de zoekpagina weer." -#: .\cookbook\forms.py:56 +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "" + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "" + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" + +#: .\cookbook\forms.py:61 msgid "" "Both fields are optional. If none are given the username will be displayed " "instead" @@ -60,44 +76,34 @@ msgstr "" "Beide velden zijn optioneel. indien geen zijn gespecificeerd wordt de " "gebruikersnaam weergegeven." -#: .\cookbook\forms.py:70 .\cookbook\forms.py:88 .\cookbook\forms.py:239 +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 msgid "Name" msgstr "Naam" -#: .\cookbook\forms.py:71 .\cookbook\forms.py:89 .\cookbook\forms.py:240 -#: .\cookbook\templates\stats.html:24 +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 msgid "Keywords" msgstr "Sleutelwoorden" -#: .\cookbook\forms.py:72 .\cookbook\forms.py:91 +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 msgid "Preparation time in minutes" msgstr "Voorbereidingstijd in minuten" -#: .\cookbook\forms.py:73 .\cookbook\forms.py:92 +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 msgid "Waiting time (cooking/baking) in minutes" msgstr "Wacht tijd in minuten (koken en bakken)" -#: .\cookbook\forms.py:74 .\cookbook\forms.py:241 +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 msgid "Path" msgstr "pad" -#: .\cookbook\forms.py:75 +#: .\cookbook\forms.py:80 msgid "Storage UID" msgstr "Opslag UID" -#: .\cookbook\forms.py:90 -msgid "Instructions" -msgstr "bereidingswijze" - -#: .\cookbook\forms.py:96 .\cookbook\forms.py:270 -msgid "" -"You can use markdown to format this field. See the docs here" -msgstr "" -"Je kunt markdown gebruiken om dit veld te formatteren. Bekijk de documentatie hier." - -#: .\cookbook\forms.py:106 +#: .\cookbook\forms.py:107 msgid "" "Include - [ ] in list for easier usage in markdown based " "documents." @@ -105,244 +111,335 @@ msgstr "" "Voeg -[ ]in de lijst toe voor gemakkelijker gebruik in op " "markdown gebaseerde documenten." -#: .\cookbook\forms.py:118 +#: .\cookbook\forms.py:119 msgid "Export Base64 encoded image?" msgstr "Afbeelding exporteren in Base64 codering?" -#: .\cookbook\forms.py:122 +#: .\cookbook\forms.py:123 msgid "Download export directly or show on page?" msgstr "Wilt u de export direct downloaden of op de pagina weergeven?" -#: .\cookbook\forms.py:128 +#: .\cookbook\forms.py:129 msgid "Simply paste a JSON export into this textarea and click import." msgstr "Plak een JSON export in dit tekstveld en klik op importeren." -#: .\cookbook\forms.py:137 +#: .\cookbook\forms.py:138 msgid "New Unit" msgstr "Nieuwe eenheid" -#: .\cookbook\forms.py:138 +#: .\cookbook\forms.py:139 msgid "New unit that other gets replaced by." msgstr "Nieuwe eenheid waarmee de andere wordt vervangen." -#: .\cookbook\forms.py:143 +#: .\cookbook\forms.py:144 msgid "Old Unit" msgstr "Oude eenheid" -#: .\cookbook\forms.py:144 +#: .\cookbook\forms.py:145 msgid "Unit that should be replaced." msgstr "Eenheid wat vervangen dient te worden." -#: .\cookbook\forms.py:154 -msgid "New Ingredient" -msgstr "nieuw ingrediënt" - #: .\cookbook\forms.py:155 -msgid "New ingredient that other gets replaced by." -msgstr "Nieuw ingrediënt waarmee de andere wordt vervangen. " +#, fuzzy +#| msgid "New Book" +msgid "New Food" +msgstr "Nieuw boek" -#: .\cookbook\forms.py:160 -msgid "Old Ingredient" -msgstr "oud ingrediënt" +#: .\cookbook\forms.py:156 +#, fuzzy +#| msgid "New unit that other gets replaced by." +msgid "New food that other gets replaced by." +msgstr "Nieuwe eenheid waarmee de andere wordt vervangen." #: .\cookbook\forms.py:161 -msgid "Ingredient that should be replaced." -msgstr "Ingrediënten die vervangen dienen te worden." +msgid "Old Food" +msgstr "" -#: .\cookbook\forms.py:173 +#: .\cookbook\forms.py:162 +#, fuzzy +#| msgid "Unit that should be replaced." +msgid "Food that should be replaced." +msgstr "Eenheid wat vervangen dient te worden." + +#: .\cookbook\forms.py:174 msgid "Add your comment: " msgstr "Voeg een opmerking toe:" -#: .\cookbook\forms.py:198 +#: .\cookbook\forms.py:199 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:201 +#: .\cookbook\forms.py:202 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:209 +#: .\cookbook\forms.py:210 msgid "" -"Leave empty for dropbox and enter only base url for nextcloud " -"(/remote.php/webdav/ is added automatically)" +"Leave empty for dropbox and enter only base url for nextcloud (/remote." +"php/webdav/ is added automatically)" msgstr "" -"Laat leeg voor dropbox en vul enkel de base url voor nextcloud in. " -"(/remote.php/webdav/ wordt automatisch toegevoegd.)" +"Laat leeg voor dropbox en vul enkel de base url voor nextcloud in. (/" +"remote.php/webdav/ wordt automatisch toegevoegd.)" -#: .\cookbook\forms.py:228 +#: .\cookbook\forms.py:229 msgid "Search String" msgstr "Zoekopdracht" -#: .\cookbook\forms.py:242 +#: .\cookbook\forms.py:243 msgid "File ID" msgstr "Bestand ID" -#: .\cookbook\forms.py:260 +#: .\cookbook\forms.py:261 msgid "You must provide at least a recipe or a title." msgstr "U dient minimaal een recept of een titel te specificeren." -#: .\cookbook\forms.py:269 +#: .\cookbook\forms.py:270 msgid "You can list default users to share recipes with in the settings." msgstr "" -"U kunt in de instellingen standaard gebruikers in stellen om de recepten met" -" te delen." +"U kunt in de instellingen standaard gebruikers in stellen om de recepten met " +"te delen." -#: .\cookbook\helper\permission_helper.py:42 -#: .\cookbook\helper\permission_helper.py:60 +#: .\cookbook\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" +"Je kunt markdown gebruiken om dit veld te formatteren. Bekijk de documentatie hier." + +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "" + +#: .\cookbook\forms.py:283 +msgid "A username is not required, if left blank the new user can choose one." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 +msgid "You do not have the required permissions to view this page!" +msgstr "U heeft niet de benodigde machtigingen om deze pagina te bekijken!" + +#: .\cookbook\helper\permission_helper.py:123 msgid "You are not logged in and therefore cannot view this page!" msgstr "" "U bent niet ingelogd en bent daarom niet gemachtigd deze pagina te bekijken!" -#: .\cookbook\helper\permission_helper.py:51 .\cookbook\views\views.py:167 -msgid "You do not have the required permissions to view this page!" -msgstr "U heeft niet de benodigde machtigingen om deze pagina te bekijken!" - -#: .\cookbook\helper\permission_helper.py:65 .\cookbook\views\delete.py:136 +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 msgid "You cannot interact with this object as its not owned by you!" msgstr "U kunt dit object niet bewerken omdat u de eigenaar niet bent!" -#: .\cookbook\models.py:50 -msgid "Search" -msgstr "Zoeken" +#: .\cookbook\helper\recipe_url_import.py:35 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" -#: .\cookbook\models.py:50 .\cookbook\templates\base.html:73 -#: .\cookbook\templates\meal_plan.html:4 -#: .\cookbook\templates\meal_plan.html:32 .\cookbook\views\delete.py:153 -#: .\cookbook\views\edit.py:279 .\cookbook\views\new.py:143 -msgid "Meal-Plan" -msgstr "Maaltijdplan" +#: .\cookbook\helper\recipe_url_import.py:44 +msgid "" +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" -#: .\cookbook\models.py:50 .\cookbook\templates\base.html:70 -msgid "Books" -msgstr "Boeken" +#: .\cookbook\helper\recipe_url_import.py:152 +#, fuzzy +#| msgid "Import Log" +msgid "Imported from " +msgstr "Import logboek" -#: .\cookbook\models.py:56 -msgid "Small" -msgstr "Klein" - -#: .\cookbook\models.py:56 -msgid "Large" -msgstr "Groot" - -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 msgid "Breakfast" msgstr "Ontbijt" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 msgid "Lunch" msgstr "Lunch" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 msgid "Dinner" msgstr "Avondeten" -#: .\cookbook\models.py:219 +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 msgid "Other" msgstr "Overige" +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "Zoeken" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "Maaltijdplan" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "Boeken" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "Klein" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "Groot" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "" + #: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 #: .\cookbook\templates\generic\edit_template.html:6 #: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 msgid "Edit" msgstr "Bewerken" -#: .\cookbook\tables.py:103 .\cookbook\templates\books.html:38 -#: .\cookbook\templates\forms\edit_internal_recipe.html:52 -#: .\cookbook\templates\forms\edit_internal_recipe.html:163 +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 #: .\cookbook\templates\generic\delete_template.html:5 #: .\cookbook\templates\generic\delete_template.html:13 -#: .\cookbook\templates\generic\edit_template.html:25 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 msgid "Delete" msgstr "verwijderen" -#: .\cookbook\templates\base.html:59 +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "" + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "" + +#: .\cookbook\templates\base.html:60 #: .\cookbook\templates\forms\ingredients.html:7 -#: .\cookbook\templates\index.html:7 .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\index.html:7 msgid "Cookbook" msgstr "kookboek" -#: .\cookbook\templates\base.html:66 +#: .\cookbook\templates\base.html:67 msgid "Utensils" msgstr "gebruiksvoorwerpen" -#: .\cookbook\templates\base.html:76 +#: .\cookbook\templates\base.html:77 msgid "Shopping" msgstr "Winkelen" -#: .\cookbook\templates\base.html:86 +#: .\cookbook\templates\base.html:87 msgid "Tags" msgstr "Tags" -#: .\cookbook\templates\base.html:90 .\cookbook\views\delete.py:77 -#: .\cookbook\views\edit.py:166 .\cookbook\views\lists.py:18 -#: .\cookbook\views\new.py:48 +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 msgid "Keyword" msgstr "Sleutelwoord" -#: .\cookbook\templates\base.html:92 +#: .\cookbook\templates\base.html:93 msgid "Batch Edit" msgstr "Batch bewerking" -#: .\cookbook\templates\base.html:97 +#: .\cookbook\templates\base.html:98 msgid "Storage Data" msgstr "Opslag data" -#: .\cookbook\templates\base.html:101 +#: .\cookbook\templates\base.html:102 msgid "Storage Backends" msgstr "Opslag Backends" -#: .\cookbook\templates\base.html:103 +#: .\cookbook\templates\base.html:104 msgid "Configure Sync" msgstr "Synchronisatie configureren" -#: .\cookbook\templates\base.html:105 +#: .\cookbook\templates\base.html:106 msgid "Discovered Recipes" msgstr "Ontdekte recepten" -#: .\cookbook\templates\base.html:107 +#: .\cookbook\templates\base.html:108 msgid "Discovery Log" msgstr "Ontdekkingslogboek" -#: .\cookbook\templates\base.html:109 .\cookbook\templates\stats.html:10 +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 msgid "Statistics" msgstr "statistieken" -#: .\cookbook\templates\base.html:111 +#: .\cookbook\templates\base.html:112 msgid "Units & Ingredients" msgstr "eenheden & ingrediënten" -#: .\cookbook\templates\base.html:113 +#: .\cookbook\templates\base.html:114 msgid "Import Recipe" msgstr "Recept importeren" -#: .\cookbook\templates\base.html:129 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 #: .\cookbook\templates\settings.html:16 msgid "Settings" msgstr "instellingen" -#: .\cookbook\templates\base.html:131 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 #: .\cookbook\templates\history.html:14 msgid "History" msgstr "Geschiedenis" -#: .\cookbook\templates\base.html:134 +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" +msgstr "" + +#: .\cookbook\templates\base.html:138 msgid "Admin" msgstr "Admin" -#: .\cookbook\templates\base.html:138 +#: .\cookbook\templates\base.html:142 msgid "Markdown Help" msgstr "Markdown hulp" -#: .\cookbook\templates\base.html:140 +#: .\cookbook\templates\base.html:144 msgid "GitHub" msgstr "GitHub" -#: .\cookbook\templates\base.html:143 +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "" + +#: .\cookbook\templates\base.html:151 msgid "Logout" msgstr "uitloggen" -#: .\cookbook\templates\base.html:148 -#: .\cookbook\templates\registration\login.html:44 +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 msgid "Login" msgstr "inloggen" @@ -360,7 +457,7 @@ msgstr "" "Voeg het gespecificeerde sleutelwoord toe aan alle recepten die een woord " "bevatten." -#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:149 +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 msgid "Sync" msgstr "Synchroniseren" @@ -405,8 +502,8 @@ msgstr "Kookboeken" msgid "New Book" msgstr "Nieuw boek" -#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:73 -#: .\cookbook\templates\recipe_view.html:320 +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 msgid "by" msgstr "door" @@ -416,8 +513,8 @@ msgstr "Recepten wisselen" #: .\cookbook\templates\books.html:54 #: .\cookbook\templates\meal_plan_entry.html:48 -#: .\cookbook\templates\recipe_view.html:96 -#: .\cookbook\templates\recipes_table.html:57 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 msgid "Last cooked" msgstr "Laatst bereid" @@ -430,6 +527,8 @@ msgid "Export Recipes" msgstr "Recepten exporteren" #: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 msgid "Export" msgstr "Exporteren" @@ -442,13 +541,10 @@ msgid "Copy to clipboard" msgstr "Naar het klembord kopiëren" #: .\cookbook\templates\export.html:54 -#: .\cookbook\templates\shopping_list.html:48 msgid "Copied!" msgstr "Gekopieerd!" #: .\cookbook\templates\export.html:61 -#: .\cookbook\templates\shopping_list.html:37 -#: .\cookbook\templates\shopping_list.html:55 msgid "Copy list to clipboard" msgstr "Lijst naar het klembord kopiëren" @@ -458,75 +554,291 @@ msgid "Import new Recipe" msgstr "Nieuw recept importeren" #: .\cookbook\templates\forms\edit_import_recipe.html:14 -#: .\cookbook\templates\forms\edit_internal_recipe.html:50 +#: .\cookbook\templates\forms\edit_internal_recipe.html:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 #: .\cookbook\templates\generic\edit_template.html:23 #: .\cookbook\templates\generic\new_template.html:23 #: .\cookbook\templates\include\log_cooking.html:28 -#: .\cookbook\templates\recipe_view.html:367 -#: .\cookbook\templates\settings.html:27 .\cookbook\templates\settings.html:33 -#: .\cookbook\templates\settings.html:55 .\cookbook\templates\settings.html:69 +#: .\cookbook\templates\meal_plan.html:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 msgid "Save" msgstr "Opslaan" -#: .\cookbook\templates\forms\edit_internal_recipe.html:8 -#: .\cookbook\templates\forms\edit_internal_recipe.html:18 +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 msgid "Edit Recipe" msgstr "Recept bewerken" -#: .\cookbook\templates\forms\edit_internal_recipe.html:36 -msgid "Insert a header between the ingredients." -msgstr "Voeg een kop tussen de ingrediënten toe" +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +#, fuzzy +#| msgid "Preparation time ca." +msgid "Preperation Time" +msgstr "Geschatte voorbereidingstijd" -#: .\cookbook\templates\forms\edit_internal_recipe.html:40 -msgid "" -"Use Ctrl+Space to insert new Ingredient!
You can also save" -" the recipe using Ctrl+Shift+S." +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +#, fuzzy +#| msgid "Waiting time ca." +msgid "Waiting Time" +msgstr "Geschatte wachttijd " + +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +#, fuzzy +#| msgid "Keywords" +msgid "Select Keywords" +msgstr "Sleutelwoorden" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" msgstr "" -"Gebruik Ctrl + spatiebalk om een nieuw ingrediënt toe te " -"voegen.
u unt het recept opslaan met Ctrl + Shift + " -"S." -#: .\cookbook\templates\forms\edit_internal_recipe.html:54 -#: .\cookbook\templates\generic\edit_template.html:27 -msgid "View" -msgstr "Bekijken" +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +#, fuzzy +#| msgid "Delete" +msgid "Delete Step" +msgstr "verwijderen" -#: .\cookbook\templates\forms\edit_internal_recipe.html:58 -#: .\cookbook\templates\generic\edit_template.html:30 -msgid "Delete original file" -msgstr "Origineel bestand verwijderen" +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" +msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:145 -#: .\cookbook\templates\forms\edit_internal_recipe.html:192 -#: .\cookbook\views\delete.py:89 .\cookbook\views\edit.py:183 -msgid "Ingredient" -msgstr "Ingrediënt" +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +#, fuzzy +#| msgid "Header" +msgid "Hide as header" +msgstr "Kop" -#: .\cookbook\templates\forms\edit_internal_recipe.html:150 -msgid "Amount" -msgstr "Hoeveelheid" +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:152 -msgid "Unit" -msgstr "Eenheid" +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "" -#: .\cookbook\templates\forms\edit_internal_recipe.html:157 +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +#, fuzzy +#| msgid "Name" +msgid "Step Name" +msgstr "Naam" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +#, fuzzy +#| msgid "Preparation time in minutes" +msgid "Step time in Minutes" +msgstr "Voorbereidingstijd in minuten" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +#, fuzzy +#| msgid "New Unit" +msgid "Select Unit" +msgstr "Nieuwe eenheid" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +#, fuzzy +#| msgid "Created by" +msgid "Create" +msgstr "Gemaakt door" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 msgid "Note" msgstr "Notitie" -#: .\cookbook\templates\forms\edit_internal_recipe.html:166 +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +#, fuzzy +#| msgid "New Ingredient" +msgid "Delete Ingredient" +msgstr "nieuw ingrediënt" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +#, fuzzy +#| msgid "Header" +msgid "Make Header" +msgstr "Kop" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +#, fuzzy +#| msgid "New Ingredient" +msgid "Make Ingredient" +msgstr "nieuw ingrediënt" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +#, fuzzy +#| msgid "Amount" +msgid "Disable Amount" +msgstr "Hoeveelheid" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +#, fuzzy +#| msgid "Amount" +msgid "Enable Amount" +msgstr "Hoeveelheid" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "bereidingswijze" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +#, fuzzy +#| msgid "Add to Mealplan" +msgid "Add Step" +msgstr "toevoegen aan maaltijdenplan" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +#, fuzzy +#| msgid "New Recipe" +msgid "View Recipe" +msgstr "Nieuw recept" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +#, fuzzy +#| msgid "New Recipe" +msgid "Delete Recipe" +msgstr "Nieuw recept" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error loading the recipe!" +msgstr "Er is een fout opgetreden bij het opslaan van dit recept!" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +#, fuzzy +#| msgid "Changes saved!" +msgid "Changes saved successfully!" +msgstr "Wijzigingen opgeslagen!" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error updating the recipe!" +msgstr "Er is een fout opgetreden bij het opslaan van dit recept!" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 msgid "Are you sure that you want to delete this ingredient?" msgstr "Weet u zeker dat u dit ingrediënt wilt verwijderen?" -#: .\cookbook\templates\forms\edit_internal_recipe.html:206 -#: .\cookbook\templates\markdown_info.html:155 -#: .\cookbook\templates\markdown_info.html:172 -msgid "Header" -msgstr "Kop" +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +#, fuzzy +#| msgid "Are you sure that you want to delete this ingredient?" +msgid "Are you sure that you want to delete this step?" +msgstr "Weet u zeker dat u dit ingrediënt wilt verwijderen?" -#: .\cookbook\templates\forms\edit_internal_recipe.html:209 -msgid "write header here" -msgstr "Schrijf uw kop hier" +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error loading a resource!" +msgstr "Er is een fout opgetreden bij het opslaan van dit recept!" #: .\cookbook\templates\forms\ingredients.html:15 msgid "Edit Ingredients" @@ -535,14 +847,18 @@ msgstr "Ingrediënten bewerken" #: .\cookbook\templates\forms\ingredients.html:16 msgid "" "\n" -" The following form can be used if, accidentally, two (or more) units or ingredients where created that should be\n" +" The following form can be used if, accidentally, two (or more) units " +"or ingredients where created that should be\n" " the same.\n" -" It merges two units or ingredients and updates all recipes using them.\n" +" It merges two units or ingredients and updates all recipes using " +"them.\n" " " msgstr "" "\n" -"Het volgende formulier kan worden gebruikt wanneer per ongeluk twee (of meer) eenheden of ingrediënten zijn gecreëerd dat eigenlijk hetzelfde zijn.\n" -"Het doet de twee eenheden of ingrediënten samenvoegen en alle bijbehorende recepten updaten." +"Het volgende formulier kan worden gebruikt wanneer per ongeluk twee (of " +"meer) eenheden of ingrediënten zijn gecreëerd dat eigenlijk hetzelfde zijn.\n" +"Het doet de twee eenheden of ingrediënten samenvoegen en alle bijbehorende " +"recepten updaten." #: .\cookbook\templates\forms\ingredients.html:24 #: .\cookbook\templates\stats.html:26 @@ -571,6 +887,14 @@ msgstr "Weet u zeker dat u de %(title)s: %(object)s wilt verwijderen?" msgid "Confirm" msgstr "Bevestigen" +#: .\cookbook\templates\generic\edit_template.html:30 +msgid "View" +msgstr "Bekijken" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "Origineel bestand verwijderen" + #: .\cookbook\templates\generic\list_template.html:6 #: .\cookbook\templates\generic\list_template.html:12 msgid "List" @@ -586,16 +910,17 @@ msgstr "Alles importeren" #: .\cookbook\templates\generic\new_template.html:6 #: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 msgid "New" msgstr "Nieuw" #: .\cookbook\templates\generic\table_template.html:76 -#: .\cookbook\templates\recipes_table.html:86 +#: .\cookbook\templates\recipes_table.html:112 msgid "previous" msgstr "vorige" #: .\cookbook\templates\generic\table_template.html:98 -#: .\cookbook\templates\recipes_table.html:108 +#: .\cookbook\templates\recipes_table.html:134 msgid "next" msgstr "volgende" @@ -611,8 +936,9 @@ msgstr "Kook logboek" msgid "Import Recipes" msgstr "Recepten importeren" -#: .\cookbook\templates\import.html:14 .\cookbook\views\delete.py:53 -#: .\cookbook\views\edit.py:251 +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 msgid "Import" msgstr "Importeer" @@ -633,17 +959,20 @@ msgid "Rating" msgstr "Beoordeling" #: .\cookbook\templates\include\log_cooking.html:27 -#: .\cookbook\templates\include\recipe_open_modal.html:39 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 msgid "Close" msgstr "Sluiten" -#: .\cookbook\templates\include\recipe_open_modal.html:28 -#: .\cookbook\views\delete.py:24 .\cookbook\views\edit.py:312 -#: .\cookbook\views\new.py:35 +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 msgid "Recipe" msgstr "recept" -#: .\cookbook\templates\include\recipe_open_modal.html:53 +#: .\cookbook\templates\include\recipe_open_modal.html:32 msgid "Open Recipe" msgstr "Open recept" @@ -654,16 +983,22 @@ msgstr "Veiligheidswaarschuwing" #: .\cookbook\templates\include\storage_backend_warning.html:5 msgid "" "\n" -" The Password and Token field are stored as plain text inside the database.\n" -" This is necessary because they are needed to make API requests, but it also increases the risk of\n" +" The Password and Token field are stored as plain text " +"inside the database.\n" +" This is necessary because they are needed to make API requests, but " +"it also increases the risk of\n" " someone stealing it.
\n" -" To limit the possible damage tokens or accounts with limited access can be used.\n" +" To limit the possible damage tokens or accounts with limited access " +"can be used.\n" " " msgstr "" "\n" -"Het wachtwoord en token veld worden als plain text in de database opgeslagen.\n" -"Dit is benodigd omdat deze benodigd zijn voor de API requests, Echter verhoogd dit ook het risico van diefstal.
\n" -"Om mogelijke schade te beperken kunt u gebruik maken van account met gelimiteerde toegang." +"Het wachtwoord en token veld worden als plain text in de " +"database opgeslagen.\n" +"Dit is benodigd omdat deze benodigd zijn voor de API requests, Echter " +"verhoogd dit ook het risico van diefstal.
\n" +"Om mogelijke schade te beperken kunt u gebruik maken van account met " +"gelimiteerde toegang." #: .\cookbook\templates\index.html:29 msgid "Search recipe ..." @@ -673,24 +1008,33 @@ msgstr "Zoek recept ..." msgid "New Recipe" msgstr "Nieuw recept" -#: .\cookbook\templates\index.html:49 +#: .\cookbook\templates\index.html:47 +#, fuzzy +#| msgid "Recipe Imports" +msgid "Website Import" +msgstr "Geïmporteerde recepten" + +#: .\cookbook\templates\index.html:53 msgid "Advanced Search" msgstr "geavanceerde zoekopdracht" -#: .\cookbook\templates\index.html:53 +#: .\cookbook\templates\index.html:57 msgid "Reset Search" msgstr "Zoekopdracht opnieuw instellen" -#: .\cookbook\templates\index.html:81 +#: .\cookbook\templates\index.html:85 msgid "Last viewed" msgstr "laatste bekeken" -#: .\cookbook\templates\index.html:83 .\cookbook\templates\stats.html:22 +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 msgid "Recipes" msgstr "recepten" -#: .\cookbook\templates\index.html:90 -msgid "Log in to view Recipies" +#: .\cookbook\templates\index.html:94 +#, fuzzy +#| msgid "Log in to view Recipies" +msgid "Log in to view Recipes" msgstr "Log in om de recepten te bekijken" #: .\cookbook\templates\markdown_info.html:5 @@ -701,18 +1045,28 @@ msgstr "Markdown informatie" #: .\cookbook\templates\markdown_info.html:14 msgid "" "\n" -" Markdown is lightweight markup language that can be used to format plain text easily.\n" -" This site uses the Python Markdown library to\n" -" convert your text into nice looking html. Its full markdown documentation can be found\n" -" here.\n" -" An incomplete but most likely sufficient documentation can be found below.\n" +" Markdown is lightweight markup language that can be used to format " +"plain text easily.\n" +" This site uses the Python Markdown library to\n" +" convert your text into nice looking html. Its full markdown " +"documentation can be found\n" +" here.\n" +" An incomplete but most likely sufficient documentation can be found " +"below.\n" " " msgstr "" "\n" -"Markdown is een lichtgewicht markup taal, waarmee gemakkelijk plain text geformatteerd wordt.\n" -"Deze site maakt gebruik van de Python Markdown library om \n" -"uw tekst naar Mooie HTML te converteren. De voledige markdown documentatie van deze library kunt u hier bekijken.\n" -"Een incomplete maar hoogstwaarschijnlijk voldoende documentatie kunt u hieronder bekijken." +"Markdown is een lichtgewicht markup taal, waarmee gemakkelijk plain text " +"geformatteerd wordt.\n" +"Deze site maakt gebruik van de Python Markdown library om \n" +"uw tekst naar Mooie HTML te converteren. De voledige markdown documentatie " +"van deze library kunt u hier bekijken.\n" +"Een incomplete maar hoogstwaarschijnlijk voldoende documentatie kunt u " +"hieronder bekijken." #: .\cookbook\templates\markdown_info.html:25 msgid "Headers" @@ -799,8 +1153,7 @@ msgid "" "links directly into markdown fields without any formatting." msgstr "" "Het is mogelijk om Links te formatteren met Markdown. Deze aplicatie staat " -"het ook toe om links direct in het tekst velt te plakken zonder " -"formattering." +"het ook toe om links direct in het tekst velt te plakken zonder formattering." #: .\cookbook\templates\markdown_info.html:132 #: .\cookbook\templates\markdown_info.html:145 @@ -813,14 +1166,13 @@ msgstr "Tabellen" #: .\cookbook\templates\markdown_info.html:153 msgid "" -"Markdown tables are hard to create by hand. It is recommended to use a table" -" editor like this one." msgstr "" "Het is lastig om markdown tabellen handmatig te creëren. Het is geadviseerd " -"dat u een tabel bewerker zoals deze gebruikt." +"dat u een tabel bewerker zoals deze gebruikt." #: .\cookbook\templates\markdown_info.html:155 #: .\cookbook\templates\markdown_info.html:157 @@ -829,27 +1181,174 @@ msgstr "" msgid "Table" msgstr "Tabel" +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "Kop" + #: .\cookbook\templates\markdown_info.html:157 #: .\cookbook\templates\markdown_info.html:178 msgid "Cell" msgstr "Cel" -#: .\cookbook\templates\meal_plan.html:39 -msgid "Week" -msgstr "Week" +#: .\cookbook\templates\meal_plan.html:96 +#, fuzzy +#| msgid "New Unit" +msgid "New Entry" +msgstr "Nieuwe eenheid" -#: .\cookbook\templates\meal_plan_entry.html:6 -msgid "Meal Plan View" -msgstr "Maaltijdenplan bekijken" +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +#, fuzzy +#| msgid "Search recipe ..." +msgid "Search Recipe" +msgstr "Zoek recept ..." +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:126 +#, fuzzy +#| msgid "" +#| "You can use markdown to format this field. See the docs here" +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" +"Je kunt markdown gebruiken om dit veld te formatteren. Bekijk de documentatie hier." + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:136 +#, fuzzy +#| msgid "Created by" +msgid "Create only note" +msgstr "Gemaakt door" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "Boodschappenlijstje" + +#: .\cookbook\templates\meal_plan.html:155 +#, fuzzy +#| msgid "Shopping List" +msgid "Shopping List currently empty" +msgstr "Boodschappenlijstje" + +#: .\cookbook\templates\meal_plan.html:158 +#, fuzzy +#| msgid "Shopping List" +msgid "Open Shopping List" +msgstr "Boodschappenlijstje" + +#: .\cookbook\templates\meal_plan.html:172 +#, fuzzy +#| msgid "Meal-Plan" +msgid "Plan" +msgstr "Maaltijdplan" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:221 #: .\cookbook\templates\meal_plan_entry.html:18 msgid "Created by" msgstr "Gemaakt door" +#: .\cookbook\templates\meal_plan.html:227 #: .\cookbook\templates\meal_plan_entry.html:20 msgid "Shared with" msgstr "gedeeld met" +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +#, fuzzy +#| msgid "Shopping" +msgid "Add to Shopping" +msgstr "Winkelen" + +#: .\cookbook\templates\meal_plan.html:280 +#, fuzzy +#| msgid "New Recipe" +msgid "New meal type" +msgstr "Nieuw recept" + +#: .\cookbook\templates\meal_plan.html:295 +#, fuzzy +#| msgid "Meal Plan View" +msgid "Meal Plan Help" +msgstr "Maaltijdenplan bekijken" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals " +"both with recipes or just notes.

\n" +"

Simply select a recipe from the list of " +"recently viewed recipes or search the one you\n" +" want and drag it to the desired plan " +"position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry " +"with a custom title and note. Creating only\n" +" Notes is possible by dragging the create " +"note box into the plan.

\n" +"

Click on a recipe in order to open the detail " +"view. Here you can also add it to the\n" +" shopping list. You can also add all recipes " +"of a day to the shopping list by\n" +" clicking the shopping cart at the top of the " +"table.

\n" +"

Since a common use case is to plan meals " +"together you can define\n" +" users you want to share your plan with in " +"the settings.\n" +"

\n" +"

You can also edit the types of meals you want " +"to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will " +"appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users " +"you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "Maaltijdenplan bekijken" + #: .\cookbook\templates\meal_plan_entry.html:50 msgid "Never cooked before." msgstr "Nog nooit bereidt." @@ -858,121 +1357,171 @@ msgstr "Nog nooit bereidt." msgid "Other meals on this day" msgstr "Andere maaltijden op deze dag" -#: .\cookbook\templates\recipe_view.html:44 +#: .\cookbook\templates\recipe_view.html:38 msgid "Add to Book" msgstr "Aan een boek toevoegen" -#: .\cookbook\templates\recipe_view.html:48 -msgid "Generate shopping list" -msgstr "Winkellijstje genereren" - -#: .\cookbook\templates\recipe_view.html:52 -msgid "Add to Mealplan" +#: .\cookbook\templates\recipe_view.html:44 +#, fuzzy +#| msgid "Add to Mealplan" +msgid "Add to Plan" msgstr "toevoegen aan maaltijdenplan" -#: .\cookbook\templates\recipe_view.html:55 +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 msgid "Log Cooking" msgstr "Bakken loggen" -#: .\cookbook\templates\recipe_view.html:58 +#: .\cookbook\templates\recipe_view.html:48 msgid "Print" msgstr "Printen" -#: .\cookbook\templates\recipe_view.html:62 -msgid "Export recipe" -msgstr "Recept exporteren" +#: .\cookbook\templates\recipe_view.html:53 +#, fuzzy +#| msgid "Shared with" +msgid "Share" +msgstr "gedeeld met" -#: .\cookbook\templates\recipe_view.html:68 +#: .\cookbook\templates\recipe_view.html:62 msgid "in" msgstr "binnen" -#: .\cookbook\templates\recipe_view.html:86 -#: .\cookbook\templates\recipes_table.html:44 +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 msgid "Preparation time ca." msgstr "Geschatte voorbereidingstijd" -#: .\cookbook\templates\recipe_view.html:92 -#: .\cookbook\templates\recipes_table.html:50 +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 msgid "Waiting time ca." msgstr "Geschatte wachttijd " -#: .\cookbook\templates\recipe_view.html:200 +#: .\cookbook\templates\recipe_view.html:201 #: .\cookbook\templates\recipes_table.html:19 #: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 msgid "Recipe Image" msgstr "Recept afbeelding" -#: .\cookbook\templates\recipe_view.html:223 -#: .\cookbook\templates\recipe_view.html:257 +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 msgid "View external recipe" msgstr "Extern recept bekijken" -#: .\cookbook\templates\recipe_view.html:235 -msgid "Cloud not show a file preview. Maybe its not a PDF ?" -msgstr "" -"Kon geen preview weergave van het bestand vertonen. Wellicht is het geen PDF" -" bestand?" +#: .\cookbook\templates\recipe_view.html:346 +#, fuzzy +#| msgid "External recipe" +msgid "External recipe image" +msgstr "Extern recept" -#: .\cookbook\templates\recipe_view.html:242 +#: .\cookbook\templates\recipe_view.html:353 msgid "External recipe" msgstr "Extern recept" -#: .\cookbook\templates\recipe_view.html:244 +#: .\cookbook\templates\recipe_view.html:355 msgid "" "\n" -" This is an external recipe, which means you can only view it by opening the link\n" +" This is an external recipe, which means " +"you can only view it by opening the link\n" " above.\n" -" You can convert this recipe to a fancy recipe by pressing the convert button. The\n" +" You can convert this recipe to a fancy " +"recipe by pressing the convert button. The\n" " original\n" " file\n" " will still be accessible.\n" " " msgstr "" "\n" -"Dit is een extern recept, dat betekend dat u het dient te openen met de bovenstaand link.\n" -"u kunt dit recept naar een fancy recept converteren door op de converteer knop te klikken.\n" +"Dit is een extern recept, dat betekend dat u het dient te openen met de " +"bovenstaand link.\n" +"u kunt dit recept naar een fancy recept converteren door op de converteer " +"knop te klikken.\n" "Het originele bestand blijft beschikbaar." -#: .\cookbook\templates\recipe_view.html:255 +#: .\cookbook\templates\recipe_view.html:366 msgid "Convert now!" msgstr "Nu converteren" -#: .\cookbook\templates\recipe_view.html:315 +#: .\cookbook\templates\recipe_view.html:384 #: .\cookbook\templates\stats.html:47 msgid "Comments" msgstr "Opmerkingen" -#: .\cookbook\templates\recipe_view.html:336 .\cookbook\views\delete.py:112 -#: .\cookbook\views\edit.py:233 +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 msgid "Comment" msgstr "Opmerking" -#: .\cookbook\templates\recipes_table.html:53 +#: .\cookbook\templates\recipes_table.html:55 msgid "External" msgstr "Extern" -#: .\cookbook\templates\recipes_table.html:61 -msgid "Log" -msgstr "logboek" - -#: .\cookbook\templates\registration\login.html:8 +#: .\cookbook\templates\registration\login.html:10 msgid "Your username and password didn't match. Please try again." msgstr "" "uw gebruikersnaam en wachtwoord komen niet overeen. Probeer het opnieuw." +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:9 +#, fuzzy +#| msgid "Created by" +msgid "Create your Account" +msgstr "Gemaakt door" + +#: .\cookbook\templates\registration\signup.html:14 +#, fuzzy +#| msgid "Create Superuser" +msgid "Create User" +msgstr "Superuser creëren" + +#: .\cookbook\templates\rest_framework\api.html:5 +#, fuzzy +#| msgid "Recipe Image" +msgid "Recipe Home" +msgstr "Recept afbeelding" + #: .\cookbook\templates\settings.html:22 msgid "Account" msgstr "Account" -#: .\cookbook\templates\settings.html:39 +#: .\cookbook\templates\settings.html:41 msgid "Language" msgstr "Taal" -#: .\cookbook\templates\settings.html:64 +#: .\cookbook\templates\settings.html:66 msgid "Style" msgstr "Stijl" -#: .\cookbook\templates\setup.html:6 +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown " +"in the following examples:" +msgstr "" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 msgid "Cookbook Setup" msgstr "Kookboek Setup" @@ -990,13 +1539,59 @@ msgstr "" msgid "Create Superuser" msgstr "Superuser creëren" -#: .\cookbook\templates\shopping_list.html:15 -msgid "Shopping List" +#: .\cookbook\templates\shopping_list.html:71 +#, fuzzy +#| msgid "Shopping List" +msgid "Shopping Recipes" msgstr "Boodschappenlijstje" -#: .\cookbook\templates\shopping_list.html:20 -msgid "Load" -msgstr "Laden" +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:145 +#, fuzzy +#| msgid "Account" +msgid "Amount" +msgstr "Account" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:257 +#, fuzzy +#| msgid "Export" +msgid "Copy/Export" +msgstr "Exporteren" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error updating a resource!" +msgstr "Er is een fout opgetreden bij het opslaan van dit recept!" + +#: .\cookbook\templates\shopping_list.html:487 +#, fuzzy +#| msgid "Recipe imported successfully!" +msgid "Object created successfully!" +msgstr "Recept succesvol geïmporteerd!" + +#: .\cookbook\templates\shopping_list.html:496 +#, fuzzy +#| msgid "There was an error saving this recipe!" +msgid "There was an error creating a resource!" +msgstr "Er is een fout opgetreden bij het opslaan van dit recept!" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" +msgstr "" #: .\cookbook\templates\stats.html:4 msgid "Stats" @@ -1026,90 +1621,304 @@ msgstr "Externe recepten" msgid "Internal Recipes" msgstr "Interne recepten" -#: .\cookbook\views\api.py:66 +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +#, fuzzy +#| msgid "Images & Links" +msgid "Invite Links" +msgstr "Afbeeldingen & Links" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can " +"be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:53 +#, fuzzy +#| msgid "Servings" +msgid "Media Serving" +msgstr "Porties" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +#, fuzzy +#| msgid "Security Warning" +msgid "Warning" +msgstr "Veiligheidswaarschuwing" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your " +".env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and " +"insecure! Please set\n" +" SECRET_KEY int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most " +"likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database " +"backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" + +#: .\cookbook\templates\url_import.html:5 +#, fuzzy +#| msgid "Import" +msgid "URL Import" +msgstr "Importeer" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "" + +#: .\cookbook\templates\url_import.html:44 +#, fuzzy +#| msgid "Recipe Image" +msgid "Recipe Name" +msgstr "Recept afbeelding" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "" + +#: .\cookbook\templates\url_import.html:197 +#, fuzzy +#| msgid "Keywords" +msgid "All Keywords" +msgstr "Sleutelwoorden" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "" + +#: .\cookbook\templates\url_import.html:225 +#, fuzzy +#| msgid "Formatting" +msgid "Information" +msgstr "Formattering" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages " +"support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured " +"data feel free to post an example in the\n" +" github issues." +msgstr "" + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "" + +#: .\cookbook\templates\url_import.html:238 +#, fuzzy +#| msgid "GitHub" +msgid "GitHub Issues" +msgstr "GitHub" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "" + +#: .\cookbook\templates\url_import.html:322 +#, fuzzy +#| msgid "There was an error importing this recipe!" +msgid "An error occurred while trying to import this recipe!" +msgstr "Er is een fout opgetreden bij het importeren van dit recept!" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "" + +#: .\cookbook\views\api.py:338 msgid "Sync successful!" msgstr "Synchronisatie succesvol" -#: .\cookbook\views\api.py:69 +#: .\cookbook\views\api.py:341 msgid "Error synchronizing with Storage" msgstr "Een fout is opgetreden bij het synchroniseren met opslag." -#: .\cookbook\views\data.py:72 +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "" + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "" + +#: .\cookbook\views\data.py:83 #, python-format msgid "Batch edit done. %(count)d recipe was updated." msgid_plural "Batch edit done. %(count)d Recipes where updated." msgstr[0] "Batch bewerking voldaan. %(count)d het recept is ge-update." msgstr[1] "Batch bewerking voldaan. %(count)d Recepten zijn ge-update." -#: .\cookbook\views\delete.py:65 +#: .\cookbook\views\delete.py:66 msgid "Monitor" msgstr "Observeren" -#: .\cookbook\views\delete.py:101 .\cookbook\views\lists.py:53 -#: .\cookbook\views\new.py:67 +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 msgid "Storage Backend" msgstr "Opslag backend" -#: .\cookbook\views\delete.py:123 .\cookbook\views\edit.py:265 -#: .\cookbook\views\new.py:117 +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 msgid "Recipe Book" msgstr "Kookboek" -#: .\cookbook\views\delete.py:142 +#: .\cookbook\views\delete.py:138 msgid "Bookmarks" msgstr "Bladwijzers" -#: .\cookbook\views\edit.py:106 -msgid "There was an error converting your ingredients amount to a number: " +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" msgstr "" -"Er is een fout opgetreden bij het converteren van uw ingrediënten " -"hoeveelheid naar een nummer:" -#: .\cookbook\views\edit.py:122 -msgid "Recipe saved!" -msgstr "Recept opgeslagen!" +#: .\cookbook\views\edit.py:93 +msgid "Food" +msgstr "" -#: .\cookbook\views\edit.py:124 -msgid "There was an error saving this recipe!" -msgstr "Er is een fout opgetreden bij het opslaan van dit recept!" - -#: .\cookbook\views\edit.py:192 +#: .\cookbook\views\edit.py:102 msgid "You cannot edit this storage!" msgstr "U kunt deze opslag niet bewerken!" -#: .\cookbook\views\edit.py:211 +#: .\cookbook\views\edit.py:121 msgid "Storage saved!" msgstr "Opslag opgeslagen!" -#: .\cookbook\views\edit.py:213 +#: .\cookbook\views\edit.py:123 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:220 +#: .\cookbook\views\edit.py:130 msgid "Storage" msgstr "Opslag" -#: .\cookbook\views\edit.py:300 +#: .\cookbook\views\edit.py:215 msgid "Changes saved!" msgstr "Wijzigingen opgeslagen!" -#: .\cookbook\views\edit.py:304 +#: .\cookbook\views\edit.py:219 msgid "Error saving changes!" msgstr "Fout bij het opslaan van de wijzigingen!" -#: .\cookbook\views\edit.py:334 +#: .\cookbook\views\edit.py:249 msgid "Units merged!" msgstr "Eenheden samengevoegd!" -#: .\cookbook\views\edit.py:347 -msgid "Ingredients merged!" -msgstr "Ingredienten samengevoegd!" +#: .\cookbook\views\edit.py:262 +#, fuzzy +#| msgid "Units merged!" +msgid "Foods merged!" +msgstr "Eenheden samengevoegd!" -#: .\cookbook\views\import_export.py:59 +#: .\cookbook\views\import_export.py:42 msgid "Recipe imported successfully!" msgstr "Recept succesvol geïmporteerd!" -#: .\cookbook\views\import_export.py:106 +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "" + +#: .\cookbook\views\import_export.py:79 msgid "" "External recipes cannot be exported, please share the file directly or " "select an internal recipe." @@ -1117,44 +1926,124 @@ msgstr "" "Het is niet mogelijk om externe recepten te exporteren. Deel het bestand " "zelf of selecteer een intern recept." -#: .\cookbook\views\lists.py:26 +#: .\cookbook\views\lists.py:28 msgid "Import Log" msgstr "Import logboek" -#: .\cookbook\views\lists.py:35 +#: .\cookbook\views\lists.py:37 msgid "Discovery" msgstr "Ontdekken" -#: .\cookbook\views\new.py:90 +#: .\cookbook\views\lists.py:57 +#, fuzzy +#| msgid "Shopping List" +msgid "Shopping Lists" +msgstr "Boodschappenlijstje" + +#: .\cookbook\views\new.py:98 msgid "Imported new recipe!" msgstr "Nieuw recept geïmporteerd!" -#: .\cookbook\views\new.py:93 +#: .\cookbook\views\new.py:101 msgid "There was an error importing this recipe!" msgstr "Er is een fout opgetreden bij het importeren van dit recept!" -#: .\cookbook\views\views.py:84 +#: .\cookbook\views\views.py:86 +#, fuzzy +#| msgid "You do not have the required permissions to view this page!" +msgid "You do not have the required permissions to perform this action!" +msgstr "U heeft niet de benodigde machtigingen om deze pagina te bekijken!" + +#: .\cookbook\views\views.py:98 msgid "Comment saved!" msgstr "Opmerking opgeslagen!" -#: .\cookbook\views\views.py:94 +#: .\cookbook\views\views.py:108 msgid "Bookmark saved!" msgstr "Bladwijzer opgeslagen!" -#: .\cookbook\views\views.py:267 +#: .\cookbook\views\views.py:254 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." +"forgotten your superuser credentials please consult the django documentation " +"on how to reset passwords." msgstr "" "De setup pagina kan alleen gebruikt worden om de eerste gebruiker te " -"creëren! Indien u uw superuser inloggegevens bent vergeten dient u de django" -" documentatie raad te plegen voor hoe u uw wachtwoord kunt resetten." +"creëren! Indien u uw superuser inloggegevens bent vergeten dient u de django " +"documentatie raad te plegen voor hoe u uw wachtwoord kunt resetten." -#: .\cookbook\views\views.py:274 +#: .\cookbook\views\views.py:261 .\cookbook\views\views.py:301 msgid "Passwords dont match!" msgstr "Wachtwoorden komen niet overeen!" -#: .\cookbook\views\views.py:284 +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 msgid "User has been created, please login!" msgstr "Gebruiker is gecreëerd, Log in alstublieft!" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "" + +#~ msgid "New ingredient that other gets replaced by." +#~ msgstr "Nieuw ingrediënt waarmee de andere wordt vervangen. " + +#~ msgid "Old Ingredient" +#~ msgstr "oud ingrediënt" + +#~ msgid "Ingredient that should be replaced." +#~ msgstr "Ingrediënten die vervangen dienen te worden." + +#~ msgid "Insert a header between the ingredients." +#~ msgstr "Voeg een kop tussen de ingrediënten toe" + +#~ msgid "" +#~ "Use Ctrl+Space to insert new Ingredient!
You can also " +#~ "save the recipe using Ctrl+Shift+S." +#~ msgstr "" +#~ "Gebruik Ctrl + spatiebalk om een nieuw ingrediënt toe te " +#~ "voegen.
u unt het recept opslaan met Ctrl + Shift + " +#~ "S." + +#~ msgid "Ingredient" +#~ msgstr "Ingrediënt" + +#~ msgid "Unit" +#~ msgstr "Eenheid" + +#~ msgid "write header here" +#~ msgstr "Schrijf uw kop hier" + +#~ msgid "Week" +#~ msgstr "Week" + +#~ msgid "Generate shopping list" +#~ msgstr "Winkellijstje genereren" + +#~ msgid "Export recipe" +#~ msgstr "Recept exporteren" + +#~ msgid "Cloud not show a file preview. Maybe its not a PDF ?" +#~ msgstr "" +#~ "Kon geen preview weergave van het bestand vertonen. Wellicht is het geen " +#~ "PDF bestand?" + +#~ msgid "Log" +#~ msgstr "logboek" + +#~ msgid "Load" +#~ msgstr "Laden" + +#~ msgid "There was an error converting your ingredients amount to a number: " +#~ msgstr "" +#~ "Er is een fout opgetreden bij het converteren van uw ingrediënten " +#~ "hoeveelheid naar een nummer:" + +#~ msgid "Recipe saved!" +#~ msgstr "Recept opgeslagen!" + +#~ msgid "Ingredients merged!" +#~ msgstr "Ingredienten samengevoegd!" diff --git a/cookbook/locale/pt/LC_MESSAGES/django.mo b/cookbook/locale/pt/LC_MESSAGES/django.mo new file mode 100644 index 000000000..edf2f8b0d Binary files /dev/null and b/cookbook/locale/pt/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/pt/LC_MESSAGES/django.po b/cookbook/locale/pt/LC_MESSAGES/django.po new file mode 100644 index 000000000..51ede4484 --- /dev/null +++ b/cookbook/locale/pt/LC_MESSAGES/django.po @@ -0,0 +1,1791 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 +#: .\cookbook\templates\forms\ingredients.html:34 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 +msgid "Ingredients" +msgstr "" + +#: .\cookbook\forms.py:37 +msgid "" +"Color of the top navigation bar. Not all colors work with all themes, just " +"try them out!" +msgstr "" + +#: .\cookbook\forms.py:38 +msgid "Default Unit to be used when inserting a new ingredient into a recipe." +msgstr "" + +#: .\cookbook\forms.py:39 +msgid "Default user to share newly created meal plan entries with." +msgstr "" + +#: .\cookbook\forms.py:40 +msgid "Show recently viewed recipes on search page." +msgstr "" + +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "" + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "" + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" + +#: .\cookbook\forms.py:61 +msgid "" +"Both fields are optional. If none are given the username will be displayed " +"instead" +msgstr "" + +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +msgid "Name" +msgstr "" + +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 +msgid "Keywords" +msgstr "" + +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 +msgid "Preparation time in minutes" +msgstr "" + +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 +msgid "Waiting time (cooking/baking) in minutes" +msgstr "" + +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 +msgid "Path" +msgstr "" + +#: .\cookbook\forms.py:80 +msgid "Storage UID" +msgstr "" + +#: .\cookbook\forms.py:107 +msgid "" +"Include - [ ] in list for easier usage in markdown based " +"documents." +msgstr "" + +#: .\cookbook\forms.py:119 +msgid "Export Base64 encoded image?" +msgstr "" + +#: .\cookbook\forms.py:123 +msgid "Download export directly or show on page?" +msgstr "" + +#: .\cookbook\forms.py:129 +msgid "Simply paste a JSON export into this textarea and click import." +msgstr "" + +#: .\cookbook\forms.py:138 +msgid "New Unit" +msgstr "" + +#: .\cookbook\forms.py:139 +msgid "New unit that other gets replaced by." +msgstr "" + +#: .\cookbook\forms.py:144 +msgid "Old Unit" +msgstr "" + +#: .\cookbook\forms.py:145 +msgid "Unit that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:155 +msgid "New Food" +msgstr "" + +#: .\cookbook\forms.py:156 +msgid "New food that other gets replaced by." +msgstr "" + +#: .\cookbook\forms.py:161 +msgid "Old Food" +msgstr "" + +#: .\cookbook\forms.py:162 +msgid "Food that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:174 +msgid "Add your comment: " +msgstr "" + +#: .\cookbook\forms.py:199 +msgid "Leave empty for dropbox and enter app password for nextcloud." +msgstr "" + +#: .\cookbook\forms.py:202 +msgid "Leave empty for nextcloud and enter api token for dropbox." +msgstr "" + +#: .\cookbook\forms.py:210 +msgid "" +"Leave empty for dropbox and enter only base url for nextcloud (/remote." +"php/webdav/ is added automatically)" +msgstr "" + +#: .\cookbook\forms.py:229 +msgid "Search String" +msgstr "" + +#: .\cookbook\forms.py:243 +msgid "File ID" +msgstr "" + +#: .\cookbook\forms.py:261 +msgid "You must provide at least a recipe or a title." +msgstr "" + +#: .\cookbook\forms.py:270 +msgid "You can list default users to share recipes with in the settings." +msgstr "" + +#: .\cookbook\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "" + +#: .\cookbook\forms.py:283 +msgid "A username is not required, if left blank the new user can choose one." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:123 +msgid "You are not logged in and therefore cannot view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 +msgid "You cannot interact with this object as its not owned by you!" +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:35 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:44 +msgid "" +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:152 +msgid "Imported from " +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 +msgid "Breakfast" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 +msgid "Lunch" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 +msgid "Dinner" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 +msgid "Other" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "" + +#: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 +#: .\cookbook\templates\generic\edit_template.html:6 +#: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 +msgid "Edit" +msgstr "" + +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 +#: .\cookbook\templates\generic\delete_template.html:5 +#: .\cookbook\templates\generic\delete_template.html:13 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 +msgid "Delete" +msgstr "" + +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "" + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "" + +#: .\cookbook\templates\base.html:60 +#: .\cookbook\templates\forms\ingredients.html:7 +#: .\cookbook\templates\index.html:7 +msgid "Cookbook" +msgstr "" + +#: .\cookbook\templates\base.html:67 +msgid "Utensils" +msgstr "" + +#: .\cookbook\templates\base.html:77 +msgid "Shopping" +msgstr "" + +#: .\cookbook\templates\base.html:87 +msgid "Tags" +msgstr "" + +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 +msgid "Keyword" +msgstr "" + +#: .\cookbook\templates\base.html:93 +msgid "Batch Edit" +msgstr "" + +#: .\cookbook\templates\base.html:98 +msgid "Storage Data" +msgstr "" + +#: .\cookbook\templates\base.html:102 +msgid "Storage Backends" +msgstr "" + +#: .\cookbook\templates\base.html:104 +msgid "Configure Sync" +msgstr "" + +#: .\cookbook\templates\base.html:106 +msgid "Discovered Recipes" +msgstr "" + +#: .\cookbook\templates\base.html:108 +msgid "Discovery Log" +msgstr "" + +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 +msgid "Statistics" +msgstr "" + +#: .\cookbook\templates\base.html:112 +msgid "Units & Ingredients" +msgstr "" + +#: .\cookbook\templates\base.html:114 +msgid "Import Recipe" +msgstr "" + +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\settings.html:16 +msgid "Settings" +msgstr "" + +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\history.html:14 +msgid "History" +msgstr "" + +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" +msgstr "" + +#: .\cookbook\templates\base.html:138 +msgid "Admin" +msgstr "" + +#: .\cookbook\templates\base.html:142 +msgid "Markdown Help" +msgstr "" + +#: .\cookbook\templates\base.html:144 +msgid "GitHub" +msgstr "" + +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "" + +#: .\cookbook\templates\base.html:151 +msgid "Logout" +msgstr "" + +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 +msgid "Login" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:6 +msgid "Batch edit Category" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:15 +msgid "Batch edit Recipes" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:20 +msgid "Add the specified keywords to all recipes containing a word" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 +msgid "Sync" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:10 +msgid "Manage watched Folders" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:14 +msgid "" +"On this Page you can manage all storage folder locations that should be " +"monitored and synced" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:16 +msgid "The path must be in the following format" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:27 +msgid "Sync Now!" +msgstr "" + +#: .\cookbook\templates\batch\waiting.html:4 +#: .\cookbook\templates\batch\waiting.html:10 +msgid "Importing Recipes" +msgstr "" + +#: .\cookbook\templates\batch\waiting.html:23 +msgid "" +"This can take a few minutes, depending on the number of recipes in sync, " +"please wait." +msgstr "" + +#: .\cookbook\templates\books.html:5 .\cookbook\templates\books.html:11 +msgid "Recipe Books" +msgstr "" + +#: .\cookbook\templates\books.html:15 +msgid "New Book" +msgstr "" + +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 +msgid "by" +msgstr "" + +#: .\cookbook\templates\books.html:34 +msgid "Toggle Recipes" +msgstr "" + +#: .\cookbook\templates\books.html:54 +#: .\cookbook\templates\meal_plan_entry.html:48 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 +msgid "Last cooked" +msgstr "" + +#: .\cookbook\templates\books.html:71 +msgid "There are no recipes in this book yet." +msgstr "" + +#: .\cookbook\templates\export.html:6 +msgid "Export Recipes" +msgstr "" + +#: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 +msgid "Export" +msgstr "" + +#: .\cookbook\templates\export.html:31 +msgid "Exported Recipe" +msgstr "" + +#: .\cookbook\templates\export.html:42 +msgid "Copy to clipboard" +msgstr "" + +#: .\cookbook\templates\export.html:54 +msgid "Copied!" +msgstr "" + +#: .\cookbook\templates\export.html:61 +msgid "Copy list to clipboard" +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:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 +#: .\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:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 +msgid "Save" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 +msgid "Edit Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +msgid "Preperation Time" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +msgid "Waiting Time" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +msgid "Select Keywords" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +msgid "Delete Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +msgid "Hide as header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +msgid "Step Name" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +msgid "Step time in Minutes" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 +msgid "Note" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +msgid "Delete Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +msgid "Make Header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +msgid "Make Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +msgid "Disable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +msgid "Enable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +msgid "Add Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +msgid "View Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +msgid "Delete Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +msgid "There was an error loading the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Changes saved successfully!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +msgid "There was an error updating the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 +msgid "Are you sure that you want to delete this ingredient?" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +msgid "Are you sure that you want to delete this step?" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "There was an error loading a resource!" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:15 +msgid "Edit Ingredients" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:16 +msgid "" +"\n" +" The following form can be used if, accidentally, two (or more) units " +"or ingredients where created that should be\n" +" the same.\n" +" It merges two units or ingredients and updates all recipes using " +"them.\n" +" " +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:24 +#: .\cookbook\templates\stats.html:26 +msgid "Units" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:26 +msgid "Are you sure that you want to merge these two units ?" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:31 +#: .\cookbook\templates\forms\ingredients.html:40 +msgid "Merge" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:36 +msgid "Are you sure that you want to merge these two ingredients ?" +msgstr "" + +#: .\cookbook\templates\generic\delete_template.html:18 +#, python-format +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 "" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:6 +#: .\cookbook\templates\generic\list_template.html:12 +msgid "List" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:25 +msgid "Filter" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:30 +msgid "Import all" +msgstr "" + +#: .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 +msgid "New" +msgstr "" + +#: .\cookbook\templates\generic\table_template.html:76 +#: .\cookbook\templates\recipes_table.html:112 +msgid "previous" +msgstr "" + +#: .\cookbook\templates\generic\table_template.html:98 +#: .\cookbook\templates\recipes_table.html:134 +msgid "next" +msgstr "" + +#: .\cookbook\templates\history.html:20 +msgid "View Log" +msgstr "" + +#: .\cookbook\templates\history.html:24 +msgid "Cook Log" +msgstr "" + +#: .\cookbook\templates\import.html:6 +msgid "Import Recipes" +msgstr "" + +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 +msgid "Import" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:7 +msgid "Log Recipe Cooking" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:13 +msgid "All fields are optional and can be left empty." +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:16 +msgid "Servings" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:19 +msgid "Rating" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:27 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 +msgid "Close" +msgstr "" + +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 +msgid "Recipe" +msgstr "" + +#: .\cookbook\templates\include\recipe_open_modal.html:32 +msgid "Open Recipe" +msgstr "" + +#: .\cookbook\templates\include\storage_backend_warning.html:4 +msgid "Security Warning" +msgstr "" + +#: .\cookbook\templates\include\storage_backend_warning.html:5 +msgid "" +"\n" +" The Password and Token field are stored as plain text " +"inside the database.\n" +" This is necessary because they are needed to make API requests, but " +"it also increases the risk of\n" +" someone stealing it.
\n" +" To limit the possible damage tokens or accounts with limited access " +"can be used.\n" +" " +msgstr "" + +#: .\cookbook\templates\index.html:29 +msgid "Search recipe ..." +msgstr "" + +#: .\cookbook\templates\index.html:44 +msgid "New Recipe" +msgstr "" + +#: .\cookbook\templates\index.html:47 +msgid "Website Import" +msgstr "" + +#: .\cookbook\templates\index.html:53 +msgid "Advanced Search" +msgstr "" + +#: .\cookbook\templates\index.html:57 +msgid "Reset Search" +msgstr "" + +#: .\cookbook\templates\index.html:85 +msgid "Last viewed" +msgstr "" + +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 +msgid "Recipes" +msgstr "" + +#: .\cookbook\templates\index.html:94 +msgid "Log in to view Recipes" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:5 +#: .\cookbook\templates\markdown_info.html:13 +msgid "Markdown Info" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:14 +msgid "" +"\n" +" Markdown is lightweight markup language that can be used to format " +"plain text easily.\n" +" This site uses the Python Markdown library to\n" +" convert your text into nice looking html. Its full markdown " +"documentation can be found\n" +" here.\n" +" An incomplete but most likely sufficient documentation can be found " +"below.\n" +" " +msgstr "" + +#: .\cookbook\templates\markdown_info.html:25 +msgid "Headers" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:54 +msgid "Formatting" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:56 +#: .\cookbook\templates\markdown_info.html:72 +msgid "Line breaks are inserted by adding two spaces after the end of a line" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:57 +#: .\cookbook\templates\markdown_info.html:73 +msgid "or by leaving a blank line inbetween." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:59 +#: .\cookbook\templates\markdown_info.html:74 +msgid "This text is bold" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:60 +#: .\cookbook\templates\markdown_info.html:75 +msgid "This text is in italics" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:61 +#: .\cookbook\templates\markdown_info.html:77 +msgid "Blockquotes are also possible" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:84 +msgid "Lists" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:85 +msgid "" +"Lists can ordered or unorderd. It is important to leave a blank line " +"before the list!" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:87 +#: .\cookbook\templates\markdown_info.html:108 +msgid "Ordered List" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:89 +#: .\cookbook\templates\markdown_info.html:90 +#: .\cookbook\templates\markdown_info.html:91 +#: .\cookbook\templates\markdown_info.html:110 +#: .\cookbook\templates\markdown_info.html:111 +#: .\cookbook\templates\markdown_info.html:112 +msgid "unordered list item" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:93 +#: .\cookbook\templates\markdown_info.html:114 +msgid "Unordered List" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:95 +#: .\cookbook\templates\markdown_info.html:96 +#: .\cookbook\templates\markdown_info.html:97 +#: .\cookbook\templates\markdown_info.html:116 +#: .\cookbook\templates\markdown_info.html:117 +#: .\cookbook\templates\markdown_info.html:118 +msgid "ordered list item" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:125 +msgid "Images & Links" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:126 +msgid "" +"Links can be formatted with Markdown. This applicaiton also allows to paste " +"links directly into markdown fields without any formatting." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:132 +#: .\cookbook\templates\markdown_info.html:145 +msgid "This will become and Image" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:152 +msgid "Tables" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:153 +msgid "" +"Markdown tables are hard to create by hand. It is recommended to use a table " +"editor like this one." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:157 +#: .\cookbook\templates\markdown_info.html:171 +#: .\cookbook\templates\markdown_info.html:177 +msgid "Table" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:157 +#: .\cookbook\templates\markdown_info.html:178 +msgid "Cell" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:96 +msgid "New Entry" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +msgid "Search Recipe" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:126 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:136 +msgid "Create only note" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:155 +msgid "Shopping List currently empty" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:158 +msgid "Open Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:172 +msgid "Plan" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:221 +#: .\cookbook\templates\meal_plan_entry.html:18 +msgid "Created by" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:227 +#: .\cookbook\templates\meal_plan_entry.html:20 +msgid "Shared with" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +msgid "Add to Shopping" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:280 +msgid "New meal type" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:295 +msgid "Meal Plan Help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals " +"both with recipes or just notes.

\n" +"

Simply select a recipe from the list of " +"recently viewed recipes or search the one you\n" +" want and drag it to the desired plan " +"position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry " +"with a custom title and note. Creating only\n" +" Notes is possible by dragging the create " +"note box into the plan.

\n" +"

Click on a recipe in order to open the detail " +"view. Here you can also add it to the\n" +" shopping list. You can also add all recipes " +"of a day to the shopping list by\n" +" clicking the shopping cart at the top of the " +"table.

\n" +"

Since a common use case is to plan meals " +"together you can define\n" +" users you want to share your plan with in " +"the settings.\n" +"

\n" +"

You can also edit the types of meals you want " +"to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will " +"appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users " +"you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:50 +msgid "Never cooked before." +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:76 +msgid "Other meals on this day" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:38 +msgid "Add to Book" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:44 +msgid "Add to Plan" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 +msgid "Log Cooking" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:48 +msgid "Print" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:53 +msgid "Share" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:62 +msgid "in" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 +msgid "Preparation time ca." +msgstr "" + +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 +msgid "Waiting time ca." +msgstr "" + +#: .\cookbook\templates\recipe_view.html:201 +#: .\cookbook\templates\recipes_table.html:19 +#: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 +msgid "Recipe Image" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 +msgid "View external recipe" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:346 +msgid "External recipe image" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:353 +msgid "External recipe" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:355 +msgid "" +"\n" +" This is an external recipe, which means " +"you can only view it by opening the link\n" +" above.\n" +" You can convert this recipe to a fancy " +"recipe by pressing the convert button. The\n" +" original\n" +" file\n" +" will still be accessible.\n" +" " +msgstr "" + +#: .\cookbook\templates\recipe_view.html:366 +msgid "Convert now!" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:384 +#: .\cookbook\templates\stats.html:47 +msgid "Comments" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 +msgid "Comment" +msgstr "" + +#: .\cookbook\templates\recipes_table.html:55 +msgid "External" +msgstr "" + +#: .\cookbook\templates\registration\login.html:10 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:9 +msgid "Create your Account" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:14 +msgid "Create User" +msgstr "" + +#: .\cookbook\templates\rest_framework\api.html:5 +msgid "Recipe Home" +msgstr "" + +#: .\cookbook\templates\settings.html:22 +msgid "Account" +msgstr "" + +#: .\cookbook\templates\settings.html:41 +msgid "Language" +msgstr "" + +#: .\cookbook\templates\settings.html:66 +msgid "Style" +msgstr "" + +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown " +"in the following examples:" +msgstr "" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 +msgid "Cookbook Setup" +msgstr "" + +#: .\cookbook\templates\setup.html:14 +msgid "Setup" +msgstr "" + +#: .\cookbook\templates\setup.html:15 +msgid "To start using this application you must first create a superuser." +msgstr "" + +#: .\cookbook\templates\setup.html:20 +msgid "Create Superuser" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:71 +msgid "Shopping Recipes" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:145 +msgid "Amount" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:257 +msgid "Copy/Export" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +msgid "There was an error updating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:487 +msgid "Object created successfully!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:496 +msgid "There was an error creating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" +msgstr "" + +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + +#: .\cookbook\templates\stats.html:19 +msgid "Number of objects" +msgstr "" + +#: .\cookbook\templates\stats.html:30 +msgid "Recipe Imports" +msgstr "" + +#: .\cookbook\templates\stats.html:38 +msgid "Objects stats" +msgstr "" + +#: .\cookbook\templates\stats.html:41 +msgid "Recipes without Keywords" +msgstr "" + +#: .\cookbook\templates\stats.html:43 +msgid "External Recipes" +msgstr "" + +#: .\cookbook\templates\stats.html:45 +msgid "Internal Recipes" +msgstr "" + +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +msgid "Invite Links" +msgstr "" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can " +"be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:53 +msgid "Media Serving" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +msgid "Warning" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your " +".env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and " +"insecure! Please set\n" +" SECRET_KEY int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most " +"likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database " +"backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" + +#: .\cookbook\templates\url_import.html:5 +msgid "URL Import" +msgstr "" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "" + +#: .\cookbook\templates\url_import.html:44 +msgid "Recipe Name" +msgstr "" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "" + +#: .\cookbook\templates\url_import.html:197 +msgid "All Keywords" +msgstr "" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "" + +#: .\cookbook\templates\url_import.html:225 +msgid "Information" +msgstr "" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages " +"support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured " +"data feel free to post an example in the\n" +" github issues." +msgstr "" + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "" + +#: .\cookbook\templates\url_import.html:238 +msgid "GitHub Issues" +msgstr "" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "" + +#: .\cookbook\templates\url_import.html:322 +msgid "An error occurred while trying to import this recipe!" +msgstr "" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "" + +#: .\cookbook\views\api.py:338 +msgid "Sync successful!" +msgstr "" + +#: .\cookbook\views\api.py:341 +msgid "Error synchronizing with Storage" +msgstr "" + +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "" + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "" + +#: .\cookbook\views\data.py:83 +#, python-format +msgid "Batch edit done. %(count)d recipe was updated." +msgid_plural "Batch edit done. %(count)d Recipes where updated." +msgstr[0] "" +msgstr[1] "" + +#: .\cookbook\views\delete.py:66 +msgid "Monitor" +msgstr "" + +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 +msgid "Storage Backend" +msgstr "" + +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 +msgid "Recipe Book" +msgstr "" + +#: .\cookbook\views\delete.py:138 +msgid "Bookmarks" +msgstr "" + +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" +msgstr "" + +#: .\cookbook\views\edit.py:93 +msgid "Food" +msgstr "" + +#: .\cookbook\views\edit.py:102 +msgid "You cannot edit this storage!" +msgstr "" + +#: .\cookbook\views\edit.py:121 +msgid "Storage saved!" +msgstr "" + +#: .\cookbook\views\edit.py:123 +msgid "There was an error updating this storage backend!" +msgstr "" + +#: .\cookbook\views\edit.py:130 +msgid "Storage" +msgstr "" + +#: .\cookbook\views\edit.py:215 +msgid "Changes saved!" +msgstr "" + +#: .\cookbook\views\edit.py:219 +msgid "Error saving changes!" +msgstr "" + +#: .\cookbook\views\edit.py:249 +msgid "Units merged!" +msgstr "" + +#: .\cookbook\views\edit.py:262 +msgid "Foods merged!" +msgstr "" + +#: .\cookbook\views\import_export.py:42 +msgid "Recipe imported successfully!" +msgstr "" + +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "" + +#: .\cookbook\views\import_export.py:79 +msgid "" +"External recipes cannot be exported, please share the file directly or " +"select an internal recipe." +msgstr "" + +#: .\cookbook\views\lists.py:28 +msgid "Import Log" +msgstr "" + +#: .\cookbook\views\lists.py:37 +msgid "Discovery" +msgstr "" + +#: .\cookbook\views\lists.py:57 +msgid "Shopping Lists" +msgstr "" + +#: .\cookbook\views\new.py:98 +msgid "Imported new recipe!" +msgstr "" + +#: .\cookbook\views\new.py:101 +msgid "There was an error importing this recipe!" +msgstr "" + +#: .\cookbook\views\views.py:86 +msgid "You do not have the required permissions to perform this action!" +msgstr "" + +#: .\cookbook\views\views.py:98 +msgid "Comment saved!" +msgstr "" + +#: .\cookbook\views\views.py:108 +msgid "Bookmark saved!" +msgstr "" + +#: .\cookbook\views\views.py:254 +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:261 .\cookbook\views\views.py:301 +msgid "Passwords dont match!" +msgstr "" + +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 +msgid "User has been created, please login!" +msgstr "" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "" diff --git a/cookbook/locale/rn/LC_MESSAGES/django.mo b/cookbook/locale/rn/LC_MESSAGES/django.mo new file mode 100644 index 000000000..62a2bed5e Binary files /dev/null and b/cookbook/locale/rn/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/rn/LC_MESSAGES/django.po b/cookbook/locale/rn/LC_MESSAGES/django.po new file mode 100644 index 000000000..0f1559f82 --- /dev/null +++ b/cookbook/locale/rn/LC_MESSAGES/django.po @@ -0,0 +1,1791 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" + +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 +#: .\cookbook\templates\forms\ingredients.html:34 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 +msgid "Ingredients" +msgstr "" + +#: .\cookbook\forms.py:37 +msgid "" +"Color of the top navigation bar. Not all colors work with all themes, just " +"try them out!" +msgstr "" + +#: .\cookbook\forms.py:38 +msgid "Default Unit to be used when inserting a new ingredient into a recipe." +msgstr "" + +#: .\cookbook\forms.py:39 +msgid "Default user to share newly created meal plan entries with." +msgstr "" + +#: .\cookbook\forms.py:40 +msgid "Show recently viewed recipes on search page." +msgstr "" + +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "" + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "" + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" + +#: .\cookbook\forms.py:61 +msgid "" +"Both fields are optional. If none are given the username will be displayed " +"instead" +msgstr "" + +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +msgid "Name" +msgstr "" + +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 +msgid "Keywords" +msgstr "" + +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 +msgid "Preparation time in minutes" +msgstr "" + +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 +msgid "Waiting time (cooking/baking) in minutes" +msgstr "" + +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 +msgid "Path" +msgstr "" + +#: .\cookbook\forms.py:80 +msgid "Storage UID" +msgstr "" + +#: .\cookbook\forms.py:107 +msgid "" +"Include - [ ] in list for easier usage in markdown based " +"documents." +msgstr "" + +#: .\cookbook\forms.py:119 +msgid "Export Base64 encoded image?" +msgstr "" + +#: .\cookbook\forms.py:123 +msgid "Download export directly or show on page?" +msgstr "" + +#: .\cookbook\forms.py:129 +msgid "Simply paste a JSON export into this textarea and click import." +msgstr "" + +#: .\cookbook\forms.py:138 +msgid "New Unit" +msgstr "" + +#: .\cookbook\forms.py:139 +msgid "New unit that other gets replaced by." +msgstr "" + +#: .\cookbook\forms.py:144 +msgid "Old Unit" +msgstr "" + +#: .\cookbook\forms.py:145 +msgid "Unit that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:155 +msgid "New Food" +msgstr "" + +#: .\cookbook\forms.py:156 +msgid "New food that other gets replaced by." +msgstr "" + +#: .\cookbook\forms.py:161 +msgid "Old Food" +msgstr "" + +#: .\cookbook\forms.py:162 +msgid "Food that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:174 +msgid "Add your comment: " +msgstr "" + +#: .\cookbook\forms.py:199 +msgid "Leave empty for dropbox and enter app password for nextcloud." +msgstr "" + +#: .\cookbook\forms.py:202 +msgid "Leave empty for nextcloud and enter api token for dropbox." +msgstr "" + +#: .\cookbook\forms.py:210 +msgid "" +"Leave empty for dropbox and enter only base url for nextcloud (/remote." +"php/webdav/ is added automatically)" +msgstr "" + +#: .\cookbook\forms.py:229 +msgid "Search String" +msgstr "" + +#: .\cookbook\forms.py:243 +msgid "File ID" +msgstr "" + +#: .\cookbook\forms.py:261 +msgid "You must provide at least a recipe or a title." +msgstr "" + +#: .\cookbook\forms.py:270 +msgid "You can list default users to share recipes with in the settings." +msgstr "" + +#: .\cookbook\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "" + +#: .\cookbook\forms.py:283 +msgid "A username is not required, if left blank the new user can choose one." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:123 +msgid "You are not logged in and therefore cannot view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 +msgid "You cannot interact with this object as its not owned by you!" +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:35 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:44 +msgid "" +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:152 +msgid "Imported from " +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 +msgid "Breakfast" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 +msgid "Lunch" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 +msgid "Dinner" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 +msgid "Other" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "" + +#: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 +#: .\cookbook\templates\generic\edit_template.html:6 +#: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 +msgid "Edit" +msgstr "" + +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 +#: .\cookbook\templates\generic\delete_template.html:5 +#: .\cookbook\templates\generic\delete_template.html:13 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 +msgid "Delete" +msgstr "" + +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "" + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "" + +#: .\cookbook\templates\base.html:60 +#: .\cookbook\templates\forms\ingredients.html:7 +#: .\cookbook\templates\index.html:7 +msgid "Cookbook" +msgstr "" + +#: .\cookbook\templates\base.html:67 +msgid "Utensils" +msgstr "" + +#: .\cookbook\templates\base.html:77 +msgid "Shopping" +msgstr "" + +#: .\cookbook\templates\base.html:87 +msgid "Tags" +msgstr "" + +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 +msgid "Keyword" +msgstr "" + +#: .\cookbook\templates\base.html:93 +msgid "Batch Edit" +msgstr "" + +#: .\cookbook\templates\base.html:98 +msgid "Storage Data" +msgstr "" + +#: .\cookbook\templates\base.html:102 +msgid "Storage Backends" +msgstr "" + +#: .\cookbook\templates\base.html:104 +msgid "Configure Sync" +msgstr "" + +#: .\cookbook\templates\base.html:106 +msgid "Discovered Recipes" +msgstr "" + +#: .\cookbook\templates\base.html:108 +msgid "Discovery Log" +msgstr "" + +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 +msgid "Statistics" +msgstr "" + +#: .\cookbook\templates\base.html:112 +msgid "Units & Ingredients" +msgstr "" + +#: .\cookbook\templates\base.html:114 +msgid "Import Recipe" +msgstr "" + +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\settings.html:16 +msgid "Settings" +msgstr "" + +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\history.html:14 +msgid "History" +msgstr "" + +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" +msgstr "" + +#: .\cookbook\templates\base.html:138 +msgid "Admin" +msgstr "" + +#: .\cookbook\templates\base.html:142 +msgid "Markdown Help" +msgstr "" + +#: .\cookbook\templates\base.html:144 +msgid "GitHub" +msgstr "" + +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "" + +#: .\cookbook\templates\base.html:151 +msgid "Logout" +msgstr "" + +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 +msgid "Login" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:6 +msgid "Batch edit Category" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:15 +msgid "Batch edit Recipes" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:20 +msgid "Add the specified keywords to all recipes containing a word" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 +msgid "Sync" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:10 +msgid "Manage watched Folders" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:14 +msgid "" +"On this Page you can manage all storage folder locations that should be " +"monitored and synced" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:16 +msgid "The path must be in the following format" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:27 +msgid "Sync Now!" +msgstr "" + +#: .\cookbook\templates\batch\waiting.html:4 +#: .\cookbook\templates\batch\waiting.html:10 +msgid "Importing Recipes" +msgstr "" + +#: .\cookbook\templates\batch\waiting.html:23 +msgid "" +"This can take a few minutes, depending on the number of recipes in sync, " +"please wait." +msgstr "" + +#: .\cookbook\templates\books.html:5 .\cookbook\templates\books.html:11 +msgid "Recipe Books" +msgstr "" + +#: .\cookbook\templates\books.html:15 +msgid "New Book" +msgstr "" + +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 +msgid "by" +msgstr "" + +#: .\cookbook\templates\books.html:34 +msgid "Toggle Recipes" +msgstr "" + +#: .\cookbook\templates\books.html:54 +#: .\cookbook\templates\meal_plan_entry.html:48 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 +msgid "Last cooked" +msgstr "" + +#: .\cookbook\templates\books.html:71 +msgid "There are no recipes in this book yet." +msgstr "" + +#: .\cookbook\templates\export.html:6 +msgid "Export Recipes" +msgstr "" + +#: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 +msgid "Export" +msgstr "" + +#: .\cookbook\templates\export.html:31 +msgid "Exported Recipe" +msgstr "" + +#: .\cookbook\templates\export.html:42 +msgid "Copy to clipboard" +msgstr "" + +#: .\cookbook\templates\export.html:54 +msgid "Copied!" +msgstr "" + +#: .\cookbook\templates\export.html:61 +msgid "Copy list to clipboard" +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:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 +#: .\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:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 +msgid "Save" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 +msgid "Edit Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +msgid "Preperation Time" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +msgid "Waiting Time" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +msgid "Select Keywords" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +msgid "Delete Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +msgid "Hide as header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +msgid "Step Name" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +msgid "Step time in Minutes" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 +msgid "Note" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +msgid "Delete Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +msgid "Make Header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +msgid "Make Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +msgid "Disable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +msgid "Enable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +msgid "Add Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +msgid "View Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +msgid "Delete Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +msgid "There was an error loading the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Changes saved successfully!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +msgid "There was an error updating the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 +msgid "Are you sure that you want to delete this ingredient?" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +msgid "Are you sure that you want to delete this step?" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "There was an error loading a resource!" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:15 +msgid "Edit Ingredients" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:16 +msgid "" +"\n" +" The following form can be used if, accidentally, two (or more) units " +"or ingredients where created that should be\n" +" the same.\n" +" It merges two units or ingredients and updates all recipes using " +"them.\n" +" " +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:24 +#: .\cookbook\templates\stats.html:26 +msgid "Units" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:26 +msgid "Are you sure that you want to merge these two units ?" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:31 +#: .\cookbook\templates\forms\ingredients.html:40 +msgid "Merge" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:36 +msgid "Are you sure that you want to merge these two ingredients ?" +msgstr "" + +#: .\cookbook\templates\generic\delete_template.html:18 +#, python-format +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 "" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:6 +#: .\cookbook\templates\generic\list_template.html:12 +msgid "List" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:25 +msgid "Filter" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:30 +msgid "Import all" +msgstr "" + +#: .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 +msgid "New" +msgstr "" + +#: .\cookbook\templates\generic\table_template.html:76 +#: .\cookbook\templates\recipes_table.html:112 +msgid "previous" +msgstr "" + +#: .\cookbook\templates\generic\table_template.html:98 +#: .\cookbook\templates\recipes_table.html:134 +msgid "next" +msgstr "" + +#: .\cookbook\templates\history.html:20 +msgid "View Log" +msgstr "" + +#: .\cookbook\templates\history.html:24 +msgid "Cook Log" +msgstr "" + +#: .\cookbook\templates\import.html:6 +msgid "Import Recipes" +msgstr "" + +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 +msgid "Import" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:7 +msgid "Log Recipe Cooking" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:13 +msgid "All fields are optional and can be left empty." +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:16 +msgid "Servings" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:19 +msgid "Rating" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:27 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 +msgid "Close" +msgstr "" + +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 +msgid "Recipe" +msgstr "" + +#: .\cookbook\templates\include\recipe_open_modal.html:32 +msgid "Open Recipe" +msgstr "" + +#: .\cookbook\templates\include\storage_backend_warning.html:4 +msgid "Security Warning" +msgstr "" + +#: .\cookbook\templates\include\storage_backend_warning.html:5 +msgid "" +"\n" +" The Password and Token field are stored as plain text " +"inside the database.\n" +" This is necessary because they are needed to make API requests, but " +"it also increases the risk of\n" +" someone stealing it.
\n" +" To limit the possible damage tokens or accounts with limited access " +"can be used.\n" +" " +msgstr "" + +#: .\cookbook\templates\index.html:29 +msgid "Search recipe ..." +msgstr "" + +#: .\cookbook\templates\index.html:44 +msgid "New Recipe" +msgstr "" + +#: .\cookbook\templates\index.html:47 +msgid "Website Import" +msgstr "" + +#: .\cookbook\templates\index.html:53 +msgid "Advanced Search" +msgstr "" + +#: .\cookbook\templates\index.html:57 +msgid "Reset Search" +msgstr "" + +#: .\cookbook\templates\index.html:85 +msgid "Last viewed" +msgstr "" + +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 +msgid "Recipes" +msgstr "" + +#: .\cookbook\templates\index.html:94 +msgid "Log in to view Recipes" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:5 +#: .\cookbook\templates\markdown_info.html:13 +msgid "Markdown Info" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:14 +msgid "" +"\n" +" Markdown is lightweight markup language that can be used to format " +"plain text easily.\n" +" This site uses the Python Markdown library to\n" +" convert your text into nice looking html. Its full markdown " +"documentation can be found\n" +" here.\n" +" An incomplete but most likely sufficient documentation can be found " +"below.\n" +" " +msgstr "" + +#: .\cookbook\templates\markdown_info.html:25 +msgid "Headers" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:54 +msgid "Formatting" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:56 +#: .\cookbook\templates\markdown_info.html:72 +msgid "Line breaks are inserted by adding two spaces after the end of a line" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:57 +#: .\cookbook\templates\markdown_info.html:73 +msgid "or by leaving a blank line inbetween." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:59 +#: .\cookbook\templates\markdown_info.html:74 +msgid "This text is bold" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:60 +#: .\cookbook\templates\markdown_info.html:75 +msgid "This text is in italics" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:61 +#: .\cookbook\templates\markdown_info.html:77 +msgid "Blockquotes are also possible" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:84 +msgid "Lists" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:85 +msgid "" +"Lists can ordered or unorderd. It is important to leave a blank line " +"before the list!" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:87 +#: .\cookbook\templates\markdown_info.html:108 +msgid "Ordered List" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:89 +#: .\cookbook\templates\markdown_info.html:90 +#: .\cookbook\templates\markdown_info.html:91 +#: .\cookbook\templates\markdown_info.html:110 +#: .\cookbook\templates\markdown_info.html:111 +#: .\cookbook\templates\markdown_info.html:112 +msgid "unordered list item" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:93 +#: .\cookbook\templates\markdown_info.html:114 +msgid "Unordered List" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:95 +#: .\cookbook\templates\markdown_info.html:96 +#: .\cookbook\templates\markdown_info.html:97 +#: .\cookbook\templates\markdown_info.html:116 +#: .\cookbook\templates\markdown_info.html:117 +#: .\cookbook\templates\markdown_info.html:118 +msgid "ordered list item" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:125 +msgid "Images & Links" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:126 +msgid "" +"Links can be formatted with Markdown. This applicaiton also allows to paste " +"links directly into markdown fields without any formatting." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:132 +#: .\cookbook\templates\markdown_info.html:145 +msgid "This will become and Image" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:152 +msgid "Tables" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:153 +msgid "" +"Markdown tables are hard to create by hand. It is recommended to use a table " +"editor like this one." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:157 +#: .\cookbook\templates\markdown_info.html:171 +#: .\cookbook\templates\markdown_info.html:177 +msgid "Table" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:157 +#: .\cookbook\templates\markdown_info.html:178 +msgid "Cell" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:96 +msgid "New Entry" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +msgid "Search Recipe" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:126 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:136 +msgid "Create only note" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:155 +msgid "Shopping List currently empty" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:158 +msgid "Open Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:172 +msgid "Plan" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:221 +#: .\cookbook\templates\meal_plan_entry.html:18 +msgid "Created by" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:227 +#: .\cookbook\templates\meal_plan_entry.html:20 +msgid "Shared with" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +msgid "Add to Shopping" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:280 +msgid "New meal type" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:295 +msgid "Meal Plan Help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals " +"both with recipes or just notes.

\n" +"

Simply select a recipe from the list of " +"recently viewed recipes or search the one you\n" +" want and drag it to the desired plan " +"position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry " +"with a custom title and note. Creating only\n" +" Notes is possible by dragging the create " +"note box into the plan.

\n" +"

Click on a recipe in order to open the detail " +"view. Here you can also add it to the\n" +" shopping list. You can also add all recipes " +"of a day to the shopping list by\n" +" clicking the shopping cart at the top of the " +"table.

\n" +"

Since a common use case is to plan meals " +"together you can define\n" +" users you want to share your plan with in " +"the settings.\n" +"

\n" +"

You can also edit the types of meals you want " +"to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will " +"appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users " +"you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:50 +msgid "Never cooked before." +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:76 +msgid "Other meals on this day" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:38 +msgid "Add to Book" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:44 +msgid "Add to Plan" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 +msgid "Log Cooking" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:48 +msgid "Print" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:53 +msgid "Share" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:62 +msgid "in" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 +msgid "Preparation time ca." +msgstr "" + +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 +msgid "Waiting time ca." +msgstr "" + +#: .\cookbook\templates\recipe_view.html:201 +#: .\cookbook\templates\recipes_table.html:19 +#: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 +msgid "Recipe Image" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 +msgid "View external recipe" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:346 +msgid "External recipe image" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:353 +msgid "External recipe" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:355 +msgid "" +"\n" +" This is an external recipe, which means " +"you can only view it by opening the link\n" +" above.\n" +" You can convert this recipe to a fancy " +"recipe by pressing the convert button. The\n" +" original\n" +" file\n" +" will still be accessible.\n" +" " +msgstr "" + +#: .\cookbook\templates\recipe_view.html:366 +msgid "Convert now!" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:384 +#: .\cookbook\templates\stats.html:47 +msgid "Comments" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 +msgid "Comment" +msgstr "" + +#: .\cookbook\templates\recipes_table.html:55 +msgid "External" +msgstr "" + +#: .\cookbook\templates\registration\login.html:10 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:9 +msgid "Create your Account" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:14 +msgid "Create User" +msgstr "" + +#: .\cookbook\templates\rest_framework\api.html:5 +msgid "Recipe Home" +msgstr "" + +#: .\cookbook\templates\settings.html:22 +msgid "Account" +msgstr "" + +#: .\cookbook\templates\settings.html:41 +msgid "Language" +msgstr "" + +#: .\cookbook\templates\settings.html:66 +msgid "Style" +msgstr "" + +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown " +"in the following examples:" +msgstr "" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 +msgid "Cookbook Setup" +msgstr "" + +#: .\cookbook\templates\setup.html:14 +msgid "Setup" +msgstr "" + +#: .\cookbook\templates\setup.html:15 +msgid "To start using this application you must first create a superuser." +msgstr "" + +#: .\cookbook\templates\setup.html:20 +msgid "Create Superuser" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:71 +msgid "Shopping Recipes" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:145 +msgid "Amount" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:257 +msgid "Copy/Export" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +msgid "There was an error updating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:487 +msgid "Object created successfully!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:496 +msgid "There was an error creating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" +msgstr "" + +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + +#: .\cookbook\templates\stats.html:19 +msgid "Number of objects" +msgstr "" + +#: .\cookbook\templates\stats.html:30 +msgid "Recipe Imports" +msgstr "" + +#: .\cookbook\templates\stats.html:38 +msgid "Objects stats" +msgstr "" + +#: .\cookbook\templates\stats.html:41 +msgid "Recipes without Keywords" +msgstr "" + +#: .\cookbook\templates\stats.html:43 +msgid "External Recipes" +msgstr "" + +#: .\cookbook\templates\stats.html:45 +msgid "Internal Recipes" +msgstr "" + +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +msgid "Invite Links" +msgstr "" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can " +"be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:53 +msgid "Media Serving" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +msgid "Warning" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your " +".env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and " +"insecure! Please set\n" +" SECRET_KEY int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most " +"likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database " +"backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" + +#: .\cookbook\templates\url_import.html:5 +msgid "URL Import" +msgstr "" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "" + +#: .\cookbook\templates\url_import.html:44 +msgid "Recipe Name" +msgstr "" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "" + +#: .\cookbook\templates\url_import.html:197 +msgid "All Keywords" +msgstr "" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "" + +#: .\cookbook\templates\url_import.html:225 +msgid "Information" +msgstr "" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages " +"support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured " +"data feel free to post an example in the\n" +" github issues." +msgstr "" + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "" + +#: .\cookbook\templates\url_import.html:238 +msgid "GitHub Issues" +msgstr "" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "" + +#: .\cookbook\templates\url_import.html:322 +msgid "An error occurred while trying to import this recipe!" +msgstr "" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "" + +#: .\cookbook\views\api.py:338 +msgid "Sync successful!" +msgstr "" + +#: .\cookbook\views\api.py:341 +msgid "Error synchronizing with Storage" +msgstr "" + +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "" + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "" + +#: .\cookbook\views\data.py:83 +#, python-format +msgid "Batch edit done. %(count)d recipe was updated." +msgid_plural "Batch edit done. %(count)d Recipes where updated." +msgstr[0] "" +msgstr[1] "" + +#: .\cookbook\views\delete.py:66 +msgid "Monitor" +msgstr "" + +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 +msgid "Storage Backend" +msgstr "" + +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 +msgid "Recipe Book" +msgstr "" + +#: .\cookbook\views\delete.py:138 +msgid "Bookmarks" +msgstr "" + +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" +msgstr "" + +#: .\cookbook\views\edit.py:93 +msgid "Food" +msgstr "" + +#: .\cookbook\views\edit.py:102 +msgid "You cannot edit this storage!" +msgstr "" + +#: .\cookbook\views\edit.py:121 +msgid "Storage saved!" +msgstr "" + +#: .\cookbook\views\edit.py:123 +msgid "There was an error updating this storage backend!" +msgstr "" + +#: .\cookbook\views\edit.py:130 +msgid "Storage" +msgstr "" + +#: .\cookbook\views\edit.py:215 +msgid "Changes saved!" +msgstr "" + +#: .\cookbook\views\edit.py:219 +msgid "Error saving changes!" +msgstr "" + +#: .\cookbook\views\edit.py:249 +msgid "Units merged!" +msgstr "" + +#: .\cookbook\views\edit.py:262 +msgid "Foods merged!" +msgstr "" + +#: .\cookbook\views\import_export.py:42 +msgid "Recipe imported successfully!" +msgstr "" + +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "" + +#: .\cookbook\views\import_export.py:79 +msgid "" +"External recipes cannot be exported, please share the file directly or " +"select an internal recipe." +msgstr "" + +#: .\cookbook\views\lists.py:28 +msgid "Import Log" +msgstr "" + +#: .\cookbook\views\lists.py:37 +msgid "Discovery" +msgstr "" + +#: .\cookbook\views\lists.py:57 +msgid "Shopping Lists" +msgstr "" + +#: .\cookbook\views\new.py:98 +msgid "Imported new recipe!" +msgstr "" + +#: .\cookbook\views\new.py:101 +msgid "There was an error importing this recipe!" +msgstr "" + +#: .\cookbook\views\views.py:86 +msgid "You do not have the required permissions to perform this action!" +msgstr "" + +#: .\cookbook\views\views.py:98 +msgid "Comment saved!" +msgstr "" + +#: .\cookbook\views\views.py:108 +msgid "Bookmark saved!" +msgstr "" + +#: .\cookbook\views\views.py:254 +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:261 .\cookbook\views\views.py:301 +msgid "Passwords dont match!" +msgstr "" + +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 +msgid "User has been created, please login!" +msgstr "" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "" diff --git a/cookbook/locale/tr/LC_MESSAGES/django.mo b/cookbook/locale/tr/LC_MESSAGES/django.mo new file mode 100644 index 000000000..066998e69 Binary files /dev/null and b/cookbook/locale/tr/LC_MESSAGES/django.mo differ diff --git a/cookbook/locale/tr/LC_MESSAGES/django.po b/cookbook/locale/tr/LC_MESSAGES/django.po new file mode 100644 index 000000000..2e529fbd2 --- /dev/null +++ b/cookbook/locale/tr/LC_MESSAGES/django.po @@ -0,0 +1,1791 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-09-29 19:44+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: .\cookbook\filters.py:15 .\cookbook\templates\base.html:80 +#: .\cookbook\templates\forms\edit_internal_recipe.html:170 +#: .\cookbook\templates\forms\ingredients.html:34 +#: .\cookbook\templates\recipe_view.html:104 +#: .\cookbook\templates\stats.html:28 .\cookbook\views\lists.py:47 +msgid "Ingredients" +msgstr "" + +#: .\cookbook\forms.py:37 +msgid "" +"Color of the top navigation bar. Not all colors work with all themes, just " +"try them out!" +msgstr "" + +#: .\cookbook\forms.py:38 +msgid "Default Unit to be used when inserting a new ingredient into a recipe." +msgstr "" + +#: .\cookbook\forms.py:39 +msgid "Default user to share newly created meal plan entries with." +msgstr "" + +#: .\cookbook\forms.py:40 +msgid "Show recently viewed recipes on search page." +msgstr "" + +#: .\cookbook\forms.py:41 +msgid "Number of decimals to round ingredients." +msgstr "" + +#: .\cookbook\forms.py:42 +msgid "If you want to be able to create and see comments underneath recipes." +msgstr "" + +#: .\cookbook\forms.py:44 +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. " +"Useful when shopping with multiple people but might use a little bit of " +"mobile data. If lower than instance limit it is reset when saving." +msgstr "" + +#: .\cookbook\forms.py:61 +msgid "" +"Both fields are optional. If none are given the username will be displayed " +"instead" +msgstr "" + +#: .\cookbook\forms.py:75 .\cookbook\forms.py:93 .\cookbook\forms.py:240 +#: .\cookbook\templates\forms\edit_internal_recipe.html:45 +msgid "Name" +msgstr "" + +#: .\cookbook\forms.py:76 .\cookbook\forms.py:94 .\cookbook\forms.py:241 +#: .\cookbook\templates\forms\edit_internal_recipe.html:65 +#: .\cookbook\templates\stats.html:24 .\cookbook\templates\url_import.html:177 +msgid "Keywords" +msgstr "" + +#: .\cookbook\forms.py:77 .\cookbook\forms.py:95 +msgid "Preparation time in minutes" +msgstr "" + +#: .\cookbook\forms.py:78 .\cookbook\forms.py:96 +msgid "Waiting time (cooking/baking) in minutes" +msgstr "" + +#: .\cookbook\forms.py:79 .\cookbook\forms.py:242 +msgid "Path" +msgstr "" + +#: .\cookbook\forms.py:80 +msgid "Storage UID" +msgstr "" + +#: .\cookbook\forms.py:107 +msgid "" +"Include - [ ] in list for easier usage in markdown based " +"documents." +msgstr "" + +#: .\cookbook\forms.py:119 +msgid "Export Base64 encoded image?" +msgstr "" + +#: .\cookbook\forms.py:123 +msgid "Download export directly or show on page?" +msgstr "" + +#: .\cookbook\forms.py:129 +msgid "Simply paste a JSON export into this textarea and click import." +msgstr "" + +#: .\cookbook\forms.py:138 +msgid "New Unit" +msgstr "" + +#: .\cookbook\forms.py:139 +msgid "New unit that other gets replaced by." +msgstr "" + +#: .\cookbook\forms.py:144 +msgid "Old Unit" +msgstr "" + +#: .\cookbook\forms.py:145 +msgid "Unit that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:155 +msgid "New Food" +msgstr "" + +#: .\cookbook\forms.py:156 +msgid "New food that other gets replaced by." +msgstr "" + +#: .\cookbook\forms.py:161 +msgid "Old Food" +msgstr "" + +#: .\cookbook\forms.py:162 +msgid "Food that should be replaced." +msgstr "" + +#: .\cookbook\forms.py:174 +msgid "Add your comment: " +msgstr "" + +#: .\cookbook\forms.py:199 +msgid "Leave empty for dropbox and enter app password for nextcloud." +msgstr "" + +#: .\cookbook\forms.py:202 +msgid "Leave empty for nextcloud and enter api token for dropbox." +msgstr "" + +#: .\cookbook\forms.py:210 +msgid "" +"Leave empty for dropbox and enter only base url for nextcloud (/remote." +"php/webdav/ is added automatically)" +msgstr "" + +#: .\cookbook\forms.py:229 +msgid "Search String" +msgstr "" + +#: .\cookbook\forms.py:243 +msgid "File ID" +msgstr "" + +#: .\cookbook\forms.py:261 +msgid "You must provide at least a recipe or a title." +msgstr "" + +#: .\cookbook\forms.py:270 +msgid "You can list default users to share recipes with in the settings." +msgstr "" + +#: .\cookbook\forms.py:271 +#: .\cookbook\templates\forms\edit_internal_recipe.html:323 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\forms.py:272 +msgid "Scaling factor for recipe." +msgstr "" + +#: .\cookbook\forms.py:283 +msgid "A username is not required, if left blank the new user can choose one." +msgstr "" + +#: .\cookbook\helper\permission_helper.py:113 +#: .\cookbook\helper\permission_helper.py:155 +#: .\cookbook\helper\permission_helper.py:169 +#: .\cookbook\helper\permission_helper.py:180 +#: .\cookbook\helper\permission_helper.py:191 .\cookbook\views\data.py:27 +#: .\cookbook\views\views.py:79 .\cookbook\views\views.py:158 +msgid "You do not have the required permissions to view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:123 +msgid "You are not logged in and therefore cannot view this page!" +msgstr "" + +#: .\cookbook\helper\permission_helper.py:127 +#: .\cookbook\helper\permission_helper.py:141 .\cookbook\views\delete.py:132 +msgid "You cannot interact with this object as its not owned by you!" +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:35 +msgid "The requested site provided malformed data and cannot be read." +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:44 +msgid "" +"The requested site does not provide any recognized data format to import the " +"recipe from." +msgstr "" + +#: .\cookbook\helper\recipe_url_import.py:152 +msgid "Imported from " +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:12 +msgid "Breakfast" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:17 +msgid "Lunch" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:22 +msgid "Dinner" +msgstr "" + +#: .\cookbook\migrations\0047_auto_20200602_1133.py:27 +msgid "Other" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\shopping_list.html:44 +msgid "Search" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:74 +#: .\cookbook\templates\meal_plan.html:5 .\cookbook\views\delete.py:149 +#: .\cookbook\views\edit.py:194 .\cookbook\views\new.py:156 +msgid "Meal-Plan" +msgstr "" + +#: .\cookbook\models.py:59 .\cookbook\templates\base.html:71 +msgid "Books" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Small" +msgstr "" + +#: .\cookbook\models.py:65 +msgid "Large" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:149 +msgid "Text" +msgstr "" + +#: .\cookbook\models.py:173 +#: .\cookbook\templates\forms\edit_internal_recipe.html:150 +msgid "Time" +msgstr "" + +#: .\cookbook\tables.py:29 .\cookbook\templates\books.html:36 +#: .\cookbook\templates\generic\edit_template.html:6 +#: .\cookbook\templates\generic\edit_template.html:14 +#: .\cookbook\templates\meal_plan.html:238 +#: .\cookbook\templates\recipe_view.html:36 +#: .\cookbook\templates\recipes_table.html:77 +#: .\cookbook\templates\shopping_list.html:29 +msgid "Edit" +msgstr "" + +#: .\cookbook\tables.py:103 .\cookbook\tables.py:122 +#: .\cookbook\templates\books.html:38 +#: .\cookbook\templates\generic\delete_template.html:5 +#: .\cookbook\templates\generic\delete_template.html:13 +#: .\cookbook\templates\generic\edit_template.html:27 +#: .\cookbook\templates\meal_plan.html:234 +msgid "Delete" +msgstr "" + +#: .\cookbook\tables.py:121 +msgid "Link" +msgstr "" + +#: .\cookbook\templates\404.html:5 +msgid "404 Error" +msgstr "" + +#: .\cookbook\templates\404.html:18 +msgid "The page you are looking for could not be found." +msgstr "" + +#: .\cookbook\templates\404.html:33 +msgid "Take me Home" +msgstr "" + +#: .\cookbook\templates\404.html:35 +msgid "Report a Bug" +msgstr "" + +#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:146 +#: .\cookbook\templates\rest_framework\api.html:11 +msgid "API Documentation" +msgstr "" + +#: .\cookbook\templates\base.html:60 +#: .\cookbook\templates\forms\ingredients.html:7 +#: .\cookbook\templates\index.html:7 +msgid "Cookbook" +msgstr "" + +#: .\cookbook\templates\base.html:67 +msgid "Utensils" +msgstr "" + +#: .\cookbook\templates\base.html:77 +msgid "Shopping" +msgstr "" + +#: .\cookbook\templates\base.html:87 +msgid "Tags" +msgstr "" + +#: .\cookbook\templates\base.html:91 .\cookbook\views\delete.py:78 +#: .\cookbook\views\edit.py:76 .\cookbook\views\lists.py:20 +#: .\cookbook\views\new.py:56 +msgid "Keyword" +msgstr "" + +#: .\cookbook\templates\base.html:93 +msgid "Batch Edit" +msgstr "" + +#: .\cookbook\templates\base.html:98 +msgid "Storage Data" +msgstr "" + +#: .\cookbook\templates\base.html:102 +msgid "Storage Backends" +msgstr "" + +#: .\cookbook\templates\base.html:104 +msgid "Configure Sync" +msgstr "" + +#: .\cookbook\templates\base.html:106 +msgid "Discovered Recipes" +msgstr "" + +#: .\cookbook\templates\base.html:108 +msgid "Discovery Log" +msgstr "" + +#: .\cookbook\templates\base.html:110 .\cookbook\templates\stats.html:10 +msgid "Statistics" +msgstr "" + +#: .\cookbook\templates\base.html:112 +msgid "Units & Ingredients" +msgstr "" + +#: .\cookbook\templates\base.html:114 +msgid "Import Recipe" +msgstr "" + +#: .\cookbook\templates\base.html:130 .\cookbook\templates\settings.html:6 +#: .\cookbook\templates\settings.html:16 +msgid "Settings" +msgstr "" + +#: .\cookbook\templates\base.html:132 .\cookbook\templates\history.html:6 +#: .\cookbook\templates\history.html:14 +msgid "History" +msgstr "" + +#: .\cookbook\templates\base.html:136 .\cookbook\templates\system.html:13 +msgid "System" +msgstr "" + +#: .\cookbook\templates\base.html:138 +msgid "Admin" +msgstr "" + +#: .\cookbook\templates\base.html:142 +msgid "Markdown Help" +msgstr "" + +#: .\cookbook\templates\base.html:144 +msgid "GitHub" +msgstr "" + +#: .\cookbook\templates\base.html:148 +msgid "API Browser" +msgstr "" + +#: .\cookbook\templates\base.html:151 +msgid "Logout" +msgstr "" + +#: .\cookbook\templates\base.html:156 +#: .\cookbook\templates\registration\login.html:4 +#: .\cookbook\templates\registration\login.html:46 +msgid "Login" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:6 +msgid "Batch edit Category" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:15 +msgid "Batch edit Recipes" +msgstr "" + +#: .\cookbook\templates\batch\edit.html:20 +msgid "Add the specified keywords to all recipes containing a word" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:6 .\cookbook\views\edit.py:59 +msgid "Sync" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:10 +msgid "Manage watched Folders" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:14 +msgid "" +"On this Page you can manage all storage folder locations that should be " +"monitored and synced" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:16 +msgid "The path must be in the following format" +msgstr "" + +#: .\cookbook\templates\batch\monitor.html:27 +msgid "Sync Now!" +msgstr "" + +#: .\cookbook\templates\batch\waiting.html:4 +#: .\cookbook\templates\batch\waiting.html:10 +msgid "Importing Recipes" +msgstr "" + +#: .\cookbook\templates\batch\waiting.html:23 +msgid "" +"This can take a few minutes, depending on the number of recipes in sync, " +"please wait." +msgstr "" + +#: .\cookbook\templates\books.html:5 .\cookbook\templates\books.html:11 +msgid "Recipe Books" +msgstr "" + +#: .\cookbook\templates\books.html:15 +msgid "New Book" +msgstr "" + +#: .\cookbook\templates\books.html:27 .\cookbook\templates\recipe_view.html:67 +#: .\cookbook\templates\recipe_view.html:389 +msgid "by" +msgstr "" + +#: .\cookbook\templates\books.html:34 +msgid "Toggle Recipes" +msgstr "" + +#: .\cookbook\templates\books.html:54 +#: .\cookbook\templates\meal_plan_entry.html:48 +#: .\cookbook\templates\recipe_view.html:90 +#: .\cookbook\templates\recipes_table.html:59 +msgid "Last cooked" +msgstr "" + +#: .\cookbook\templates\books.html:71 +msgid "There are no recipes in this book yet." +msgstr "" + +#: .\cookbook\templates\export.html:6 +msgid "Export Recipes" +msgstr "" + +#: .\cookbook\templates\export.html:19 +#: .\cookbook\templates\recipe_view.html:50 +#: .\cookbook\templates\shopping_list.html:249 +msgid "Export" +msgstr "" + +#: .\cookbook\templates\export.html:31 +msgid "Exported Recipe" +msgstr "" + +#: .\cookbook\templates\export.html:42 +msgid "Copy to clipboard" +msgstr "" + +#: .\cookbook\templates\export.html:54 +msgid "Copied!" +msgstr "" + +#: .\cookbook\templates\export.html:61 +msgid "Copy list to clipboard" +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:335 +#: .\cookbook\templates\forms\edit_internal_recipe.html:359 +#: .\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:282 +#: .\cookbook\templates\recipe_view.html:440 +#: .\cookbook\templates\settings.html:28 .\cookbook\templates\settings.html:35 +#: .\cookbook\templates\settings.html:57 .\cookbook\templates\settings.html:72 +#: .\cookbook\templates\shopping_list.html:251 +msgid "Save" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:7 +#: .\cookbook\templates\forms\edit_internal_recipe.html:34 +msgid "Edit Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:59 +msgid "Preperation Time" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:62 +msgid "Waiting Time" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:73 +msgid "Select Keywords" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:97 +#: .\cookbook\templates\forms\edit_internal_recipe.html:386 +#: .\cookbook\templates\recipe_view.html:228 +msgid "Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:113 +msgid "Delete Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:118 +msgid "Show as header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:124 +msgid "Hide as header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:129 +msgid "Move Up" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:134 +msgid "Move Down" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:143 +msgid "Step Name" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:147 +msgid "Step Type" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:158 +msgid "Step time in Minutes" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:212 +#: .\cookbook\templates\shopping_list.html:158 +msgid "Select Unit" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:213 +#: .\cookbook\templates\forms\edit_internal_recipe.html:237 +#: .\cookbook\templates\shopping_list.html:159 +#: .\cookbook\templates\shopping_list.html:181 +msgid "Create" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:214 +#: .\cookbook\templates\forms\edit_internal_recipe.html:238 +#: .\cookbook\templates\shopping_list.html:160 +#: .\cookbook\templates\shopping_list.html:182 +#: .\cookbook\templates\url_import.html:100 +#: .\cookbook\templates\url_import.html:132 +msgid "Select" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:236 +#: .\cookbook\templates\shopping_list.html:180 +msgid "Select Food" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:253 +#: .\cookbook\templates\meal_plan.html:213 +#: .\cookbook\templates\url_import.html:147 +msgid "Note" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:270 +msgid "Delete Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:276 +msgid "Make Header" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:282 +msgid "Make Ingredient" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:288 +msgid "Disable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:294 +msgid "Enable Amount" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:320 +#: .\cookbook\templates\recipe_view.html:210 +#: .\cookbook\templates\url_import.html:171 +msgid "Instructions" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:333 +#: .\cookbook\templates\forms\edit_internal_recipe.html:356 +msgid "Save & View" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:337 +#: .\cookbook\templates\forms\edit_internal_recipe.html:362 +msgid "Add Step" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:339 +#: .\cookbook\templates\forms\edit_internal_recipe.html:365 +msgid "View Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:341 +#: .\cookbook\templates\forms\edit_internal_recipe.html:367 +msgid "Delete Recipe" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:373 +msgid "Steps" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:496 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +#: .\cookbook\templates\shopping_list.html:556 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:313 +#: .\cookbook\templates\url_import.html:322 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "Error" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:494 +msgid "There was an error loading the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:487 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Updated" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:505 +#: .\cookbook\templates\forms\edit_internal_recipe.html:522 +#: .\cookbook\templates\shopping_list.html:503 +msgid "Changes saved successfully!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:512 +#: .\cookbook\templates\forms\edit_internal_recipe.html:526 +msgid "There was an error updating the recipe!" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:570 +msgid "Are you sure that you want to delete this ingredient?" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:575 +msgid "Are you sure that you want to delete this step?" +msgstr "" + +#: .\cookbook\templates\forms\edit_internal_recipe.html:607 +#: .\cookbook\templates\forms\edit_internal_recipe.html:626 +#: .\cookbook\templates\forms\edit_internal_recipe.html:646 +#: .\cookbook\templates\meal_plan.html:396 +#: .\cookbook\templates\meal_plan.html:408 +#: .\cookbook\templates\meal_plan.html:458 +#: .\cookbook\templates\meal_plan.html:471 +#: .\cookbook\templates\meal_plan.html:482 +#: .\cookbook\templates\meal_plan.html:508 +#: .\cookbook\templates\meal_plan.html:519 +#: .\cookbook\templates\meal_plan.html:533 +#: .\cookbook\templates\meal_plan.html:540 +#: .\cookbook\templates\meal_plan.html:548 +#: .\cookbook\templates\shopping_list.html:421 +#: .\cookbook\templates\shopping_list.html:446 +#: .\cookbook\templates\shopping_list.html:572 +#: .\cookbook\templates\shopping_list.html:614 +#: .\cookbook\templates\shopping_list.html:624 +#: .\cookbook\templates\shopping_list.html:633 +#: .\cookbook\templates\url_import.html:308 +#: .\cookbook\templates\url_import.html:366 +#: .\cookbook\templates\url_import.html:384 +#: .\cookbook\templates\url_import.html:403 +msgid "There was an error loading a resource!" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:15 +msgid "Edit Ingredients" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:16 +msgid "" +"\n" +" The following form can be used if, accidentally, two (or more) units " +"or ingredients where created that should be\n" +" the same.\n" +" It merges two units or ingredients and updates all recipes using " +"them.\n" +" " +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:24 +#: .\cookbook\templates\stats.html:26 +msgid "Units" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:26 +msgid "Are you sure that you want to merge these two units ?" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:31 +#: .\cookbook\templates\forms\ingredients.html:40 +msgid "Merge" +msgstr "" + +#: .\cookbook\templates\forms\ingredients.html:36 +msgid "Are you sure that you want to merge these two ingredients ?" +msgstr "" + +#: .\cookbook\templates\generic\delete_template.html:18 +#, python-format +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 "" + +#: .\cookbook\templates\generic\edit_template.html:34 +msgid "Delete original file" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:6 +#: .\cookbook\templates\generic\list_template.html:12 +msgid "List" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:25 +msgid "Filter" +msgstr "" + +#: .\cookbook\templates\generic\list_template.html:30 +msgid "Import all" +msgstr "" + +#: .\cookbook\templates\generic\new_template.html:6 +#: .\cookbook\templates\generic\new_template.html:14 +#: .\cookbook\templates\meal_plan.html:280 +msgid "New" +msgstr "" + +#: .\cookbook\templates\generic\table_template.html:76 +#: .\cookbook\templates\recipes_table.html:112 +msgid "previous" +msgstr "" + +#: .\cookbook\templates\generic\table_template.html:98 +#: .\cookbook\templates\recipes_table.html:134 +msgid "next" +msgstr "" + +#: .\cookbook\templates\history.html:20 +msgid "View Log" +msgstr "" + +#: .\cookbook\templates\history.html:24 +msgid "Cook Log" +msgstr "" + +#: .\cookbook\templates\import.html:6 +msgid "Import Recipes" +msgstr "" + +#: .\cookbook\templates\import.html:14 +#: .\cookbook\templates\url_import.html:203 .\cookbook\views\delete.py:54 +#: .\cookbook\views\edit.py:161 +msgid "Import" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:7 +msgid "Log Recipe Cooking" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:13 +msgid "All fields are optional and can be left empty." +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:16 +msgid "Servings" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:19 +msgid "Rating" +msgstr "" + +#: .\cookbook\templates\include\log_cooking.html:27 +#: .\cookbook\templates\include\recipe_open_modal.html:18 +#: .\cookbook\templates\meal_plan.html:240 +#: .\cookbook\templates\meal_plan.html:284 +#: .\cookbook\templates\meal_plan.html:323 +msgid "Close" +msgstr "" + +#: .\cookbook\templates\include\recipe_open_modal.html:7 +#: .\cookbook\templates\meal_plan.html:207 .\cookbook\views\delete.py:25 +#: .\cookbook\views\edit.py:227 .\cookbook\views\new.py:36 +msgid "Recipe" +msgstr "" + +#: .\cookbook\templates\include\recipe_open_modal.html:32 +msgid "Open Recipe" +msgstr "" + +#: .\cookbook\templates\include\storage_backend_warning.html:4 +msgid "Security Warning" +msgstr "" + +#: .\cookbook\templates\include\storage_backend_warning.html:5 +msgid "" +"\n" +" The Password and Token field are stored as plain text " +"inside the database.\n" +" This is necessary because they are needed to make API requests, but " +"it also increases the risk of\n" +" someone stealing it.
\n" +" To limit the possible damage tokens or accounts with limited access " +"can be used.\n" +" " +msgstr "" + +#: .\cookbook\templates\index.html:29 +msgid "Search recipe ..." +msgstr "" + +#: .\cookbook\templates\index.html:44 +msgid "New Recipe" +msgstr "" + +#: .\cookbook\templates\index.html:47 +msgid "Website Import" +msgstr "" + +#: .\cookbook\templates\index.html:53 +msgid "Advanced Search" +msgstr "" + +#: .\cookbook\templates\index.html:57 +msgid "Reset Search" +msgstr "" + +#: .\cookbook\templates\index.html:85 +msgid "Last viewed" +msgstr "" + +#: .\cookbook\templates\index.html:87 .\cookbook\templates\meal_plan.html:161 +#: .\cookbook\templates\stats.html:22 +msgid "Recipes" +msgstr "" + +#: .\cookbook\templates\index.html:94 +msgid "Log in to view Recipes" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:5 +#: .\cookbook\templates\markdown_info.html:13 +msgid "Markdown Info" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:14 +msgid "" +"\n" +" Markdown is lightweight markup language that can be used to format " +"plain text easily.\n" +" This site uses the Python Markdown library to\n" +" convert your text into nice looking html. Its full markdown " +"documentation can be found\n" +" here.\n" +" An incomplete but most likely sufficient documentation can be found " +"below.\n" +" " +msgstr "" + +#: .\cookbook\templates\markdown_info.html:25 +msgid "Headers" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:54 +msgid "Formatting" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:56 +#: .\cookbook\templates\markdown_info.html:72 +msgid "Line breaks are inserted by adding two spaces after the end of a line" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:57 +#: .\cookbook\templates\markdown_info.html:73 +msgid "or by leaving a blank line inbetween." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:59 +#: .\cookbook\templates\markdown_info.html:74 +msgid "This text is bold" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:60 +#: .\cookbook\templates\markdown_info.html:75 +msgid "This text is in italics" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:61 +#: .\cookbook\templates\markdown_info.html:77 +msgid "Blockquotes are also possible" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:84 +msgid "Lists" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:85 +msgid "" +"Lists can ordered or unorderd. It is important to leave a blank line " +"before the list!" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:87 +#: .\cookbook\templates\markdown_info.html:108 +msgid "Ordered List" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:89 +#: .\cookbook\templates\markdown_info.html:90 +#: .\cookbook\templates\markdown_info.html:91 +#: .\cookbook\templates\markdown_info.html:110 +#: .\cookbook\templates\markdown_info.html:111 +#: .\cookbook\templates\markdown_info.html:112 +msgid "unordered list item" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:93 +#: .\cookbook\templates\markdown_info.html:114 +msgid "Unordered List" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:95 +#: .\cookbook\templates\markdown_info.html:96 +#: .\cookbook\templates\markdown_info.html:97 +#: .\cookbook\templates\markdown_info.html:116 +#: .\cookbook\templates\markdown_info.html:117 +#: .\cookbook\templates\markdown_info.html:118 +msgid "ordered list item" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:125 +msgid "Images & Links" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:126 +msgid "" +"Links can be formatted with Markdown. This applicaiton also allows to paste " +"links directly into markdown fields without any formatting." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:132 +#: .\cookbook\templates\markdown_info.html:145 +msgid "This will become and Image" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:152 +msgid "Tables" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:153 +msgid "" +"Markdown tables are hard to create by hand. It is recommended to use a table " +"editor like this one." +msgstr "" + +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:157 +#: .\cookbook\templates\markdown_info.html:171 +#: .\cookbook\templates\markdown_info.html:177 +msgid "Table" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:155 +#: .\cookbook\templates\markdown_info.html:172 +msgid "Header" +msgstr "" + +#: .\cookbook\templates\markdown_info.html:157 +#: .\cookbook\templates\markdown_info.html:178 +msgid "Cell" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:96 +msgid "New Entry" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:107 +#: .\cookbook\templates\shopping_list.html:48 +msgid "Search Recipe" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:122 +#: .\cookbook\templates\meal_plan.html:588 +msgid "Title" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:124 +msgid "Note (optional)" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:126 +msgid "" +"You can use markdown to format this field. See the docs here" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:130 +msgid "Recipe Multiplier" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:136 +msgid "Create only note" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:151 +#: .\cookbook\templates\shopping_list.html:7 +#: .\cookbook\templates\shopping_list.html:25 +#: .\cookbook\templates\shopping_list.html:493 +msgid "Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:155 +msgid "Shopping List currently empty" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:158 +msgid "Open Shopping List" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:172 +msgid "Plan" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:177 +#: .\cookbook\templates\meal_plan.html:251 +msgid "Edit plan types" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:179 +msgid "Show help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:180 +msgid "Week iCal export" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:221 +#: .\cookbook\templates\meal_plan_entry.html:18 +msgid "Created by" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:227 +#: .\cookbook\templates\meal_plan_entry.html:20 +msgid "Shared with" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:237 +#: .\cookbook\templates\recipe_view.html:41 +msgid "Add to Shopping" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:280 +msgid "New meal type" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:295 +msgid "Meal Plan Help" +msgstr "" + +#: .\cookbook\templates\meal_plan.html:301 +msgid "" +"\n" +"

The meal plan module allows planning of meals " +"both with recipes or just notes.

\n" +"

Simply select a recipe from the list of " +"recently viewed recipes or search the one you\n" +" want and drag it to the desired plan " +"position. You can also add a note and a title and\n" +" then drag the recipe to create a plan entry " +"with a custom title and note. Creating only\n" +" Notes is possible by dragging the create " +"note box into the plan.

\n" +"

Click on a recipe in order to open the detail " +"view. Here you can also add it to the\n" +" shopping list. You can also add all recipes " +"of a day to the shopping list by\n" +" clicking the shopping cart at the top of the " +"table.

\n" +"

Since a common use case is to plan meals " +"together you can define\n" +" users you want to share your plan with in " +"the settings.\n" +"

\n" +"

You can also edit the types of meals you want " +"to plan. If you share your plan with\n" +" someone with\n" +" different meals, their meal types will " +"appear in your list as well. To prevent\n" +" duplicates (e.g. Other and Misc.)\n" +" name your meal types the same as the users " +"you share your meals with and they will be\n" +" merged.

\n" +" " +msgstr "" + +#: .\cookbook\templates\meal_plan.html:558 +msgid "" +"When deleting a meal type all entries using that type will be deleted as " +"well. Deletion will apply when configuration is saved. Do you want to " +"proceed?" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:6 +msgid "Meal Plan View" +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:50 +msgid "Never cooked before." +msgstr "" + +#: .\cookbook\templates\meal_plan_entry.html:76 +msgid "Other meals on this day" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:38 +msgid "Add to Book" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:44 +msgid "Add to Plan" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:46 +#: .\cookbook\templates\recipes_table.html:81 +msgid "Log Cooking" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:48 +msgid "Print" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:53 +msgid "Share" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:62 +msgid "in" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:80 +#: .\cookbook\templates\recipes_table.html:46 +#: .\cookbook\templates\url_import.html:55 +msgid "Preparation time ca." +msgstr "" + +#: .\cookbook\templates\recipe_view.html:86 +#: .\cookbook\templates\recipes_table.html:52 +#: .\cookbook\templates\url_import.html:60 +msgid "Waiting time ca." +msgstr "" + +#: .\cookbook\templates\recipe_view.html:201 +#: .\cookbook\templates\recipes_table.html:19 +#: .\cookbook\templates\recipes_table.html:23 +#: .\cookbook\templates\url_import.html:50 +msgid "Recipe Image" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:231 +msgid "Minutes" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:331 +#: .\cookbook\templates\recipe_view.html:368 +msgid "View external recipe" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:346 +msgid "External recipe image" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:353 +msgid "External recipe" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:355 +msgid "" +"\n" +" This is an external recipe, which means " +"you can only view it by opening the link\n" +" above.\n" +" You can convert this recipe to a fancy " +"recipe by pressing the convert button. The\n" +" original\n" +" file\n" +" will still be accessible.\n" +" " +msgstr "" + +#: .\cookbook\templates\recipe_view.html:366 +msgid "Convert now!" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:384 +#: .\cookbook\templates\stats.html:47 +msgid "Comments" +msgstr "" + +#: .\cookbook\templates\recipe_view.html:407 .\cookbook\views\delete.py:108 +#: .\cookbook\views\edit.py:143 +msgid "Comment" +msgstr "" + +#: .\cookbook\templates\recipes_table.html:55 +msgid "External" +msgstr "" + +#: .\cookbook\templates\registration\login.html:10 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: .\cookbook\templates\registration\signup.html:5 +msgid "Register" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:9 +msgid "Create your Account" +msgstr "" + +#: .\cookbook\templates\registration\signup.html:14 +msgid "Create User" +msgstr "" + +#: .\cookbook\templates\rest_framework\api.html:5 +msgid "Recipe Home" +msgstr "" + +#: .\cookbook\templates\settings.html:22 +msgid "Account" +msgstr "" + +#: .\cookbook\templates\settings.html:41 +msgid "Language" +msgstr "" + +#: .\cookbook\templates\settings.html:66 +msgid "Style" +msgstr "" + +#: .\cookbook\templates\settings.html:78 +msgid "API Token" +msgstr "" + +#: .\cookbook\templates\settings.html:79 +msgid "" +"You can use both basic authentication and token based authentication to " +"access the REST API." +msgstr "" + +#: .\cookbook\templates\settings.html:91 +msgid "" +"Use the token as an Authorization header prefixed by the word token as shown " +"in the following examples:" +msgstr "" + +#: .\cookbook\templates\settings.html:93 +msgid "or" +msgstr "" + +#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5 +msgid "Cookbook Setup" +msgstr "" + +#: .\cookbook\templates\setup.html:14 +msgid "Setup" +msgstr "" + +#: .\cookbook\templates\setup.html:15 +msgid "To start using this application you must first create a superuser." +msgstr "" + +#: .\cookbook\templates\setup.html:20 +msgid "Create Superuser" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:71 +msgid "Shopping Recipes" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:75 +msgid "No recipes selected" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:145 +msgid "Amount" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:206 +msgid "Finished" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:257 +msgid "Copy/Export" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:261 +msgid "List Prefix" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:476 +#: .\cookbook\templates\shopping_list.html:507 +#: .\cookbook\templates\shopping_list.html:530 +msgid "There was an error updating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:487 +msgid "Object created successfully!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:496 +msgid "There was an error creating a resource!" +msgstr "" + +#: .\cookbook\templates\shopping_list.html:556 +msgid "Please enter a valid food" +msgstr "" + +#: .\cookbook\templates\stats.html:4 +msgid "Stats" +msgstr "" + +#: .\cookbook\templates\stats.html:19 +msgid "Number of objects" +msgstr "" + +#: .\cookbook\templates\stats.html:30 +msgid "Recipe Imports" +msgstr "" + +#: .\cookbook\templates\stats.html:38 +msgid "Objects stats" +msgstr "" + +#: .\cookbook\templates\stats.html:41 +msgid "Recipes without Keywords" +msgstr "" + +#: .\cookbook\templates\stats.html:43 +msgid "External Recipes" +msgstr "" + +#: .\cookbook\templates\stats.html:45 +msgid "Internal Recipes" +msgstr "" + +#: .\cookbook\templates\system.html:21 .\cookbook\views\lists.py:73 +msgid "Invite Links" +msgstr "" + +#: .\cookbook\templates\system.html:22 +msgid "Show Links" +msgstr "" + +#: .\cookbook\templates\system.html:26 +msgid "Backup & Restore" +msgstr "" + +#: .\cookbook\templates\system.html:27 +msgid "Download Backup" +msgstr "" + +#: .\cookbook\templates\system.html:37 +msgid "System Information" +msgstr "" + +#: .\cookbook\templates\system.html:39 +msgid "" +"\n" +" Django Recipes is an open source free software application. It can " +"be found on\n" +" GitHub.\n" +" Changelogs can be found here.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:53 +msgid "Media Serving" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 +msgid "Warning" +msgstr "" + +#: .\cookbook\templates\system.html:54 .\cookbook\templates\system.html:69 +#: .\cookbook\templates\system.html:85 .\cookbook\templates\system.html:100 +msgid "Ok" +msgstr "" + +#: .\cookbook\templates\system.html:56 +msgid "" +"Serving media files directly using gunicorn/python is not recommend!\n" +" Please follow the steps described\n" +" here to update\n" +" your installation.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:62 .\cookbook\templates\system.html:78 +#: .\cookbook\templates\system.html:93 .\cookbook\templates\system.html:107 +msgid "Everything is fine!" +msgstr "" + +#: .\cookbook\templates\system.html:67 +msgid "Secret Key" +msgstr "" + +#: .\cookbook\templates\system.html:71 +msgid "" +"\n" +" You do not have a SECRET_KEY configured in your " +".env file. Django defaulted to the\n" +" standard key\n" +" provided with the installation which is publicly know and " +"insecure! Please set\n" +" SECRET_KEY int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:83 +msgid "Debug Mode" +msgstr "" + +#: .\cookbook\templates\system.html:87 +msgid "" +"\n" +" This application is still running in debug mode. This is most " +"likely not needed. Turn of debug mode by\n" +" setting\n" +" DEBUG=0 int the .env configuration " +"file.\n" +" " +msgstr "" + +#: .\cookbook\templates\system.html:98 +msgid "Database" +msgstr "" + +#: .\cookbook\templates\system.html:100 +msgid "Info" +msgstr "" + +#: .\cookbook\templates\system.html:102 +msgid "" +"\n" +" This application is not running with a Postgres database " +"backend. This is ok but not recommended as some\n" +" features only work with postgres databases.\n" +" " +msgstr "" + +#: .\cookbook\templates\url_import.html:5 +msgid "URL Import" +msgstr "" + +#: .\cookbook\templates\url_import.html:23 +msgid "Enter website URL" +msgstr "" + +#: .\cookbook\templates\url_import.html:44 +msgid "Recipe Name" +msgstr "" + +#: .\cookbook\templates\url_import.html:99 +#: .\cookbook\templates\url_import.html:131 +#: .\cookbook\templates\url_import.html:186 +msgid "Select one" +msgstr "" + +#: .\cookbook\templates\url_import.html:197 +msgid "All Keywords" +msgstr "" + +#: .\cookbook\templates\url_import.html:199 +msgid "Import all Keywords not only the ones already existing." +msgstr "" + +#: .\cookbook\templates\url_import.html:225 +msgid "Information" +msgstr "" + +#: .\cookbook\templates\url_import.html:227 +msgid "" +" Only websites containing ld+json or microdata information can currently\n" +" be imported. Most big recipe pages " +"support this. If you site cannot be imported but\n" +" you think\n" +" it probably has some kind of structured " +"data feel free to post an example in the\n" +" github issues." +msgstr "" + +#: .\cookbook\templates\url_import.html:235 +msgid "Google ld+json Info" +msgstr "" + +#: .\cookbook\templates\url_import.html:238 +msgid "GitHub Issues" +msgstr "" + +#: .\cookbook\templates\url_import.html:240 +msgid "Recipe Markup Specification" +msgstr "" + +#: .\cookbook\templates\url_import.html:313 +msgid "Already importing the selected recipe, please wait!" +msgstr "" + +#: .\cookbook\templates\url_import.html:322 +msgid "An error occurred while trying to import this recipe!" +msgstr "" + +#: .\cookbook\views\api.py:58 +msgid "Parameter filter_list incorrectly formatted" +msgstr "" + +#: .\cookbook\views\api.py:70 +msgid "Preference for given user already exists" +msgstr "" + +#: .\cookbook\views\api.py:338 +msgid "Sync successful!" +msgstr "" + +#: .\cookbook\views\api.py:341 +msgid "Error synchronizing with Storage" +msgstr "" + +#: .\cookbook\views\api.py:396 +msgid "The requested page could not be found." +msgstr "" + +#: .\cookbook\views\api.py:399 +msgid "" +"The requested page refused to provide any information (Status Code 403)." +msgstr "" + +#: .\cookbook\views\data.py:83 +#, python-format +msgid "Batch edit done. %(count)d recipe was updated." +msgid_plural "Batch edit done. %(count)d Recipes where updated." +msgstr[0] "" +msgstr[1] "" + +#: .\cookbook\views\delete.py:66 +msgid "Monitor" +msgstr "" + +#: .\cookbook\views\delete.py:90 .\cookbook\views\lists.py:65 +#: .\cookbook\views\new.py:75 +msgid "Storage Backend" +msgstr "" + +#: .\cookbook\views\delete.py:97 +msgid "" +"Could not delete this storage backend as it is used in at least one monitor." +msgstr "" + +#: .\cookbook\views\delete.py:119 .\cookbook\views\edit.py:175 +#: .\cookbook\views\new.py:125 +msgid "Recipe Book" +msgstr "" + +#: .\cookbook\views\delete.py:138 +msgid "Bookmarks" +msgstr "" + +#: .\cookbook\views\delete.py:160 .\cookbook\views\new.py:181 +msgid "Invite Link" +msgstr "" + +#: .\cookbook\views\edit.py:93 +msgid "Food" +msgstr "" + +#: .\cookbook\views\edit.py:102 +msgid "You cannot edit this storage!" +msgstr "" + +#: .\cookbook\views\edit.py:121 +msgid "Storage saved!" +msgstr "" + +#: .\cookbook\views\edit.py:123 +msgid "There was an error updating this storage backend!" +msgstr "" + +#: .\cookbook\views\edit.py:130 +msgid "Storage" +msgstr "" + +#: .\cookbook\views\edit.py:215 +msgid "Changes saved!" +msgstr "" + +#: .\cookbook\views\edit.py:219 +msgid "Error saving changes!" +msgstr "" + +#: .\cookbook\views\edit.py:249 +msgid "Units merged!" +msgstr "" + +#: .\cookbook\views\edit.py:262 +msgid "Foods merged!" +msgstr "" + +#: .\cookbook\views\import_export.py:42 +msgid "Recipe imported successfully!" +msgstr "" + +#: .\cookbook\views\import_export.py:45 +msgid "Something went wrong during the import!" +msgstr "" + +#: .\cookbook\views\import_export.py:48 +msgid "Could not parse the supplied JSON!" +msgstr "" + +#: .\cookbook\views\import_export.py:79 +msgid "" +"External recipes cannot be exported, please share the file directly or " +"select an internal recipe." +msgstr "" + +#: .\cookbook\views\lists.py:28 +msgid "Import Log" +msgstr "" + +#: .\cookbook\views\lists.py:37 +msgid "Discovery" +msgstr "" + +#: .\cookbook\views\lists.py:57 +msgid "Shopping Lists" +msgstr "" + +#: .\cookbook\views\new.py:98 +msgid "Imported new recipe!" +msgstr "" + +#: .\cookbook\views\new.py:101 +msgid "There was an error importing this recipe!" +msgstr "" + +#: .\cookbook\views\views.py:86 +msgid "You do not have the required permissions to perform this action!" +msgstr "" + +#: .\cookbook\views\views.py:98 +msgid "Comment saved!" +msgstr "" + +#: .\cookbook\views\views.py:108 +msgid "Bookmark saved!" +msgstr "" + +#: .\cookbook\views\views.py:254 +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:261 .\cookbook\views\views.py:301 +msgid "Passwords dont match!" +msgstr "" + +#: .\cookbook\views\views.py:272 .\cookbook\views\views.py:310 +msgid "User has been created, please login!" +msgstr "" + +#: .\cookbook\views\views.py:287 +msgid "Malformed Invite Link supplied!" +msgstr "" + +#: .\cookbook\views\views.py:327 +msgid "Invite Link not valid or already used!" +msgstr "" diff --git a/cookbook/migrations/0075_shoppinglist_shoppinglistentry_shoppinglistrecipe.py b/cookbook/migrations/0075_shoppinglist_shoppinglistentry_shoppinglistrecipe.py new file mode 100644 index 000000000..c5e01f586 --- /dev/null +++ b/cookbook/migrations/0075_shoppinglist_shoppinglistentry_shoppinglistrecipe.py @@ -0,0 +1,49 @@ +# Generated by Django 3.0.7 on 2020-08-11 10:14 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import uuid + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('cookbook', '0074_remove_keyword_created_by'), + ] + + operations = [ + migrations.CreateModel( + name='ShoppingListRecipe', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('multiplier', models.IntegerField(default=1)), + ('recipe', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='cookbook.Recipe')), + ], + ), + migrations.CreateModel( + name='ShoppingListEntry', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('amount', models.IntegerField(default=1)), + ('order', models.IntegerField(default=0)), + ('checked', models.BooleanField(default=False)), + ('food', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cookbook.Food')), + ('list_recipe', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='cookbook.ShoppingListRecipe')), + ('unit', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='cookbook.Unit')), + ], + ), + migrations.CreateModel( + name='ShoppingList', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('uuid', models.UUIDField(default=uuid.uuid4)), + ('note', models.TextField(blank=True, null=True)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('created_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ('recipes', models.ManyToManyField(blank=True, to='cookbook.ShoppingListRecipe')), + ('shared', models.ManyToManyField(blank=True, related_name='list_share', to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/cookbook/migrations/0076_shoppinglist_entries.py b/cookbook/migrations/0076_shoppinglist_entries.py new file mode 100644 index 000000000..2c4b4eebc --- /dev/null +++ b/cookbook/migrations/0076_shoppinglist_entries.py @@ -0,0 +1,18 @@ +# Generated by Django 3.0.7 on 2020-08-26 18:46 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0075_shoppinglist_shoppinglistentry_shoppinglistrecipe'), + ] + + operations = [ + migrations.AddField( + model_name='shoppinglist', + name='entries', + field=models.ManyToManyField(blank=True, to='cookbook.ShoppingListEntry'), + ), + ] diff --git a/cookbook/migrations/0077_invitelink.py b/cookbook/migrations/0077_invitelink.py new file mode 100644 index 000000000..99210c576 --- /dev/null +++ b/cookbook/migrations/0077_invitelink.py @@ -0,0 +1,29 @@ +# Generated by Django 3.0.7 on 2020-09-01 11:31 + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import uuid + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('cookbook', '0076_shoppinglist_entries'), + ] + + operations = [ + migrations.CreateModel( + name='InviteLink', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('uuid', models.UUIDField(default=uuid.uuid4)), + ('username', models.CharField(blank=True, max_length=64)), + ('valid_until', models.DateField(default=datetime.date(2020, 9, 15))), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('created_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/cookbook/migrations/0078_invitelink_used_by.py b/cookbook/migrations/0078_invitelink_used_by.py new file mode 100644 index 000000000..1637427c2 --- /dev/null +++ b/cookbook/migrations/0078_invitelink_used_by.py @@ -0,0 +1,21 @@ +# Generated by Django 3.0.7 on 2020-09-01 11:39 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('cookbook', '0077_invitelink'), + ] + + operations = [ + migrations.AddField( + model_name='invitelink', + name='used_by', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='used_by', to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/cookbook/migrations/0079_invitelink_group.py b/cookbook/migrations/0079_invitelink_group.py new file mode 100644 index 000000000..eb1725920 --- /dev/null +++ b/cookbook/migrations/0079_invitelink_group.py @@ -0,0 +1,21 @@ +# Generated by Django 3.0.7 on 2020-09-01 12:54 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('auth', '0011_update_proxy_permissions'), + ('cookbook', '0078_invitelink_used_by'), + ] + + operations = [ + migrations.AddField( + model_name='invitelink', + name='group', + field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='auth.Group'), + preserve_default=False, + ), + ] diff --git a/cookbook/migrations/0080_auto_20200921_2331.py b/cookbook/migrations/0080_auto_20200921_2331.py new file mode 100644 index 000000000..b499bea37 --- /dev/null +++ b/cookbook/migrations/0080_auto_20200921_2331.py @@ -0,0 +1,24 @@ +# Generated by Django 3.0.7 on 2020-09-21 21:31 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0079_invitelink_group'), + ] + + operations = [ + migrations.AddField( + model_name='userpreference', + name='shopping_auto_sync', + field=models.BooleanField(default=True), + ), + migrations.AlterField( + model_name='invitelink', + name='valid_until', + field=models.DateField(default=datetime.date(2020, 10, 5)), + ), + ] diff --git a/cookbook/migrations/0081_auto_20200921_2349.py b/cookbook/migrations/0081_auto_20200921_2349.py new file mode 100644 index 000000000..fc2d4d786 --- /dev/null +++ b/cookbook/migrations/0081_auto_20200921_2349.py @@ -0,0 +1,18 @@ +# Generated by Django 3.0.7 on 2020-09-21 21:49 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0080_auto_20200921_2331'), + ] + + operations = [ + migrations.AlterField( + model_name='userpreference', + name='shopping_auto_sync', + field=models.IntegerField(default=5), + ), + ] diff --git a/cookbook/migrations/0082_auto_20200922_1143.py b/cookbook/migrations/0082_auto_20200922_1143.py new file mode 100644 index 000000000..bc58831b3 --- /dev/null +++ b/cookbook/migrations/0082_auto_20200922_1143.py @@ -0,0 +1,24 @@ +# Generated by Django 3.0.7 on 2020-09-22 09:43 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0081_auto_20200921_2349'), + ] + + operations = [ + migrations.AlterField( + model_name='invitelink', + name='valid_until', + field=models.DateField(default=datetime.date(2020, 10, 6)), + ), + migrations.AlterField( + model_name='shoppinglistentry', + name='amount', + field=models.DecimalField(decimal_places=16, default=0, max_digits=32), + ), + ] diff --git a/cookbook/migrations/0083_space.py b/cookbook/migrations/0083_space.py new file mode 100644 index 000000000..1b7662b0a --- /dev/null +++ b/cookbook/migrations/0083_space.py @@ -0,0 +1,21 @@ +# Generated by Django 3.0.7 on 2020-09-22 10:24 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0082_auto_20200922_1143'), + ] + + operations = [ + migrations.CreateModel( + name='Space', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(default='Default', max_length=128)), + ('message', models.CharField(default='', max_length=512)), + ], + ), + ] diff --git a/cookbook/migrations/0084_auto_20200922_1233.py b/cookbook/migrations/0084_auto_20200922_1233.py new file mode 100644 index 000000000..a2ddf2844 --- /dev/null +++ b/cookbook/migrations/0084_auto_20200922_1233.py @@ -0,0 +1,21 @@ +# Generated by Django 3.0.7 on 2020-09-22 10:33 + +from django.db import migrations + + +def create_default_space(apps, schema_editor): + Space = apps.get_model('cookbook', 'Space') + Space.objects.create( + name='Default', + message='' + ) + + +class Migration(migrations.Migration): + dependencies = [ + ('cookbook', '0083_space'), + ] + + operations = [ + migrations.RunPython(create_default_space), + ] diff --git a/cookbook/migrations/0085_auto_20200922_1235.py b/cookbook/migrations/0085_auto_20200922_1235.py new file mode 100644 index 000000000..ff2a0e48d --- /dev/null +++ b/cookbook/migrations/0085_auto_20200922_1235.py @@ -0,0 +1,18 @@ +# Generated by Django 3.0.7 on 2020-09-22 10:35 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0084_auto_20200922_1233'), + ] + + operations = [ + migrations.AlterField( + model_name='space', + name='message', + field=models.CharField(blank=True, default='', max_length=512), + ), + ] diff --git a/cookbook/migrations/0086_auto_20200929_1143.py b/cookbook/migrations/0086_auto_20200929_1143.py new file mode 100644 index 000000000..582aa024a --- /dev/null +++ b/cookbook/migrations/0086_auto_20200929_1143.py @@ -0,0 +1,24 @@ +# Generated by Django 3.0.7 on 2020-09-29 09:43 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0085_auto_20200922_1235'), + ] + + operations = [ + migrations.AddField( + model_name='mealplan', + name='recipe_multiplier', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='invitelink', + name='valid_until', + field=models.DateField(default=datetime.date(2020, 10, 13)), + ), + ] diff --git a/cookbook/migrations/0087_auto_20200929_1152.py b/cookbook/migrations/0087_auto_20200929_1152.py new file mode 100644 index 000000000..8182805b8 --- /dev/null +++ b/cookbook/migrations/0087_auto_20200929_1152.py @@ -0,0 +1,23 @@ +# Generated by Django 3.0.7 on 2020-09-29 09:52 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0086_auto_20200929_1143'), + ] + + operations = [ + migrations.AlterField( + model_name='mealplan', + name='recipe_multiplier', + field=models.DecimalField(decimal_places=4, default=1, max_digits=8), + ), + migrations.AlterField( + model_name='shoppinglistrecipe', + name='multiplier', + field=models.DecimalField(decimal_places=4, default=1, max_digits=8), + ), + ] diff --git a/cookbook/migrations/0088_shoppinglist_finished.py b/cookbook/migrations/0088_shoppinglist_finished.py new file mode 100644 index 000000000..95585cfa5 --- /dev/null +++ b/cookbook/migrations/0088_shoppinglist_finished.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.1 on 2020-09-29 11:55 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cookbook', '0087_auto_20200929_1152'), + ] + + operations = [ + migrations.AddField( + model_name='shoppinglist', + name='finished', + field=models.BooleanField(default=False), + ), + ] diff --git a/cookbook/models.py b/cookbook/models.py index 1496958d4..35e91e5ee 100644 --- a/cookbook/models.py +++ b/cookbook/models.py @@ -1,10 +1,13 @@ import re import uuid +from datetime import date, timedelta + from annoying.fields import AutoOneToOneField from django.contrib import auth -from django.contrib.auth.models import User +from django.contrib.auth.models import User, Group from django.utils.translation import gettext as _ from django.db import models +from django_random_queryset import RandomManager from recipes.settings import COMMENT_PREF_DEFAULT @@ -23,6 +26,11 @@ def get_model_name(model): return ('_'.join(re.findall('[A-Z][^A-Z]*', model.__name__))).lower() +class Space(models.Model): + name = models.CharField(max_length=128, default='Default') + message = models.CharField(max_length=512, default='', blank=True) + + class UserPreference(models.Model): # Themes BOOTSTRAP = 'BOOTSTRAP' @@ -67,6 +75,7 @@ class UserPreference(models.Model): plan_share = models.ManyToManyField(User, blank=True, related_name='plan_share_default') ingredient_decimals = models.IntegerField(default=2) comments = models.BooleanField(default=COMMENT_PREF_DEFAULT) + shopping_auto_sync = models.IntegerField(default=5) def __str__(self): return str(self.user) @@ -191,6 +200,8 @@ class Recipe(models.Model): created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) + objects = RandomManager() + def __str__(self): return self.name @@ -247,6 +258,7 @@ class MealType(models.Model): class MealPlan(models.Model): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE, blank=True, null=True) + recipe_multiplier = models.DecimalField(default=1, max_digits=8, decimal_places=4) title = models.CharField(max_length=64, blank=True, default='') created_by = models.ForeignKey(User, on_delete=models.CASCADE) shared = models.ManyToManyField(User, blank=True, related_name='plan_share') @@ -266,12 +278,74 @@ class MealPlan(models.Model): return f'{self.get_label()} - {self.date} - {self.meal_type.name}' +class ShoppingListRecipe(models.Model): + recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE, null=True, blank=True) + multiplier = models.DecimalField(default=1, max_digits=8, decimal_places=4) + + def __str__(self): + return f'Shopping list recipe {self.id} - {self.recipe}' + + def get_owner(self): + try: + return self.shoppinglist_set.first().created_by + except AttributeError: + return None + + +class ShoppingListEntry(models.Model): + list_recipe = models.ForeignKey(ShoppingListRecipe, on_delete=models.CASCADE, null=True, blank=True) + food = models.ForeignKey(Food, on_delete=models.CASCADE) + unit = models.ForeignKey(Unit, on_delete=models.CASCADE, null=True, blank=True) + amount = models.DecimalField(default=0, decimal_places=16, max_digits=32) + order = models.IntegerField(default=0) + checked = models.BooleanField(default=False) + + def __str__(self): + return f'Shopping list entry {self.id}' + + def get_owner(self): + try: + return self.shoppinglist_set.first().created_by + except AttributeError: + return None + + +class ShoppingList(models.Model): + uuid = models.UUIDField(default=uuid.uuid4) + note = models.TextField(blank=True, null=True) + recipes = models.ManyToManyField(ShoppingListRecipe, blank=True) + entries = models.ManyToManyField(ShoppingListEntry, blank=True) + shared = models.ManyToManyField(User, blank=True, related_name='list_share') + finished = models.BooleanField(default=False) + created_by = models.ForeignKey(User, on_delete=models.CASCADE) + created_at = models.DateTimeField(auto_now_add=True) + + def __str__(self): + return f'Shopping list {self.id}' + + class ShareLink(models.Model): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) uuid = models.UUIDField(default=uuid.uuid4) created_by = models.ForeignKey(User, on_delete=models.CASCADE) created_at = models.DateTimeField(auto_now_add=True) + def __str__(self): + return f'{self.recipe} - {self.uuid}' + + +class InviteLink(models.Model): + uuid = models.UUIDField(default=uuid.uuid4) + username = models.CharField(blank=True, max_length=64) + group = models.ForeignKey(Group, on_delete=models.CASCADE) + valid_until = models.DateField(default=date.today() + timedelta(days=14)) + used_by = models.ForeignKey(User, null=True, on_delete=models.CASCADE, related_name='used_by') + created_by = models.ForeignKey(User, on_delete=models.CASCADE) + created_at = models.DateTimeField(auto_now_add=True) + + def __str__(self): + return f'{self.uuid}' + class CookLog(models.Model): recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) diff --git a/cookbook/serializer.py b/cookbook/serializer.py index 01df252c0..7a46685fa 100644 --- a/cookbook/serializer.py +++ b/cookbook/serializer.py @@ -1,10 +1,12 @@ +from decimal import Decimal + from django.contrib.auth.models import User from drf_writable_nested import WritableNestedModelSerializer, UniqueFieldsMixin from rest_framework import serializers -from rest_framework.exceptions import APIException, ValidationError -from rest_framework.fields import CurrentUserDefault +from rest_framework.exceptions import ValidationError -from cookbook.models import MealPlan, MealType, Recipe, ViewLog, UserPreference, Storage, Sync, SyncLog, Keyword, Unit, Ingredient, Comment, RecipeImport, RecipeBook, RecipeBookEntry, ShareLink, CookLog, Food, Step +from cookbook.models import MealPlan, MealType, Recipe, ViewLog, UserPreference, Storage, Sync, SyncLog, Keyword, Unit, Ingredient, Comment, RecipeImport, RecipeBook, RecipeBookEntry, ShareLink, CookLog, Food, Step, ShoppingList, \ + ShoppingListEntry, ShoppingListRecipe from cookbook.templatetags.custom_tags import markdown @@ -14,19 +16,24 @@ class CustomDecimalField(serializers.Field): """ def to_representation(self, value): - return value.normalize() + if isinstance(value, Decimal): + return value.normalize() + else: + return Decimal(value).normalize() def to_internal_value(self, data): if type(data) == int or type(data) == float: return data elif type(data) == str: + if data == '': + return 0 try: return float(data.replace(',', '')) except ValueError: raise ValidationError('A valid number is required') -class UserNameSerializer(serializers.ModelSerializer): +class UserNameSerializer(WritableNestedModelSerializer): username = serializers.SerializerMethodField('get_user_label') def get_user_label(self, obj): @@ -184,13 +191,61 @@ class MealPlanSerializer(serializers.ModelSerializer): recipe_name = serializers.ReadOnlyField(source='recipe.name') meal_type_name = serializers.ReadOnlyField(source='meal_type.name') note_markdown = serializers.SerializerMethodField('get_note_markdown') + recipe_multiplier = CustomDecimalField() def get_note_markdown(self, obj): return markdown(obj.note) class Meta: model = MealPlan - fields = ('id', 'title', 'recipe', 'note', 'note_markdown', 'date', 'meal_type', 'created_by', 'shared', 'recipe_name', 'meal_type_name') + fields = ('id', 'title', 'recipe', 'recipe_multiplier', 'note', 'note_markdown', 'date', 'meal_type', 'created_by', 'shared', 'recipe_name', 'meal_type_name') + + +class ShoppingListRecipeSerializer(serializers.ModelSerializer): + recipe_name = serializers.ReadOnlyField(source='recipe.name') + multiplier = CustomDecimalField() + + class Meta: + model = ShoppingListRecipe + fields = ('id', 'recipe', 'recipe_name', 'multiplier') + read_only_fields = ('id',) + + +class ShoppingListEntrySerializer(WritableNestedModelSerializer): + food = FoodSerializer(allow_null=True) + unit = UnitSerializer(allow_null=True) + amount = CustomDecimalField() + + class Meta: + model = ShoppingListEntry + fields = ('id', 'list_recipe', 'food', 'unit', 'amount', 'order', 'checked') + read_only_fields = ('id',) + + +class ShoppingListEntryCheckedSerializer(serializers.ModelSerializer): + class Meta: + model = ShoppingListEntry + fields = ('id', 'checked') + + +class ShoppingListSerializer(WritableNestedModelSerializer): + recipes = ShoppingListRecipeSerializer(many=True, allow_null=True) + entries = ShoppingListEntrySerializer(many=True, allow_null=True) + shared = UserNameSerializer(many=True) + + class Meta: + model = ShoppingList + fields = ('id', 'uuid', 'note', 'recipes', 'entries', 'shared', 'finished', 'created_by', 'created_at',) + read_only_fields = ('id',) + + +class ShoppingListAutoSyncSerializer(WritableNestedModelSerializer): + entries = ShoppingListEntryCheckedSerializer(many=True, allow_null=True) + + class Meta: + model = ShoppingList + fields = ('id', 'entries',) + read_only_fields = ('id',) class ShareLinkSerializer(serializers.ModelSerializer): diff --git a/cookbook/tables.py b/cookbook/tables.py index 30c9c67c2..a29a75366 100644 --- a/cookbook/tables.py +++ b/cookbook/tables.py @@ -108,6 +108,25 @@ class RecipeImportTable(tables.Table): fields = ('id', 'name', 'file_path') +class ShoppingListTable(tables.Table): + id = tables.LinkColumn('view_shopping', args=[A('id')]) + + class Meta: + model = ShoppingList + template_name = 'generic/table_template.html' + fields = ('id', 'finished', 'created_by', 'created_at') + + +class InviteLinkTable(tables.Table): + link = tables.TemplateColumn("" + _('Link') + "") + delete = tables.TemplateColumn("" + _('Delete') + "") + + class Meta: + model = InviteLink + template_name = 'generic/table_template.html' + fields = ('username', 'group', 'valid_until', 'created_by', 'created_at') + + class ViewLogTable(tables.Table): recipe = tables.LinkColumn('view_recipe', args=[A('recipe_id')]) diff --git a/cookbook/templates/base.html b/cookbook/templates/base.html index 8f5980371..530e4287a 100644 --- a/cookbook/templates/base.html +++ b/cookbook/templates/base.html @@ -1,6 +1,7 @@ {% load static %} {% load i18n %} {% load theming_tags %} +{% load custom_tags %} @@ -72,7 +73,7 @@ {% trans 'Meal-Plan' %} - {% trans 'Shopping' %} + +{% message_of_the_day as message_of_the_day %} +{% if message_of_the_day %} +
+ {{ message_of_the_day }} +
+{% endif %} +

diff --git a/cookbook/templates/forms/edit_internal_recipe.html b/cookbook/templates/forms/edit_internal_recipe.html index e617d528d..14152c9b2 100644 --- a/cookbook/templates/forms/edit_internal_recipe.html +++ b/cookbook/templates/forms/edit_internal_recipe.html @@ -321,7 +321,7 @@
-
+
@@ -597,7 +597,7 @@ let new_unit = this.recipe.steps[step].ingredients[id] new_unit.unit = {'name': tag} - this.foods.push(new_unit.unit) + this.units.push(new_unit.unit) this.recipe.steps[step].ingredients[id] = new_unit }, searchKeywords: function (query) { diff --git a/cookbook/templates/generic/list_template.html b/cookbook/templates/generic/list_template.html index b330ef326..bd69e5260 100644 --- a/cookbook/templates/generic/list_template.html +++ b/cookbook/templates/generic/list_template.html @@ -9,7 +9,7 @@ {% block content %}
-

{{ title }} {% trans 'List' %} +

{{ title }} {% trans 'List' %} {% if create_url %} diff --git a/cookbook/templates/index.html b/cookbook/templates/index.html index 867267c9b..c4f9799fa 100644 --- a/cookbook/templates/index.html +++ b/cookbook/templates/index.html @@ -91,7 +91,7 @@ {% render_table recipes %} {% else %} {% endif %} diff --git a/cookbook/templates/meal_plan.html b/cookbook/templates/meal_plan.html index b84e444c7..81940cec8 100644 --- a/cookbook/templates/meal_plan.html +++ b/cookbook/templates/meal_plan.html @@ -103,8 +103,15 @@
- +
+ +
+ +
+
{% trans 'You can use markdown to format this field. See the docs here' %}

+ +
{ console.log("getPlanEntries error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) }, getPlanTypes: function () { @@ -401,7 +412,7 @@ } }).catch((err) => { console.log("getPlanTypes error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) }, buildGrid: function () { @@ -441,17 +452,23 @@ this.updateUserNames() }, + getRandomRecipes: function () { + this.$set(this, 'recipe_query', ''); + this.getRecipes(); + }, getRecipes: function () { let url = "{% url 'api:recipe-list' %}?limit=5" if (this.recipe_query !== '') { url += '&query=' + this.recipe_query; + } else { + url += '&random=True' } this.$http.get(url).then((response) => { this.recipes = response.data; }).catch((err) => { console.log("getRecipes error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) }, getMdNote: function () { @@ -464,18 +481,18 @@ this.recipes = response.data; }).catch((err) => { console.log("getRecipes error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) }, updateUserNames: function () { return this.$http.get("{% url 'api:username-list' %}?filter_list=[" + this.user_id_update + ']').then((response) => { for (let u of response.data) { - this.$set(this.user_names, u.id, u.username); + this.$set(this.user_names, u.id, u.username); } }).catch((err) => { console.log("updateUserNames error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) }, dragChanged: function (date, meal_type, evt) { @@ -501,7 +518,7 @@ this.$http.put(`{% url 'api:mealplan-list' %}${plan_entry.id}/`, plan_entry).then((response) => { }).catch((err) => { console.log("dragChanged update error", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) } } @@ -512,7 +529,7 @@ this.meal_plan[entry.meal_type_name].days[entry.date].items = this.meal_plan[entry.meal_type_name].days[entry.date].items.filter(item => item !== entry) }).catch((err) => { console.log("deleteEntry error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') }) }, updatePlanTypes: function () { @@ -526,14 +543,14 @@ promise_list.push(this.$http.post("{% url 'api:mealtype-list' %}", x).then((response) => { }).catch((err) => { console.log("updatePlanTypes create error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') })) } else if (x.delete) { if (x.id !== undefined) { promise_list.push(this.$http.delete(`{% url 'api:mealtype-list' %}${x.id}/`, x).then((response) => { }).catch((err) => { console.log("updatePlanTypes delete error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') })) } } else { @@ -541,7 +558,7 @@ }).catch((err) => { console.log("updatePlanTypes update error: ", err); - this.makeToast('{% trans 'Error' %}','{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') + this.makeToast('{% trans 'Error' %}', '{% trans 'There was an error loading a resource!' %}' + err.bodyText, 'danger') })) } } @@ -556,20 +573,28 @@ } }, cloneRecipe: function (recipe) { - return { + let r = { id: Math.round(Math.random() * 1000) + 10000, recipe: recipe.id, recipe_name: recipe.name, + recipe_multiplier: (this.new_note_multiplier > 1) ? this.new_note_multiplier : 1, title: this.new_note_title, note: this.new_note_text, is_new: true } + + this.new_note_title = '' + this.new_note_text = '' + this.new_note_multiplier = '' + + return r }, cloneNote: function () { let new_entry = { id: Math.round(Math.random() * 1000) + 10000, title: this.new_note_title, note: this.new_note_text, + recipe_multiplier: 1, is_new: true, } @@ -579,6 +604,7 @@ this.new_note_title = '' this.new_note_text = '' + this.new_note_multiplier = '' return new_entry }, planElementName: function (element) { @@ -618,10 +644,10 @@ let first = true for (let se of this.shopping_list) { if (first) { - url += `?r=${se.recipe}` + url += `?r=[${se.recipe},${se.recipe_multiplier}]` first = false } else { - url += `&r=${se.recipe}` + url += `&r=[${se.recipe},${se.recipe_multiplier}]` } } return url diff --git a/cookbook/templates/recipe_view.html b/cookbook/templates/recipe_view.html index e34edbe93..c1968325e 100644 --- a/cookbook/templates/recipe_view.html +++ b/cookbook/templates/recipe_view.html @@ -36,10 +36,10 @@ class="fas fa-pencil-alt fa-fw"> {% trans 'Edit' %} - {% if ingredients %} - - {% trans 'Add to Shopping' %} - {% endif %} + + + {% trans 'Add to Shopping' %} + {% trans 'Add to Plan' %}