mirror of
https://github.com/TandoorRecipes/recipes.git
synced 2025-12-30 21:49:50 -05:00
Compare commits
58 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4c0ace1d84 | ||
|
|
cae26e7fe0 | ||
|
|
8d070349a6 | ||
|
|
166697d791 | ||
|
|
90d93b733d | ||
|
|
272d2e94a1 | ||
|
|
f84a401714 | ||
|
|
f6b19d40b1 | ||
|
|
dae51a8d3e | ||
|
|
d522534a12 | ||
|
|
a38308a24a | ||
|
|
b981960221 | ||
|
|
7d1461a752 | ||
|
|
24a589fe41 | ||
|
|
b1d28a46c3 | ||
|
|
6b376fbfbb | ||
|
|
c532b1f94f | ||
|
|
26ab7f5580 | ||
|
|
72c638ca6f | ||
|
|
5478b7d550 | ||
|
|
e6eacc48d6 | ||
|
|
0259e000e3 | ||
|
|
eb0a95f594 | ||
|
|
41ee8cf66f | ||
|
|
8c8834e6aa | ||
|
|
145abfa344 | ||
|
|
f60e61e331 | ||
|
|
fd534aba95 | ||
|
|
f23c99f5ea | ||
|
|
1a14cc9513 | ||
|
|
e98131ce7a | ||
|
|
7cff47efab | ||
|
|
1dcc3e06d4 | ||
|
|
9125921038 | ||
|
|
eea2a2c252 | ||
|
|
9554c69a39 | ||
|
|
506ab0f0c7 | ||
|
|
3e26ca5c68 | ||
|
|
3fa8a9f27e | ||
|
|
0cdff07e4b | ||
|
|
8a142c3b11 | ||
|
|
20ca7151d1 | ||
|
|
754b7c3376 | ||
|
|
00b02248d3 | ||
|
|
fda302ebb6 | ||
|
|
70cd675aa1 | ||
|
|
960db5aaab | ||
|
|
8daf43d6e8 | ||
|
|
114ca55b26 | ||
|
|
59f5219c0b | ||
|
|
bc465c7b2f | ||
|
|
bf1b2db415 | ||
|
|
9085756fca | ||
|
|
db43bd1962 | ||
|
|
3c13c06ce1 | ||
|
|
beb1823a57 | ||
|
|
b6fa74c601 | ||
|
|
596b6c6f98 |
@@ -16,15 +16,11 @@ class CookbookConfig(AppConfig):
|
||||
import cookbook.signals # noqa
|
||||
|
||||
if not settings.DISABLE_EXTERNAL_CONNECTORS:
|
||||
try:
|
||||
from cookbook.connectors.connector_manager import ConnectorManager # Needs to be here to prevent loading race condition of oauth2 modules in models.py
|
||||
handler = ConnectorManager()
|
||||
post_save.connect(handler, dispatch_uid="connector_manager")
|
||||
post_delete.connect(handler, dispatch_uid="connector_manager")
|
||||
except Exception as e:
|
||||
traceback.print_exc()
|
||||
print('Failed to initialize connectors')
|
||||
pass
|
||||
from cookbook.connectors.connector_manager import ConnectorManager # Needs to be here to prevent loading race condition of oauth2 modules in models.py
|
||||
handler = ConnectorManager()
|
||||
post_save.connect(handler, dispatch_uid="post_save-connector_manager")
|
||||
post_delete.connect(handler, dispatch_uid="post_delete-connector_manager")
|
||||
|
||||
# if not settings.DISABLE_TREE_FIX_STARTUP:
|
||||
# # when starting up run fix_tree to:
|
||||
# # a) make sure that nodes are sorted when switching between sort modes
|
||||
@@ -45,4 +41,4 @@ class CookbookConfig(AppConfig):
|
||||
# except Exception:
|
||||
# if DEBUG:
|
||||
# traceback.print_exc()
|
||||
# pass # dont break startup just because fix could not run, need to investigate cases when this happens
|
||||
# pass # dont break startup just because fix could not run, need to investigate cases when this happens
|
||||
@@ -31,6 +31,15 @@ class Work:
|
||||
actionType: ActionType
|
||||
|
||||
|
||||
class Singleton(type):
|
||||
_instances = {}
|
||||
|
||||
def __call__(cls, *args, **kwargs):
|
||||
if cls not in cls._instances:
|
||||
cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs)
|
||||
return cls._instances[cls]
|
||||
|
||||
|
||||
# The way ConnectionManager works is as follows:
|
||||
# 1. On init, it starts a worker & creates a queue for 'Work'
|
||||
# 2. Then any time its called, it verifies the type of action (create/update/delete) and if the item is of interest, pushes the Work (non-blocking) to the queue.
|
||||
@@ -39,7 +48,8 @@ class Work:
|
||||
# 3.2 If work is of type REGISTERED_CLASSES, it asynchronously fires of all connectors and wait for them to finish (runtime should depend on the 'slowest' connector)
|
||||
# 4. Work is marked as consumed, and next entry of the queue is consumed.
|
||||
# Each 'Work' is processed in sequential by the worker, so the throughput is about [workers * the slowest connector]
|
||||
class ConnectorManager:
|
||||
# The Singleton class is used for ConnectorManager to have a self-reference and so Python does not garbage collect it
|
||||
class ConnectorManager(metaclass=Singleton):
|
||||
_logger: Logger
|
||||
_queue: queue.Queue
|
||||
_listening_to_classes = REGISTERED_CLASSES | ConnectorConfig
|
||||
|
||||
@@ -3,7 +3,7 @@ from logging import Logger
|
||||
from typing import Dict, Tuple
|
||||
from urllib.parse import urljoin
|
||||
|
||||
from aiohttp import ClientError, request
|
||||
from aiohttp import request, ClientResponseError
|
||||
|
||||
from cookbook.connectors.connector import Connector
|
||||
from cookbook.models import ShoppingListEntry, ConnectorConfig, Space
|
||||
@@ -13,6 +13,8 @@ class HomeAssistant(Connector):
|
||||
_config: ConnectorConfig
|
||||
_logger: Logger
|
||||
|
||||
_required_foreign_keys = ("food", "unit", "created_by")
|
||||
|
||||
def __init__(self, config: ConnectorConfig):
|
||||
if not config.token or not config.url or not config.todo_entity:
|
||||
raise ValueError("config for HomeAssistantConnector in incomplete")
|
||||
@@ -38,18 +40,20 @@ class HomeAssistant(Connector):
|
||||
|
||||
item, description = _format_shopping_list_entry(shopping_list_entry)
|
||||
|
||||
self._logger.debug(f"adding {item=}")
|
||||
self._logger.debug(f"adding {item=} with {description=} to {self._config.todo_entity}")
|
||||
|
||||
data = {
|
||||
"entity_id": self._config.todo_entity,
|
||||
"item": item,
|
||||
"description": description,
|
||||
}
|
||||
|
||||
if self._config.supports_description_field:
|
||||
data["description"] = description
|
||||
|
||||
try:
|
||||
await self.homeassistant_api_call("POST", "services/todo/add_item", data)
|
||||
except ClientError as err:
|
||||
self._logger.warning(f"received an exception from the api: {err=}, {type(err)=}")
|
||||
except ClientResponseError as err:
|
||||
self._logger.warning(f"received an exception from the api: {err.request_info.url=}, {err.request_info.method=}, {err.status=}, {err.message=}, {type(err)=}")
|
||||
|
||||
async def on_shopping_list_entry_updated(self, space: Space, shopping_list_entry: ShoppingListEntry) -> None:
|
||||
if not self._config.on_shopping_list_entry_updated_enabled:
|
||||
@@ -60,14 +64,14 @@ class HomeAssistant(Connector):
|
||||
if not self._config.on_shopping_list_entry_deleted_enabled:
|
||||
return
|
||||
|
||||
if not hasattr(shopping_list_entry._state.fields_cache, "food"):
|
||||
if not all(k in shopping_list_entry._state.fields_cache for k in self._required_foreign_keys):
|
||||
# Sometimes the food foreign key is not loaded, and we cant load it from an async process
|
||||
self._logger.debug("required property was not present in ShoppingListEntry")
|
||||
return
|
||||
|
||||
item, _ = _format_shopping_list_entry(shopping_list_entry)
|
||||
|
||||
self._logger.debug(f"removing {item=}")
|
||||
self._logger.debug(f"removing {item=} from {self._config.todo_entity}")
|
||||
|
||||
data = {
|
||||
"entity_id": self._config.todo_entity,
|
||||
@@ -76,9 +80,9 @@ class HomeAssistant(Connector):
|
||||
|
||||
try:
|
||||
await self.homeassistant_api_call("POST", "services/todo/remove_item", data)
|
||||
except ClientError as err:
|
||||
except ClientResponseError as err:
|
||||
# This error will always trigger if the item is not present/found
|
||||
self._logger.debug(f"received an exception from the api: {err=}, {type(err)=}")
|
||||
self._logger.debug(f"received an exception from the api: {err.request_info.url=}, {err.request_info.method=}, {err.status=}, {err.message=}, {type(err)=}")
|
||||
|
||||
async def close(self) -> None:
|
||||
pass
|
||||
|
||||
@@ -182,6 +182,12 @@ class ConnectorConfigForm(forms.ModelForm):
|
||||
required=False,
|
||||
)
|
||||
|
||||
supports_description_field = forms.BooleanField(
|
||||
help_text="Does the connector todo entity support the description field",
|
||||
initial=True,
|
||||
required=False,
|
||||
)
|
||||
|
||||
update_token = forms.CharField(
|
||||
widget=forms.TextInput(attrs={'autocomplete': 'update-token', 'type': 'password'}),
|
||||
required=False,
|
||||
@@ -198,7 +204,7 @@ class ConnectorConfigForm(forms.ModelForm):
|
||||
|
||||
fields = (
|
||||
'name', 'type', 'enabled', 'on_shopping_list_entry_created_enabled', 'on_shopping_list_entry_updated_enabled',
|
||||
'on_shopping_list_entry_deleted_enabled', 'url', 'todo_entity',
|
||||
'on_shopping_list_entry_deleted_enabled', 'supports_description_field', 'url', 'todo_entity',
|
||||
)
|
||||
|
||||
help_texts = {
|
||||
|
||||
@@ -28,7 +28,9 @@ def get_from_scraper(scrape, request):
|
||||
source_url = scrape.url
|
||||
except Exception:
|
||||
pass
|
||||
if source_url:
|
||||
if source_url == "https://urlnotfound.none" or not source_url:
|
||||
recipe_json['source_url'] = ''
|
||||
else:
|
||||
recipe_json['source_url'] = source_url
|
||||
try:
|
||||
keywords.append(source_url.replace('http://', '').replace('https://', '').split('/')[0])
|
||||
|
||||
@@ -15,10 +15,10 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2024-07-31 13:05+0000\n"
|
||||
"Last-Translator: vabene1111 <vabene1234@googlemail.com>\n"
|
||||
"Language-Team: German <http://translate.tandoor.dev/projects/tandoor/recipes-"
|
||||
"backend/de/>\n"
|
||||
"PO-Revision-Date: 2024-09-27 13:58+0000\n"
|
||||
"Last-Translator: supaeasy <crafty_renewably854@supaeasy.de>\n"
|
||||
"Language-Team: German <http://translate.tandoor.dev/projects/tandoor/"
|
||||
"recipes-backend/de/>\n"
|
||||
"Language: de\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -478,7 +478,7 @@ msgstr "Essensplan"
|
||||
#: .\cookbook\models.py:456 .\cookbook\templates\base.html:122
|
||||
#: .\cookbook\views\views.py:459
|
||||
msgid "Books"
|
||||
msgstr "Bücher"
|
||||
msgstr "Kochbücher"
|
||||
|
||||
#: .\cookbook\models.py:457 .\cookbook\templates\base.html:118
|
||||
#: .\cookbook\views\views.py:460
|
||||
@@ -542,10 +542,8 @@ msgid "Instruction Replace"
|
||||
msgstr "Anleitung ersetzen"
|
||||
|
||||
#: .\cookbook\models.py:1472
|
||||
#, fuzzy
|
||||
#| msgid "New Unit"
|
||||
msgid "Never Unit"
|
||||
msgstr "Neue Einheit"
|
||||
msgstr "Nie Einheit"
|
||||
|
||||
#: .\cookbook\models.py:1473
|
||||
msgid "Transpose Words"
|
||||
@@ -2143,7 +2141,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\system.html:86
|
||||
msgid "Allowed Hosts"
|
||||
msgstr ""
|
||||
msgstr "Erlaubte Hosts"
|
||||
|
||||
#: .\cookbook\templates\system.html:90
|
||||
msgid ""
|
||||
@@ -2153,6 +2151,11 @@ msgid ""
|
||||
"this.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" Die erlaubten Hosts sind so konfiguriert, dass sie jeden Host "
|
||||
"erlauben. Das mag in einigen Fällen in Ordnung sein, sollte aber im "
|
||||
"Regelfall vermieden werden. Bitte lies in der Dokumentation dazu nach.\n"
|
||||
" "
|
||||
|
||||
#: .\cookbook\templates\system.html:97
|
||||
msgid "Database"
|
||||
@@ -2504,16 +2507,12 @@ msgid "Filter for entries with the given recipe"
|
||||
msgstr "Filter für Einträge mit dem angegebenen Rezept"
|
||||
|
||||
#: .\cookbook\views\api.py:1292
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Returns the shopping list entry with a primary key of id. Multiple "
|
||||
#| "values allowed."
|
||||
msgid ""
|
||||
"Return the Automations matching the automation type. Multiple values "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
"Zeigt denjenigen Eintrag auf der Einkaufliste mit der angegebenen ID. Kann "
|
||||
"mehrfach angegeben werden."
|
||||
"Zeigt Automationen, die dem Automationstyp entsprechen. Kann mehrfach "
|
||||
"angegeben werden."
|
||||
|
||||
#: .\cookbook\views\api.py:1415
|
||||
msgid "Nothing to do."
|
||||
@@ -2582,10 +2581,8 @@ msgstr ""
|
||||
"Monitor verwendet wird."
|
||||
|
||||
#: .\cookbook\views\delete.py:135
|
||||
#, fuzzy
|
||||
#| msgid "Storage Backend"
|
||||
msgid "Connectors Config Backend"
|
||||
msgstr "Speicherquelle"
|
||||
msgstr "Backendkonfiguration für Konnektoren"
|
||||
|
||||
#: .\cookbook\views\delete.py:157
|
||||
msgid "Invite Link"
|
||||
@@ -2644,10 +2641,8 @@ msgid "Shopping List"
|
||||
msgstr "Einkaufsliste"
|
||||
|
||||
#: .\cookbook\views\lists.py:77 .\cookbook\views\new.py:98
|
||||
#, fuzzy
|
||||
#| msgid "Storage Backend"
|
||||
msgid "Connector Config Backend"
|
||||
msgstr "Speicherquelle"
|
||||
msgstr "Backendkonfiguration für Konnektoren"
|
||||
|
||||
#: .\cookbook\views\lists.py:91
|
||||
msgid "Invite Links"
|
||||
@@ -2743,7 +2738,7 @@ msgstr "Sie verwenden PostgreSQL %(v1)s. PostgreSQL %(v2)s wird empfohlen"
|
||||
|
||||
#: .\cookbook\views\views.py:313
|
||||
msgid "Unable to determine PostgreSQL version."
|
||||
msgstr ""
|
||||
msgstr "PostgreSQL version konnte nicht erkannt werden."
|
||||
|
||||
#: .\cookbook\views\views.py:317
|
||||
msgid ""
|
||||
@@ -2755,18 +2750,14 @@ msgstr ""
|
||||
"PostgreSQL-Datenbanken funktionieren."
|
||||
|
||||
#: .\cookbook\views\views.py:360
|
||||
#, fuzzy
|
||||
#| 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."
|
||||
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 ""
|
||||
"Die Setup-Seite kann nur für den ersten Nutzer verwendet werden. Zum "
|
||||
"Zurücksetzen von Passwörtern bitte der Django-Dokumentation folgen."
|
||||
"Die Setup-Seite kann nur für den ersten Nutzer verwendet "
|
||||
"werden. Falls du die Superuser Logindaten vergessen "
|
||||
"hast, folge bitte der Django-Dokumentation um Passwörter zurückzusetzen."
|
||||
|
||||
#: .\cookbook\views\views.py:369
|
||||
msgid "Passwords dont match!"
|
||||
|
||||
@@ -8,16 +8,16 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2023-08-21 09:19+0000\n"
|
||||
"Last-Translator: Theodoros Grammenos <teogramm@outlook.com>\n"
|
||||
"Language-Team: Greek <http://translate.tandoor.dev/projects/tandoor/recipes-"
|
||||
"backend/el/>\n"
|
||||
"PO-Revision-Date: 2024-09-23 21:58+0000\n"
|
||||
"Last-Translator: Emmker <emmker@gmail.com>\n"
|
||||
"Language-Team: Greek <http://translate.tandoor.dev/projects/tandoor/"
|
||||
"recipes-backend/el/>\n"
|
||||
"Language: el\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"
|
||||
"X-Generator: Weblate 4.15\n"
|
||||
"X-Generator: Weblate 5.6.2\n"
|
||||
|
||||
#: .\cookbook\forms.py:45
|
||||
msgid ""
|
||||
@@ -33,7 +33,7 @@ msgstr "Όνομα"
|
||||
|
||||
#: .\cookbook\forms.py:62 .\cookbook\forms.py:246 .\cookbook\views\lists.py:103
|
||||
msgid "Keywords"
|
||||
msgstr "Λέξεις κλειδιά"
|
||||
msgstr "Λέξεις Κλειδιά"
|
||||
|
||||
#: .\cookbook\forms.py:62
|
||||
msgid "Preparation time in minutes"
|
||||
@@ -98,7 +98,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\forms.py:205
|
||||
msgid "http://homeassistant.local:8123/api for example"
|
||||
msgstr ""
|
||||
msgstr "http://homeassistant.local:8123/api για παράδειγμα"
|
||||
|
||||
#: .\cookbook\forms.py:222 .\cookbook\views\edit.py:117
|
||||
msgid "Storage"
|
||||
|
||||
@@ -8,17 +8,17 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2024-07-28 08:38+0000\n"
|
||||
"Last-Translator: dudu dor <dudpon@gmail.com>\n"
|
||||
"Language-Team: Hebrew <http://translate.tandoor.dev/projects/tandoor/recipes-"
|
||||
"backend/he/>\n"
|
||||
"PO-Revision-Date: 2024-09-08 12:58+0000\n"
|
||||
"Last-Translator: Tomer Alcavi <alcavi1991@gmail.com>\n"
|
||||
"Language-Team: Hebrew <http://translate.tandoor.dev/projects/tandoor/"
|
||||
"recipes-backend/he/>\n"
|
||||
"Language: he\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
|
||||
"n % 10 == 0) ? 2 : 3));\n"
|
||||
"X-Generator: Weblate 5.4.2\n"
|
||||
"X-Generator: Weblate 5.6.2\n"
|
||||
|
||||
#: .\cookbook\forms.py:45
|
||||
msgid ""
|
||||
@@ -62,15 +62,15 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\forms.py:143
|
||||
msgid "Add your comment: "
|
||||
msgstr "הוף את ההערות שלך:- "
|
||||
msgstr "הוסף את ההערה שלך::- "
|
||||
|
||||
#: .\cookbook\forms.py:151
|
||||
msgid "Leave empty for dropbox and enter app password for nextcloud."
|
||||
msgstr "השאר ריק עבור dropbox והכנס סיסמאת יישום עבור nextcloud."
|
||||
msgstr "השאר ריק עבור Dropbox והכנס סיסמא עבור NextCloud."
|
||||
|
||||
#: .\cookbook\forms.py:154
|
||||
msgid "Leave empty for nextcloud and enter api token for dropbox."
|
||||
msgstr "השאר ריק עבור nextcloud והכנס טוקן API עבור dropbox."
|
||||
msgstr "השאר ריק עבור NextCloud והכנס טוקן API עבור Dropbox."
|
||||
|
||||
#: .\cookbook\forms.py:160
|
||||
msgid ""
|
||||
@@ -149,6 +149,7 @@ msgid ""
|
||||
"Use fuzzy matching on units, keywords and ingredients when editing and "
|
||||
"importing recipes."
|
||||
msgstr ""
|
||||
"השתמש בהתאמה גמישה ליחידות, מילות מפתח ורכיבים בעת עריכה וייבוא מתכונים."
|
||||
|
||||
#: .\cookbook\forms.py:342
|
||||
msgid ""
|
||||
@@ -237,7 +238,7 @@ msgstr ""
|
||||
#: .\cookbook\helper\permission_helper.py:237
|
||||
#: .\cookbook\helper\permission_helper.py:252
|
||||
msgid "You cannot interact with this object as it is not owned by you!"
|
||||
msgstr ""
|
||||
msgstr "אינך יכול/ה לפעול על אובייקט זה כיוון שהוא לא בבעלותך!"
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:402
|
||||
msgid "You have reached the maximum number of recipes for your space."
|
||||
@@ -441,7 +442,7 @@ msgstr ""
|
||||
#: .\cookbook\models.py:457 .\cookbook\templates\base.html:118
|
||||
#: .\cookbook\views\views.py:460
|
||||
msgid "Shopping"
|
||||
msgstr ""
|
||||
msgstr "קניות"
|
||||
|
||||
#: .\cookbook\models.py:752
|
||||
msgid " is part of a recipe step and cannot be deleted"
|
||||
@@ -526,7 +527,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\models.py:1504
|
||||
msgid "Food"
|
||||
msgstr ""
|
||||
msgstr "אוכל"
|
||||
|
||||
#: .\cookbook\models.py:1505 .\cookbook\templates\base.html:149
|
||||
msgid "Keyword"
|
||||
@@ -546,7 +547,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\serializer.py:1270
|
||||
msgid "Hello"
|
||||
msgstr ""
|
||||
msgstr "שלום"
|
||||
|
||||
#: .\cookbook\serializer.py:1270
|
||||
msgid "You have been invited by "
|
||||
@@ -567,12 +568,12 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\serializer.py:1278
|
||||
msgid "The invitation is valid until "
|
||||
msgstr ""
|
||||
msgstr "ההזמנה תקפה עד "
|
||||
|
||||
#: .\cookbook\serializer.py:1280
|
||||
msgid ""
|
||||
"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub "
|
||||
msgstr ""
|
||||
msgstr "Tandoor Recipes הוא מנהל מתכונים בקוד פתוח. ניתן למצוא אותנו ב-GitHub. "
|
||||
|
||||
#: .\cookbook\serializer.py:1283
|
||||
msgid "Tandoor Recipes Invite"
|
||||
@@ -610,11 +611,11 @@ msgstr ""
|
||||
#: .\cookbook\templates\generic\delete_template.html:15
|
||||
#: .\cookbook\templates\generic\edit_template.html:28
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
msgstr "מחיקה"
|
||||
|
||||
#: .\cookbook\templates\404.html:5
|
||||
msgid "404 Error"
|
||||
msgstr ""
|
||||
msgstr "שגיאה 404"
|
||||
|
||||
#: .\cookbook\templates\404.html:18
|
||||
msgid "The page you are looking for could not be found."
|
||||
@@ -626,12 +627,12 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\404.html:35
|
||||
msgid "Report a Bug"
|
||||
msgstr ""
|
||||
msgstr "דווח על באג"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:6
|
||||
#: .\cookbook\templates\account\email.html:17
|
||||
msgid "E-mail Addresses"
|
||||
msgstr ""
|
||||
msgstr "כתובות אימייל"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:12
|
||||
#: .\cookbook\templates\account\password_change.html:11
|
||||
@@ -641,11 +642,11 @@ msgstr ""
|
||||
#: .\cookbook\templates\socialaccount\connections.html:10
|
||||
#: .\cookbook\templates\user_settings.html:8
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
msgstr "הגדרות"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:13
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
msgstr "מייל"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:19
|
||||
msgid "The following e-mail addresses are associated with your account:"
|
||||
@@ -653,33 +654,33 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\account\email.html:36
|
||||
msgid "Verified"
|
||||
msgstr ""
|
||||
msgstr "מאומת"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:38
|
||||
msgid "Unverified"
|
||||
msgstr ""
|
||||
msgstr "לא מאומת"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:40
|
||||
msgid "Primary"
|
||||
msgstr ""
|
||||
msgstr "ראשי"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:47
|
||||
msgid "Make Primary"
|
||||
msgstr ""
|
||||
msgstr "הגדר כראשי"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:49
|
||||
msgid "Re-send Verification"
|
||||
msgstr ""
|
||||
msgstr "שלח אימות מחדש"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:50
|
||||
#: .\cookbook\templates\generic\delete_template.html:57
|
||||
#: .\cookbook\templates\socialaccount\connections.html:44
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
msgstr "הסרה"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:58
|
||||
msgid "Warning:"
|
||||
msgstr ""
|
||||
msgstr "אזהרה:"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:58
|
||||
msgid ""
|
||||
@@ -689,11 +690,11 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\account\email.html:64
|
||||
msgid "Add E-mail Address"
|
||||
msgstr ""
|
||||
msgstr "הוספת כתובת מייל"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:69
|
||||
msgid "Add E-mail"
|
||||
msgstr ""
|
||||
msgstr "הוספת מייל"
|
||||
|
||||
#: .\cookbook\templates\account\email.html:79
|
||||
msgid "Do you really want to remove the selected e-mail address?"
|
||||
@@ -702,7 +703,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\email_confirm.html:6
|
||||
#: .\cookbook\templates\account\email_confirm.html:10
|
||||
msgid "Confirm E-mail Address"
|
||||
msgstr ""
|
||||
msgstr "אשר כתובת מייל"
|
||||
|
||||
#: .\cookbook\templates\account\email_confirm.html:16
|
||||
#, python-format
|
||||
@@ -716,7 +717,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\email_confirm.html:22
|
||||
#: .\cookbook\templates\generic\delete_template.html:72
|
||||
msgid "Confirm"
|
||||
msgstr ""
|
||||
msgstr "אשר"
|
||||
|
||||
#: .\cookbook\templates\account\email_confirm.html:29
|
||||
#, python-format
|
||||
@@ -729,7 +730,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\login.html:8 .\cookbook\templates\base.html:388
|
||||
#: .\cookbook\templates\openid\login.html:8
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
msgstr "התחבר"
|
||||
|
||||
#: .\cookbook\templates\account\login.html:15
|
||||
#: .\cookbook\templates\account\login.html:31
|
||||
@@ -741,7 +742,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\openid\login.html:26
|
||||
#: .\cookbook\templates\socialaccount\authentication_error.html:15
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
msgstr "התחבר"
|
||||
|
||||
#: .\cookbook\templates\account\login.html:34
|
||||
#: .\cookbook\templates\account\password_reset.html:41
|
||||
@@ -749,7 +750,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\socialaccount\signup.html:8
|
||||
#: .\cookbook\templates\socialaccount\signup.html:57
|
||||
msgid "Sign Up"
|
||||
msgstr ""
|
||||
msgstr "הירשם"
|
||||
|
||||
#: .\cookbook\templates\account\login.html:38
|
||||
msgid "Lost your password?"
|
||||
@@ -758,7 +759,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\login.html:39
|
||||
#: .\cookbook\templates\account\password_reset.html:29
|
||||
msgid "Reset My Password"
|
||||
msgstr ""
|
||||
msgstr "איפוס סיסמא"
|
||||
|
||||
#: .\cookbook\templates\account\login.html:50
|
||||
msgid "Social Login"
|
||||
@@ -772,7 +773,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\logout.html:9
|
||||
#: .\cookbook\templates\account\logout.html:18
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
msgstr "התנתק"
|
||||
|
||||
#: .\cookbook\templates\account\logout.html:11
|
||||
msgid "Are you sure you want to sign out?"
|
||||
@@ -791,7 +792,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\password_change.html:12
|
||||
#: .\cookbook\templates\account\password_set.html:12
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "סיסמא"
|
||||
|
||||
#: .\cookbook\templates\account\password_change.html:22
|
||||
msgid "Forgot Password?"
|
||||
@@ -846,52 +847,52 @@ msgstr ""
|
||||
#: .\cookbook\templates\account\password_set.html:16
|
||||
#: .\cookbook\templates\account\password_set.html:21
|
||||
msgid "Set Password"
|
||||
msgstr ""
|
||||
msgstr "קבע סיסמא"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:6
|
||||
msgid "Register"
|
||||
msgstr ""
|
||||
msgstr "הירשם"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:12
|
||||
msgid "Create an Account"
|
||||
msgstr ""
|
||||
msgstr "צור משתמש"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:42
|
||||
#: .\cookbook\templates\socialaccount\signup.html:33
|
||||
msgid "I accept the follwoing"
|
||||
msgstr ""
|
||||
msgstr "אני מקבל את התנאים הבאים"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:45
|
||||
#: .\cookbook\templates\socialaccount\signup.html:36
|
||||
msgid "Terms and Conditions"
|
||||
msgstr ""
|
||||
msgstr "תנאים והגבלות"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:48
|
||||
#: .\cookbook\templates\socialaccount\signup.html:39
|
||||
msgid "and"
|
||||
msgstr ""
|
||||
msgstr "ו"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:52
|
||||
#: .\cookbook\templates\socialaccount\signup.html:43
|
||||
msgid "Privacy Policy"
|
||||
msgstr ""
|
||||
msgstr "מדיניות פרטיות"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:65
|
||||
msgid "Create User"
|
||||
msgstr ""
|
||||
msgstr "צור משתמש"
|
||||
|
||||
#: .\cookbook\templates\account\signup.html:69
|
||||
msgid "Already have an account?"
|
||||
msgstr ""
|
||||
msgstr "יש לך חשבון?"
|
||||
|
||||
#: .\cookbook\templates\account\signup_closed.html:5
|
||||
#: .\cookbook\templates\account\signup_closed.html:11
|
||||
msgid "Sign Up Closed"
|
||||
msgstr ""
|
||||
msgstr "ההרשמה סגורה"
|
||||
|
||||
#: .\cookbook\templates\account\signup_closed.html:13
|
||||
msgid "We are sorry, but the sign up is currently closed."
|
||||
msgstr ""
|
||||
msgstr "אנו מצטערים, אך ההרשמה כרגע סגורה."
|
||||
|
||||
#: .\cookbook\templates\api_info.html:5 .\cookbook\templates\base.html:378
|
||||
#: .\cookbook\templates\rest_framework\api.html:11
|
||||
@@ -900,11 +901,11 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\base.html:110 .\cookbook\templates\index.html:87
|
||||
msgid "Recipes"
|
||||
msgstr ""
|
||||
msgstr "מתכונים"
|
||||
|
||||
#: .\cookbook\templates\base.html:161 .\cookbook\views\lists.py:120
|
||||
msgid "Foods"
|
||||
msgstr ""
|
||||
msgstr "מאכלים"
|
||||
|
||||
#: .\cookbook\templates\base.html:173 .\cookbook\views\lists.py:137
|
||||
msgid "Units"
|
||||
@@ -920,11 +921,11 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\base.html:211 .\cookbook\views\lists.py:186
|
||||
msgid "Automations"
|
||||
msgstr ""
|
||||
msgstr "אוטומציות"
|
||||
|
||||
#: .\cookbook\templates\base.html:225 .\cookbook\views\lists.py:222
|
||||
msgid "Files"
|
||||
msgstr ""
|
||||
msgstr "קבצים"
|
||||
|
||||
#: .\cookbook\templates\base.html:237
|
||||
msgid "Batch Edit"
|
||||
@@ -945,7 +946,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\export_response.html:7
|
||||
#: .\cookbook\templates\test2.html:14 .\cookbook\templates\test2.html:20
|
||||
msgid "Export"
|
||||
msgstr ""
|
||||
msgstr "יצא"
|
||||
|
||||
#: .\cookbook\templates\base.html:287
|
||||
msgid "Properties"
|
||||
@@ -970,7 +971,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\base.html:336 .\cookbook\templates\space_manage.html:15
|
||||
msgid "Space Settings"
|
||||
msgstr ""
|
||||
msgstr "הגדרות מרחב"
|
||||
|
||||
#: .\cookbook\templates\base.html:340
|
||||
msgid "External Connectors"
|
||||
@@ -978,21 +979,21 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\base.html:345 .\cookbook\templates\system.html:13
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
msgstr "מערכת"
|
||||
|
||||
#: .\cookbook\templates\base.html:347
|
||||
msgid "Admin"
|
||||
msgstr ""
|
||||
msgstr "מנהל"
|
||||
|
||||
#: .\cookbook\templates\base.html:351
|
||||
#: .\cookbook\templates\space_overview.html:25
|
||||
msgid "Your Spaces"
|
||||
msgstr ""
|
||||
msgstr "המרחבים שלך"
|
||||
|
||||
#: .\cookbook\templates\base.html:362
|
||||
#: .\cookbook\templates\space_overview.html:6
|
||||
msgid "Overview"
|
||||
msgstr ""
|
||||
msgstr "סקירה כללית"
|
||||
|
||||
#: .\cookbook\templates\base.html:372
|
||||
msgid "Markdown Guide"
|
||||
@@ -1012,7 +1013,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\base.html:383
|
||||
msgid "Log out"
|
||||
msgstr ""
|
||||
msgstr "התנתק"
|
||||
|
||||
#: .\cookbook\templates\base.html:406
|
||||
msgid "You are using the free version of Tandor"
|
||||
@@ -1070,7 +1071,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\batch\monitor.html:29
|
||||
msgid "Show Recipes"
|
||||
msgstr ""
|
||||
msgstr "הראה מתכונים"
|
||||
|
||||
#: .\cookbook\templates\batch\monitor.html:30
|
||||
msgid "Show Log"
|
||||
@@ -1111,7 +1112,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\generic\delete_template.html:22
|
||||
msgid "This cannot be undone!"
|
||||
msgstr ""
|
||||
msgstr "לא ניתן לבטל פעולה זו!"
|
||||
|
||||
#: .\cookbook\templates\generic\delete_template.html:27
|
||||
msgid "Protected"
|
||||
@@ -1128,7 +1129,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\generic\edit_template.html:6
|
||||
#: .\cookbook\templates\generic\edit_template.html:14
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
msgstr "ערוך"
|
||||
|
||||
#: .\cookbook\templates\generic\edit_template.html:32
|
||||
msgid "View"
|
||||
@@ -1162,7 +1163,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\generic\table_template.html:98
|
||||
msgid "next"
|
||||
msgstr ""
|
||||
msgstr "הבא"
|
||||
|
||||
#: .\cookbook\templates\history.html:20
|
||||
msgid "View Log"
|
||||
@@ -1175,7 +1176,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\import_response.html:7 .\cookbook\views\delete.py:90
|
||||
#: .\cookbook\views\edit.py:174
|
||||
msgid "Import"
|
||||
msgstr ""
|
||||
msgstr "יבא"
|
||||
|
||||
#: .\cookbook\templates\include\storage_backend_warning.html:4
|
||||
msgid "Security Warning"
|
||||
@@ -1356,7 +1357,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\no_groups_info.html:5
|
||||
#: .\cookbook\templates\no_groups_info.html:12
|
||||
msgid "No Permissions"
|
||||
msgstr ""
|
||||
msgstr "אין הרשאות"
|
||||
|
||||
#: .\cookbook\templates\no_groups_info.html:17
|
||||
msgid "You do not have any groups and therefor cannot use this application."
|
||||
@@ -1365,12 +1366,12 @@ msgstr ""
|
||||
#: .\cookbook\templates\no_groups_info.html:18
|
||||
#: .\cookbook\templates\no_perm_info.html:15
|
||||
msgid "Please contact your administrator."
|
||||
msgstr ""
|
||||
msgstr "אנא פנה למנהל המערכת."
|
||||
|
||||
#: .\cookbook\templates\no_perm_info.html:5
|
||||
#: .\cookbook\templates\no_perm_info.html:12
|
||||
msgid "No Permission"
|
||||
msgstr ""
|
||||
msgstr "אין הרשאות"
|
||||
|
||||
#: .\cookbook\templates\no_perm_info.html:15
|
||||
msgid ""
|
||||
@@ -1380,11 +1381,11 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\offline.html:6
|
||||
msgid "Offline"
|
||||
msgstr ""
|
||||
msgstr "לא מקוון"
|
||||
|
||||
#: .\cookbook\templates\offline.html:19
|
||||
msgid "You are currently offline!"
|
||||
msgstr ""
|
||||
msgstr "אתה כרגע במצב לא מקוון!"
|
||||
|
||||
#: .\cookbook\templates\offline.html:20
|
||||
msgid ""
|
||||
@@ -1395,7 +1396,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\openid\login.html:27
|
||||
#: .\cookbook\templates\socialaccount\authentication_error.html:27
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
msgstr "אחורה"
|
||||
|
||||
#: .\cookbook\templates\property_editor.html:7
|
||||
msgid "Property Editor"
|
||||
@@ -1422,7 +1423,7 @@ msgstr ""
|
||||
#: .\cookbook\templates\search_info.html:9
|
||||
#: .\cookbook\templates\settings.html:24
|
||||
msgid "Search Settings"
|
||||
msgstr ""
|
||||
msgstr "הגדרות חיפוש"
|
||||
|
||||
#: .\cookbook\templates\search_info.html:10
|
||||
msgid ""
|
||||
@@ -1438,7 +1439,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\search_info.html:19
|
||||
msgid "Search Methods"
|
||||
msgstr ""
|
||||
msgstr "שיטות חיפוש"
|
||||
|
||||
#: .\cookbook\templates\search_info.html:23
|
||||
msgid ""
|
||||
@@ -1521,7 +1522,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\search_info.html:69
|
||||
msgid "Search Fields"
|
||||
msgstr ""
|
||||
msgstr "שדות חיפוש"
|
||||
|
||||
#: .\cookbook\templates\search_info.html:73
|
||||
msgid ""
|
||||
|
||||
@@ -13,16 +13,16 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2024-02-10 12:20+0000\n"
|
||||
"Last-Translator: Jonan B <jonanb@pm.me>\n"
|
||||
"Language-Team: Dutch <http://translate.tandoor.dev/projects/tandoor/recipes-"
|
||||
"backend/nl/>\n"
|
||||
"PO-Revision-Date: 2024-09-03 19:58+0000\n"
|
||||
"Last-Translator: \"S. v.d. Gevel\" <stefan18_gw@hotmail.com>\n"
|
||||
"Language-Team: Dutch <http://translate.tandoor.dev/projects/tandoor/"
|
||||
"recipes-backend/nl/>\n"
|
||||
"Language: nl\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"
|
||||
"X-Generator: Weblate 4.15\n"
|
||||
"X-Generator: Weblate 5.6.2\n"
|
||||
|
||||
#: .\cookbook\forms.py:45
|
||||
msgid ""
|
||||
@@ -306,7 +306,7 @@ msgstr "gisten"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:316
|
||||
msgid "sous-vide"
|
||||
msgstr "sous-vide"
|
||||
msgstr "sous-vide (vacuümgaren)"
|
||||
|
||||
#: .\cookbook\helper\shopping_helper.py:150
|
||||
msgid "You must supply a servings size"
|
||||
@@ -476,7 +476,7 @@ msgstr "Maaltijdplan"
|
||||
#: .\cookbook\models.py:456 .\cookbook\templates\base.html:122
|
||||
#: .\cookbook\views\views.py:459
|
||||
msgid "Books"
|
||||
msgstr "Boeken"
|
||||
msgstr "Kookboeken"
|
||||
|
||||
#: .\cookbook\models.py:457 .\cookbook\templates\base.html:118
|
||||
#: .\cookbook\views\views.py:460
|
||||
@@ -570,7 +570,7 @@ msgstr "Ingrediënt"
|
||||
|
||||
#: .\cookbook\models.py:1505 .\cookbook\templates\base.html:149
|
||||
msgid "Keyword"
|
||||
msgstr "Etiket"
|
||||
msgstr "Trefwoord"
|
||||
|
||||
#: .\cookbook\serializer.py:222
|
||||
msgid "File uploads are not enabled for this Space."
|
||||
@@ -630,8 +630,8 @@ msgid ""
|
||||
"List of ingredient IDs from the recipe to add, if not provided all "
|
||||
"ingredients will be added."
|
||||
msgstr ""
|
||||
"Lijst van ingrediënten ID's van het toe te voegen recept, als deze niet "
|
||||
"opgegeven worden worden alle ingrediënten toegevoegd."
|
||||
"Lijst van ingrediënt ID's van het toe te voegen recept, als deze niet worden "
|
||||
"opgegeven worden alle ingrediënten toegevoegd."
|
||||
|
||||
#: .\cookbook\serializer.py:1430
|
||||
msgid ""
|
||||
@@ -1432,7 +1432,7 @@ msgid ""
|
||||
"rel=\"noreferrer noopener\" target=\"_blank\">this one.</a>"
|
||||
msgstr ""
|
||||
"Het is lastig om met de hand Markdown tabellen te maken. Het wordt "
|
||||
"aangeraden om een tabel editor zoals <a href=\"https://www.tablesgenerator."
|
||||
"aangeraden om een tabel 'editor' zoals <a href=\"https://www.tablesgenerator."
|
||||
"com/markdown_tables\" rel=\"noreferrer noopener\" target=\"_blank\">deze</a> "
|
||||
"te gebruiken."
|
||||
|
||||
@@ -1843,7 +1843,7 @@ msgstr "Perfect voor grote databases"
|
||||
|
||||
#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5
|
||||
msgid "Cookbook Setup"
|
||||
msgstr "Kookboek Setup"
|
||||
msgstr "Kookboek configuratie"
|
||||
|
||||
#: .\cookbook\templates\setup.html:14
|
||||
msgid "Setup"
|
||||
@@ -2397,24 +2397,30 @@ msgstr "Een waardering van een recept gaat van 0 tot 5."
|
||||
#: .\cookbook\views\api.py:922 .\cookbook\views\api.py:923
|
||||
msgid "ID of book a recipe should be in. For multiple repeat parameter."
|
||||
msgstr ""
|
||||
"ID van boek dat een recept moet hebben. Herhaal parameter voor meerdere."
|
||||
"ID van een kookboek dat een recept moet bevatten. Herhaal parameter voor "
|
||||
"meerdere."
|
||||
|
||||
#: .\cookbook\views\api.py:923 .\cookbook\views\api.py:924
|
||||
msgid "Book IDs, repeat for multiple. Return recipes with any of the books"
|
||||
msgstr "Boek ID, herhaal voor meerdere. Geeft recepten uit alle boeken weer"
|
||||
msgstr ""
|
||||
"Kookboek ID, herhaal voor meerdere. Geeft recepten uit de geselecteerde "
|
||||
"kookboeken weer"
|
||||
|
||||
#: .\cookbook\views\api.py:924 .\cookbook\views\api.py:925
|
||||
msgid "Book IDs, repeat for multiple. Return recipes with all of the books."
|
||||
msgstr "Boek IDs, herhaal voor meerdere. Geeft recepten weer uit alle boeken."
|
||||
msgstr ""
|
||||
"Kookboek IDs, herhaal voor meerdere. Geeft recepten weer uit alle kookboeken."
|
||||
|
||||
#: .\cookbook\views\api.py:925 .\cookbook\views\api.py:926
|
||||
msgid "Book IDs, repeat for multiple. Exclude recipes with any of the books."
|
||||
msgstr ""
|
||||
"Boek IDs, herhaal voor meerdere. Sluit recepten uit elk van de boeken uit."
|
||||
"Kookboek IDs, herhaal voor meerdere. Sluit recepten uit elk van de "
|
||||
"geselecteerde kookboeken uit."
|
||||
|
||||
#: .\cookbook\views\api.py:926 .\cookbook\views\api.py:927
|
||||
msgid "Book IDs, repeat for multiple. Exclude recipes with all of the books."
|
||||
msgstr "Boek IDs, herhaal voor meerdere. Sluit recepten uit alle boeken uit."
|
||||
msgstr ""
|
||||
"Kookboek IDs, herhaal voor meerdere. Sluit recepten uit alle boeken uit."
|
||||
|
||||
#: .\cookbook\views\api.py:927 .\cookbook\views\api.py:928
|
||||
msgid "If only internal recipes should be returned. [true/<b>false</b>]"
|
||||
|
||||
@@ -8,17 +8,17 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2023-08-13 08:19+0000\n"
|
||||
"Last-Translator: Miha Perpar <miha.perpar2@gmail.com>\n"
|
||||
"PO-Revision-Date: 2024-08-21 16:58+0000\n"
|
||||
"Last-Translator: \"Matjaž T.\" <matjaz@moj-svet.si>\n"
|
||||
"Language-Team: Slovenian <http://translate.tandoor.dev/projects/tandoor/"
|
||||
"recipes-backend/sl/>\n"
|
||||
"Language: sl\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
|
||||
"%100==4 ? 2 : 3;\n"
|
||||
"X-Generator: Weblate 4.15\n"
|
||||
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
|
||||
"n%100==4 ? 2 : 3;\n"
|
||||
"X-Generator: Weblate 5.6.2\n"
|
||||
|
||||
#: .\cookbook\forms.py:45
|
||||
msgid ""
|
||||
@@ -89,14 +89,16 @@ msgid ""
|
||||
"<a href=\"https://www.home-assistant.io/docs/authentication/#your-account-"
|
||||
"profile\">Long Lived Access Token</a> for your HomeAssistant instance"
|
||||
msgstr ""
|
||||
"<a href=\"https://www.home-assistant.io/docs/authentication/#your-account-"
|
||||
"profile\">Dolgoročen dostopni žeton</a> za vašo HomeAssistant instanco"
|
||||
|
||||
#: .\cookbook\forms.py:193
|
||||
msgid "Something like http://homeassistant.local:8123/api"
|
||||
msgstr ""
|
||||
msgstr "Nekaj podobnega http://homeassistant.local:8123/api"
|
||||
|
||||
#: .\cookbook\forms.py:205
|
||||
msgid "http://homeassistant.local:8123/api for example"
|
||||
msgstr ""
|
||||
msgstr "http://homeassistant.local:8123/api na primer"
|
||||
|
||||
#: .\cookbook\forms.py:222 .\cookbook\views\edit.py:117
|
||||
msgid "Storage"
|
||||
@@ -202,45 +204,49 @@ msgid ""
|
||||
"Fields to full text search. Note: 'web', 'phrase', and 'raw' search methods "
|
||||
"only function with fulltext fields."
|
||||
msgstr ""
|
||||
"Polja za iskanje po celotnem besedilu. Opomba: metode iskanja 'web', "
|
||||
"'phrase' in 'raw' delujejo samo s polnimi besedilnimi polji."
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
msgid "Search Method"
|
||||
msgstr ""
|
||||
msgstr "Metoda iskanja"
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
msgid "Fuzzy Lookups"
|
||||
msgstr ""
|
||||
msgstr "Mehka iskanja"
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
msgid "Ignore Accent"
|
||||
msgstr ""
|
||||
msgstr "Prezri naglas"
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
msgid "Partial Match"
|
||||
msgstr ""
|
||||
msgstr "Delno ujemanje"
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
msgid "Starts With"
|
||||
msgstr ""
|
||||
msgstr "Se začne s/z"
|
||||
|
||||
#: .\cookbook\forms.py:351
|
||||
msgid "Fuzzy Search"
|
||||
msgstr ""
|
||||
msgstr "Mehko iskanje"
|
||||
|
||||
#: .\cookbook\forms.py:351
|
||||
msgid "Full Text"
|
||||
msgstr ""
|
||||
msgstr "Celotno besedilo"
|
||||
|
||||
#: .\cookbook\helper\AllAuthCustomAdapter.py:41
|
||||
msgid ""
|
||||
"In order to prevent spam, the requested email was not send. Please wait a "
|
||||
"few minutes and try again."
|
||||
msgstr ""
|
||||
"Da bi preprečili vsiljeno pošto, zahtevana e-pošta ni bila poslana. "
|
||||
"Počakajte nekaj minut in poskusite znova."
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:164
|
||||
#: .\cookbook\helper\permission_helper.py:187 .\cookbook\views\views.py:117
|
||||
msgid "You are not logged in and therefore cannot view this page!"
|
||||
msgstr ""
|
||||
msgstr "Niste prijavljeni in si zato ne morete ogledati te strani!"
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:168
|
||||
#: .\cookbook\helper\permission_helper.py:174
|
||||
@@ -253,48 +259,46 @@ msgstr ""
|
||||
#: .\cookbook\helper\permission_helper.py:341 .\cookbook\views\data.py:35
|
||||
#: .\cookbook\views\views.py:127 .\cookbook\views\views.py:131
|
||||
msgid "You do not have the required permissions to view this page!"
|
||||
msgstr ""
|
||||
msgstr "Nimate potrebnih dovoljenj za ogled te strani!"
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:192
|
||||
#: .\cookbook\helper\permission_helper.py:215
|
||||
#: .\cookbook\helper\permission_helper.py:237
|
||||
#: .\cookbook\helper\permission_helper.py:252
|
||||
msgid "You cannot interact with this object as it is not owned by you!"
|
||||
msgstr ""
|
||||
msgstr "S tem predmetom ne morete komunicirati, ker ni v vaši lasti!"
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:402
|
||||
msgid "You have reached the maximum number of recipes for your space."
|
||||
msgstr ""
|
||||
msgstr "Dosegli ste največje število receptov za svoj prostor."
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:414
|
||||
msgid "You have more users than allowed in your space."
|
||||
msgstr ""
|
||||
msgstr "V vašem prostoru imate več uporabnikov, kot je dovoljeno."
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:310
|
||||
#, fuzzy
|
||||
#| msgid "Use fractions"
|
||||
msgid "reverse rotation"
|
||||
msgstr "Uporabi ulomke/frakcije"
|
||||
msgstr "obratno vrtenje"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:311
|
||||
msgid "careful rotation"
|
||||
msgstr ""
|
||||
msgstr "previdno vrtenje"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:312
|
||||
msgid "knead"
|
||||
msgstr ""
|
||||
msgstr "gnetemo"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:313
|
||||
msgid "thicken"
|
||||
msgstr ""
|
||||
msgstr "zgostimo"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:314
|
||||
msgid "warm up"
|
||||
msgstr ""
|
||||
msgstr "pogrejemo"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:315
|
||||
msgid "ferment"
|
||||
msgstr ""
|
||||
msgstr "fermentiramo"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:316
|
||||
msgid "sous-vide"
|
||||
@@ -302,7 +306,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\helper\shopping_helper.py:150
|
||||
msgid "You must supply a servings size"
|
||||
msgstr ""
|
||||
msgstr "Navesti morate velikost obrokov"
|
||||
|
||||
#: .\cookbook\helper\template_helper.py:95
|
||||
#: .\cookbook\helper\template_helper.py:97
|
||||
|
||||
@@ -8,8 +8,8 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2024-03-11 13:02+0000\n"
|
||||
"Last-Translator: Kn <kn@users.noreply.translate.tandoor.dev>\n"
|
||||
"PO-Revision-Date: 2024-09-17 11:58+0000\n"
|
||||
"Last-Translator: Bebbe K <kajolekk91@gmail.com>\n"
|
||||
"Language-Team: Swedish <http://translate.tandoor.dev/projects/tandoor/"
|
||||
"recipes-backend/sv/>\n"
|
||||
"Language: sv\n"
|
||||
@@ -17,7 +17,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 5.4.2\n"
|
||||
"X-Generator: Weblate 5.6.2\n"
|
||||
|
||||
#: .\cookbook\forms.py:45
|
||||
msgid ""
|
||||
@@ -151,48 +151,61 @@ msgid ""
|
||||
"Select type method of search. Click <a href=\"/docs/search/\">here</a> for "
|
||||
"full description of choices."
|
||||
msgstr ""
|
||||
"Välj typ av sökmetod. Klicka <a href=\"/docs/search/\">här</a> för "
|
||||
"fullständig beskrivning av alternativen."
|
||||
|
||||
#: .\cookbook\forms.py:341
|
||||
msgid ""
|
||||
"Use fuzzy matching on units, keywords and ingredients when editing and "
|
||||
"importing recipes."
|
||||
msgstr ""
|
||||
"Använd \"fuzzy\" matchning på enheter, nyckelord och ingredienser när du "
|
||||
"redigerar och importerar recept."
|
||||
|
||||
#: .\cookbook\forms.py:342
|
||||
msgid ""
|
||||
"Fields to search ignoring accents. Selecting this option can improve or "
|
||||
"degrade search quality depending on language"
|
||||
msgstr ""
|
||||
"Fält att söka medan man ignorerar accenter. Val av detta alternativ kan "
|
||||
"förbättra eller försämra sökkvaliteten beroende på språk"
|
||||
|
||||
#: .\cookbook\forms.py:343
|
||||
msgid ""
|
||||
"Fields to search for partial matches. (e.g. searching for 'Pie' will return "
|
||||
"'pie' and 'piece' and 'soapie')"
|
||||
msgstr ""
|
||||
"Fält att söka efter delvisa matchningar. (t.ex. att söka efter 'Pie' kommer "
|
||||
"att returnera 'pie' och 'piece' och 'soapie')"
|
||||
|
||||
#: .\cookbook\forms.py:344
|
||||
msgid ""
|
||||
"Fields to search for beginning of word matches. (e.g. searching for 'sa' "
|
||||
"will return 'salad' and 'sandwich')"
|
||||
msgstr ""
|
||||
"Fält att söka för matchningar i början av ord. (t.ex. att söka efter 'sa' "
|
||||
"kommer att returnera 'salad' och 'sandwich')"
|
||||
|
||||
#: .\cookbook\forms.py:345
|
||||
msgid ""
|
||||
"Fields to 'fuzzy' search. (e.g. searching for 'recpie' will find 'recipe'.) "
|
||||
"Note: this option will conflict with 'web' and 'raw' methods of search."
|
||||
msgstr ""
|
||||
"Fält för 'fuzzy'-sökning. (t.ex. att söka efter 'recpie' kommer att hitta "
|
||||
"'recipe'.Observera: detta alternativet kommer att komma i konflikt med "
|
||||
"sökmetoderna 'web' och 'raw'.)"
|
||||
|
||||
#: .\cookbook\forms.py:346
|
||||
msgid ""
|
||||
"Fields to full text search. Note: 'web', 'phrase', and 'raw' search methods "
|
||||
"only function with fulltext fields."
|
||||
msgstr ""
|
||||
"Fält för fulltextsökning. Observera: Sökmetoderna 'web', 'phrase' och 'raw' "
|
||||
"fungerar endast med fulltextfält."
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
#, fuzzy
|
||||
#| msgid "Search"
|
||||
msgid "Search Method"
|
||||
msgstr "Sök"
|
||||
msgstr "Sök Metod"
|
||||
|
||||
#: .\cookbook\forms.py:350
|
||||
msgid "Fuzzy Lookups"
|
||||
@@ -211,22 +224,20 @@ msgid "Starts With"
|
||||
msgstr "Börjar med"
|
||||
|
||||
#: .\cookbook\forms.py:351
|
||||
#, fuzzy
|
||||
#| msgid "Search"
|
||||
msgid "Fuzzy Search"
|
||||
msgstr "Sök"
|
||||
msgstr "Fuzzy Sök"
|
||||
|
||||
#: .\cookbook\forms.py:351
|
||||
#, fuzzy
|
||||
#| msgid "Text"
|
||||
msgid "Full Text"
|
||||
msgstr "Text"
|
||||
msgstr "Hel Text"
|
||||
|
||||
#: .\cookbook\helper\AllAuthCustomAdapter.py:41
|
||||
msgid ""
|
||||
"In order to prevent spam, the requested email was not send. Please wait a "
|
||||
"few minutes and try again."
|
||||
msgstr ""
|
||||
"För att förhindra spam, så skickades inte den begärda e-posten. Vänta några "
|
||||
"minuter och försök igen."
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:164
|
||||
#: .\cookbook\helper\permission_helper.py:187 .\cookbook\views\views.py:117
|
||||
@@ -255,19 +266,19 @@ msgstr "Du kan inte interagera med detta objekt för att det ägs inte av dig!"
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:402
|
||||
msgid "You have reached the maximum number of recipes for your space."
|
||||
msgstr ""
|
||||
msgstr "Du har nått det maximala antalet recept för din utrymme."
|
||||
|
||||
#: .\cookbook\helper\permission_helper.py:414
|
||||
msgid "You have more users than allowed in your space."
|
||||
msgstr ""
|
||||
msgstr "Du har mer användare än tillåtet för ditt utrymme."
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:310
|
||||
msgid "reverse rotation"
|
||||
msgstr ""
|
||||
msgstr "återvänd rotering"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:311
|
||||
msgid "careful rotation"
|
||||
msgstr ""
|
||||
msgstr "försiktig rotering"
|
||||
|
||||
#: .\cookbook\helper\recipe_url_import.py:312
|
||||
msgid "knead"
|
||||
@@ -291,7 +302,7 @@ msgstr "sous-vide"
|
||||
|
||||
#: .\cookbook\helper\shopping_helper.py:150
|
||||
msgid "You must supply a servings size"
|
||||
msgstr ""
|
||||
msgstr "Du måste ange en portionstorlek"
|
||||
|
||||
#: .\cookbook\helper\template_helper.py:95
|
||||
#: .\cookbook\helper\template_helper.py:97
|
||||
@@ -305,7 +316,7 @@ msgstr "Favorit"
|
||||
|
||||
#: .\cookbook\integration\copymethat.py:50
|
||||
msgid "I made this"
|
||||
msgstr ""
|
||||
msgstr "Jag gjorde den här"
|
||||
|
||||
#: .\cookbook\integration\integration.py:209
|
||||
msgid ""
|
||||
@@ -319,6 +330,8 @@ msgid ""
|
||||
"An unexpected error occurred during the import. Please make sure you have "
|
||||
"uploaded a valid file."
|
||||
msgstr ""
|
||||
"Ett oväntat fel uppstod under importeringen. Se till att du har laddat upp "
|
||||
"en giltig fil."
|
||||
|
||||
#: .\cookbook\integration\integration.py:217
|
||||
msgid "The following recipes were ignored because they already existed:"
|
||||
@@ -330,10 +343,8 @@ msgid "Imported %s recipes."
|
||||
msgstr "Importerade %s recept."
|
||||
|
||||
#: .\cookbook\integration\openeats.py:28
|
||||
#, fuzzy
|
||||
#| msgid "Recipe Home"
|
||||
msgid "Recipe source:"
|
||||
msgstr "Recept Hem"
|
||||
msgstr "Recept källa:"
|
||||
|
||||
#: .\cookbook\integration\paprika.py:49
|
||||
msgid "Notes"
|
||||
@@ -374,23 +385,25 @@ msgstr "Sektion"
|
||||
|
||||
#: .\cookbook\management\commands\fix_duplicate_properties.py:15
|
||||
msgid "Fixes foods with "
|
||||
msgstr ""
|
||||
msgstr "Korrigerar livsmedel med "
|
||||
|
||||
#: .\cookbook\management\commands\rebuildindex.py:14
|
||||
msgid "Rebuilds full text search index on Recipe"
|
||||
msgstr ""
|
||||
msgstr "Återuppbygger fulltextsökningens index för Recept"
|
||||
|
||||
#: .\cookbook\management\commands\rebuildindex.py:18
|
||||
msgid "Only Postgresql databases use full text search, no index to rebuild"
|
||||
msgstr ""
|
||||
"Endast Postgresql-databaser använder fulltextsökning, inget index att "
|
||||
"återuppbygga med"
|
||||
|
||||
#: .\cookbook\management\commands\rebuildindex.py:29
|
||||
msgid "Recipe index rebuild complete."
|
||||
msgstr ""
|
||||
msgstr "Recept index återbyggning färdig."
|
||||
|
||||
#: .\cookbook\management\commands\rebuildindex.py:31
|
||||
msgid "Recipe index rebuild failed."
|
||||
msgstr ""
|
||||
msgstr "Recept index återbyggning misslyckades."
|
||||
|
||||
#: .\cookbook\migrations\0047_auto_20200602_1133.py:14
|
||||
msgid "Breakfast"
|
||||
@@ -439,6 +452,8 @@ msgid ""
|
||||
"Maximum file storage for space in MB. 0 for unlimited, -1 to disable file "
|
||||
"upload."
|
||||
msgstr ""
|
||||
"Maximal lagringsutrymme för utrymme i MB. 0 för obegränsad, -1 för att "
|
||||
"inaktivera filuppladdning."
|
||||
|
||||
#: .\cookbook\models.py:454 .\cookbook\templates\search.html:7
|
||||
#: .\cookbook\templates\settings.html:18
|
||||
@@ -462,7 +477,7 @@ msgstr "Handla"
|
||||
|
||||
#: .\cookbook\models.py:752
|
||||
msgid " is part of a recipe step and cannot be deleted"
|
||||
msgstr ""
|
||||
msgstr " är en del av ett receptsteg och kan inte tas bort"
|
||||
|
||||
#: .\cookbook\models.py:918
|
||||
msgid "Nutrition"
|
||||
@@ -501,34 +516,24 @@ msgid "Food Alias"
|
||||
msgstr "Alternativt namn för mat"
|
||||
|
||||
#: .\cookbook\models.py:1468
|
||||
#, fuzzy
|
||||
#| msgid "Units"
|
||||
msgid "Unit Alias"
|
||||
msgstr "Enheter"
|
||||
msgstr "Enhetsalias"
|
||||
|
||||
#: .\cookbook\models.py:1469
|
||||
#, fuzzy
|
||||
#| msgid "Keywords"
|
||||
msgid "Keyword Alias"
|
||||
msgstr "Nyckelord"
|
||||
msgstr "Nyckelordsalias"
|
||||
|
||||
#: .\cookbook\models.py:1470
|
||||
#, fuzzy
|
||||
#| msgid "Description"
|
||||
msgid "Description Replace"
|
||||
msgstr "Beskrivning"
|
||||
msgstr "Beskrivning Ersätt"
|
||||
|
||||
#: .\cookbook\models.py:1471
|
||||
#, fuzzy
|
||||
#| msgid "Instructions"
|
||||
msgid "Instruction Replace"
|
||||
msgstr "Instruktioner"
|
||||
msgstr "Instruktioner Ersätt"
|
||||
|
||||
#: .\cookbook\models.py:1472
|
||||
#, fuzzy
|
||||
#| msgid "New Unit"
|
||||
msgid "Never Unit"
|
||||
msgstr "Ny enhet"
|
||||
msgstr "Aldrig Enhet"
|
||||
|
||||
#: .\cookbook\models.py:1473
|
||||
msgid "Transpose Words"
|
||||
@@ -539,10 +544,8 @@ msgid "Food Replace"
|
||||
msgstr "Ersätt mat"
|
||||
|
||||
#: .\cookbook\models.py:1475
|
||||
#, fuzzy
|
||||
#| msgid "Edit Recipe"
|
||||
msgid "Unit Replace"
|
||||
msgstr "Redigera recept"
|
||||
msgstr "Ersätt Enhet"
|
||||
|
||||
#: .\cookbook\models.py:1476
|
||||
msgid "Name Replace"
|
||||
|
||||
@@ -8,8 +8,8 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-08-01 15:04+0200\n"
|
||||
"PO-Revision-Date: 2024-02-15 03:19+0000\n"
|
||||
"Last-Translator: dalan <xzdlj@outlook.com>\n"
|
||||
"PO-Revision-Date: 2024-08-27 07:58+0000\n"
|
||||
"Last-Translator: Known Rabbit <opensource@rabit.pw>\n"
|
||||
"Language-Team: Chinese (Simplified) <http://translate.tandoor.dev/projects/"
|
||||
"tandoor/recipes-backend/zh_Hans/>\n"
|
||||
"Language: zh_CN\n"
|
||||
@@ -17,7 +17,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 4.15\n"
|
||||
"X-Generator: Weblate 5.6.2\n"
|
||||
|
||||
#: .\cookbook\forms.py:45
|
||||
msgid ""
|
||||
@@ -86,14 +86,16 @@ msgid ""
|
||||
"<a href=\"https://www.home-assistant.io/docs/authentication/#your-account-"
|
||||
"profile\">Long Lived Access Token</a> for your HomeAssistant instance"
|
||||
msgstr ""
|
||||
"您的HomeAssistant示例的<a href=\"https://www.home-assistant.io/docs/"
|
||||
"authentication/#your-account-profile\">长期访问令牌</a>"
|
||||
|
||||
#: .\cookbook\forms.py:193
|
||||
msgid "Something like http://homeassistant.local:8123/api"
|
||||
msgstr ""
|
||||
msgstr "形如 http://homeassistant.local:8123/api"
|
||||
|
||||
#: .\cookbook\forms.py:205
|
||||
msgid "http://homeassistant.local:8123/api for example"
|
||||
msgstr ""
|
||||
msgstr "例如 http://homeassistant.local:8123/api"
|
||||
|
||||
#: .\cookbook\forms.py:222 .\cookbook\views\edit.py:117
|
||||
msgid "Storage"
|
||||
@@ -356,7 +358,7 @@ msgstr "准备时间"
|
||||
|
||||
#: .\cookbook\integration\saffron.py:29 .\cookbook\templates\index.html:7
|
||||
msgid "Cookbook"
|
||||
msgstr "菜谱"
|
||||
msgstr "烹饪手册"
|
||||
|
||||
#: .\cookbook\integration\saffron.py:31
|
||||
msgid "Section"
|
||||
@@ -364,7 +366,7 @@ msgstr "部分"
|
||||
|
||||
#: .\cookbook\management\commands\fix_duplicate_properties.py:15
|
||||
msgid "Fixes foods with "
|
||||
msgstr ""
|
||||
msgstr "修复食谱中的重复字段 "
|
||||
|
||||
#: .\cookbook\management\commands\rebuildindex.py:14
|
||||
msgid "Rebuilds full text search index on Recipe"
|
||||
@@ -400,29 +402,29 @@ msgstr "其他"
|
||||
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:17
|
||||
msgid "Fat"
|
||||
msgstr ""
|
||||
msgstr "脂肪"
|
||||
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:17
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:18
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:19
|
||||
msgid "g"
|
||||
msgstr ""
|
||||
msgstr "克"
|
||||
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:18
|
||||
msgid "Carbohydrates"
|
||||
msgstr ""
|
||||
msgstr "碳水化合物"
|
||||
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:19
|
||||
msgid "Proteins"
|
||||
msgstr ""
|
||||
msgstr "蛋白质"
|
||||
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:20
|
||||
msgid "Calories"
|
||||
msgstr ""
|
||||
msgstr "卡路里"
|
||||
|
||||
#: .\cookbook\migrations\0190_auto_20230525_1506.py:20
|
||||
msgid "kcal"
|
||||
msgstr ""
|
||||
msgstr "千卡"
|
||||
|
||||
#: .\cookbook\models.py:325
|
||||
msgid ""
|
||||
@@ -443,7 +445,7 @@ msgstr "膳食计划"
|
||||
#: .\cookbook\models.py:456 .\cookbook\templates\base.html:122
|
||||
#: .\cookbook\views\views.py:459
|
||||
msgid "Books"
|
||||
msgstr "书籍"
|
||||
msgstr "烹饪手册"
|
||||
|
||||
#: .\cookbook\models.py:457 .\cookbook\templates\base.html:118
|
||||
#: .\cookbook\views\views.py:460
|
||||
@@ -455,24 +457,20 @@ msgid " is part of a recipe step and cannot be deleted"
|
||||
msgstr " 是菜谱步骤的一部分,不能删除"
|
||||
|
||||
#: .\cookbook\models.py:918
|
||||
#, fuzzy
|
||||
#| msgid "Automations"
|
||||
msgid "Nutrition"
|
||||
msgstr "自动化"
|
||||
msgstr "营养"
|
||||
|
||||
#: .\cookbook\models.py:918
|
||||
#, fuzzy
|
||||
#| msgid "Merge"
|
||||
msgid "Allergen"
|
||||
msgstr "合并"
|
||||
msgstr "过敏原"
|
||||
|
||||
#: .\cookbook\models.py:919
|
||||
msgid "Price"
|
||||
msgstr ""
|
||||
msgstr "价格"
|
||||
|
||||
#: .\cookbook\models.py:919
|
||||
msgid "Goal"
|
||||
msgstr ""
|
||||
msgstr "目标"
|
||||
|
||||
#: .\cookbook\models.py:1408 .\cookbook\templates\search_info.html:28
|
||||
msgid "Simple"
|
||||
@@ -511,30 +509,24 @@ msgid "Instruction Replace"
|
||||
msgstr "指示"
|
||||
|
||||
#: .\cookbook\models.py:1472
|
||||
#, fuzzy
|
||||
#| msgid "New Unit"
|
||||
msgid "Never Unit"
|
||||
msgstr "新单位"
|
||||
msgstr "禁用单位识别"
|
||||
|
||||
#: .\cookbook\models.py:1473
|
||||
msgid "Transpose Words"
|
||||
msgstr ""
|
||||
msgstr "字符串转置"
|
||||
|
||||
#: .\cookbook\models.py:1474
|
||||
#, fuzzy
|
||||
#| msgid "Food Alias"
|
||||
msgid "Food Replace"
|
||||
msgstr "食物别名"
|
||||
msgstr "食物替换"
|
||||
|
||||
#: .\cookbook\models.py:1475
|
||||
#, fuzzy
|
||||
#| msgid "Description Replace"
|
||||
msgid "Unit Replace"
|
||||
msgstr "描述"
|
||||
msgstr "单位替换"
|
||||
|
||||
#: .\cookbook\models.py:1476
|
||||
msgid "Name Replace"
|
||||
msgstr ""
|
||||
msgstr "名称替换"
|
||||
|
||||
#: .\cookbook\models.py:1503 .\cookbook\views\delete.py:40
|
||||
#: .\cookbook\views\edit.py:210 .\cookbook\views\new.py:39
|
||||
@@ -571,7 +563,7 @@ msgstr "您已被邀请至 "
|
||||
|
||||
#: .\cookbook\serializer.py:1272
|
||||
msgid " to join their Tandoor Recipes space "
|
||||
msgstr " 加入他们的泥炉食谱空间 "
|
||||
msgstr " 加入他们的 Tandoor 食谱空间 "
|
||||
|
||||
#: .\cookbook\serializer.py:1274
|
||||
msgid "Click the following link to activate your account: "
|
||||
@@ -589,11 +581,11 @@ msgstr "邀请有效期至 "
|
||||
#: .\cookbook\serializer.py:1280
|
||||
msgid ""
|
||||
"Tandoor Recipes is an Open Source recipe manager. Check it out on GitHub "
|
||||
msgstr "泥炉食谱是一个开源食谱管理器。 在 GitHub 上查看 "
|
||||
msgstr "Tandoor 是一个开源食谱管理器。 在 GitHub 上查看 "
|
||||
|
||||
#: .\cookbook\serializer.py:1283
|
||||
msgid "Tandoor Recipes Invite"
|
||||
msgstr "泥炉食谱邀请"
|
||||
msgstr "Tandoor 食谱邀请"
|
||||
|
||||
#: .\cookbook\serializer.py:1426
|
||||
msgid "Existing shopping list to update"
|
||||
@@ -979,13 +971,11 @@ msgstr "导出"
|
||||
|
||||
#: .\cookbook\templates\base.html:287
|
||||
msgid "Properties"
|
||||
msgstr ""
|
||||
msgstr "属性"
|
||||
|
||||
#: .\cookbook\templates\base.html:301 .\cookbook\views\lists.py:255
|
||||
#, fuzzy
|
||||
#| msgid "Account Connections"
|
||||
msgid "Unit Conversions"
|
||||
msgstr "帐号连接"
|
||||
msgstr "单位转换"
|
||||
|
||||
#: .\cookbook\templates\base.html:318 .\cookbook\templates\index.html:47
|
||||
msgid "Import Recipe"
|
||||
@@ -1005,10 +995,8 @@ msgid "Space Settings"
|
||||
msgstr "空间设置"
|
||||
|
||||
#: .\cookbook\templates\base.html:340
|
||||
#, fuzzy
|
||||
#| msgid "External Recipes"
|
||||
msgid "External Connectors"
|
||||
msgstr "外部菜谱"
|
||||
msgstr "外部连接器"
|
||||
|
||||
#: .\cookbook\templates\base.html:345 .\cookbook\templates\system.html:13
|
||||
msgid "System"
|
||||
@@ -1038,7 +1026,7 @@ msgstr "GitHub"
|
||||
|
||||
#: .\cookbook\templates\base.html:376
|
||||
msgid "Translate Tandoor"
|
||||
msgstr "翻译泥炉"
|
||||
msgstr "翻译 Tandoor"
|
||||
|
||||
#: .\cookbook\templates\base.html:380
|
||||
msgid "API Browser"
|
||||
@@ -1050,7 +1038,7 @@ msgstr "退出"
|
||||
|
||||
#: .\cookbook\templates\base.html:406
|
||||
msgid "You are using the free version of Tandor"
|
||||
msgstr "你正在使用免费版的泥炉"
|
||||
msgstr "你正在使用免费版的 Tandoor"
|
||||
|
||||
#: .\cookbook\templates\base.html:407
|
||||
msgid "Upgrade Now"
|
||||
@@ -1123,7 +1111,7 @@ msgstr "这可能需要几分钟,取决于同步的菜谱数量,请等待。
|
||||
|
||||
#: .\cookbook\templates\books.html:7
|
||||
msgid "Recipe Books"
|
||||
msgstr "菜谱书"
|
||||
msgstr "烹饪手册"
|
||||
|
||||
#: .\cookbook\templates\export.html:7 .\cookbook\templates\test2.html:6
|
||||
msgid "Export Recipes"
|
||||
@@ -1453,10 +1441,8 @@ msgid "Back"
|
||||
msgstr "返回"
|
||||
|
||||
#: .\cookbook\templates\property_editor.html:7
|
||||
#, fuzzy
|
||||
#| msgid "Ingredient Editor"
|
||||
msgid "Property Editor"
|
||||
msgstr "食材编辑器"
|
||||
msgstr "属性编辑器"
|
||||
|
||||
#: .\cookbook\templates\recipe_view.html:36
|
||||
msgid "Comments"
|
||||
@@ -1770,7 +1756,7 @@ msgstr "非常适合大型数据库"
|
||||
|
||||
#: .\cookbook\templates\setup.html:6 .\cookbook\templates\system.html:5
|
||||
msgid "Cookbook Setup"
|
||||
msgstr "安装菜谱"
|
||||
msgstr "安装菜谱应用"
|
||||
|
||||
#: .\cookbook\templates\setup.html:14
|
||||
msgid "Setup"
|
||||
@@ -1879,10 +1865,8 @@ msgid "Sign in using"
|
||||
msgstr "登录使用"
|
||||
|
||||
#: .\cookbook\templates\space_manage.html:7
|
||||
#, fuzzy
|
||||
#| msgid "Space Membership"
|
||||
msgid "Space Management"
|
||||
msgstr "成员"
|
||||
msgstr "空间管理"
|
||||
|
||||
#: .\cookbook\templates\space_manage.html:26
|
||||
msgid "Space:"
|
||||
@@ -1974,6 +1958,10 @@ msgid ""
|
||||
"script to generate version information (done automatically in docker).\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" 您需要在您的更新脚本中执行 <code>version.py</code> "
|
||||
"生成版本信息(Docker实例中会自动执行)。\n"
|
||||
" "
|
||||
|
||||
#: .\cookbook\templates\system.html:46
|
||||
msgid "Media Serving"
|
||||
@@ -2057,7 +2045,7 @@ msgstr ""
|
||||
|
||||
#: .\cookbook\templates\system.html:86
|
||||
msgid "Allowed Hosts"
|
||||
msgstr ""
|
||||
msgstr "域名白名单"
|
||||
|
||||
#: .\cookbook\templates\system.html:90
|
||||
msgid ""
|
||||
@@ -2067,6 +2055,10 @@ msgid ""
|
||||
"this.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" 您未配置域名白名单,本实例可以通过任意域名访问,某些特殊情况下可"
|
||||
"能有用,但请尽量避免这样配置,请参考文档配置 ALLOWED_HOSTS 。\n"
|
||||
" "
|
||||
|
||||
#: .\cookbook\templates\system.html:97
|
||||
msgid "Database"
|
||||
@@ -2077,10 +2069,8 @@ msgid "Info"
|
||||
msgstr "信息"
|
||||
|
||||
#: .\cookbook\templates\system.html:110 .\cookbook\templates\system.html:127
|
||||
#, fuzzy
|
||||
#| msgid "Use fractions"
|
||||
msgid "Migrations"
|
||||
msgstr "使用分数"
|
||||
msgstr "数据库结构变更"
|
||||
|
||||
#: .\cookbook\templates\system.html:116
|
||||
msgid ""
|
||||
@@ -2093,24 +2083,28 @@ msgid ""
|
||||
"issue.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" 正常情况下数据库迁移不应产生任何报错!\n"
|
||||
" 数据库迁移失败很可能导致本应用的功能出错或完全不可用。\n"
|
||||
" 如果您在最新版本上数据库迁移依然产生错误,"
|
||||
"请将数据库迁移日志和页面下方的信息反馈至 Github Issue 中。\n"
|
||||
" "
|
||||
|
||||
#: .\cookbook\templates\system.html:182
|
||||
msgid "False"
|
||||
msgstr ""
|
||||
msgstr "否"
|
||||
|
||||
#: .\cookbook\templates\system.html:182
|
||||
msgid "True"
|
||||
msgstr ""
|
||||
msgstr "是"
|
||||
|
||||
#: .\cookbook\templates\system.html:207
|
||||
msgid "Hide"
|
||||
msgstr ""
|
||||
msgstr "隐藏"
|
||||
|
||||
#: .\cookbook\templates\system.html:210
|
||||
#, fuzzy
|
||||
#| msgid "Show Log"
|
||||
msgid "Show"
|
||||
msgstr "显示记录"
|
||||
msgstr "显示"
|
||||
|
||||
#: .\cookbook\templates\url_import.html:8
|
||||
msgid "URL Import"
|
||||
@@ -2184,17 +2178,15 @@ msgstr "{obj.name} 已添加到购物清单中。"
|
||||
|
||||
#: .\cookbook\views\api.py:742
|
||||
msgid "Filter meal plans from date (inclusive) in the format of YYYY-MM-DD."
|
||||
msgstr ""
|
||||
msgstr "指定开始日期以过滤膳食计划(包含选择的日期),日期格式为 YYYY-MM-DD。"
|
||||
|
||||
#: .\cookbook\views\api.py:743
|
||||
msgid "Filter meal plans to date (inclusive) in the format of YYYY-MM-DD."
|
||||
msgstr ""
|
||||
msgstr "指定结束日期以过滤膳食计划(包含选择的日期),日期格式为 YYYY-MM-DD。"
|
||||
|
||||
#: .\cookbook\views\api.py:744
|
||||
#, fuzzy
|
||||
#| msgid "ID of recipe a step is part of. For multiple repeat parameter."
|
||||
msgid "Filter meal plans with MealType ID. For multiple repeat parameter."
|
||||
msgstr "食谱中的步骤ID。 对于多个重复参数。"
|
||||
msgstr "指定 MealType ID 以过滤膳食计划,重复此参数以选择多个对象。"
|
||||
|
||||
#: .\cookbook\views\api.py:872
|
||||
msgid "ID of recipe a step is part of. For multiple repeat parameter."
|
||||
@@ -2341,17 +2333,13 @@ msgid ""
|
||||
msgstr "返回主键为 id 的购物清单条目。 允许多个值。"
|
||||
|
||||
#: .\cookbook\views\api.py:1125
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Filter shopping list entries on checked. [true, false, both, <b>recent</"
|
||||
#| "b>]<br> - recent includes unchecked items and recently completed items."
|
||||
msgid ""
|
||||
"Filter shopping list entries on checked. [true, false, both, <b>recent</"
|
||||
"b>]<br> - recent includes unchecked items and recently "
|
||||
"completed items."
|
||||
msgstr ""
|
||||
"在选中时筛选购物清单列表。 [真, 假, 两者都有, <b>最近</b>]<br> - 最近包括未"
|
||||
"选中的项目和最近完成的项目。"
|
||||
"勾选并筛选购物清单列表。 [真, 假, 两者都有, <b>最近</b>]"
|
||||
"<br> - 最近包括未选中的项目和最近完成的项目。"
|
||||
|
||||
#: .\cookbook\views\api.py:1128
|
||||
msgid "Returns the shopping list entries sorted by supermarket category order."
|
||||
@@ -2359,17 +2347,13 @@ msgstr "返回按超市分类排序的购物清单列表。"
|
||||
|
||||
#: .\cookbook\views\api.py:1210
|
||||
msgid "Filter for entries with the given recipe"
|
||||
msgstr ""
|
||||
msgstr "筛选包含所选食谱的对象"
|
||||
|
||||
#: .\cookbook\views\api.py:1292
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Returns the shopping list entry with a primary key of id. Multiple "
|
||||
#| "values allowed."
|
||||
msgid ""
|
||||
"Return the Automations matching the automation type. Multiple values "
|
||||
"allowed."
|
||||
msgstr "返回主键为 id 的购物清单条目。 允许多个值。"
|
||||
msgstr "返回与自动化类型相匹配的自动化条目。 允许多个值。"
|
||||
|
||||
#: .\cookbook\views\api.py:1415
|
||||
msgid "Nothing to do."
|
||||
@@ -2393,7 +2377,7 @@ msgstr "找不到可用的数据。"
|
||||
|
||||
#: .\cookbook\views\api.py:1549
|
||||
msgid "File is above space limit"
|
||||
msgstr ""
|
||||
msgstr "文件大小超出空间限值"
|
||||
|
||||
#: .\cookbook\views\api.py:1566 .\cookbook\views\import_export.py:114
|
||||
msgid "Importing is not implemented for this provider"
|
||||
@@ -2403,7 +2387,7 @@ msgstr "此提供程序未实现导入"
|
||||
#: .\cookbook\views\edit.py:88 .\cookbook\views\new.py:63
|
||||
#: .\cookbook\views\new.py:82
|
||||
msgid "This feature is not yet available in the hosted version of tandoor!"
|
||||
msgstr "此功能在泥炉的托管版本中尚不可用!"
|
||||
msgstr "此功能在 Tandoor 的托管版本中尚不可用!"
|
||||
|
||||
#: .\cookbook\views\api.py:1671
|
||||
msgid "Sync successful!"
|
||||
@@ -2434,10 +2418,8 @@ msgid ""
|
||||
msgstr "无法删除此存储后端,因为它至少在一台显示器中使用。"
|
||||
|
||||
#: .\cookbook\views\delete.py:135
|
||||
#, fuzzy
|
||||
#| msgid "Storage Backend"
|
||||
msgid "Connectors Config Backend"
|
||||
msgstr "存储后端"
|
||||
msgstr "连接器后端配置"
|
||||
|
||||
#: .\cookbook\views\delete.py:157
|
||||
msgid "Invite Link"
|
||||
@@ -2460,14 +2442,12 @@ msgid "There was an error updating this storage backend!"
|
||||
msgstr "更新此存储后端时出错!"
|
||||
|
||||
#: .\cookbook\views\edit.py:134
|
||||
#, fuzzy
|
||||
#| msgid "Changes saved!"
|
||||
msgid "Config saved!"
|
||||
msgstr "更改已保存!"
|
||||
msgstr "配置已保存!"
|
||||
|
||||
#: .\cookbook\views\edit.py:142
|
||||
msgid "ConnectorConfig"
|
||||
msgstr ""
|
||||
msgstr "连接器配置"
|
||||
|
||||
#: .\cookbook\views\edit.py:198
|
||||
msgid "Changes saved!"
|
||||
@@ -2496,10 +2476,8 @@ msgid "Shopping List"
|
||||
msgstr "采购单"
|
||||
|
||||
#: .\cookbook\views\lists.py:77 .\cookbook\views\new.py:98
|
||||
#, fuzzy
|
||||
#| msgid "Storage Backend"
|
||||
msgid "Connector Config Backend"
|
||||
msgstr "存储后端"
|
||||
msgstr "连接器后端配置"
|
||||
|
||||
#: .\cookbook\views\lists.py:91
|
||||
msgid "Invite Links"
|
||||
@@ -2523,13 +2501,11 @@ msgstr "步骤"
|
||||
|
||||
#: .\cookbook\views\lists.py:270
|
||||
msgid "Property Types"
|
||||
msgstr ""
|
||||
msgstr "属性类型"
|
||||
|
||||
#: .\cookbook\views\new.py:86
|
||||
#, fuzzy
|
||||
#| msgid "This feature is not available in the demo version!"
|
||||
msgid "This feature is not enabled by the server admin!"
|
||||
msgstr "此功能在演示版本中不可用!"
|
||||
msgstr "此功能被服务器管理员禁用!"
|
||||
|
||||
#: .\cookbook\views\new.py:123
|
||||
msgid "Imported new recipe!"
|
||||
@@ -2545,11 +2521,9 @@ msgid "This feature is not available in the demo version!"
|
||||
msgstr "此功能在演示版本中不可用!"
|
||||
|
||||
#: .\cookbook\views\views.py:74
|
||||
#, fuzzy
|
||||
#| msgid "You have reached the maximum number of recipes for your space."
|
||||
msgid ""
|
||||
"You have the reached the maximum amount of spaces that can be owned by you."
|
||||
msgstr "你已经达到了空间的菜谱的最大数量。"
|
||||
msgstr "你拥有的空间数量已经达到上限。"
|
||||
|
||||
#: .\cookbook\views\views.py:89
|
||||
msgid ""
|
||||
@@ -2582,48 +2556,32 @@ msgstr "模糊搜索与此搜索方法不兼容!"
|
||||
#: .\cookbook\views\views.py:306
|
||||
#, python-format
|
||||
msgid "PostgreSQL %(v)s is deprecated. Upgrade to a fully supported version!"
|
||||
msgstr ""
|
||||
msgstr "PostgreSQL %(v)s 版本过时。请升级到支持的版本!"
|
||||
|
||||
#: .\cookbook\views\views.py:309
|
||||
#, python-format
|
||||
msgid "You are running PostgreSQL %(v1)s. PostgreSQL %(v2)s is recommended"
|
||||
msgstr ""
|
||||
msgstr "您运行的 PostgreSQL 版本是 %(v1)s。推荐版本为 PostgreSQL %(v2)s"
|
||||
|
||||
#: .\cookbook\views\views.py:313
|
||||
msgid "Unable to determine PostgreSQL version."
|
||||
msgstr ""
|
||||
msgstr "无法确认 PostgreSQL 版本。"
|
||||
|
||||
#: .\cookbook\views\views.py:317
|
||||
#, fuzzy
|
||||
#| 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"
|
||||
#| " "
|
||||
msgid ""
|
||||
"This application is not running with a Postgres database backend. This is ok "
|
||||
"but not recommended as some features only work with postgres databases."
|
||||
msgstr ""
|
||||
"\n"
|
||||
" 此应用程序未使用 PostgreSQL 数据库在后端运行。 这并没有关系,但这"
|
||||
"是不推荐的,\n"
|
||||
" 因为有些功能仅适用于 PostgreSQL 数据库。\n"
|
||||
" "
|
||||
msgstr "此应用未使用 PostgreSQL 数据库作为后端。 这是可运行的配置,但不推荐,"
|
||||
"因为部分功能仅在 PostgreSQL 数据库下可用。"
|
||||
|
||||
#: .\cookbook\views\views.py:360
|
||||
#, fuzzy
|
||||
#| 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."
|
||||
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 ""
|
||||
"设置页面只能用于创建第一个用户!如果您忘记了超级用户凭据,请参阅 Django 文"
|
||||
"档,了解如何重置密码。"
|
||||
"设置页面只能用于创建第一个用户! "
|
||||
"如果您忘记了超级用户凭据,请参阅 Django 文档,了解如何重置密码。"
|
||||
|
||||
#: .\cookbook\views\views.py:369
|
||||
msgid "Passwords dont match!"
|
||||
@@ -2659,27 +2617,23 @@ msgstr "菜谱共享链接已被禁用!有关更多信息,请与页面管理
|
||||
|
||||
#: .\cookbook\views\views.py:451
|
||||
msgid "Manage recipes, shopping list, meal plans and more."
|
||||
msgstr ""
|
||||
msgstr "管理菜谱、购物清单、膳食计划等。"
|
||||
|
||||
#: .\cookbook\views\views.py:458
|
||||
#, fuzzy
|
||||
#| msgid "Meal-Plan"
|
||||
msgid "Plan"
|
||||
msgstr "膳食计划"
|
||||
msgstr "计划"
|
||||
|
||||
#: .\cookbook\views\views.py:458
|
||||
msgid "View your meal Plan"
|
||||
msgstr ""
|
||||
msgstr "查看您的膳食计划"
|
||||
|
||||
#: .\cookbook\views\views.py:459
|
||||
msgid "View your cookbooks"
|
||||
msgstr ""
|
||||
msgstr "查看你的烹饪手册"
|
||||
|
||||
#: .\cookbook\views\views.py:460
|
||||
#, fuzzy
|
||||
#| msgid "New Shopping List"
|
||||
msgid "View your shopping lists"
|
||||
msgstr "新购物清单"
|
||||
msgstr "查看你的购物清单"
|
||||
|
||||
#~ msgid "Default unit"
|
||||
#~ msgstr "默认单位"
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
# Generated by Django 4.2.15 on 2024-09-15 10:30
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('cookbook', '0218_alter_mealplan_from_date_alter_mealplan_to_date'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='connectorconfig',
|
||||
name='supports_description_field',
|
||||
field=models.BooleanField(default=True, help_text='Does the todo entity support the description field'),
|
||||
),
|
||||
]
|
||||
@@ -406,6 +406,7 @@ class ConnectorConfig(models.Model, PermissionModelMixin):
|
||||
on_shopping_list_entry_created_enabled = models.BooleanField(default=False)
|
||||
on_shopping_list_entry_updated_enabled = models.BooleanField(default=False)
|
||||
on_shopping_list_entry_deleted_enabled = models.BooleanField(default=False)
|
||||
supports_description_field = models.BooleanField(default=True, help_text="Does the todo entity support the description field")
|
||||
|
||||
url = models.URLField(blank=True, null=True)
|
||||
token = models.CharField(max_length=512, blank=True, null=True)
|
||||
|
||||
@@ -427,7 +427,7 @@ class ConnectorConfigConfigSerializer(SpacedModelSerializer):
|
||||
fields = (
|
||||
'id', 'name', 'url', 'token', 'todo_entity', 'enabled',
|
||||
'on_shopping_list_entry_created_enabled', 'on_shopping_list_entry_updated_enabled',
|
||||
'on_shopping_list_entry_deleted_enabled', 'created_by'
|
||||
'on_shopping_list_entry_deleted_enabled', 'supports_description_field', 'created_by'
|
||||
)
|
||||
|
||||
read_only_fields = ('created_by',)
|
||||
|
||||
@@ -403,7 +403,7 @@
|
||||
|
||||
{% if HOSTED and request.space.max_recipes == 10 %}
|
||||
<div class="bg-warning" style=" width: 100%; text-align: center!important; color: #ffffff; padding: 8px">
|
||||
{% trans 'You are using the free version of Tandor' %} <a class="btn-success btn-sm"
|
||||
{% trans 'You are using the free version of Tandoor' %} <a class="btn-success btn-sm"
|
||||
href="https://tandoor.dev/manage">{% trans 'Upgrade Now' %}</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
@@ -99,11 +99,23 @@ def test_add(arg, request, a1_s2, obj_1):
|
||||
assert r.status_code == arg[1]
|
||||
if r.status_code == 201:
|
||||
assert response['name'] == 'test'
|
||||
assert response['supports_description_field'] == True
|
||||
r = c.get(reverse(DETAIL_URL, args={response['id']}))
|
||||
assert r.status_code == 200
|
||||
r = a1_s2.get(reverse(DETAIL_URL, args={response['id']}))
|
||||
assert r.status_code == 404
|
||||
|
||||
def test_add_with_supports_description_field_false(a1_s2):
|
||||
r = a1_s2.post(
|
||||
reverse(LIST_URL),
|
||||
{'name': 'test', 'url': 'http://localhost:8123/api', 'token': '1234', 'enabled': 'true', 'supports_description_field': 'false'},
|
||||
content_type='application/json'
|
||||
)
|
||||
response = json.loads(r.content)
|
||||
print(r.content)
|
||||
assert r.status_code == 201
|
||||
assert response['name'] == 'test'
|
||||
assert response['supports_description_field'] == False
|
||||
|
||||
def test_delete(a1_s1, a1_s2, obj_1):
|
||||
r = a1_s2.delete(
|
||||
|
||||
@@ -1458,9 +1458,9 @@ class RecipeUrlImportView(APIView):
|
||||
data = "<script type='application/ld+json'>" + json.dumps(data_json) + "</script>"
|
||||
except JSONDecodeError:
|
||||
pass
|
||||
scrape = scrape_html(html=data, org_url=url, supported_only=False)
|
||||
scrape = scrape_html(html=data, org_url='https://urlnotfound.none', supported_only=False)
|
||||
if not url and (found_url := scrape.schema.data.get('url', 'https://urlnotfound.none')):
|
||||
scrape = scrape_html(text=data, url=found_url, supported_only=False)
|
||||
scrape = scrape_html(html=data, org_url=found_url, supported_only=False)
|
||||
|
||||
if scrape:
|
||||
return Response({
|
||||
|
||||
@@ -3,8 +3,7 @@
|
||||
These instructions are inspired from a standard django/gunicorn/postgresql instructions ([for example](https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04))
|
||||
|
||||
!!! warning
|
||||
Be sure to use python 3.9 at least and pip related to python 3.9 at least. Depending on your distribution calling `python` or `pip` will use python2 instead of python 3.9. As of writing this documentation 3.10 is available as well.
|
||||
Make sure your machine got at least 2048 MB memory, otherwise the yarn build will fail with `FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory`.
|
||||
Make sure to use Python 3.10 or higher, and ensure that `pip` is associated with Python 3. Depending on your system configuration, using `python` or `pip` might default to Python 2. Make sure your machine has at least 2048 MB of memory; otherwise, the `yarn build` process may fail with the error: `FATAL ERROR: Reached heap limit - Allocation failed: JavaScript heap out of memory`.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
Django==4.2.15
|
||||
cryptography===42.0.5
|
||||
cryptography===43.0.1
|
||||
django-annoying==0.10.6
|
||||
django-cleanup==8.0.0
|
||||
django-crispy-forms==2.1
|
||||
django-crispy-forms==2.3
|
||||
crispy-bootstrap4==2024.1
|
||||
django-tables2==2.7.0
|
||||
djangorestframework==3.15.2
|
||||
@@ -13,15 +13,15 @@ bleach==6.0.0
|
||||
gunicorn==22.0.0
|
||||
lxml==5.1.0
|
||||
Markdown==3.5.1
|
||||
Pillow==10.3.0
|
||||
Pillow==10.4.0
|
||||
psycopg2-binary==2.9.9
|
||||
python-dotenv==1.0.0
|
||||
requests==2.32.0
|
||||
six==1.16.0
|
||||
webdavclient3==3.14.6
|
||||
whitenoise==6.6.0
|
||||
whitenoise==6.7.0
|
||||
icalendar==5.0.11
|
||||
pyyaml==6.0.1
|
||||
pyyaml==6.0.2
|
||||
uritemplate==4.1.1
|
||||
beautifulsoup4==4.12.3
|
||||
microdata==0.8.0
|
||||
@@ -30,7 +30,7 @@ Jinja2==3.1.4
|
||||
django-webpack-loader==3.0.1
|
||||
git+https://github.com/BITSOLVER/django-js-reverse@071e304fd600107bc64bbde6f2491f1fe049ec82
|
||||
django-allauth==0.61.1
|
||||
recipe-scrapers==15.0.0
|
||||
recipe-scrapers==15.2.1
|
||||
django-scopes==2.0.0
|
||||
django-treebeard==4.7
|
||||
django-cors-headers==4.3.1
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
"Calories": "Kalorien",
|
||||
"Energy": "Energie",
|
||||
"Nutrition": "Nährwerte",
|
||||
"Keywords": "Stichwörter",
|
||||
"Keywords": "Schlagwörter",
|
||||
"Books": "Kochbücher",
|
||||
"show_only_internal": "Nur interne Rezepte anzeigen",
|
||||
"Ingredients": "Zutaten",
|
||||
@@ -114,7 +114,7 @@
|
||||
"Create_New_Shopping Category": "Neue Einkaufskategorie erstellen",
|
||||
"Automate": "Automatisieren",
|
||||
"Type": "Typ",
|
||||
"and_up": "& hoch",
|
||||
"and_up": "& auf",
|
||||
"Unrated": "Unbewertet",
|
||||
"Shopping_list": "Einkaufsliste",
|
||||
"step_time_minutes": "Schritt Dauer in Minuten",
|
||||
@@ -284,7 +284,7 @@
|
||||
"copy_markdown_table": "Als Markdown-Tabelle kopieren",
|
||||
"in_shopping": "In Einkaufsliste",
|
||||
"DelayUntil": "Verzögerung bis",
|
||||
"QuickEntry": "Einfach",
|
||||
"QuickEntry": "Schnelleintrag",
|
||||
"shopping_add_onhand": "Automatisch vorrätig",
|
||||
"related_recipes": "Ähnliche Rezepte",
|
||||
"today_recipes": "Rezepte des Tages",
|
||||
@@ -358,9 +358,9 @@
|
||||
"paste_ingredients": "Zutaten einfügen",
|
||||
"Ingredient Editor": "Zutateneditor",
|
||||
"Protected": "Geschützt",
|
||||
"not": "nicht",
|
||||
"not": "kein",
|
||||
"warning_duplicate_filter": "Warnung: Wegen technischen Limitierungen können mehrere Filter der selben Kombination (und/oder/nicht) zu unerwarteten Ergebnissen führen.",
|
||||
"and_down": "& Runter",
|
||||
"and_down": "& ab",
|
||||
"enable_expert": "Expertenmodus aktivieren",
|
||||
"filter_name": "Filtername",
|
||||
"shared_with": "geteilt mit",
|
||||
@@ -415,7 +415,7 @@
|
||||
"Invites": "Einladungen",
|
||||
"Message": "Nachricht",
|
||||
"Bookmarklet": "Lesezeichen",
|
||||
"substitute_siblings_help": "Alle Lebensmittel, die sich ein übergeordnetes Lebensmittels teilen, gelten als Alternativen.",
|
||||
"substitute_siblings_help": "Alle Lebensmittel, die sich ein übergeordnetes Lebensmittel teilen, gelten als Alternativen.",
|
||||
"substitute_children": "Ersatzkinder",
|
||||
"Decimals": "Nachkommastellen",
|
||||
"Default_Unit": "Standardeinheit",
|
||||
@@ -518,7 +518,7 @@
|
||||
"show_step_ingredients_setting_help": "Fügen Sie neben den Rezeptschritten eine Zutatentabelle hinzu. Gilt zum Zeitpunkt der Erstellung. Kann in der Ansicht „Rezept bearbeiten“ überschrieben werden.",
|
||||
"show_step_ingredients": "Schritt \"Zutaten\" anzeigen",
|
||||
"hide_step_ingredients": "Schritt Zutaten ausblenden",
|
||||
"OrderInformation": "Die Objekte sind von kleinen zu großen Zahlen geordnet.",
|
||||
"OrderInformation": "Objekte werden von kleiner bis großer Anzahl geordnet.",
|
||||
"show_ingredients_table": "Zeige eine Tabelle der Zutaten neben der Schrittbeschreibung",
|
||||
"make_now_count": "Öfters fehlende Zutaten",
|
||||
"fluid_ounce": "\"Fluid Ounce\" [fl oz] (US, Volumen)",
|
||||
@@ -534,7 +534,7 @@
|
||||
"Transpose_Words": "Wörter Umwandeln",
|
||||
"Never_Unit": "Nie Einheit",
|
||||
"Unit_Replace": "Einheit Ersetzen",
|
||||
"quart": "\"Viertel\" [qt] (US, Volumen)",
|
||||
"quart": "Viertel [qt] (US, Volumen)",
|
||||
"imperial_quart": "Engl. \"Quart\" [imp qt] (UK, Volumen)",
|
||||
"err_importing_recipe": "Es trat ein Fehler auf beim importieren des Rezepts!",
|
||||
"property_type_fdc_hint": "Nur Eigenschaftstypen mit einer FDC-ID können automatisch Daten aus der FDC-Datenbank beziehen",
|
||||
@@ -570,5 +570,6 @@
|
||||
"DefaultPage": "Standardseite",
|
||||
"Shopping_input_placeholder": "z.B. Kartoffeln/ 100 Kartoffeln/ 100 g Kartoffeln",
|
||||
"Created": "Erstellt",
|
||||
"Updated": "Aktualisiert"
|
||||
"Updated": "Aktualisiert",
|
||||
"us_cup": "Tasse (US, Volumen)"
|
||||
}
|
||||
|
||||
@@ -517,5 +517,56 @@
|
||||
"imperial_gallon": "αυτοκρατορικό γαλόνι [imp gal] (Ηνωμένο Βασίλειο, όγκος)",
|
||||
"imperial_tbsp": "αυτοκρατορικό κουτάλι της σούπας [imp tbsp] (Ηνωμένο Βασίλειο, όγκος)",
|
||||
"Choose_Category": "Επιλογή κατηγορίας",
|
||||
"Back": "Πίσω"
|
||||
"Back": "Πίσω",
|
||||
"Calculator": "Υπολογιστής",
|
||||
"us_cup": "φλιτζάνι (ΗΠΑ, όγκος)",
|
||||
"Created": "Δημιουργήθηκε",
|
||||
"Logo": "Λογότυπο",
|
||||
"Nav_Text_Mode_Help": "Συμπεριφέρεται διαφορετικά για κάθε θέμα.",
|
||||
"Properties_Food_Amount": "Ιδιότητες Ποσότητα Φαγητού",
|
||||
"show_step_ingredients": "Εμφάνιση των συστατικών του βήματος",
|
||||
"make_now_count": "Το πολύ να λείπουν συστατικά",
|
||||
"Error": "Σφάλμα",
|
||||
"Nav_Text_Mode": "Λειτουγία κειμένου πλοήγησης",
|
||||
"Input": "Εισαγογή",
|
||||
"Undo": "Ανέρεση",
|
||||
"NoMoreUndo": "Δεν υπάρχουν αλλαγές για ανέρεση.",
|
||||
"Delete_All": "Διαγραφή όλων",
|
||||
"created_by": "Δημιουργήθηκε από",
|
||||
"CustomLogoHelp": "Ανεβάστε τετράγωνες εικόνες σε διαφορετικά μεγέθη για αλλαγή σε λογότυπο στην καρτέλα του προγράμματος περιήγησης και στο εγκατεστημένο Web App.",
|
||||
"CustomNavLogoHelp": "Μεταφορτώστε μια εικόνα για χρήση ως λογότυπο της γραμμής πλοήγησης.",
|
||||
"ShowRecentlyCompleted": "Πρόσφατα αντικείμενα που ολοκληρώθηκαν",
|
||||
"ShoppingBackgroundSyncWarning": "Κακό δίκτυο, αναμονή συγχρονισμού...",
|
||||
"Name_Replace": "Αντικατάσταση Ονόματος",
|
||||
"Transpose_Words": "Μεταφορά λέξεων",
|
||||
"err_importing_recipe": "Υπάρχει σφάλμα στην εισαγωγή της σύνταγης!",
|
||||
"Properties_Food_Unit": "Ιδιότητες Μονάδα Φαγητού",
|
||||
"show_step_ingredients_setting": "Εμφάνιση συστατικών δίπλα στα βήματα της συνταγής",
|
||||
"show_step_ingredients_setting_help": "Προσθέστε τον πίνακα συστατικών δίπλα στα βήματα της συνταγής. Ισχύει κατά τη δημιουργία. Μπορεί να παρακαμφθεί στην προβολή επεξεργασίας συνταγής.",
|
||||
"hide_step_ingredients": "Απόκρυψη των συστατικών του βήματος",
|
||||
"property_type_fdc_hint": "Μόνο οι τύποι ιδιοτήτων με ταυτότητα FDC, μπορούν να τραβήξουν αυτόματα δεδομένα απο την βάση δεδομένων του FDC",
|
||||
"FDC_Search": "Αναζήτηση FDC",
|
||||
"StartDate": "Ημερομηνία Έναρξης",
|
||||
"CustomImageHelp": "Ανεβάστε μια εικόνα για να εμφανίζεται στην επισκόπηση χώρου",
|
||||
"CustomThemeHelp": "Αντικαταστήστε τα στυλ του επιλεγμένου θέματος μεταφορτώνοντας ένα προσαρμοσμένο αρχείο CSS.",
|
||||
"CustomTheme": "Προσαρμοσμένο Θέμα",
|
||||
"Shopping_input_placeholder": "π.χ. Πατάτα/100 Πατάτες/100 γρ Πατατες",
|
||||
"Property_Editor": "Επεξεργαστής Ιδιοτήτων",
|
||||
"CustomLogos": "Προσαρμοσμένα λογότυπα",
|
||||
"Updated": "Επεξεργάστηκε",
|
||||
"Unchanged": "Αμετάβλητο",
|
||||
"Show_Logo": "Εμφάνιση λογότυπου",
|
||||
"Show_Logo_Help": "Εμφάνιση λογότυπου του Tandoor ή του space στη γραμμή πλοήγησης.",
|
||||
"Space_Cosmetic_Settings": "Ορισμένες ρυθμίσεις εμφάνισης μπορούν να αλλάξουν από τους διαχειριστές του χώρου και θα παρακάμψουν τις ρυθμίσεις πελάτη για αυτόν τον χώρο.",
|
||||
"show_ingredients_table": "Εμφάνιση ένός πίνακα με τα συστατικά δίπλα στο κείμενο του βήματος",
|
||||
"Enable": "Ενεργοποίηση",
|
||||
"Alignment": "Ευθυγράμμιση",
|
||||
"FDC_ID_help": "Ταυτότητα βάσης δεδομένων FDC",
|
||||
"EndDate": "Ημερομηνία Λήξης",
|
||||
"FDC_ID": "Ταυτότητα FDC",
|
||||
"OrderInformation": "Τα αντικείμενα ταξινομούνται από μικρό σε μεγάλο αριθμό.",
|
||||
"Never_Unit": "Ποτέ Μονάδα",
|
||||
"DefaultPage": "Προεπιλεγμένη σελίδα",
|
||||
"Food_Replace": "Αντικατάσταση Φαγητού",
|
||||
"Unit_Replace": "Αντικατάσταση Μονάδας"
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
"Log_Recipe_Cooking": "Registro de recetas",
|
||||
"External_Recipe_Image": "Imagen externa de la receta",
|
||||
"Add_to_Shopping": "Añadir a la cesta",
|
||||
"Add_to_Plan": "Añadir a regimen",
|
||||
"Add_to_Plan": "Añadir al plan",
|
||||
"Step_start_time": "Hora de inicio",
|
||||
"Sort_by_new": "Ordenar por novedades",
|
||||
"Table_of_Contents": "Tabla de contenido",
|
||||
@@ -34,15 +34,15 @@
|
||||
"Add_nutrition_recipe": "Añadir nutricion a la canasta",
|
||||
"Remove_nutrition_recipe": "Borrar nutrición de la canasta",
|
||||
"Copy_template_reference": "Copiar patrón",
|
||||
"Save_and_View": "Grabar y mostrar",
|
||||
"Manage_Books": "Manejar libros",
|
||||
"Meal_Plan": "Régimen de comida",
|
||||
"Save_and_View": "Guardar y mostrar",
|
||||
"Manage_Books": "Gestionar libros",
|
||||
"Meal_Plan": "Plan de comidas",
|
||||
"Select_Book": "Seleccionar libro",
|
||||
"Select_File": "Seleccionar archivo",
|
||||
"Recipe_Image": "Imagen de la receta",
|
||||
"Import_finished": "Importación finalizada",
|
||||
"View_Recipes": "Mostrar recetas",
|
||||
"Log_Cooking": "Registrar Cocinada",
|
||||
"Log_Cooking": "Registrar cocinada",
|
||||
"New_Recipe": "Nueva receta",
|
||||
"Url_Import": "Importar desde url",
|
||||
"Reset_Search": "Resetear busqueda",
|
||||
@@ -95,9 +95,9 @@
|
||||
"Categories": "categorias",
|
||||
"Category": "Categoría",
|
||||
"Selected": "Selecionado",
|
||||
"min": "minimo",
|
||||
"min": "Mínimo",
|
||||
"Servings": "Raciones",
|
||||
"Waiting": "esperando",
|
||||
"Waiting": "Esperando",
|
||||
"Preparation": "Preparación",
|
||||
"External": "Externo",
|
||||
"Size": "Tamaño",
|
||||
@@ -187,8 +187,8 @@
|
||||
"FoodOnHand": "Ya tienes {food} comprado.",
|
||||
"FoodNotOnHand": "No tienes {food} comprado.",
|
||||
"Undefined": "Indefinido",
|
||||
"Create_Meal_Plan_Entry": "Crear entrada del régimen de comidas",
|
||||
"Edit_Meal_Plan_Entry": "Eliminar entrada del régimen de comidas",
|
||||
"Create_Meal_Plan_Entry": "Crear entrada del plan de comidas",
|
||||
"Edit_Meal_Plan_Entry": "Eliminar entrada del plan de comidas",
|
||||
"Title": "Titulo",
|
||||
"Week": "Semana",
|
||||
"Month": "Mes",
|
||||
@@ -374,7 +374,7 @@
|
||||
"Ratings": "Calificaciones",
|
||||
"Internal": "Interno",
|
||||
"Units": "Unidades",
|
||||
"Random Recipes": "Recetas Aleatorias",
|
||||
"Random Recipes": "Recetas aleatorias",
|
||||
"parameter_count": "Parámetro {count}",
|
||||
"select_keyword": "Seleccionar Palabra Clave",
|
||||
"add_keyword": "Añadir Palabra Clave",
|
||||
@@ -505,7 +505,7 @@
|
||||
"Combine_All_Steps": "Combinar todos los pasos en un solo campo.",
|
||||
"imperial_pint": "Pinta imperial [imp pt] (Reino Unido, volumen)",
|
||||
"Shopping_input_placeholder": "e.g. Patata/100 Patatas/100 g Patatas",
|
||||
"Property_Editor": "Editor de Propiedades",
|
||||
"Property_Editor": "Editor de propiedades",
|
||||
"Conversion": "Conversión",
|
||||
"created_by": "Creado por",
|
||||
"CustomLogoHelp": "Subir imágenes cuadradas de diferentes tamaños para cambiarlas a logotipo en la pestaña del navegador y en la aplicación web instalada.",
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
"err_moving_resource": "Hiba történt egy erőforrás áthelyezésekor!",
|
||||
"err_merging_resource": "Hiba történt egy erőforrás egyesítésekor!",
|
||||
"success_fetching_resource": "Sikeresen lekérdezett erőforrást!",
|
||||
"success_creating_resource": "",
|
||||
"success_updating_resource": "",
|
||||
"success_deleting_resource": "",
|
||||
"success_moving_resource": "",
|
||||
"success_merging_resource": "",
|
||||
"success_creating_resource": "Sikeresen létrehoztam egy erőforrást!",
|
||||
"success_updating_resource": "Sikeresen frissítettem egy erőforrást!",
|
||||
"success_deleting_resource": "Sikeresen töröltem egy erőforrást!",
|
||||
"success_moving_resource": "Sikeresen áthelyeztem egy erőforrást!",
|
||||
"success_merging_resource": "Sikeresen egyesítettem egy erőforrást!",
|
||||
"file_upload_disabled": "A fájlfeltöltés nincs engedélyezve az Ön teréhez.",
|
||||
"step_time_minutes": "Lépés időtartama percben",
|
||||
"confirm_delete": "Biztos, hogy törölni akarja ezt a {object}?",
|
||||
|
||||
@@ -2,17 +2,17 @@
|
||||
"import_running": "Er wordt geïmporteerd, even geduld!",
|
||||
"all_fields_optional": "Alle velden zijn optioneel en kunnen leeg gelaten worden.",
|
||||
"convert_internal": "Zet om naar intern recept",
|
||||
"Log_Recipe_Cooking": "Bereiding loggen",
|
||||
"Log_Recipe_Cooking": "Bereiding registreren",
|
||||
"External_Recipe_Image": "Externe Afbeelding Recept",
|
||||
"Add_to_Book": "Voeg toe aan Boek",
|
||||
"Add_to_Shopping": "Voeg toe aan Boodschappen",
|
||||
"Add_to_Plan": "Voeg toe aan Plan",
|
||||
"Step_start_time": "Starttijd stap",
|
||||
"Select_Book": "Selecteer boek",
|
||||
"Select_Book": "Selecteer kookboek",
|
||||
"Recipe_Image": "Afbeelding Recept",
|
||||
"Import_finished": "Importeren gereed",
|
||||
"View_Recipes": "Bekijk Recepten",
|
||||
"Log_Cooking": "Log Bereiding",
|
||||
"Log_Cooking": "Registreer bereiding",
|
||||
"Proteins": "Eiwitten",
|
||||
"Fats": "Vetten",
|
||||
"Carbohydrates": "Koolhydraten",
|
||||
@@ -39,7 +39,7 @@
|
||||
"Print": "Afdrukken",
|
||||
"Information": "Informatie",
|
||||
"Keywords": "Trefwoorden",
|
||||
"Books": "Boeken",
|
||||
"Books": "Kookboeken",
|
||||
"show_only_internal": "Toon alleen interne recepten",
|
||||
"New_Recipe": "Nieuw Recept",
|
||||
"Url_Import": "Importeer URL",
|
||||
@@ -76,8 +76,8 @@
|
||||
"Delete": "Verwijder",
|
||||
"Ok": "Ok",
|
||||
"Load_More": "Laad meer",
|
||||
"Manage_Books": "Beheer boeken",
|
||||
"Create": "Voeg toe",
|
||||
"Manage_Books": "Beheer kookboeken",
|
||||
"Create": "Aanmaken",
|
||||
"Failure": "Storing",
|
||||
"View": "Bekijk",
|
||||
"Recipes": "Recepten",
|
||||
@@ -172,7 +172,7 @@
|
||||
"Week": "Week",
|
||||
"Month": "Maand",
|
||||
"Color": "Kleur",
|
||||
"New_Meal_Type": "Nieuw Maaltype",
|
||||
"New_Meal_Type": "Nieuw maaltijd type",
|
||||
"Image": "Afbeelding",
|
||||
"Planner_Settings": "Planner instellingen",
|
||||
"Period": "Periode",
|
||||
@@ -180,11 +180,11 @@
|
||||
"Periods": "Periodes",
|
||||
"Plan_Show_How_Many_Periods": "Hoeveel perioden tonen",
|
||||
"Starting_Day": "Eerste dag van de week",
|
||||
"Meal_Types": "Maaltypes",
|
||||
"Meal_Type": "Maaltype",
|
||||
"Meal_Types": "Maaltijd types",
|
||||
"Meal_Type": "Maaltijd type",
|
||||
"Clone": "Kloon",
|
||||
"Drag_Here_To_Delete": "Sleep hierheen om te verwijderen",
|
||||
"Meal_Type_Required": "Maaltype is verplicht",
|
||||
"Meal_Type_Required": "Maaltijd type is verplicht",
|
||||
"Title_or_Recipe_Required": "Titel of recept selectie is verplicht",
|
||||
"Select_File": "Selecteer Bestand",
|
||||
"Year": "Jaar",
|
||||
@@ -293,7 +293,7 @@
|
||||
"fields": "Velden",
|
||||
"show_keywords": "Toon Trefwoorden",
|
||||
"show_foods": "Toon ingrediënten",
|
||||
"show_books": "Toon boeken",
|
||||
"show_books": "Toon kookboeken",
|
||||
"show_rating": "Toon waardering",
|
||||
"show_units": "Toon eenheden",
|
||||
"show_filters": "Toon filters",
|
||||
@@ -431,14 +431,14 @@
|
||||
"Second": "Seconde",
|
||||
"Seconds": "Seconden",
|
||||
"Account": "Account",
|
||||
"Cosmetic": "Cosmetisch",
|
||||
"Cosmetic": "Weergave",
|
||||
"Message": "Bericht",
|
||||
"Sticky_Nav": "Navigatie altijd zichbaar",
|
||||
"Sticky_Nav_Help": "Geef navigatiemenu altijd bovenin weer.",
|
||||
"Nav_Color": "Navigatiekleur",
|
||||
"Nav_Color_Help": "Verander de navigatiekleur.",
|
||||
"Use_Kj": "kJ gebruiken in plaats van kcal",
|
||||
"Comments_setting": "Commentaar weergeven",
|
||||
"Comments_setting": "Opmerkingen weergeven",
|
||||
"Change_Password": "Wachtwoord veranderen",
|
||||
"Social_Authentication": "Authenticeren met sociale media-account",
|
||||
"First_name": "Voornaam",
|
||||
@@ -452,7 +452,7 @@
|
||||
"Private_Recipe": "Privé Recept",
|
||||
"Copy Link": "Kopieer Link",
|
||||
"Decimals": "Decimalen",
|
||||
"Use_Fractions": "Gebruik Kommagetallen",
|
||||
"Use_Fractions": "Gebruik breuken",
|
||||
"Theme": "Thema",
|
||||
"Hour": "Uur",
|
||||
"Users": "Gebruikers",
|
||||
@@ -523,7 +523,7 @@
|
||||
"Back": "Terug",
|
||||
"err_importing_recipe": "Bij het importeren van het recept is een fout opgetreden!",
|
||||
"CustomLogoHelp": "Upload vierkante afbeeldingen in verschillende groottes om het logo in het browser tabblad en geïnstalleerde web apps aan te passen.",
|
||||
"DefaultPage": "Standaard Pagina",
|
||||
"DefaultPage": "Startpagina",
|
||||
"hide_step_ingredients": "Verberg Stap Ingrediënten",
|
||||
"CustomTheme": "Aangepast Thema",
|
||||
"CustomThemeHelp": "Overschrijf de stijl van het thema door een aangepast CSS bestand te uploaden.",
|
||||
@@ -549,15 +549,15 @@
|
||||
"ShowRecentlyCompleted": "Toon recent voltooide items",
|
||||
"ShoppingBackgroundSyncWarning": "Slecht netwerk, wachten met synchroniseren…",
|
||||
"OrderInformation": "Objecten worden van kleine naar grote nummers gesorteerd.",
|
||||
"Show_Logo": "Toon Logo",
|
||||
"Show_Logo_Help": "Toon Tandoor of ruimte logo in navigatie balk.",
|
||||
"Show_Logo": "Toon logo",
|
||||
"Show_Logo_Help": "Toon het Tandoor of 'Ruimte' logo in de navigatie balk.",
|
||||
"Created": "Gemaakt",
|
||||
"Updated": "Geüpdate",
|
||||
"Unchanged": "Ongewijzigd",
|
||||
"Error": "Fout",
|
||||
"Logo": "Logo",
|
||||
"Nav_Text_Mode": "Navigatie Tekst Mode",
|
||||
"Space_Cosmetic_Settings": "Sommige cosmetische instellingen kunnen worden gewijzigd door de administrator van de Ruimte en zullen de persoonlijk instellingen voor die Ruimte overschrijven.",
|
||||
"Nav_Text_Mode": "Navigatie tekstkleur",
|
||||
"Space_Cosmetic_Settings": "Sommige weergave instellingen kunnen worden geforceerd door de administrator van de 'Ruimte' en zullen de persoonlijke instellingen voor die 'Ruimte' overschrijven.",
|
||||
"Nav_Text_Mode_Help": "Beinvloed het uiterlijk voor ieder thema anders.",
|
||||
"show_ingredients_table": "Toon een tabel van de ingrediënten naast de stap tekst",
|
||||
"Alignment": "Afstemming",
|
||||
@@ -571,5 +571,6 @@
|
||||
"Name_Replace": "Naam Vervangen",
|
||||
"Food_Replace": "Voedingsmiddelen Vervangen",
|
||||
"Never_Unit": "Nooit Eenheid",
|
||||
"Transpose_Words": "Omzetten Woorden"
|
||||
"Transpose_Words": "Omzetten Woorden",
|
||||
"us_cup": "kopje (US, eenheid)"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"warning_feature_beta": "Данный функционал находится в стадии BETA (тестируется). Возможны баги и серьезные изменения функционала в будущем.",
|
||||
"warning_feature_beta": "Данный функционал находится в стадии бета-тестирования. Возможны баги и серьезные изменения функционала в будущем.",
|
||||
"err_fetching_resource": "Ошибка при загрузке продукта!",
|
||||
"err_creating_resource": "Ошибка при создании продукта!",
|
||||
"err_updating_resource": "Ошибка при редактировании продукта!",
|
||||
@@ -312,7 +312,7 @@
|
||||
"recipe_name": "Название рецепта",
|
||||
"view_recipe": "Посмотреть рецепт",
|
||||
"times_cooked": "Время готовки",
|
||||
"last_cooked": "Последнее приготовленое",
|
||||
"last_cooked": "Последнее приготовленное",
|
||||
"date_viewed": "Последний просмотренный",
|
||||
"Internal": "Внутренний",
|
||||
"Imported_From": "Импортировано из",
|
||||
@@ -346,5 +346,22 @@
|
||||
"food_inherit_info": "Поля для продуктов питания, которые должны наследоваться по умолчанию.",
|
||||
"warning_space_delete": "Вы можете удалить свое пространство, включая все рецепты, списки покупок, планы питания и все остальное, что вы создали. Этого нельзя отменить! Вы уверены, что хотите это сделать?",
|
||||
"Description_Replace": "Изменить описание",
|
||||
"err_importing_recipe": "Произошла ошибка при импортировании рецепта!"
|
||||
"err_importing_recipe": "Произошла ошибка при импортировании рецепта!",
|
||||
"related_recipes": "Похожие рецепты",
|
||||
"Auto_Sort_Help": "Переместить все ингредиенты на наиболее подходящий шаг.",
|
||||
"reusable_help_text": "Должна ли ссылка приглашения быть доступна для использования более чем одним пользователем?",
|
||||
"asc": "По увеличению",
|
||||
"desc": "По убыванию",
|
||||
"show_sortby": "Показать сортировку по",
|
||||
"Calculator": "Калькулятор",
|
||||
"Private_Recipe_Help": "Рецепт виден только вам и людям, с которыми им поделились.",
|
||||
"Private_Recipe": "Приватный Рецепт",
|
||||
"Auto_Sort": "Автоматическая сортировка",
|
||||
"Amount": "Количество",
|
||||
"per_serving": "за порцию",
|
||||
"Instruction_Replace": "Изменить Инструкцию",
|
||||
"recipe_property_info": "Вы также можете добавить свойства к продуктам, чтобы автоматически рассчитывать их на основе вашего рецепта!",
|
||||
"open_data_help_text": "Проект Tandoor Open Data предоставляет предоставленные сообществом данные для Tandoor. Это поле заполняется автоматически при импорте и допускает обновления в будущем.",
|
||||
"Open_Data_Import": "Открыть импорт данных",
|
||||
"property_type_fdc_hint": "Только типы свойств с FDC ID могут автоматически получать данные из базы данных FDC"
|
||||
}
|
||||
|
||||
@@ -13,14 +13,14 @@
|
||||
"show_only_internal": "仅显示内部食谱",
|
||||
"Log_Recipe_Cooking": "食谱烹饪记录",
|
||||
"External_Recipe_Image": "外部食谱图像",
|
||||
"Add_to_Shopping": "添加到购物",
|
||||
"Add_to_Shopping": "加入购物清单",
|
||||
"Add_to_Plan": "添加到计划",
|
||||
"Step_start_time": "步骤开始时间",
|
||||
"Sort_by_new": "按新旧排序",
|
||||
"Recipes_per_page": "每页食谱数量",
|
||||
"Manage_Books": "管理书籍",
|
||||
"Manage_Books": "烹饪手册管理",
|
||||
"Meal_Plan": "用餐计划",
|
||||
"Select_Book": "选择书籍",
|
||||
"Select_Book": "选择烹饪手册",
|
||||
"Recipe_Image": "食谱图像",
|
||||
"Import_finished": "导入完成",
|
||||
"View_Recipes": "查看食谱",
|
||||
@@ -31,7 +31,7 @@
|
||||
"Recently_Viewed": "最近浏览",
|
||||
"Load_More": "加载更多",
|
||||
"Keywords": "关键词",
|
||||
"Books": "书籍",
|
||||
"Books": "烹饪手册",
|
||||
"Proteins": "蛋白质",
|
||||
"Fats": "脂肪",
|
||||
"Carbohydrates": "碳水化合物",
|
||||
@@ -198,7 +198,7 @@
|
||||
"Week_Numbers": "周数",
|
||||
"Show_Week_Numbers": "显示周数?",
|
||||
"Coming_Soon": "即将到来",
|
||||
"New_Cookbook": "新烹饪书",
|
||||
"New_Cookbook": "新建烹饪手册",
|
||||
"Hide_Keyword": "隐藏关键词",
|
||||
"Export_To_ICal": "导出 .ics",
|
||||
"Added_To_Shopping_List": "添加到购物清单",
|
||||
@@ -296,7 +296,7 @@
|
||||
"Default_Unit": "默认单位",
|
||||
"Seconds": "秒",
|
||||
"and_down": "& Down",
|
||||
"ignore_shopping_help": "请不要将食物添加到购物列表中(例如水)",
|
||||
"ignore_shopping_help": "请不要将食物添加到购物清单中(例如水)",
|
||||
"Use_Fractions_Help": "查看食谱时自动将小数转换为分数。",
|
||||
"Foods": "食物",
|
||||
"Use_Fractions": "使用分数",
|
||||
@@ -323,7 +323,7 @@
|
||||
"Invites": "邀请",
|
||||
"warning_duplicate_filter": "警告:由于技术限制,使用相同组合(和/或/不)的多个筛选器可能会产生意想不到的结果。",
|
||||
"Account": "账户",
|
||||
"Cosmetic": "化妆品",
|
||||
"Cosmetic": "外观",
|
||||
"API": "API",
|
||||
"enable_expert": "启用专家模式",
|
||||
"expert_mode": "专家模式",
|
||||
@@ -331,7 +331,7 @@
|
||||
"fields": "字段",
|
||||
"show_keywords": "显示关键字",
|
||||
"show_foods": "显示食物",
|
||||
"show_books": "显示书籍",
|
||||
"show_books": "显示烹饪手册",
|
||||
"show_units": "显示单位",
|
||||
"show_filters": "显示筛选器",
|
||||
"filter_name": "筛选器名称",
|
||||
@@ -346,7 +346,7 @@
|
||||
"Click_To_Edit": "点击编辑",
|
||||
"search_no_recipes": "找不到任何食谱!",
|
||||
"search_import_help_text": "从外部网站或应用程序导入食谱。",
|
||||
"search_create_help_text": "直接在泥炉中创建新食谱。",
|
||||
"search_create_help_text": "直接在 Tandoor 中创建新食谱。",
|
||||
"reset_children": "重置子继承",
|
||||
"reset_food_inheritance": "重置继承",
|
||||
"reset_food_inheritance_info": "将所有食物重置为默认继承字段及其父值。",
|
||||
@@ -479,7 +479,7 @@
|
||||
"Auto_Sort_Help": "将所有食材移动到最恰当的步骤。",
|
||||
"Create Recipe": "创建食谱",
|
||||
"Import Recipe": "导入食谱",
|
||||
"recipe_property_info": "您也可以为食物添加属性,以便根据食谱自动计算!",
|
||||
"recipe_property_info": "您也可以为食物添加属性,以便根据您的食谱自动计算它们!",
|
||||
"per_serving": "每份",
|
||||
"converted_amount": "换算量",
|
||||
"Open_Data_Import": "开放数据导入",
|
||||
@@ -558,5 +558,16 @@
|
||||
"CustomImageHelp": "上传图片以在空间概览中显示。",
|
||||
"CustomNavLogoHelp": "上传图像以用作导航栏徽标。",
|
||||
"CustomLogoHelp": "上传不同尺寸的方形图像以更改为浏览器选项卡和安装的网络应用程序中的徽标。",
|
||||
"CustomLogos": "自定义徽标"
|
||||
"CustomLogos": "自定义徽标",
|
||||
"us_cup": "量杯(美式容量单位)",
|
||||
"Created": "已创建",
|
||||
"Shopping_input_placeholder": "例:土豆 / 100 土豆 / 100 g 土豆",
|
||||
"created_by": "创建者",
|
||||
"Updated": "已更新",
|
||||
"Unchanged": "未更改",
|
||||
"Error": "错误",
|
||||
"DefaultPage": "默认页面",
|
||||
"Transpose_Words": "字符串转置",
|
||||
"Calculator": "计算器",
|
||||
"Never_Unit": "禁用单位识别"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user