diff --git a/localization-backup/da/chore_types.php b/localization-backup/da/chore_types.php
new file mode 100644
index 00000000..7eaef62e
--- /dev/null
+++ b/localization-backup/da/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuelt',
+ 'dynamic-regular' => '',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/da/component_translations.php b/localization-backup/da/component_translations.php
new file mode 100644
index 00000000..020bea52
--- /dev/null
+++ b/localization-backup/da/component_translations.php
@@ -0,0 +1,10 @@
+ '',
+ 'timeago_nan' => '',
+ 'moment_locale' => '',
+ 'datatables_localization' => '',
+ 'summernote_locale' => '',
+ 'fullcalendar_locale' => ''
+);
diff --git a/localization-backup/da/demo_data.php b/localization-backup/da/demo_data.php
new file mode 100644
index 00000000..f10ba8f6
--- /dev/null
+++ b/localization-backup/da/demo_data.php
@@ -0,0 +1,95 @@
+ 'Småkager',
+ 'Chocolate' => 'chokolade',
+ 'Pantry' => 'Spisekammer',
+ 'Candy cupboard' => 'Slik skuffe',
+ 'Tinned food cupboard' => 'Dåsemadsskab',
+ 'Fridge' => 'Køleskab',
+ 'Piece' => 'Styk',
+ 'Pieces' => 'Stykker',
+ 'Pack' => 'Pakke',
+ 'Packs' => 'Pakker',
+ 'Glass' => 'Glas',
+ 'Glasses' => 'Glas',
+ 'Tin' => 'Beholder',
+ 'Tins' => 'Beholdere',
+ 'Can' => 'Dåse',
+ 'Cans' => 'Dåser',
+ 'Bunch' => 'Bundt',
+ 'Bunches' => 'Bundt',
+ 'Gummy bears' => 'Vingummi bamser',
+ 'Crisps' => 'Chips',
+ 'Eggs' => 'Æg',
+ 'Noodles' => 'Nudler',
+ 'Pickles' => 'Syltede agurker',
+ 'Gulash soup' => 'Gulash',
+ 'Yogurt' => 'Yoghurt',
+ 'Cheese' => 'Ost',
+ 'Cold cuts' => 'Pålæg',
+ 'Paprika' => 'Paprika',
+ 'Cucumber' => 'Agurk',
+ 'Radish' => 'Radisse',
+ 'Tomato' => 'Tomat',
+ 'Changed towels in the bathroom' => 'Skiftede håndklæder i badeværelset',
+ 'Cleaned the kitchen floor' => 'Gjorde køkkengulvet rent',
+ 'Warranty ends' => 'Reklamationsret udløber',
+ 'TV remote control' => 'Fjernbetjening',
+ 'Alarm clock' => 'Vægge ur',
+ 'Heat remote control' => 'Varmefjernbetjening',
+ 'Lawn mowed in the garden' => 'Græs slået',
+ 'Some good snacks' => 'Nogle gode snacks',
+ 'Pizza dough' => 'Pizza dej',
+ 'Sieved tomatoes' => 'Sigtede tomater',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Toast',
+ 'Minced meat' => 'Hakkekød',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti bolognese',
+ 'Sandwiches' => 'Sandwiches',
+ 'English' => 'Engelsk',
+ 'German' => 'Tysk',
+ 'Italian' => 'Italiænsk',
+ 'Demo in different language' => 'Demo i et andet sprog',
+ 'This is the note content of the recipe ingredient' => 'Dette er indholdet af opskrift ingrediensens notefelt',
+ 'Demo User' => 'Demo Bruger',
+ 'Gram' => 'Gram',
+ 'Grams' => 'Gram',
+ 'Flour' => 'Mel',
+ 'Pancakes' => 'Pandekager',
+ 'Sugar' => 'Sukker',
+ 'Home' => 'Hjem',
+ 'Life' => 'Liv',
+ 'Projects' => 'Projekter',
+ 'Repair the garage door' => 'Reparér garagedøren',
+ 'Fork and improve grocy' => 'Fork og forbedre grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Find en løsning for når jeg glemmer husnøglen',
+ 'Sweets' => 'Slik',
+ 'Bakery products' => 'Bageriprodukter',
+ 'Tinned food' => 'Dåsemad',
+ 'Butchery products' => 'Slagteriprodukter',
+ 'Vegetables/Fruits' => 'Frugt og grønt',
+ 'Refrigerated products' => 'Nedkølede produkter',
+ 'Coffee machine' => 'Kaffemaskine',
+ 'Dishwasher' => 'Opvasker',
+ 'Liter' => 'Liter',
+ 'Liters' => 'Liter',
+ 'Bottle' => 'Flaske',
+ 'Bottles' => 'Flasker',
+ 'Milk' => 'Mælk',
+ 'Chocolate sauce' => 'Chokoladesauce',
+ 'Milliliters' => 'Milliliter',
+ 'Milliliter' => 'Milliliter',
+ 'Bottom' => 'Bund',
+ 'Topping' => 'Topping',
+ 'French' => 'Fransk',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/da/stock_transaction_types.php b/localization-backup/da/stock_transaction_types.php
new file mode 100644
index 00000000..c7e4bfd4
--- /dev/null
+++ b/localization-backup/da/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Køb',
+ 'consume' => 'Brug',
+ 'inventory-correction' => 'Beholdningsrettelse',
+ 'product-opened' => 'Produkt åbnet'
+);
diff --git a/localization-backup/da/strings.php b/localization-backup/da/strings.php
new file mode 100644
index 00000000..c27b4dc1
--- /dev/null
+++ b/localization-backup/da/strings.php
@@ -0,0 +1,397 @@
+ 'Beholdnings oversigt',
+ '#1 products expiring within the next #2 days' => '#1 produkter der udløber inden for de næste #2 dage',
+ '#1 products are already expired' => '#1 produkter er allerede udløbede',
+ '#1 products are below defined min. stock amount' => 'Beholdningen af #1 produkter er under minimums antallet',
+ 'Product' => 'Produkt',
+ 'Amount' => 'Mængde',
+ 'Next best before date' => 'Næste bedst før dato',
+ 'Logout' => 'Log ud',
+ 'Chores overview' => 'Pligt oversigt',
+ 'Batteries overview' => 'Batteri oversigt',
+ 'Purchase' => 'Køb',
+ 'Consume' => 'Brug',
+ 'Inventory' => 'Beholdning',
+ 'Shopping list' => 'Indkøbsliste',
+ 'Chore tracking' => 'Pligt overvågning',
+ 'Battery tracking' => 'Batteri overvågning',
+ 'Products' => 'Produkter',
+ 'Locations' => 'Steder',
+ 'Quantity units' => 'Mængde enheder',
+ 'Chores' => 'Pligter',
+ 'Batteries' => 'Batterier',
+ 'Chore' => 'Pligt',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => 'Sidst overvåget',
+ 'Battery' => 'Batteri',
+ 'Last charged' => 'Sidst opladt',
+ 'Next planned charge cycle' => 'Næste planlagte opladning',
+ 'Best before' => 'Bedst før',
+ 'OK' => 'OK',
+ 'Product overview' => 'Produkt oversigt',
+ 'Stock quantity unit' => 'Standard enhed',
+ 'Stock amount' => 'Standard mængde',
+ 'Last purchased' => 'Sidst købt',
+ 'Last used' => 'Sidst brugt',
+ 'Spoiled' => 'Udløbet',
+ 'Barcode lookup is disabled' => 'Stregkode opslag er slået fra',
+ 'will be added to the list of barcodes for the selected product on submit' => 'Bliver tilføjet til stregkodelisten for det valgte produkt når du sender',
+ 'New amount' => 'Ny mængde',
+ 'Note' => 'Note',
+ 'Tracked time' => 'Overvåget tid',
+ 'Chore overview' => 'Pligt oversigt',
+ 'Tracked count' => 'Antal overvågede',
+ 'Battery overview' => 'Batteri oversigt',
+ 'Charge cycles count' => 'Antal opladninger',
+ 'Create shopping list item' => 'Lav indkøbsliste punkt',
+ 'Edit shopping list item' => 'Ændr indkøbsliste punkt',
+ 'Save' => 'Gem',
+ 'Add' => 'Tilføj',
+ 'Name' => 'Navn',
+ 'Location' => 'Sted',
+ 'Min. stock amount' => 'Mindste beholdning',
+ 'QU purchase' => 'QU køb',
+ 'QU stock' => 'QU beholdning',
+ 'QU factor' => '',
+ 'Description' => 'Beskrivelse',
+ 'Create product' => 'Lav produkt',
+ 'Barcode(s)' => 'Stegkode(r)',
+ 'Minimum stock amount' => 'Minimum mængde',
+ 'Default best before days' => 'Standard bedst før dage',
+ 'Quantity unit purchase' => '',
+ 'Quantity unit stock' => '',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => 'Lav placering',
+ 'Create quantity unit' => 'Lav mængde enhed',
+ 'Period type' => 'Periode type',
+ 'Period days' => '',
+ 'Create chore' => 'Lav pligt',
+ 'Used in' => 'Brugt i',
+ 'Create battery' => 'Lav batteri',
+ 'Edit battery' => 'Ændr batteri',
+ 'Edit chore' => 'Ændr pligt',
+ 'Edit quantity unit' => 'Ændr mængde enhed',
+ 'Edit product' => 'Ændr produkt',
+ 'Edit location' => 'Ændr placering',
+ 'Record data' => 'Optag data',
+ 'Manage master data' => '',
+ 'This will apply to added products' => 'Dette vil gælde tilføjede produkter',
+ 'never' => 'aldrig',
+ 'Add products that are below defined min. stock amount' => 'Tilføj produkter der er under minimumsantallet',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Dette betyder at 1 #1 bliver lavet om til #2 #3 i beholdningen',
+ 'Login' => 'Login',
+ 'Username' => 'Brugernavn',
+ 'Password' => 'Kode',
+ 'Invalid credentials, please try again' => 'Ugyldige informationer, prøv igen',
+ 'Are you sure to delete battery "#1"?' => 'Er du sikker på du vil slette batteriet "#1"?',
+ 'Yes' => 'Ja',
+ 'No' => 'Nej',
+ 'Are you sure to delete chore "#1"?' => 'Er du sikker på du vil slette pligten "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" kunne ikke findes som produkt. Hvordan vil du fortsætte?',
+ 'Create or assign product' => 'Lav eller tilknyt produkt',
+ 'Cancel' => 'Afbryd',
+ 'Add as new product' => 'Tilføj som nyt produkt',
+ 'Add as barcode to existing product' => 'Tilføj som stregkode til et eksisterende produkt',
+ 'Add as new product and prefill barcode' => 'Tilføj som nyt produkt og udfyld stregkoden på forhånd',
+ 'Are you sure to delete quantity unit "#1"?' => 'Er du sikker på du vil slette mængde enheden "#1"?',
+ 'Are you sure to delete product "#1"?' => 'Er du sikker på du vil slette produktet "#1"?',
+ 'Are you sure to delete location "#1"?' => 'Er du sikker på du vil slette placeringen "#1"?',
+ 'Manage API keys' => 'Styr API nøgler',
+ 'REST API & data model documentation' => 'REST API & datamodel dokumentation',
+ 'API keys' => 'API nøgler',
+ 'Create new API key' => 'Lav ny API nøgle',
+ 'API key' => 'API nøgle',
+ 'Expires' => 'Udløber',
+ 'Created' => 'Lavet',
+ 'This product is not in stock' => 'Dette produkt er ikke i beholdningen',
+ 'This means #1 will be added to stock' => 'Dette betyder #1 bliver tilføjet til beholdningen',
+ 'This means #1 will be removed from stock' => 'Dette betyder at #1 bliver fjernet fra beholdningen',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => 'Fjernede #1 #2 af #3 fra beholdningen',
+ 'About grocy' => 'Omkring Grocy',
+ 'Close' => 'Luk',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 batterier skal oplades indenfor de næste #2 dage',
+ '#1 batteries are overdue to be charged' => '#1 batterier trænger til at blive opladt',
+ '#1 chores are due to be done within the next #2 days' => '#1 pligter skal udfyldes indenfor de næste #2 dage',
+ '#1 chores are overdue to be done' => '#1 pligter skulle have været gjort',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => 'Brug #3 #1 af #2',
+ 'Added #1 #2 of #3 to stock' => 'Tilføjede #1 #2 af #3 til beholdningen',
+ 'Stock amount of #1 is now #2 #3' => 'Mængden af #1 er nu #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Overvågede udførslen af pligt #1 på #2',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => 'Brug alle #1 i beholdningen',
+ 'All' => 'Alle',
+ 'Track charge cycle of battery #1' => 'Overvåg opladningscyklus af batteri #1',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => 'Filtre med placering',
+ 'Search' => 'Søg',
+ 'Not logged in' => 'Ikke logget ind',
+ 'You have to select a product' => 'Du skal vælge et produkt',
+ 'You have to select a chore' => 'Du skal vælge en pligt',
+ 'You have to select a battery' => 'Du skal vælge et batteri',
+ 'A name is required' => 'Du skal vælge et navn',
+ 'A location is required' => 'Du skal vælge en placering',
+ 'The amount cannot be lower than #1' => 'Mængden kan ikek kvære lavere end #1',
+ 'This cannot be negative' => 'Dette kan ikke være negativt',
+ 'A quantity unit is required' => 'Du skal vælge en enhed for mængden',
+ 'A period type is required' => 'Du skal vælge en slags periode',
+ 'A best before date is required' => '',
+ 'Settings' => 'Indstillinger',
+ 'This can only be before now' => 'Dette skal være før nu',
+ 'Calendar' => 'Kalender',
+ 'Recipes' => 'Opskrifter',
+ 'Edit recipe' => 'Ændr opskrift',
+ 'New recipe' => 'Ny opskrift',
+ 'Ingredients list' => 'Ingrediens liste',
+ 'Add recipe ingredient' => 'Tilføj ingrediens til opskrift',
+ 'Edit recipe ingredient' => 'Ændr ingrediens til opskrift',
+ 'Are you sure to delete recipe "#1"?' => 'Er du sikker på du vil slette opskriften "#1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Er du sikker på du vil slette ingrediensen "#1" fra opskriften?',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => 'Ryd liste',
+ 'Requirements fulfilled' => 'Skal udfyldes',
+ 'Put missing products on shopping list' => 'Sæt manglende produkter på en indkøbsliste',
+ 'Not enough in stock, #1 ingredients missing' => 'Der er ikke nok i beholdningen. Der mangler #1 ingredienser. ',
+ 'Enough in stock' => 'Der er nok i beholdningen',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Der er ikke nok i beholdningen. Der mangler #1 ingredienser som allerede er på indkøbslisten',
+ 'Expand to fullscreen' => 'Udvid til fuldskærm',
+ 'Ingredients' => 'Ingredienser',
+ 'Preparation' => 'Tilberedning',
+ 'Recipe' => 'Opskrift',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Der er ikke nok i beholdningen. Der mangler #1, #2 er allerede i beholdningen',
+ 'Show notes' => 'Vis noter',
+ 'Put missing amount on shopping list' => 'Put manglende mængde på indkøbsliste',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Er du sikker på du vil sætte alle manglende ingredienser til "#1" på indkøbslisten?',
+ 'Added for recipe #1' => 'Tilføjet til opskriften #1',
+ 'Manage users' => '',
+ 'User' => 'Bruger',
+ 'Users' => 'Brugere',
+ 'Are you sure to delete user "#1"?' => 'Er du sikker på du vil slette brugeren "#1"?',
+ 'Create user' => 'Lav bruger',
+ 'Edit user' => 'Ændr bruger',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/da/userfield_types.php b/localization-backup/da/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/da/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/de/chore_types.php b/localization-backup/de/chore_types.php
new file mode 100644
index 00000000..87f142e4
--- /dev/null
+++ b/localization-backup/de/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuell',
+ 'dynamic-regular' => 'Dynamisch regelmäßig',
+ 'daily' => 'Täglich',
+ 'weekly' => 'Wöchentlich',
+ 'monthly' => 'Monatlich'
+);
diff --git a/localization-backup/de/component_translations.php b/localization-backup/de/component_translations.php
new file mode 100644
index 00000000..a04d81ab
--- /dev/null
+++ b/localization-backup/de/component_translations.php
@@ -0,0 +1,10 @@
+ 'de',
+ 'timeago_nan' => 'vor NaN Jahren',
+ 'moment_locale' => 'de',
+ 'datatables_localization' => '{"sEmptyTable":"Keine Daten in der Tabelle vorhanden","sInfo":"_START_ bis _END_ von _TOTAL_ Einträgen","sInfoEmpty":"Keine Daten vorhanden","sInfoFiltered":"(gefiltert von _MAX_ Einträgen)","sInfoPostFix":"","sInfoThousands":".","sLengthMenu":"_MENU_ Einträge anzeigen","sLoadingRecords":"Wird geladen ..","sProcessing":"Bitte warten ..","sSearch":"Suchen","sZeroRecords":"Keine Einträge vorhanden","oPaginate":{"sFirst":"Erste","sPrevious":"Zurück","sNext":"Nächste","sLast":"Letzte"},"oAria":{"sSortAscending":": aktivieren, um Spalte aufsteigend zu sortieren","sSortDescending":": aktivieren, um Spalte absteigend zu sortieren"},"select":{"rows":{"0":"Zum Auswählen auf eine Zeile klicken","1":"1 Zeile ausgewählt","_":"%d Zeilen ausgewählt"}},"buttons":{"print":"Drucken","colvis":"Spalten","copy":"Kopieren","copyTitle":"In Zwischenablage kopieren","copyKeys":"Taste ctrl oder ⌘ + C um Tabelle
in Zwischenspeicher zu kopieren.
Um abzubrechen die Nachricht anklicken oder Escape drücken.","copySuccess":{"1":"1 Spalte kopiert","_":"%d Spalten kopiert"}}}',
+ 'summernote_locale' => 'de-DE',
+ 'fullcalendar_locale' => 'de'
+);
diff --git a/localization-backup/de/demo_data.php b/localization-backup/de/demo_data.php
new file mode 100644
index 00000000..8e26e882
--- /dev/null
+++ b/localization-backup/de/demo_data.php
@@ -0,0 +1,95 @@
+ 'Cookies',
+ 'Chocolate' => 'Schokolade',
+ 'Pantry' => 'Vorratskammer',
+ 'Candy cupboard' => 'Süßigkeitenschrank',
+ 'Tinned food cupboard' => 'Konservenschrank',
+ 'Fridge' => 'Kühlschrank',
+ 'Piece' => 'Stück',
+ 'Pieces' => 'Stücke',
+ 'Pack' => 'Packung',
+ 'Packs' => 'Packungen',
+ 'Glass' => 'Glas',
+ 'Glasses' => 'Gläser',
+ 'Tin' => 'Dose',
+ 'Tins' => 'Dosen',
+ 'Can' => 'Becher',
+ 'Cans' => 'Becher',
+ 'Bunch' => 'Bund',
+ 'Bunches' => 'Bunde',
+ 'Gummy bears' => 'Gummibärchen',
+ 'Crisps' => 'Chips',
+ 'Eggs' => 'Eier',
+ 'Noodles' => 'Nudeln',
+ 'Pickles' => 'Essiggurken',
+ 'Gulash soup' => 'Gulaschsuppe',
+ 'Yogurt' => 'Joghurt',
+ 'Cheese' => 'Käse',
+ 'Cold cuts' => 'Aufschnitt',
+ 'Paprika' => 'Paprika',
+ 'Cucumber' => 'Gurke',
+ 'Radish' => 'Radieschen',
+ 'Tomato' => 'Tomaten',
+ 'Changed towels in the bathroom' => 'Handtücher im Bad gewechselt',
+ 'Cleaned the kitchen floor' => 'Küchenboden gewischt',
+ 'Warranty ends' => 'Garantie endet',
+ 'TV remote control' => 'TV Fernbedienung',
+ 'Alarm clock' => 'Wecker',
+ 'Heat remote control' => 'Fernbedienung Heizung',
+ 'Lawn mowed in the garden' => 'Rasen im Garten gemäht',
+ 'Some good snacks' => 'Paar gute Snacks',
+ 'Pizza dough' => 'Pizzateig',
+ 'Sieved tomatoes' => 'Passierte Tomaten',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Toast',
+ 'Minced meat' => 'Hackfleisch',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti Bolognese',
+ 'Sandwiches' => 'Belegte Toasts',
+ 'English' => 'Englisch',
+ 'German' => 'Deutsch',
+ 'Italian' => 'Italienisch',
+ 'Demo in different language' => 'Demo in anderer Sprache',
+ 'This is the note content of the recipe ingredient' => 'Dies ist der Inhalt der Notiz der Zutat',
+ 'Demo User' => 'Demo Benutzer',
+ 'Gram' => 'Gramm',
+ 'Grams' => 'Gramm',
+ 'Flour' => 'Mehl',
+ 'Pancakes' => 'Pfannkuchen',
+ 'Sugar' => 'Zucker',
+ 'Home' => 'Zuhause',
+ 'Life' => 'Leben',
+ 'Projects' => 'Projekte',
+ 'Repair the garage door' => 'Garagentor reparieren',
+ 'Fork and improve grocy' => 'grocy forken und verbessern',
+ 'Find a solution for what to do when I forget the door keys' => 'Eine Lösung für "Haustürschlüssel vergessen" finden',
+ 'Sweets' => 'Süßigkeiten',
+ 'Bakery products' => 'Bäckerei Produkte',
+ 'Tinned food' => 'Konservern',
+ 'Butchery products' => 'Metzgerei',
+ 'Vegetables/Fruits' => 'Obst/Gemüse',
+ 'Refrigerated products' => 'Kühlregal',
+ 'Coffee machine' => 'Kaffeemaschine',
+ 'Dishwasher' => 'Spülmaschine',
+ 'Liter' => 'Liter',
+ 'Liters' => 'Liter',
+ 'Bottle' => 'Flasche',
+ 'Bottles' => 'Flaschen',
+ 'Milk' => 'Milch',
+ 'Chocolate sauce' => 'Schokoladensoße',
+ 'Milliliters' => 'Milliliter',
+ 'Milliliter' => 'Milliliter',
+ 'Bottom' => 'Boden',
+ 'Topping' => 'Belag',
+ 'French' => 'Französisch',
+ 'Turkish' => 'Türkisch',
+ 'Spanish' => 'Spanisch',
+ 'Russian' => 'Russisch',
+ 'The thing which happens on the 5th of every month' => 'Das, was am 5. jedes Monats zu tun ist',
+ 'The thing which happens daily' => 'Das, was täglich zu tun ist',
+ 'The thing which happens on Mondays and Wednesdays' => 'Das, was Montags und Mittwochs zu tun ist',
+ 'Swedish' => 'Schwedisch',
+ 'Polish' => ''
+);
diff --git a/localization-backup/de/stock_transaction_types.php b/localization-backup/de/stock_transaction_types.php
new file mode 100644
index 00000000..96bf18d2
--- /dev/null
+++ b/localization-backup/de/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Einkauf',
+ 'consume' => 'Verbrauch',
+ 'inventory-correction' => 'Inventur-Korrektur',
+ 'product-opened' => 'Produkt geöffnet'
+);
diff --git a/localization-backup/de/strings.php b/localization-backup/de/strings.php
new file mode 100644
index 00000000..1bfc7094
--- /dev/null
+++ b/localization-backup/de/strings.php
@@ -0,0 +1,397 @@
+ 'Bestand',
+ '#1 products expiring within the next #2 days' => '#1 Produkte laufen innerhalb der nächsten #2 Tage ab',
+ '#1 products are already expired' => '#1 Produkte sind bereits abgelaufen',
+ '#1 products are below defined min. stock amount' => '#1 Produkte sind unter Mindestbestand',
+ 'Product' => 'Produkt',
+ 'Amount' => 'Menge',
+ 'Next best before date' => 'Nächstes MHD',
+ 'Logout' => 'Abmelden',
+ 'Chores overview' => 'Hausarbeiten',
+ 'Batteries overview' => 'Batterien',
+ 'Purchase' => 'Einkauf',
+ 'Consume' => 'Verbrauch',
+ 'Inventory' => 'Inventur',
+ 'Shopping list' => 'Einkaufszettel',
+ 'Chore tracking' => 'Hausarbeiten-Ausführung',
+ 'Battery tracking' => 'Batterie-Ladezyklus',
+ 'Products' => 'Produkte',
+ 'Locations' => 'Standorte',
+ 'Quantity units' => 'Mengeneinheiten',
+ 'Chores' => 'Hausarbeiten',
+ 'Batteries' => 'Batterien',
+ 'Chore' => 'Hausarbeit',
+ 'Next estimated tracking' => 'Nächste geplante Ausführung',
+ 'Last tracked' => 'Zuletzt ausgeführt',
+ 'Battery' => 'Batterie',
+ 'Last charged' => 'Zuletzt geladen',
+ 'Next planned charge cycle' => 'Nächster geplanter Ladezyklus',
+ 'Best before' => 'MHD',
+ 'OK' => 'OK',
+ 'Product overview' => 'Produktübersicht',
+ 'Stock quantity unit' => 'Mengeneinheit Bestand',
+ 'Stock amount' => 'Bestand',
+ 'Last purchased' => 'Zuletzt gekauft',
+ 'Last used' => 'Zuletzt benutzt',
+ 'Spoiled' => 'Verdorben',
+ 'Barcode lookup is disabled' => 'Barcode-Suche ist deaktiviert',
+ 'will be added to the list of barcodes for the selected product on submit' => 'wird der Liste der Barcodes für das ausgewählte Produkt beim Speichern hinzugefügt',
+ 'New amount' => 'Neue Menge',
+ 'Note' => 'Notiz',
+ 'Tracked time' => 'Ausführungszeit',
+ 'Chore overview' => 'Hausarbeit Übersicht',
+ 'Tracked count' => 'Ausführungsanzahl',
+ 'Battery overview' => 'Batterie Übersicht',
+ 'Charge cycles count' => 'Ladezyklen',
+ 'Create shopping list item' => 'Einkaufszettel Eintrag erstellen',
+ 'Edit shopping list item' => 'Einkaufszettel Eintrag bearbeiten',
+ 'Save' => 'Speichern',
+ 'Add' => 'Hinzufügen',
+ 'Name' => 'Name',
+ 'Location' => 'Standort',
+ 'Min. stock amount' => 'Mindestbestand',
+ 'QU purchase' => 'ME Einkauf',
+ 'QU stock' => 'ME Bestand',
+ 'QU factor' => 'ME-Faktor',
+ 'Description' => 'Beschreibung',
+ 'Create product' => 'Produkt erstellen',
+ 'Barcode(s)' => 'Barcode(s)',
+ 'Minimum stock amount' => 'Mindestbestand',
+ 'Default best before days' => 'Standard Haltbarkeit in Tagen',
+ 'Quantity unit purchase' => 'Mengeneinheit Einkauf',
+ 'Quantity unit stock' => 'Mengeneinheit Bestand',
+ 'Factor purchase to stock quantity unit' => 'Faktor Mengeneinheit Einkauf zu Mengeneinheit Bestand',
+ 'Create location' => 'Standort erstellen',
+ 'Create quantity unit' => 'Mengeneinheit erstellen',
+ 'Period type' => 'Periodentyp',
+ 'Period days' => 'Tage/Periode',
+ 'Create chore' => 'Hausarbeit erstellen',
+ 'Used in' => 'Benutzt in',
+ 'Create battery' => 'Batterie erstellen',
+ 'Edit battery' => 'Batterie bearbeiten',
+ 'Edit chore' => 'Hausarbeit bearbeiten',
+ 'Edit quantity unit' => 'Mengeneinheit bearbeiten',
+ 'Edit product' => 'Produkt bearbeiten',
+ 'Edit location' => 'Standort bearbeiten',
+ 'Record data' => 'Daten erfassen',
+ 'Manage master data' => 'Stammdaten verwalten',
+ 'This will apply to added products' => 'Dies gilt für hinzugefügte Produkte',
+ 'never' => 'nie',
+ 'Add products that are below defined min. stock amount' => 'Produkte unter Mindestbestand hinzufügen',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Bei Einkäufen wird hierauf basierend das MHD vorausgefüllt',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Das bedeutet 1 #1 im Einkauf entsprechen #2 #3 im Bestand',
+ 'Login' => 'Anmelden',
+ 'Username' => 'Benutzername',
+ 'Password' => 'Passwort',
+ 'Invalid credentials, please try again' => 'Ungültige Zugangsdaten, bitte versuche es erneut',
+ 'Are you sure to delete battery "#1"?' => 'Battery "#1" wirklich löschen?',
+ 'Yes' => 'Ja',
+ 'No' => 'Nein',
+ 'Are you sure to delete chore "#1"?' => 'Hausarbeit "#1" wirklich löschen?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" konnte nicht zu einem Produkt aufgelöst werden, wie möchtest du weiter machen?',
+ 'Create or assign product' => 'Produkt erstellen oder verknüpfen',
+ 'Cancel' => 'Abbrechen',
+ 'Add as new product' => 'Als neues Produkt hinzufügen',
+ 'Add as barcode to existing product' => 'Barcode vorhandenem Produkt zuweisen',
+ 'Add as new product and prefill barcode' => 'Neues Produkt erstellen und Barcode vorbelegen',
+ 'Are you sure to delete quantity unit "#1"?' => 'Mengeneinheit "#1" wirklich löschen?',
+ 'Are you sure to delete product "#1"?' => 'Produkt "#1" wirklich löschen?',
+ 'Are you sure to delete location "#1"?' => 'Standort "#1" wirklich löschen?',
+ 'Manage API keys' => 'API-Keys verwalten',
+ 'REST API & data model documentation' => 'REST-API & Datenmodell Dokumentation',
+ 'API keys' => 'API-Keys',
+ 'Create new API key' => 'Neuen API-Key erstellen',
+ 'API key' => 'API-Key',
+ 'Expires' => 'Läuft ab',
+ 'Created' => 'Erstellt',
+ 'This product is not in stock' => 'Dieses Produkt ist nicht vorrätig',
+ 'This means #1 will be added to stock' => 'Das bedeutet #1 wird dem Bestand hinzugefügt',
+ 'This means #1 will be removed from stock' => 'Das bedeutet #1 wird aus dem Bestand entfernt',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Das bedeutet, dass eine erneute Ausführung der Hausarbeit #1 Tage nach der letzten Ausführung geplant wird',
+ 'Removed #1 #2 of #3 from stock' => '#1 #2 #3 aus dem Bestand entfernt',
+ 'About grocy' => 'Über grocy',
+ 'Close' => 'Schließen',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 Batterien müssen in den nächsten #2 Tagen geladen werden',
+ '#1 batteries are overdue to be charged' => '#1 Batterien sind überfällig',
+ '#1 chores are due to be done within the next #2 days' => '#1 Hausarbeiten stehen in den nächsten #2 Tagen an',
+ '#1 chores are overdue to be done' => '#1 Hausarbeiten sind überfällig',
+ 'Released on' => 'Veröffentlicht am',
+ 'Consume #3 #1 of #2' => 'Verbrauche #3 #1 #2',
+ 'Added #1 #2 of #3 to stock' => '#1 #2 #3 dem Bestand hinzugefügt',
+ 'Stock amount of #1 is now #2 #3' => 'Es sind nun #2 #3 #1 im Bestand',
+ 'Tracked execution of chore #1 on #2' => 'Ausführung von #1 am #2 erfasst',
+ 'Tracked charge cycle of battery #1 on #2' => 'Ladezyklus für Batterie #1 am #2 erfasst',
+ 'Consume all #1 which are currently in stock' => 'Verbrauche den kompletten Bestand von #1',
+ 'All' => 'Alle',
+ 'Track charge cycle of battery #1' => 'Erfasse einen Ladezyklus für Batterie #1',
+ 'Track execution of chore #1' => 'Erfasse eine Ausführung von #1',
+ 'Filter by location' => 'Nach Standort filtern',
+ 'Search' => 'Suche',
+ 'Not logged in' => 'Nicht angemeldet',
+ 'You have to select a product' => 'Ein Produkt muss ausgewählt werden',
+ 'You have to select a chore' => 'Eine Hausarbeit muss ausgewählt werden',
+ 'You have to select a battery' => 'Eine Batterie muss ausgewählt werden',
+ 'A name is required' => 'Ein Name ist erforderlich',
+ 'A location is required' => 'Ein Standort ist erforderlich',
+ 'The amount cannot be lower than #1' => 'Die Menge darf nicht kleiner als #1 sein',
+ 'This cannot be negative' => 'Dies darf nicht negativ sein',
+ 'A quantity unit is required' => 'Eine Mengeneinheit muss ausgewählt werden',
+ 'A period type is required' => 'Eine Periodentyp muss ausgewählt werden',
+ 'A best before date is required' => 'Ein Mindesthaltbarkeitsdatum ist erforderlich',
+ 'Settings' => 'Einstellungen',
+ 'This can only be before now' => 'Dies kann nur vor jetzt sein',
+ 'Calendar' => 'Kalender',
+ 'Recipes' => 'Rezepte',
+ 'Edit recipe' => 'Rezept bearbeiten',
+ 'New recipe' => 'Neues Rezept',
+ 'Ingredients list' => 'Zutatenliste',
+ 'Add recipe ingredient' => 'Rezeptzutat hinzufügen',
+ 'Edit recipe ingredient' => 'Rezeptzutat bearbeiten',
+ 'Are you sure to delete recipe "#1"?' => 'Rezept "#1" wirklich löschen?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Rezeptzutat "#1" wirklich löschen?',
+ 'Are you sure to empty shopping list "#1"?' => ' Einkaufszettel "#1" wirklich leeren? ',
+ 'Clear list' => 'Liste leeren',
+ 'Requirements fulfilled' => 'Bedarf im Bestand',
+ 'Put missing products on shopping list' => 'Fehlende Produkte auf den Einkaufszettel setzen',
+ 'Not enough in stock, #1 ingredients missing' => 'Nicht ausreichend im Bestand, #1 Zutaten fehlen',
+ 'Enough in stock' => 'Bestand reicht aus',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Bestand nicht ausreichend, #1 Zutaten fehlen, stehen aber bereits auf dem Einkaufszettel',
+ 'Expand to fullscreen' => 'Auf ganzen Bildschirm vergrößern',
+ 'Ingredients' => 'Zutaten',
+ 'Preparation' => 'Zubereitung',
+ 'Recipe' => 'Rezept',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Nicht ausreichend im Bestand, #1 fehlen, #2 stehen bereits auf dem Einkaufszettel',
+ 'Show notes' => 'Notizen anzeigen',
+ 'Put missing amount on shopping list' => 'Fehlende Menge auf den Einkaufszettel setzen',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Sicher alle fehlenden Zutaten für Rezept "#1" auf die Einkaufsliste zu setzen?',
+ 'Added for recipe #1' => 'Hinzugefügt für Rezept #1',
+ 'Manage users' => 'Benutzer verwalten',
+ 'User' => 'Benutzer',
+ 'Users' => 'Benutzer',
+ 'Are you sure to delete user "#1"?' => 'Benutzer "#1" wirklich löschen?',
+ 'Create user' => 'Benutzer erstellen',
+ 'Edit user' => 'Benutzer bearbeiten',
+ 'First name' => 'Vorname',
+ 'Last name' => 'Nachname',
+ 'A username is required' => 'Ein Benutzername ist erforderlich',
+ 'Confirm password' => 'Passwort bestätigen',
+ 'Passwords do not match' => 'Passwörter stimmen nicht überein',
+ 'Change password' => 'Passwort ändern',
+ 'Done by' => 'Ausgeführt von',
+ 'Last done by' => 'Zuletzt ausgeführt von',
+ 'Unknown' => 'Unbekannt',
+ 'Filter by chore' => 'Nach Hausarbeit filtern',
+ 'Chores journal' => 'Hausarbeitenjournal',
+ '0 means suggestions for the next charge cycle are disabled' => '0 bedeutet dass Vorschläge für den nächsten Ladezyklus deaktiviert sind',
+ 'Charge cycle interval (days)' => 'Ladezyklusintervall (Tage)',
+ 'Last price' => 'Letzter Preis',
+ 'Price history' => 'Preisentwicklung',
+ 'No price history available' => 'Keine Preisdaten verfügbar',
+ 'Price' => 'Preis',
+ 'in #1 per purchase quantity unit' => 'in #1 pro Einkaufsmengeneinheit',
+ 'The price cannot be lower than #1' => 'Der Preis darf nicht niedriger als #1 sein',
+ '#1 product expires within the next #2 days' => '#1 Produkt läuft innerhalb der nächsten #2 Tage ab',
+ '#1 product is already expired' => '#1 Produkt ist bereits abgelaufen',
+ '#1 product is below defined min. stock amount' => '#1 Produkt ist unter Mindestbestand',
+ 'Unit' => 'Einheit',
+ 'Units' => 'Einheiten',
+ '#1 chore is due to be done within the next #2 days' => '#1 Hausarbeit steht in den nächsten #2 Tagen an',
+ '#1 chore is overdue to be done' => '#1 Hausarbeit ist überfällig',
+ '#1 battery is due to be charged within the next #2 days' => '#1 Batterie muss in den nächsten #2 Tagen geladen werden',
+ '#1 battery is overdue to be charged' => '#1 Batterie ist überfällig',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '#1 Einheit wurde automatisch hinzugefügt und gilt zusätzlich der hier eingegebenen Menge',
+ 'in singular form' => 'in der Einzahl',
+ 'in plural form' => 'in der Mehrzahl',
+ 'Never expires' => 'Läuft nie ab',
+ 'This cannot be lower than #1' => 'Dies darf nicht kleiner als #1 sein',
+ '-1 means that this product never expires' => '-1 bedeuet, dass dieses Produkt niemals abläuft',
+ 'Quantity unit' => 'Mengeneinheit',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Nur prüfen, ob eine einzelne Einheit vorrätig ist (eine abweichende Mengeneinheit kann dann oben verwendet werden)',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => 'Sicher, dass alle Zutaten die vom Rezept "#1" benötigt werden aus dem Bestand entfernt werden sollen (Zutaten markiert mit "nur prüfen, ob eine einzelne Einheit vorrätig ist" werden ignoriert)?',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Alle Zutaten, die vom Rezept "#1" benötigt werden, wurdem aus dem Bestand entfernt',
+ 'Consume all ingredients needed by this recipe' => 'Alle Zutaten, die von diesem Rezept benötigt werden, aus dem Bestand enternen',
+ 'Click to show technical details' => 'Klick um technische Details anzuzeigen',
+ 'Error while saving, probably this item already exists' => 'Fehler beim Speichern, möglicherweise existiert das Element bereits',
+ 'Error details' => 'Fehlerdetails',
+ 'Tasks' => 'Aufgaben',
+ 'Show done tasks' => 'Erledigte Aufgaben anzeigen',
+ 'Task' => 'Aufgabe',
+ 'Due' => 'Fällig',
+ 'Assigned to' => 'Zugewiesen an',
+ 'Mark task "#1" as completed' => 'Aufgabe "#1" als erledigt markieren',
+ 'Uncategorized' => 'Nicht kategorisiert',
+ 'Task categories' => 'Aufgabenkategorien',
+ 'Create task' => 'Aufgabe erstellen',
+ 'A due date is required' => 'Ein Fälligkeitsdatum ist erforderlich',
+ 'Category' => 'Kategorie',
+ 'Edit task' => 'Aufgabe bearbeiten',
+ 'Are you sure to delete task "#1"?' => 'Aufgabe "#1" wirklich löschen?',
+ '#1 task is due to be done within the next #2 days' => '#1 Aufgabe steht in den nächsten #2 Tagen an',
+ '#1 tasks are due to be done within the next #2 days' => '#1 Aufgaben stehen in den nächsten #2 Tagen an',
+ '#1 task is overdue to be done' => '#1 Aufgabe ist überfällig',
+ '#1 tasks are overdue to be done' => '#1 Aufgaben sind überfällig',
+ 'Edit task category' => 'Aufgabenkategorie bearbeiten',
+ 'Create task category' => 'Aufgabenkategorie erstellen',
+ 'Product groups' => 'Produktgruppen',
+ 'Ungrouped' => 'Ungruppiert',
+ 'Create product group' => 'Produktgruppe erstellen',
+ 'Edit product group' => 'Produktgruppe bearbeiten',
+ 'Product group' => 'Produktgruppe',
+ 'Are you sure to delete product group "#1"?' => 'Produktgruppe "#1" wirklich löschen?',
+ 'Stay logged in permanently' => 'Dauerhaft angemeldet bleiben',
+ 'When not set, you will get logged out at latest after 30 days' => 'Wenn nicht gesetzt, wirst du spätestens nach 30 Tagen automatisch abgemeldet',
+ 'Filter by status' => 'Nach Status filtern',
+ 'Below min. stock amount' => 'Unter Mindestbestand',
+ 'Expiring soon' => 'Bald ablaufend',
+ 'Already expired' => 'Bereits abgelaufen',
+ 'Due soon' => 'Bald fällig',
+ 'Overdue' => 'Überfällig',
+ 'View settings' => 'Ansichtseinstellungen',
+ 'Auto reload on external changes' => 'Autom. akt. bei externen Änderungen',
+ 'Enable night mode' => 'Nachtmodus aktivieren',
+ 'Auto enable in time range' => 'Autom. akt. in diesem Zeitraum',
+ 'From' => 'Von',
+ 'in format' => 'im Format',
+ 'To' => 'Bis',
+ 'Time range goes over midnight' => 'Zeitraum geht über Mitternacht',
+ 'Product picture' => 'Produktbild',
+ 'No file selected' => 'Keine Datei ausgewählt',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Wenn du keine Datei auswählst, wird das aktuelle Bild nicht verändert',
+ 'Delete' => 'Löschen',
+ 'The current picture will be deleted when you save the product' => 'Das aktuelle Bild wird beim Speichern des Produkts gelöscht',
+ 'Select file' => 'Datei auswählen',
+ 'Image of product #1' => 'Bild des Produkts #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Dieses Produkt kann nicht gelöscht werden, da es auf Lager ist, bitte zuerst den Bestand entfernen.',
+ 'Delete not possible' => 'Löschen nicht möglich',
+ 'Equipment' => 'Ausstattung',
+ 'Instruction manual' => 'Bedienungsanleitung',
+ 'The selected equipment has no instruction manual' => 'Das ausgewählte Gerät hat keine Bedienungsanleitung',
+ 'Notes' => 'Notizen',
+ 'Edit equipment' => 'Geräte bearbeiten',
+ 'Create equipment' => 'Geräte erstellen',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Wenn du keine Datei auswählst, wird die aktuelle Bedienungsanleitung nicht verändert',
+ 'No instruction manual available' => 'Keine Bedienungsanleitung vorhanden',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Die aktuelle Bedienungsanleitung wird beim Speichern des Geräts gelöscht',
+ 'No picture available' => 'Kein Bild vorhanden',
+ 'Filter by product group' => 'Nach Produktgruppe filtern',
+ 'Presets for new products' => 'Vorgaben für neue Produkte',
+ 'Included recipes' => 'Enthaltene Rezepte',
+ 'A recipe is required' => 'Ein Rezept ist erforderlich',
+ 'Add included recipe' => 'Enthaltenes Rezept hinzufügen',
+ 'Edit included recipe' => 'Enthaltenes Rezept bearbeiten',
+ 'Group' => 'Gruppe',
+ 'This will be used as a headline to group ingredients together' => 'Dies wird als Überschrift verwendet, um Zutaten zusammenzufassen',
+ 'Journal' => 'Journal',
+ 'Stock journal' => 'Bestandsjournal',
+ 'Filter by product' => 'Nach Produkt filtern',
+ 'Booking time' => 'Buchungszeit',
+ 'Booking type' => 'Buchungsart',
+ 'Undo booking' => 'Buchung rückgängig machen',
+ 'Undone on' => 'Rückgängig gemacht am',
+ 'Batteries journal' => 'Batteriejournal',
+ 'Filter by battery' => 'Nach Batterie filtern',
+ 'Undo charge cycle' => 'Ladezyklus rückgängig machen',
+ 'Undo chore execution' => 'Ausführung rückgängig machen',
+ 'Chore execution successfully undone' => 'Ausführung erfolgreich rückgängig gemacht',
+ 'Undo' => 'Rückgängig machen',
+ 'Booking successfully undone' => 'Buchung erfolgreich rückgängig gemacht',
+ 'Charge cycle successfully undone' => 'Ladezyklus erfolgreich rückgängig gemacht',
+ 'This cannot be negative and must be an integral number' => 'Diese darf nicht negativ und muss eine ganze Zahl sein',
+ 'Disable stock fulfillment checking for this ingredient' => 'Bestandsprüfung für diese Zutat deaktivieren',
+ 'Add all list items to stock' => 'Alle Einträge zum Bestand hinzufügen',
+ 'Add #3 #1 of #2 to stock' => 'Füge #3 #1 of #2 dem Bestand hinzu',
+ 'Adding shopping list item #1 of #2' => 'Bearbeite Einkausfzettel-Eintrag #1 von #2',
+ 'Use a specific stock item' => 'Einen bestimmten Bestandseintrag verwenden',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'Der erste Eintrag in dieser Liste würde von der Standardregel "Zuerst ablaufende zuerst, dann First In - First Out" ausgewählt werden',
+ 'Mark #3 #1 of #2 as open' => '#3 #1 von #2 als geöffnet markieren',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => 'Wenn ein Produkt als geöffnet markiert wurde, wird das Mindesthaltbarkeitsdatum durch heute + diese Anzahl von Tagen ersetzt (ein Wert von 0 deaktiviert dies)',
+ 'Default best before days after opened' => 'Standard Haltbarkeit in Tagen nach dem Öffnen',
+ 'Marked #1 #2 of #3 as opened' => '#1 #2 von #3 als geöffnet markiert',
+ 'Mark as opened' => 'Als geöffnet markieren',
+ 'Expires on #1; Bought on #2' => 'Läuft ab am #1; Gekauft am #2',
+ 'Not opened' => 'Nicht geöffnet',
+ 'Opened' => 'Geöffnet',
+ 'Mark #3 #1 of #2 as open' => '#3 #1 von #2 als geöffnet markieren',
+ '#1 opened' => '#1 geöffnet',
+ 'Product expires' => 'Produkt läuft ab',
+ 'Task due' => 'Aufgabe fällig',
+ 'Chore due' => 'Hausarbeit fällig',
+ 'Battery charge cycle due' => 'Battery-Ladezyklus fällig',
+ 'Show clock in header' => 'Uhr in der Kopfzeile anzeigen',
+ 'Stock settings' => 'Bestandseinstellungen',
+ 'Shopping list to stock workflow' => 'Einkaufsliste -> Bestand Workflow',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Buchung automatisch ausführen, wenn das Produkt "Standard Haltbarkeit in Tagen" hinterlegt hat (als Preis wird der letzte Preis verwendet)',
+ 'Skip' => 'Überspringen',
+ 'Servings' => 'Portionen',
+ 'Costs' => 'Kosten',
+ 'Based on the prices of the last purchase per product' => 'Basierend auf den Preisen des letzten Kaufs pro Produkt',
+ 'The ingredients listed here result in this amount of servings' => 'Die hier aufgeführten Zutaten ergeben diese Menge an Portionen',
+ 'Do not check against the shopping list when adding missing items to it' => 'Nicht gegen die bereits auf der Einkaufsliste vorhandene Menge prüfen, wenn fehlende Zutaten auf die Einkaufsliste gesetzt werden',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => 'Standardmäßig ist die Menge, die der Einkaufsliste hinzugefügt werden soll, "benötigte Menge - Lagerbestand - Menge bereits auf der Einkaufsliste" - wenn dies aktiviert ist, wird nur gegen den Lagerbestand geprüft, nicht gegen das, was bereits auf der Einkaufsliste steht',
+ 'Picture' => 'Bild',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Entferne den Haken einer Zutat, um diese nicht auf die Einkaufsliste zu übernehmen',
+ 'This is for statistical purposes only' => 'Dies wird nur für Auswertezwecke benötigt',
+ 'You have to select a recipe' => 'Ein Rezept muss ausgewählt werden',
+ 'Key type' => 'Schlusseltyp',
+ 'Share/Integrate calendar (iCal)' => 'Kalender teilen/integrieren (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Verwende die folgende (öffentliche) URL, um den Kalender im iCal-Format zu teilen oder zu integrieren',
+ 'Allow partial units in stock' => 'Teilmengen im Bestand zulassen',
+ 'Enable tare weight handling' => 'Taragewichtbehandlung aktivieren',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Dies ist z.B. für Mehl im Glas nützlich - beim Buchen eines Kaufs/Verbrauchs oder bei der Inventur musst du dann immer das gesamte Glas wiegen, die zu buchende Menge wird dann automatisch basierend auf dem Bestand und dem unten definierten Eigengewicht berechnet',
+ 'Tare weight' => 'Taragewicht',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Taragewichtbehandlung aktiviert - bitte den gesamten Behälter wiegen, die zu buchende Menge wird automatisch berechnet',
+ 'You have to select a location' => 'Ein Standort muss ausgewählt werden',
+ 'List' => 'Liste',
+ 'Gallery' => 'Galerie',
+ 'The current picture will be deleted when you save the recipe' => 'Das aktuelle Bild wird beim Speichern des Rezepts gelöscht ',
+ 'Show product details' => 'Produktdetails anzeigen',
+ 'Stock journal for this product' => 'Bestandsjournal für dieses Produkt',
+ 'Show chore details' => 'Hausarbeitdetails anzeigen',
+ 'Journal for this chore' => 'Journal für dieses Hausarbeit',
+ 'Show battery details' => 'Batteriedetails anzeigen',
+ 'Journal for this battery' => 'Journal für diese Batterie',
+ 'System info' => 'Systeminformationen',
+ 'Changelog' => 'Änderungsprotokoll',
+ 'will be multiplied a factor of #1 to get #2' => 'wird mit dem Faktor #1 multipliziert um #2 zu erhalten',
+ 'The given date is earlier than today, are you sure?' => 'Das angegebene Datum ist früher als heute, bist du sicher?',
+ 'Product count' => 'Produktanzahl',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => 'Gib einen neuen Produktnamen oder Barcode ein und drücke TAB um einen Workflow zu starten',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => 'Dies wird als Standardeinstellung verwendet wenn dieses Produkt als Rezeptzutat hinzugefügt wird',
+ 'Add item' => 'Eintrag hinzufügen',
+ 'Selected shopping list' => 'Ausgewählter Einkaufszettel',
+ 'New shopping list' => 'Neuer Einkaufszettel',
+ 'Delete shopping list' => 'Einkaufszettel löschen',
+ 'Chores settings' => 'Hausarbeiten-Einstellungen',
+ 'Batteries settings' => 'Batterie-Einstellungen',
+ 'Tasks settings' => 'Aufgaben-Einstellungen',
+ 'Create shopping list' => 'Einkaufszettel erstellen',
+ 'Are you sure to delete shopping list "#1"?' => ' Einkaufszettel "#1" wirklich löschen? ',
+ 'Average shelf life' => 'Durchschnittliche Haltbarkeit',
+ 'Spoil rate' => 'Verderblichkeitsrate',
+ 'Show more' => 'Mehr anzeigen',
+ 'Show less' => 'Weniger anzeigen',
+ 'The amount must be between #1 and #2' => 'Die Menge muss zwischen #1 und #2 liegen',
+ 'Day of month' => 'Tag des Monats',
+ 'Monday' => 'Montag',
+ 'Tuesday' => 'Dienstag',
+ 'Wednesday' => 'Mittwoch',
+ 'Thursday' => 'Donnerstag',
+ 'Friday' => 'Freitag',
+ 'Saturday' => 'Samstag',
+ 'Sunday' => 'Sonntag',
+ 'Configure userfields' => 'Benutzerfelder konfigurieren',
+ 'Userfields' => 'Benutzerfelder',
+ 'Filter by entity' => 'Nach Entität filtern',
+ 'Entity' => 'Entität',
+ 'Caption' => 'Titel',
+ 'Type' => 'Typ',
+ 'Create userfield' => 'Benutzerfeld erstellen',
+ 'A entity is required' => 'Eine Entität muss ausgewählt werden',
+ 'A caption is required' => 'Ein Titel ist erforderlich',
+ 'A type is required' => 'Ein Typ muss ausgewählt werden',
+ 'Show as column in tables' => 'Als Spalte in Tabellen anzeigen',
+ 'This is required and can only contain letters and numbers' => 'Dies ist erforderlich und darf nur Buchstaben und Zahlen enthalten',
+ 'Edit userfield' => 'Benutzerfeld bearbeiten'
+);
diff --git a/localization-backup/de/userfield_types.php b/localization-backup/de/userfield_types.php
new file mode 100644
index 00000000..be945ee5
--- /dev/null
+++ b/localization-backup/de/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Text (einzeilig)',
+ 'text-multi-line' => 'Text (mehrzeilig)',
+ 'number-integral' => 'Zahl (Ganzzahl)',
+ 'number-decimal' => 'Zahl (mit Dezimalstellen)',
+ 'date' => 'Datum (ohne Zeitanteil)',
+ 'datetime' => 'Datum & Zeit',
+ 'checkbox' => 'Kontrollkästchen'
+);
diff --git a/localization-backup/en_GB/chore_types.php b/localization-backup/en_GB/chore_types.php
new file mode 100644
index 00000000..a3f8eeab
--- /dev/null
+++ b/localization-backup/en_GB/chore_types.php
@@ -0,0 +1,9 @@
+ '',
+ 'dynamic-regular' => '',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/en_GB/component_translations.php b/localization-backup/en_GB/component_translations.php
new file mode 100644
index 00000000..101a83f0
--- /dev/null
+++ b/localization-backup/en_GB/component_translations.php
@@ -0,0 +1,10 @@
+ '',
+ 'timeago_nan' => '',
+ 'moment_locale' => 'en-gb',
+ 'datatables_localization' => '',
+ 'summernote_locale' => 'en-gb',
+ 'fullcalendar_locale' => 'en-gb'
+);
diff --git a/localization-backup/en_GB/demo_data.php b/localization-backup/en_GB/demo_data.php
new file mode 100644
index 00000000..b494faa6
--- /dev/null
+++ b/localization-backup/en_GB/demo_data.php
@@ -0,0 +1,95 @@
+ '',
+ 'Chocolate' => '',
+ 'Pantry' => '',
+ 'Candy cupboard' => '',
+ 'Tinned food cupboard' => '',
+ 'Fridge' => '',
+ 'Piece' => '',
+ 'Pieces' => '',
+ 'Pack' => '',
+ 'Packs' => '',
+ 'Glass' => '',
+ 'Glasses' => '',
+ 'Tin' => '',
+ 'Tins' => '',
+ 'Can' => '',
+ 'Cans' => '',
+ 'Bunch' => '',
+ 'Bunches' => '',
+ 'Gummy bears' => '',
+ 'Crisps' => '',
+ 'Eggs' => '',
+ 'Noodles' => '',
+ 'Pickles' => '',
+ 'Gulash soup' => '',
+ 'Yogurt' => '',
+ 'Cheese' => '',
+ 'Cold cuts' => '',
+ 'Paprika' => '',
+ 'Cucumber' => '',
+ 'Radish' => '',
+ 'Tomato' => '',
+ 'Changed towels in the bathroom' => '',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => '',
+ 'TV remote control' => '',
+ 'Alarm clock' => '',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => '',
+ 'Sieved tomatoes' => '',
+ 'Salami' => '',
+ 'Toast' => '',
+ 'Minced meat' => '',
+ 'Pizza' => '',
+ 'Spaghetti bolognese' => '',
+ 'Sandwiches' => '',
+ 'English' => '',
+ 'German' => '',
+ 'Italian' => '',
+ 'Demo in different language' => '',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => '',
+ 'Gram' => '',
+ 'Grams' => '',
+ 'Flour' => '',
+ 'Pancakes' => '',
+ 'Sugar' => '',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => '',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => '',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => '',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => '',
+ 'Dishwasher' => '',
+ 'Liter' => '',
+ 'Liters' => '',
+ 'Bottle' => '',
+ 'Bottles' => '',
+ 'Milk' => '',
+ 'Chocolate sauce' => '',
+ 'Milliliters' => '',
+ 'Milliliter' => '',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => '',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/en_GB/stock_transaction_types.php b/localization-backup/en_GB/stock_transaction_types.php
new file mode 100644
index 00000000..218da560
--- /dev/null
+++ b/localization-backup/en_GB/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ '',
+ 'consume' => '',
+ 'inventory-correction' => '',
+ 'product-opened' => ''
+);
diff --git a/localization-backup/en_GB/strings.php b/localization-backup/en_GB/strings.php
new file mode 100644
index 00000000..3228527d
--- /dev/null
+++ b/localization-backup/en_GB/strings.php
@@ -0,0 +1,397 @@
+ '',
+ '#1 products expiring within the next #2 days' => '',
+ '#1 products are already expired' => '',
+ '#1 products are below defined min. stock amount' => '',
+ 'Product' => '',
+ 'Amount' => '',
+ 'Next best before date' => '',
+ 'Logout' => '',
+ 'Chores overview' => '',
+ 'Batteries overview' => '',
+ 'Purchase' => '',
+ 'Consume' => '',
+ 'Inventory' => '',
+ 'Shopping list' => '',
+ 'Chore tracking' => '',
+ 'Battery tracking' => '',
+ 'Products' => '',
+ 'Locations' => '',
+ 'Quantity units' => '',
+ 'Chores' => '',
+ 'Batteries' => '',
+ 'Chore' => '',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => '',
+ 'Battery' => '',
+ 'Last charged' => '',
+ 'Next planned charge cycle' => '',
+ 'Best before' => '',
+ 'OK' => '',
+ 'Product overview' => '',
+ 'Stock quantity unit' => '',
+ 'Stock amount' => '',
+ 'Last purchased' => '',
+ 'Last used' => '',
+ 'Spoiled' => '',
+ 'Barcode lookup is disabled' => '',
+ 'will be added to the list of barcodes for the selected product on submit' => '',
+ 'New amount' => '',
+ 'Note' => '',
+ 'Tracked time' => '',
+ 'Chore overview' => '',
+ 'Tracked count' => '',
+ 'Battery overview' => '',
+ 'Charge cycles count' => '',
+ 'Create shopping list item' => '',
+ 'Edit shopping list item' => '',
+ 'Save' => '',
+ 'Add' => '',
+ 'Name' => '',
+ 'Location' => '',
+ 'Min. stock amount' => '',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => '',
+ 'Create product' => '',
+ 'Barcode(s)' => '',
+ 'Minimum stock amount' => '',
+ 'Default best before days' => '',
+ 'Quantity unit purchase' => '',
+ 'Quantity unit stock' => '',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => '',
+ 'Create quantity unit' => '',
+ 'Period type' => '',
+ 'Period days' => '',
+ 'Create chore' => '',
+ 'Used in' => '',
+ 'Create battery' => '',
+ 'Edit battery' => '',
+ 'Edit chore' => '',
+ 'Edit quantity unit' => '',
+ 'Edit product' => '',
+ 'Edit location' => '',
+ 'Record data' => '',
+ 'Manage master data' => '',
+ 'This will apply to added products' => '',
+ 'never' => '',
+ 'Add products that are below defined min. stock amount' => '',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => '',
+ 'Username' => '',
+ 'Password' => '',
+ 'Invalid credentials, please try again' => '',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => '',
+ 'No' => '',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => '',
+ 'Add as new product' => '',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => '',
+ 'User' => '',
+ 'Users' => '',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/en_GB/userfield_types.php b/localization-backup/en_GB/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/en_GB/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/es/chore_types.php b/localization-backup/es/chore_types.php
new file mode 100644
index 00000000..4c54825b
--- /dev/null
+++ b/localization-backup/es/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manualmente',
+ 'dynamic-regular' => 'Dinámico regular',
+ 'daily' => 'Diario',
+ 'weekly' => 'Semanal',
+ 'monthly' => 'Mensual'
+);
diff --git a/localization-backup/es/component_translations.php b/localization-backup/es/component_translations.php
new file mode 100644
index 00000000..fe4d1d39
--- /dev/null
+++ b/localization-backup/es/component_translations.php
@@ -0,0 +1,10 @@
+ 'es',
+ 'timeago_nan' => 'Hace NaN años',
+ 'moment_locale' => 'es',
+ 'datatables_localization' => '{"sEmptyTable":"Sin datos en la tabla","sInfo":"Mostrando de _START_ a _END_ de _TOTAL_ entradas","sInfoEmpty":"Mostrando de 0 a 0 de 0 entradas","sInfoFiltered":"(filtrando a _MAX_ entradas máximas)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"Mostrar _MENU_ entradas","sLoadingRecords":"Cargando...","sProcessing":"Procesando...","sSearch":"Buscar:","sZeroRecords":"No se han encontrado resultados coincidentes","oPaginate":{"sFirst":"Primero","sLast":"Último","sNext":"Siguiente","sPrevious":"Anterior"},"oAria":{"sSortAscending":": activar para ordenar ascendentemente","sSortDescending":": activar para ordenar descendentemente"}}',
+ 'summernote_locale' => 'es-ES',
+ 'fullcalendar_locale' => 'es'
+);
diff --git a/localization-backup/es/demo_data.php b/localization-backup/es/demo_data.php
new file mode 100644
index 00000000..4ac759ae
--- /dev/null
+++ b/localization-backup/es/demo_data.php
@@ -0,0 +1,95 @@
+ 'Galletas',
+ 'Chocolate' => 'Chocolate',
+ 'Pantry' => 'Despensa',
+ 'Candy cupboard' => 'Estante de los dulces',
+ 'Tinned food cupboard' => 'Estante de las latas',
+ 'Fridge' => 'Nevera',
+ 'Piece' => 'Pieza',
+ 'Pieces' => 'Piezas',
+ 'Pack' => 'Pack',
+ 'Packs' => 'Packs',
+ 'Glass' => 'Vaso',
+ 'Glasses' => 'Vasos',
+ 'Tin' => 'Envase',
+ 'Tins' => 'Envases',
+ 'Can' => 'Lata',
+ 'Cans' => 'Latas',
+ 'Bunch' => 'Puñado',
+ 'Bunches' => 'Puñados',
+ 'Gummy bears' => 'Ositos',
+ 'Crisps' => 'Patatas fritas',
+ 'Eggs' => 'Huevos',
+ 'Noodles' => 'Fideos',
+ 'Pickles' => 'Pepinillos',
+ 'Gulash soup' => 'Sopa',
+ 'Yogurt' => 'Yogurt',
+ 'Cheese' => 'Queso',
+ 'Cold cuts' => 'Fiambres',
+ 'Paprika' => 'Pimentón',
+ 'Cucumber' => 'Pepino',
+ 'Radish' => 'Rábano',
+ 'Tomato' => 'Tomate',
+ 'Changed towels in the bathroom' => 'Cambiar las toallas del baño',
+ 'Cleaned the kitchen floor' => 'Limpiar el suelo de la cocina',
+ 'Warranty ends' => 'Final de la garantía',
+ 'TV remote control' => 'Mando de la TV',
+ 'Alarm clock' => 'Despertador',
+ 'Heat remote control' => 'Mando de la calefacción',
+ 'Lawn mowed in the garden' => 'Cortar el césped del jardín',
+ 'Some good snacks' => 'Cosas de picar',
+ 'Pizza dough' => 'Masa de pizza',
+ 'Sieved tomatoes' => 'Tomate triturado',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Tostada',
+ 'Minced meat' => 'Carne picada',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti boloñesa',
+ 'Sandwiches' => 'Bocadillos',
+ 'English' => 'Inglés',
+ 'German' => 'Alemán',
+ 'Italian' => 'Italiano',
+ 'Demo in different language' => 'Demo en otro idioma',
+ 'This is the note content of the recipe ingredient' => 'Este es el contenido de la nota del ingrediente de la receta',
+ 'Demo User' => 'Usuario de demostración',
+ 'Gram' => 'Gramo',
+ 'Grams' => 'Gramos',
+ 'Flour' => 'Harina',
+ 'Pancakes' => 'Tortitas',
+ 'Sugar' => 'Azucar',
+ 'Home' => 'Casa',
+ 'Life' => 'Vida',
+ 'Projects' => 'Proyectos',
+ 'Repair the garage door' => 'Reparar la puerta del garaje',
+ 'Fork and improve grocy' => 'Forkea y mejora grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Encontrar una solución a qué hacer cuando me olvido las llaves',
+ 'Sweets' => 'Dulces',
+ 'Bakery products' => 'Productos de panadería',
+ 'Tinned food' => 'Comida en lata',
+ 'Butchery products' => 'Productos de carnicería',
+ 'Vegetables/Fruits' => 'Verduras/Frutas',
+ 'Refrigerated products' => 'Productos refrigerados',
+ 'Coffee machine' => 'Máquina de café',
+ 'Dishwasher' => 'Lavavajillas',
+ 'Liter' => 'Litro',
+ 'Liters' => 'Litros',
+ 'Bottle' => 'Botella',
+ 'Bottles' => 'Botellas',
+ 'Milk' => 'Leche',
+ 'Chocolate sauce' => 'Salsa de chocolate',
+ 'Milliliters' => 'Mililitros',
+ 'Milliliter' => 'Mililitro',
+ 'Bottom' => 'Fondo',
+ 'Topping' => 'Parte superior',
+ 'French' => 'Francés',
+ 'Turkish' => 'Turkish',
+ 'Spanish' => 'Spanish',
+ 'Russian' => 'Ruso',
+ 'The thing which happens on the 5th of every month' => 'Lo que ocurre el día 5 de cada mes',
+ 'The thing which happens daily' => 'Lo que ocurre diariamente',
+ 'The thing which happens on Mondays and Wednesdays' => 'Lo que ocurre los lunes y los miércoles',
+ 'Swedish' => 'Sueco',
+ 'Polish' => ''
+);
diff --git a/localization-backup/es/stock_transaction_types.php b/localization-backup/es/stock_transaction_types.php
new file mode 100644
index 00000000..e6d59a7f
--- /dev/null
+++ b/localization-backup/es/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Compra',
+ 'consume' => 'Consumo',
+ 'inventory-correction' => 'Corrección de inventario',
+ 'product-opened' => 'Producto abierto'
+);
diff --git a/localization-backup/es/strings.php b/localization-backup/es/strings.php
new file mode 100644
index 00000000..7fd4e391
--- /dev/null
+++ b/localization-backup/es/strings.php
@@ -0,0 +1,397 @@
+ 'Resumen de stock',
+ '#1 products expiring within the next #2 days' => '#1 productos caducan en los próximos #2 días',
+ '#1 products are already expired' => '#1 productos ya han caducado',
+ '#1 products are below defined min. stock amount' => '#1 productos están por debajo del mínimo de stock definido',
+ 'Product' => 'Producto',
+ 'Amount' => 'Cantidad',
+ 'Next best before date' => 'Siguiente fecha de caducidad',
+ 'Logout' => 'Cerrar sesión',
+ 'Chores overview' => 'Resumen de tareas del hogar',
+ 'Batteries overview' => 'Resumen de pilas',
+ 'Purchase' => 'Compra',
+ 'Consume' => 'Consumo',
+ 'Inventory' => 'Inventario',
+ 'Shopping list' => 'Lista de la compra',
+ 'Chore tracking' => 'Seguimiento de tareas del hogar',
+ 'Battery tracking' => 'Seguimiento de pilas',
+ 'Products' => 'Productos',
+ 'Locations' => 'Lugares',
+ 'Quantity units' => 'Unidades',
+ 'Chores' => 'Tareas del hogar',
+ 'Batteries' => 'Pilas',
+ 'Chore' => 'Tarea del hogar',
+ 'Next estimated tracking' => 'Siguiente seguimiento estimado',
+ 'Last tracked' => 'Último seguimiento',
+ 'Battery' => 'Pila',
+ 'Last charged' => 'Última carga',
+ 'Next planned charge cycle' => 'Siguiente ciclo de carga planificado',
+ 'Best before' => 'Preferentemente antes de',
+ 'OK' => 'OK',
+ 'Product overview' => 'Resumen de producto',
+ 'Stock quantity unit' => 'Unidad de stock',
+ 'Stock amount' => 'Cantidad de stock',
+ 'Last purchased' => 'Última compra',
+ 'Last used' => 'Último uso',
+ 'Spoiled' => 'Desperdiciado',
+ 'Barcode lookup is disabled' => 'El buscador de códigos de barras está deshabilitado',
+ 'will be added to the list of barcodes for the selected product on submit' => 'será añadido a la lista de códigos de barras para el producto seleccionado al enviar',
+ 'New amount' => 'Nueva cantidad',
+ 'Note' => 'Nota',
+ 'Tracked time' => 'Tiempo seguido',
+ 'Chore overview' => 'Resumen de tarea del hogar',
+ 'Tracked count' => 'Cuenta seguida',
+ 'Battery overview' => 'Resumen de pila',
+ 'Charge cycles count' => 'Cuenta de ciclos de carga',
+ 'Create shopping list item' => 'Crear elemento de la lista de la compra',
+ 'Edit shopping list item' => 'Editar elemento de la lista de la compra',
+ 'Save' => 'Grabar',
+ 'Add' => 'Añadir',
+ 'Name' => 'Nombre',
+ 'Location' => 'Lugar',
+ 'Min. stock amount' => 'Min. cantidad de stock',
+ 'QU purchase' => 'Cantidad de compra',
+ 'QU stock' => 'Cantidad de stock',
+ 'QU factor' => 'Factor de cantidad',
+ 'Description' => 'Descripción',
+ 'Create product' => 'Crear producto',
+ 'Barcode(s)' => 'Código(s) de barras',
+ 'Minimum stock amount' => 'Mínima cantidad de stock',
+ 'Default best before days' => 'Días de caducidad por defecto',
+ 'Quantity unit purchase' => 'Unidad de compra',
+ 'Quantity unit stock' => 'Unidad de stock',
+ 'Factor purchase to stock quantity unit' => 'Factor de unidad entre compra y stock',
+ 'Create location' => 'Crear lugar',
+ 'Create quantity unit' => 'Crear unidad',
+ 'Period type' => 'Tipo de periodo',
+ 'Period days' => 'Días del periodo',
+ 'Create chore' => 'Crear tarea del hogar',
+ 'Used in' => 'Usado en',
+ 'Create battery' => 'Crear pila',
+ 'Edit battery' => 'Editar pila',
+ 'Edit chore' => 'Editar tarea del hogar',
+ 'Edit quantity unit' => 'Editar unidad',
+ 'Edit product' => 'Editar producto',
+ 'Edit location' => 'Editar lugar',
+ 'Record data' => 'Grabar datos',
+ 'Manage master data' => 'Administrar datos maestros',
+ 'This will apply to added products' => 'Esto se aplicará a los productos añadidos',
+ 'never' => 'nunca',
+ 'Add products that are below defined min. stock amount' => 'Añadir productos que están por debajo del mínimo de stock definido',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Para nuevas compras, esta cantidad de días se añadirán desde hoy como sugerencia de fecha de caducidad',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Quiere decir que 1 #1 comprada se convertirá en #2 #3 en el stock',
+ 'Login' => 'Iniciar sesión',
+ 'Username' => 'Nombre usuario',
+ 'Password' => 'Contraseña',
+ 'Invalid credentials, please try again' => 'Credenciales inválidas, prueba de nuevo',
+ 'Are you sure to delete battery "#1"?' => '¿Estás seguro de querer borrar la pila "#1"?',
+ 'Yes' => 'Sí',
+ 'No' => 'No',
+ 'Are you sure to delete chore "#1"?' => '¿Estás seguro de querer borrar la tarea del hogar "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" no puede resolverse a un producto, ¿cómo quieres proceder?',
+ 'Create or assign product' => 'Crear o asignar un producto',
+ 'Cancel' => 'Cancelar',
+ 'Add as new product' => 'Añadir como un nuevo producto',
+ 'Add as barcode to existing product' => 'Añadir como código de barras de un producto existente',
+ 'Add as new product and prefill barcode' => 'Añadir un nuevo producto y rellenar código de barras',
+ 'Are you sure to delete quantity unit "#1"?' => '¿Estás seguro de querer borrar la unidad "#1"?',
+ 'Are you sure to delete product "#1"?' => '¿Estás seguro de querer borrar el producto "#1"?',
+ 'Are you sure to delete location "#1"?' => '¿Estás seguro de querer borrar el lugar "#1"?',
+ 'Manage API keys' => 'Administrar las claves de API',
+ 'REST API & data model documentation' => 'Documentación de la API REST y modelo de datos',
+ 'API keys' => 'Claves de API',
+ 'Create new API key' => 'Crear nueva clave de API',
+ 'API key' => 'Clave de API',
+ 'Expires' => 'Caduca',
+ 'Created' => 'Creado',
+ 'This product is not in stock' => 'Este producto no está en stock',
+ 'This means #1 will be added to stock' => 'Quiere decir que #1 será añadido al stock',
+ 'This means #1 will be removed from stock' => 'Quiere decir que #1 será eliminado del stock',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Quiere decir que una nueva ocurrencia de esta tarea del hogar se seguirá #1 días después de la última vez',
+ 'Removed #1 #2 of #3 from stock' => 'Eliminado #1 #2 de #3 del stock',
+ 'About grocy' => 'Sobre grocy',
+ 'Close' => 'Cerrar',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 pilas están pendientes de carga en los siguientes #2 días',
+ '#1 batteries are overdue to be charged' => '#1 pilas han pasado su fecha de carga prevista',
+ '#1 chores are due to be done within the next #2 days' => '#1 tareas del hogar están pendientes de suceder en los siguientes #2 días',
+ '#1 chores are overdue to be done' => '#1 tareas del hogar están vencidas',
+ 'Released on' => 'Publicado el',
+ 'Consume #3 #1 of #2' => 'Consumir #3 #1 de #2',
+ 'Added #1 #2 of #3 to stock' => 'Añadido #1 #2 de #3 al stock',
+ 'Stock amount of #1 is now #2 #3' => 'La cantidad de stock de #1 es ahora #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Registrada ejecución de tarea del hogar #1 en #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'Registrado ciclo de carga de la pila #1 en #2',
+ 'Consume all #1 which are currently in stock' => 'Consumir todo #1 que está en stock',
+ 'All' => 'Todo',
+ 'Track charge cycle of battery #1' => 'Registrar ciclo de carga de la pila #1',
+ 'Track execution of chore #1' => 'Registrar ejecución de tarea del hogar #1',
+ 'Filter by location' => 'Filtrar por lugar',
+ 'Search' => 'Buscar',
+ 'Not logged in' => 'Sesión no iniciada',
+ 'You have to select a product' => 'Has de seleccionar un producto',
+ 'You have to select a chore' => 'Has de seleccionar una tarea del hogar',
+ 'You have to select a battery' => 'Has de seleccionar una pila',
+ 'A name is required' => 'Es necesario un nombre',
+ 'A location is required' => 'Es necesario un lugar',
+ 'The amount cannot be lower than #1' => 'La cantidad no puede ser menor a #1',
+ 'This cannot be negative' => 'Esto no puede ser negativo',
+ 'A quantity unit is required' => 'Es necesaria una unidad',
+ 'A period type is required' => 'Es necesario un tipo de periodo',
+ 'A best before date is required' => 'Es necesaria una fecha de caducidad',
+ 'Settings' => 'Configuración',
+ 'This can only be before now' => 'Sólo puede ser antes que ahora',
+ 'Calendar' => 'Calendario',
+ 'Recipes' => 'Recetas',
+ 'Edit recipe' => 'Editar receta',
+ 'New recipe' => 'Nueva receta',
+ 'Ingredients list' => 'Lista de ingredientes',
+ 'Add recipe ingredient' => 'Añadir ingrediente',
+ 'Edit recipe ingredient' => 'Editar ingrediente',
+ 'Are you sure to delete recipe "#1"?' => '¿Estás seguro de querer borrar la receta "#1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => '¿Estás seguro de querer borrar el ingrediente "#1" de la receta?',
+ 'Are you sure to empty shopping list "#1"?' => '¿Estás seguro de querer vaciar la lista de la compra "#1"?',
+ 'Clear list' => 'Borrar lista',
+ 'Requirements fulfilled' => 'Requerimientos completos',
+ 'Put missing products on shopping list' => 'Añadir productos faltantes a la lista de la compra',
+ 'Not enough in stock, #1 ingredients missing' => 'No hay suficiente stock, faltan #1 ingredientes',
+ 'Enough in stock' => 'Suficiente stock',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'No hay suficiente stock, faltan #1 ingredientes, pero están en la lista de la compra',
+ 'Expand to fullscreen' => 'Pantalla completa',
+ 'Ingredients' => 'Ingredientes',
+ 'Preparation' => 'Preparación',
+ 'Recipe' => 'Receta',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'No hay suficiente stock, faltan #1, pero #2 están en la lista de la compra',
+ 'Show notes' => 'Mostrar notas',
+ 'Put missing amount on shopping list' => 'Añadir cantidades faltantes en la lista de la compra',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '¿Estás seguro de poner todos los ingredientes faltantes para la recepta "#1" en la lista de la compra?',
+ 'Added for recipe #1' => 'Añadido para la receta #1',
+ 'Manage users' => 'Administrar usuarios',
+ 'User' => 'Usuario',
+ 'Users' => 'Usuarios',
+ 'Are you sure to delete user "#1"?' => '¿Estás seguro de borrar el usuario "#1"?',
+ 'Create user' => 'Crear usuario',
+ 'Edit user' => 'Editar usuario',
+ 'First name' => 'Nombre',
+ 'Last name' => 'Apellidos',
+ 'A username is required' => 'Es necesario un nombre de usuario',
+ 'Confirm password' => 'Confirma la contraseña',
+ 'Passwords do not match' => 'Las contraseñas no coinciden',
+ 'Change password' => 'Cambiar contraseña',
+ 'Done by' => 'Hecho el',
+ 'Last done by' => 'Último hecho el',
+ 'Unknown' => 'Desconocido',
+ 'Filter by chore' => 'Filtrar por tarea del hogar',
+ 'Chores journal' => 'Diario de tareas del hogar',
+ '0 means suggestions for the next charge cycle are disabled' => '0 significa que las sugerencias para el siguiente ciclo de carga estarán deshabilitadas',
+ 'Charge cycle interval (days)' => 'Intervalo de ciclo de carga (días)',
+ 'Last price' => 'Último precio',
+ 'Price history' => 'Histórico de precios',
+ 'No price history available' => 'No hay histórico de precios disponible',
+ 'Price' => 'Precio',
+ 'in #1 per purchase quantity unit' => 'en #1 por unidad de compra',
+ 'The price cannot be lower than #1' => 'El precio no puede ser menor que #1',
+ '#1 product expires within the next #2 days' => '#1 producto caduca en los próximos #2 días',
+ '#1 product is already expired' => '#1 producto está ya caducado',
+ '#1 product is below defined min. stock amount' => '#1 producto está por debajo de la min. cantidad de stock',
+ 'Unit' => 'Unidad',
+ 'Units' => 'Unidades',
+ '#1 chore is due to be done within the next #2 days' => '#1 tarea del hogar vence en los próximos #2 días',
+ '#1 chore is overdue to be done' => '#1 tarea del hogar está vencida',
+ '#1 battery is due to be charged within the next #2 days' => '#1 pila debe ser cargada en los próximos #2 días',
+ '#1 battery is overdue to be charged' => '#1 pila ha vencido para ser cargada',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '#1 unidad se ha añadido automáticamente y se aplicará además de la cantidad indicada aquí',
+ 'in singular form' => 'en singular',
+ 'in plural form' => 'en plural',
+ 'Never expires' => 'Nunca caduca',
+ 'This cannot be lower than #1' => 'No puede ser menor que #1',
+ '-1 means that this product never expires' => '-1 significa que este producto nunca caduca',
+ 'Quantity unit' => 'Unidad',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Solo comprobar si una unidad está en stock (una cantidad diferente puede usarse arriba)',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '¿Estás seguro de consumir todos los ingredientes necesarios de la receta "#1" (los ingredientes marcados como "solo comprobar si una unidad está en stock" se ignorarán)?',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Eliminar todos los ingredientes de la recepta "#1" del stock',
+ 'Consume all ingredients needed by this recipe' => 'Consumir todos los ingredientes necesarios para esta receta',
+ 'Click to show technical details' => 'Haz click para mostrar detalles técnicos',
+ 'Error while saving, probably this item already exists' => 'Error al gabar, probablemente este elemento ya existe',
+ 'Error details' => 'Detalles del error',
+ 'Tasks' => 'Tareas',
+ 'Show done tasks' => 'Mostrar tareas completadas',
+ 'Task' => 'Tarea',
+ 'Due' => 'Vence',
+ 'Assigned to' => 'Asignado a',
+ 'Mark task "#1" as completed' => 'Marcar la tarea "#1" como completada',
+ 'Uncategorized' => 'Sin categorizar',
+ 'Task categories' => 'Categoría de tareas',
+ 'Create task' => 'Crear tarea',
+ 'A due date is required' => 'Es necesaria una fecha de vencimiento',
+ 'Category' => 'Categoría',
+ 'Edit task' => 'Editar tarea',
+ 'Are you sure to delete task "#1"?' => '¿Estás seguro de borrar la tarea "#1"?',
+ '#1 task is due to be done within the next #2 days' => '#1 tarea vence en los próximos #2 días',
+ '#1 tasks are due to be done within the next #2 days' => '#1 tareas vencen en los próximos #2 días',
+ '#1 task is overdue to be done' => '#1 tarea está vencida',
+ '#1 tasks are overdue to be done' => '#1 tareas están vencidas',
+ 'Edit task category' => 'Editar categoría de tarea',
+ 'Create task category' => 'Crear categoría de tarea',
+ 'Product groups' => 'Grupos de producto',
+ 'Ungrouped' => 'Sin agrupar',
+ 'Create product group' => 'Crear grupo de productos',
+ 'Edit product group' => 'Editar grupos de producto',
+ 'Product group' => 'Grupo de producto',
+ 'Are you sure to delete product group "#1"?' => '¿Estás seguro de querer borrar el grupo de productos "#1"?',
+ 'Stay logged in permanently' => 'Permanecer con la sesión iniciada',
+ 'When not set, you will get logged out at latest after 30 days' => 'Si no está marcado, se cerrará la sesión como máximo en 30 días',
+ 'Filter by status' => 'Filtrar por estado',
+ 'Below min. stock amount' => 'Por debajo de la min. cantidad de stock',
+ 'Expiring soon' => 'Caduca pronto',
+ 'Already expired' => 'Ya caducado',
+ 'Due soon' => 'Vence pronto',
+ 'Overdue' => 'Vencido',
+ 'View settings' => 'Ver configuración',
+ 'Auto reload on external changes' => 'Autorecarga en cambios externos',
+ 'Enable night mode' => 'Habilitar modo noche',
+ 'Auto enable in time range' => 'Autohabilitar en una franja de tiempo',
+ 'From' => 'Desde',
+ 'in format' => 'en formato',
+ 'To' => 'A',
+ 'Time range goes over midnight' => 'La franja del tiempo atraviesa la media noche',
+ 'Product picture' => 'Foto del producto',
+ 'No file selected' => 'No hay fichero seleccionado',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Si no seleccionas un fichero, la imagen actual no cambiará',
+ 'Delete' => 'Borrar',
+ 'The current picture will be deleted when you save the product' => 'Se borrará la imagen actual si grabas el producto',
+ 'Select file' => 'Seleccionar fichero',
+ 'Image of product #1' => 'Imagen del producto #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Este producto no se puede borrar porque está en stock, por favor, elimina el stock antes.',
+ 'Delete not possible' => 'No es posible eliminar',
+ 'Equipment' => 'Equipamiento',
+ 'Instruction manual' => 'Manual de instrucciones',
+ 'The selected equipment has no instruction manual' => 'El equipamiento seleccionado no tiene manual de instrucciones',
+ 'Notes' => 'Notas',
+ 'Edit equipment' => 'Editar equipamiento',
+ 'Create equipment' => 'Crear equipamiento',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Si no seleccionas un fichero, el manual de instrucciones actual no cambiará',
+ 'No instruction manual available' => 'No hay manual de instrucciones disponible',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Se borrará el manual de instrucciones si grabas el equipamiento',
+ 'No picture available' => 'No hay imagen disponible',
+ 'Filter by product group' => 'Filtrar por grupo de producto',
+ 'Presets for new products' => 'Configuraciones para nuevos productos',
+ 'Included recipes' => 'Recetas incluidas',
+ 'A recipe is required' => 'Es necesaria una receta',
+ 'Add included recipe' => 'Añadir receta incluida',
+ 'Edit included recipe' => 'Editar receta incluida',
+ 'Group' => 'Grupo',
+ 'This will be used as a headline to group ingredients together' => 'Esto se usará como titular del grupo de ingredientes',
+ 'Journal' => 'Diario',
+ 'Stock journal' => 'Diario de stock',
+ 'Filter by product' => 'Filtrar por producto',
+ 'Booking time' => 'Momento de reserva',
+ 'Booking type' => 'Tipo de reserva',
+ 'Undo booking' => 'Deshacer reserva',
+ 'Undone on' => 'Deshecho el',
+ 'Batteries journal' => 'Diario de pilas',
+ 'Filter by battery' => 'Filtrar por pila',
+ 'Undo charge cycle' => 'Deshacer el ciclo de carga',
+ 'Undo chore execution' => 'Deshacer ejecución de tarea del hogar',
+ 'Chore execution successfully undone' => 'Ejecución de tarea del hogar deshecha',
+ 'Undo' => 'Deshacer',
+ 'Booking successfully undone' => 'Reserva deshecha',
+ 'Charge cycle successfully undone' => 'Ciclo de carga deshecho',
+ 'This cannot be negative and must be an integral number' => 'No puede ser negativo y ha de ser un número entero',
+ 'Disable stock fulfillment checking for this ingredient' => 'Deshabilitar comprobación de stock para este ingrediente',
+ 'Add all list items to stock' => 'Añadir todos los elementos de la lista al stock',
+ 'Add #3 #1 of #2 to stock' => 'Añadir #3 #1 de #2 al stock',
+ 'Adding shopping list item #1 of #2' => 'Añadiendo elemento de la lista de la compra #1 a #2',
+ 'Use a specific stock item' => 'Usar un elemento específico del stock',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'El primer elemento de esta lista sería elegido por la regla "primero lo primero a caducar, luego primero en llegar, primero en salir"',
+ 'Mark #3 #1 of #2 as open' => 'Marcar #3 #1 de #2 como abierto',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => 'Cuando un producto es marcado como abierto, la fecha de caducidad se cambiará por hoy más esta cantidad de días (un valor de 0 deshabilita esto)',
+ 'Default best before days after opened' => 'Días de consumo después de abierto por defecto',
+ 'Marked #1 #2 of #3 as opened' => 'Marcado #1 #2 de #3 como abierto',
+ 'Mark as opened' => 'Marcar como abierto',
+ 'Expires on #1; Bought on #2' => 'Caduca el #1; comprado el #2',
+ 'Not opened' => 'Sin abrir',
+ 'Opened' => 'Abierto',
+ 'Mark #3 #1 of #2 as open' => 'Marcar #3 #1 de #2 como abierto',
+ '#1 opened' => '#1 abierto',
+ 'Product expires' => 'El producto caduca',
+ 'Task due' => 'Vencimiento de tarea',
+ 'Chore due' => 'Vencimiento de tarea del hogar',
+ 'Battery charge cycle due' => 'Vencimiento de ciclo de carga',
+ 'Show clock in header' => 'Mostrar reloj en la cabecera',
+ 'Stock settings' => 'Configuración de stock',
+ 'Shopping list to stock workflow' => 'Flujo de lista de la compra a stock',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Hacer automáticamente la reserva utilizando el último precio y cantidad del elemento de la lista de la compra, si el producto tiene valor en "días de consumo por defecto"',
+ 'Skip' => 'Pasar',
+ 'Servings' => 'Servicios',
+ 'Costs' => 'Costes',
+ 'Based on the prices of the last purchase per product' => 'Basado en los precios de la última compra por producto',
+ 'The ingredients listed here result in this amount of servings' => 'Los ingredientes aparecen en base a la cantidad de servicios',
+ 'Do not check against the shopping list when adding missing items to it' => 'No compruebes contra la lista de la compra cuando añadas ítems faltantes',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => 'Por defecto, la cantidad a añadir en la lista de la compra es "cantidad necesaria - cantidad en stock - cantidad en la lista de la compra". Cuando está activado, sólo se comprueba la cantidad en stock, no lo que ya está en la lista de la compra',
+ 'Picture' => 'Imagen',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Desmarca ingredientes para no añadirlos a la lista de la compra',
+ 'This is for statistical purposes only' => 'Sólo para fines estadísticos',
+ 'You have to select a recipe' => 'Has de seleccionar una receta',
+ 'Key type' => 'Tipo de clave',
+ 'Share/Integrate calendar (iCal)' => 'Compartir/integrar calendario (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Usa la siguiente URL (pública) para compartir o integrar el calendario en formato iCal',
+ 'Allow partial units in stock' => 'Permitir unidades parciales en stock',
+ 'Enable tare weight handling' => 'Permitir el manejo de peso',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Esto es útil, por ejemplo, para harina en tarros, donde para comprar/consumir/inventariar pesas el tarro. La cantidad final en stock se calcula automáticamente en base al propio stock y el peso definido aquí',
+ 'Tare weight' => 'Peso',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Manejo de peso habilitado. Por favor, pesa el contenedor entero, la cantidad será calculada automáticamente',
+ 'You have to select a location' => 'Has de seleccionar un lugar',
+ 'List' => 'Lista',
+ 'Gallery' => 'Galería',
+ 'The current picture will be deleted when you save the recipe' => 'La imagen actual se borrará cuando grabes la receta',
+ 'Show product details' => 'Mostrar detalles del producto',
+ 'Stock journal for this product' => 'Diario de stock para este producto',
+ 'Show chore details' => 'Mostrar detalles de la tarea del hogar',
+ 'Journal for this chore' => 'Diario para esta tarea del hogar',
+ 'Show battery details' => 'Mostrar detalles de la pila',
+ 'Journal for this battery' => 'Diario para esta pila',
+ 'System info' => 'Información del sistema',
+ 'Changelog' => 'Registro de cambios',
+ 'will be multiplied a factor of #1 to get #2' => 'será multiplicado por un factor de #1 para #2',
+ 'The given date is earlier than today, are you sure?' => 'La fecha introducida es anterior a hoy, ¿estás seguro?',
+ 'Product count' => 'Cuenta de producto',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => 'Escribe un nuevo producto o código de barras y pulsa TAB para iniciar un flujo de trabajo',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => 'Esto se usará como configuración por defecto cuando añadas este producto como ingrediente de una receta',
+ 'Add item' => 'Añadir ítem',
+ 'Selected shopping list' => 'Lista de la compra seleccionada',
+ 'New shopping list' => 'Nueva lista de la compra',
+ 'Delete shopping list' => 'Borrar lista de la compra',
+ 'Chores settings' => 'Configuración de tareas del hogar',
+ 'Batteries settings' => 'Configuración de pilas',
+ 'Tasks settings' => 'Configuración de tareas',
+ 'Create shopping list' => 'Crear lista de la compra',
+ 'Are you sure to delete shopping list "#1"?' => '¿Estás seguro de querer borrar la lista de la compra "#1"?',
+ 'Average shelf life' => 'Vida media ',
+ 'Spoil rate' => 'Ratio de desperdicio',
+ 'Show more' => 'Mostrar más',
+ 'Show less' => 'Mostrar menos',
+ 'The amount must be between #1 and #2' => 'La cantidad debe de estar entre #1 y #2',
+ 'Day of month' => 'Día del mes',
+ 'Monday' => 'Lunes',
+ 'Tuesday' => 'Martes',
+ 'Wednesday' => 'Miércoles',
+ 'Thursday' => 'Jueves',
+ 'Friday' => 'Viernes',
+ 'Saturday' => 'Sábado',
+ 'Sunday' => 'Domingo',
+ 'Configure userfields' => 'Configurar campos de usuario',
+ 'Userfields' => 'Campos de usuario',
+ 'Filter by entity' => 'Filtrar por entidad',
+ 'Entity' => 'Entidad',
+ 'Caption' => 'Leyenda',
+ 'Type' => 'Tipo',
+ 'Create userfield' => 'Crear campo de usuario',
+ 'A entity is required' => 'Es necesaria una entidad',
+ 'A caption is required' => 'Es necesaria una leyenda',
+ 'A type is required' => 'Es necesario un tipo',
+ 'Show as column in tables' => 'Mostrar como columnas en una tabla',
+ 'This is required and can only contain letters and numbers' => 'Es necesario y sólo puede contener letras y números',
+ 'Edit userfield' => 'Editar campo de usuario'
+);
diff --git a/localization-backup/es/userfield_types.php b/localization-backup/es/userfield_types.php
new file mode 100644
index 00000000..bd137a8f
--- /dev/null
+++ b/localization-backup/es/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Texto (una línea)',
+ 'text-multi-line' => 'Texto (múltiples líneas)',
+ 'number-integral' => 'Número (entero)',
+ 'number-decimal' => 'Número (decimal)',
+ 'date' => 'Fecha (sin hora)',
+ 'datetime' => 'Fecha y hora',
+ 'checkbox' => 'Casilla de verificación'
+);
diff --git a/localization-backup/fr/chore_types.php b/localization-backup/fr/chore_types.php
new file mode 100644
index 00000000..e86a8af1
--- /dev/null
+++ b/localization-backup/fr/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuelle',
+ 'dynamic-regular' => 'Régulière-dynamique',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/fr/component_translations.php b/localization-backup/fr/component_translations.php
new file mode 100644
index 00000000..caaf544a
--- /dev/null
+++ b/localization-backup/fr/component_translations.php
@@ -0,0 +1,10 @@
+ 'fr',
+ 'timeago_nan' => 'Il y a NaN années',
+ 'moment_locale' => 'fr',
+ 'datatables_localization' => '{"sProcessing":"Traitement en cours...","sSearch":"Rechercher :","sLengthMenu":"Afficher _MENU_ éléments","sInfo":"Affichage de l\'élément _START_ à _END_ sur _TOTAL_ éléments","sInfoEmpty":"Affichage de l\'élément 0 à 0 sur 0 élément","sInfoFiltered":"(filtré de _MAX_ éléments au total)","sInfoPostFix":"","sLoadingRecords":"Chargement en cours...","sZeroRecords":"Aucun élément à afficher","sEmptyTable":"Aucune donnée disponible dans le tableau","oPaginate":{"sFirst":"Premier","sPrevious":"Précédent","sNext":"Suivant","sLast":"Dernier"},"oAria":{"sSortAscending":": activer pour trier la colonne par ordre croissant","sSortDescending":": activer pour trier la colonne par ordre décroissant"}}',
+ 'summernote_locale' => 'fr-FR',
+ 'fullcalendar_locale' => 'fr'
+);
diff --git a/localization-backup/fr/demo_data.php b/localization-backup/fr/demo_data.php
new file mode 100644
index 00000000..d66cdf2c
--- /dev/null
+++ b/localization-backup/fr/demo_data.php
@@ -0,0 +1,95 @@
+ 'Cookies',
+ 'Chocolate' => 'Chocolat',
+ 'Pantry' => 'Garde-manger',
+ 'Candy cupboard' => 'Boîte de bonbons',
+ 'Tinned food cupboard' => 'Conserve de nourriture',
+ 'Fridge' => 'Réfrigérateur',
+ 'Piece' => 'Pièce',
+ 'Pieces' => 'Pièces',
+ 'Pack' => 'Pack',
+ 'Packs' => 'Packs',
+ 'Glass' => 'Verre',
+ 'Glasses' => 'Verres',
+ 'Tin' => 'Pot',
+ 'Tins' => 'Pots',
+ 'Can' => 'Canette',
+ 'Cans' => 'Canettes',
+ 'Bunch' => 'Brunch',
+ 'Bunches' => 'Brunchs',
+ 'Gummy bears' => 'Oursons en gélatine',
+ 'Crisps' => 'Chips',
+ 'Eggs' => 'Oeufs',
+ 'Noodles' => 'Nouilles',
+ 'Pickles' => 'Cornichons',
+ 'Gulash soup' => 'Soupe de goulache',
+ 'Yogurt' => 'Yaourt',
+ 'Cheese' => 'Fromage',
+ 'Cold cuts' => 'Charcuterie',
+ 'Paprika' => 'Paprika',
+ 'Cucumber' => 'Concombre',
+ 'Radish' => 'Radis',
+ 'Tomato' => 'Tomate',
+ 'Changed towels in the bathroom' => 'Changement des serviettes dans la salle de bain',
+ 'Cleaned the kitchen floor' => 'Nettoyage du sol de la cuisine',
+ 'Warranty ends' => 'Fin de garantie',
+ 'TV remote control' => 'Télécommande de la TV',
+ 'Alarm clock' => 'Réveil',
+ 'Heat remote control' => 'Télécommande du chauffage',
+ 'Lawn mowed in the garden' => 'Jardin tondu',
+ 'Some good snacks' => 'Quelques bons snacks',
+ 'Pizza dough' => 'Pâte à pizza',
+ 'Sieved tomatoes' => 'Sauce tomate',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Pain grillé',
+ 'Minced meat' => 'Viande hachée',
+ 'Pizza' => 'PIzza',
+ 'Spaghetti bolognese' => 'Spaghetti bolognaise',
+ 'Sandwiches' => 'Sandwiches',
+ 'English' => 'Anglais',
+ 'German' => 'Allemand',
+ 'Italian' => 'Italien',
+ 'Demo in different language' => 'Démo dans une langue différente',
+ 'This is the note content of the recipe ingredient' => 'Ceci est le contenu de la note concernant l\'ingrédient de la recette',
+ 'Demo User' => 'Utilisateur de démonstration',
+ 'Gram' => 'Gramme',
+ 'Grams' => 'Grammes',
+ 'Flour' => 'Farine',
+ 'Pancakes' => 'Crêpes',
+ 'Sugar' => 'Sucre',
+ 'Home' => 'Domicile',
+ 'Life' => 'Vie',
+ 'Projects' => 'Projets',
+ 'Repair the garage door' => 'Réparer la porte du garage',
+ 'Fork and improve grocy' => 'Forker et améliorer grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Trouver une solution pour savoir quoi faire quand j\'oublie les clefs de la porte',
+ 'Sweets' => 'Bonbons',
+ 'Bakery products' => 'Produits de la boulangerie',
+ 'Tinned food' => 'Conserve',
+ 'Butchery products' => 'Produits de la boucherie',
+ 'Vegetables/Fruits' => 'Légumes/Fruits',
+ 'Refrigerated products' => 'Produits réfrigérés',
+ 'Coffee machine' => 'Machie à café',
+ 'Dishwasher' => 'Lave-vaisselle',
+ 'Liter' => 'Litière',
+ 'Liters' => 'Litières',
+ 'Bottle' => 'Bouteille',
+ 'Bottles' => 'Bouteilles',
+ 'Milk' => 'Lait',
+ 'Chocolate sauce' => 'Coulis de chocolat',
+ 'Milliliters' => 'Millilitres',
+ 'Milliliter' => 'Millilitre',
+ 'Bottom' => 'Dessous',
+ 'Topping' => 'Garniture',
+ 'French' => 'Français',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/fr/stock_transaction_types.php b/localization-backup/fr/stock_transaction_types.php
new file mode 100644
index 00000000..e13aa79d
--- /dev/null
+++ b/localization-backup/fr/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Achat',
+ 'consume' => 'Consommation',
+ 'inventory-correction' => 'Correction d\'inventaire',
+ 'product-opened' => 'Produit ouvert'
+);
diff --git a/localization-backup/fr/strings.php b/localization-backup/fr/strings.php
new file mode 100644
index 00000000..07442de7
--- /dev/null
+++ b/localization-backup/fr/strings.php
@@ -0,0 +1,397 @@
+ 'Aperçu du stock',
+ '#1 products expiring within the next #2 days' => '#1 produits se périment dans les #2 jours',
+ '#1 products are already expired' => '#1 produits sont périmés',
+ '#1 products are below defined min. stock amount' => '#1 produits sont sous le seuil de stock minimum',
+ 'Product' => 'Produit',
+ 'Amount' => 'Quantité',
+ 'Next best before date' => 'Prochaine date de péremption',
+ 'Logout' => 'Se déconnecter',
+ 'Chores overview' => 'Aperçu des corvées',
+ 'Batteries overview' => 'Batteries',
+ 'Purchase' => 'Achat',
+ 'Consume' => 'Consommation',
+ 'Inventory' => 'Inventaire',
+ 'Shopping list' => 'Liste de courses',
+ 'Chore tracking' => 'Suivi des corvées',
+ 'Battery tracking' => 'Suivi des batteries',
+ 'Products' => 'Produits',
+ 'Locations' => 'Emplacements',
+ 'Quantity units' => 'Formats',
+ 'Chores' => 'Corvées',
+ 'Batteries' => 'Batteries',
+ 'Chore' => 'Corvée',
+ 'Next estimated tracking' => 'Prochaine occurrence estimée',
+ 'Last tracked' => 'Dernière réalisation',
+ 'Battery' => 'Batterie',
+ 'Last charged' => 'Dernier chargement',
+ 'Next planned charge cycle' => 'Prochaine charge planifiée',
+ 'Best before' => 'Date d\'expiration',
+ 'OK' => 'Ok',
+ 'Product overview' => 'Aperçu du produit',
+ 'Stock quantity unit' => 'Format de stockage',
+ 'Stock amount' => 'Quantité en stock',
+ 'Last purchased' => 'Dernier achat',
+ 'Last used' => 'Dernière utilisation',
+ 'Spoiled' => 'Périmé',
+ 'Barcode lookup is disabled' => 'La recherche par code barres est désactivée',
+ 'will be added to the list of barcodes for the selected product on submit' => 'sera ajouté à la liste des codes barres du produit sélectionné à l\'envoi',
+ 'New amount' => 'Nouvelle quantité',
+ 'Note' => 'Note',
+ 'Tracked time' => 'Réalisé le',
+ 'Chore overview' => 'Aperçu de la corvée',
+ 'Tracked count' => 'Nombre de réalisations',
+ 'Battery overview' => 'Aperçu des batteries',
+ 'Charge cycles count' => 'Nombre de charges',
+ 'Create shopping list item' => 'Créer une liste de courses',
+ 'Edit shopping list item' => 'Modifier une liste de courses',
+ 'Save' => 'Sauvegarder',
+ 'Add' => 'Ajouter',
+ 'Name' => 'Nom',
+ 'Location' => 'Emplacement',
+ 'Min. stock amount' => 'Quantité minimum en stock',
+ 'QU purchase' => 'Format achat',
+ 'QU stock' => 'Format stock',
+ 'QU factor' => 'Facteur format',
+ 'Description' => 'Description',
+ 'Create product' => 'Créer un produit',
+ 'Barcode(s)' => 'Code(s) barres',
+ 'Minimum stock amount' => 'Quantité minimum en stock',
+ 'Default best before days' => 'Jours avant péremption par défaut',
+ 'Quantity unit purchase' => 'Format à l\'achat',
+ 'Quantity unit stock' => 'Format au stockage',
+ 'Factor purchase to stock quantity unit' => 'Facteur entre la quantité à l\'achat et la quantité en stock',
+ 'Create location' => 'Créer un emplacement',
+ 'Create quantity unit' => 'Créer un format',
+ 'Period type' => 'Type de période',
+ 'Period days' => 'Jours dans la période',
+ 'Create chore' => 'Créer une corvée',
+ 'Used in' => 'Utilisé dans',
+ 'Create battery' => 'Créer une batterie',
+ 'Edit battery' => 'Modifier une batterie',
+ 'Edit chore' => 'Modifier une corvée',
+ 'Edit quantity unit' => 'Modifier le format',
+ 'Edit product' => 'Modifier le produit',
+ 'Edit location' => 'Modifier l\'emplacement',
+ 'Record data' => 'Enregistrer les données',
+ 'Manage master data' => 'Gérer les données',
+ 'This will apply to added products' => 'Sera appliqué aux produits ajoutés',
+ 'never' => 'jamais',
+ 'Add products that are below defined min. stock amount' => 'Ajouter les produits qui sont en dessous du seuil de stock minimum',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'A l\'achat, ce nombre de jours sera ajouté à la date de péremption suggérée',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '1 #1 acheté sera converti en #2 #3 dans le stock',
+ 'Login' => 'Se connecter',
+ 'Username' => 'Identifiant',
+ 'Password' => 'Mot de passe',
+ 'Invalid credentials, please try again' => 'Identifiants invalides, merci de réessayer',
+ 'Are you sure to delete battery "#1"?' => 'Êtes vous sûr de vouloir supprimer la batterie "#1" ?',
+ 'Yes' => 'Oui',
+ 'No' => 'Non',
+ 'Are you sure to delete chore "#1"?' => 'Voulez-vous vraiment supprimer la corvée "#1" ?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" n\'a pas été retrouvé en tant que produit, comment voulez-vous procéder ?',
+ 'Create or assign product' => 'Créer ou assigner à un produit',
+ 'Cancel' => 'Annuler',
+ 'Add as new product' => 'Ajouter un nouveau produit',
+ 'Add as barcode to existing product' => 'Ajouter en tant que code-barres à un produit existant',
+ 'Add as new product and prefill barcode' => 'Ajouter un nouveau produit et pré-renseigner le code-barres',
+ 'Are you sure to delete quantity unit "#1"?' => 'Voulez-vous vraiment supprimer le format "#1" ?',
+ 'Are you sure to delete product "#1"?' => 'Voulez-vous vraiment supprimer le produit "#1" ?',
+ 'Are you sure to delete location "#1"?' => 'Voulez-vous vraiment supprimer l\'emplacement "#1" ?',
+ 'Manage API keys' => 'Gérer les clefs API',
+ 'REST API & data model documentation' => 'Documentation sur l\'API REST & le modèle des données',
+ 'API keys' => 'Clefs API',
+ 'Create new API key' => 'Créer une nouvelle clef API',
+ 'API key' => 'Clef API',
+ 'Expires' => 'Valide jusqu\'à',
+ 'Created' => 'Créée',
+ 'This product is not in stock' => 'Ce produit n\'est pas en stock',
+ 'This means #1 will be added to stock' => '#1 sera ajouté au stock',
+ 'This means #1 will be removed from stock' => '#1 sera supprimé du stock',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'La prochaine exécution de cette corvée sera programmée #1 jours après sa dernière exécution',
+ 'Removed #1 #2 of #3 from stock' => '#1 #2 de #3 supprimés du stock',
+ 'About grocy' => 'À propos de grocy',
+ 'Close' => 'Fermer',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 batteries doivent être rechargées dans les #2 prochains jours',
+ '#1 batteries are overdue to be charged' => '#1 batteries n\'ont pas été rechargées à temps',
+ '#1 chores are due to be done within the next #2 days' => '#1 corvées doivent être réalisées dans les #2 prochains jours',
+ '#1 chores are overdue to be done' => '#1 corvées n\'ont pas été réalisées à temps',
+ 'Released on' => 'Date de sortie',
+ 'Consume #3 #1 of #2' => 'Consommer #3 #1 de #2',
+ 'Added #1 #2 of #3 to stock' => '#1 #2 de #3 ajoutés au stock',
+ 'Stock amount of #1 is now #2 #3' => 'La quantité en stock de #1 est maintenant de #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'La corvée "#1" a été réalisée le #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'La batterie "#1" a été rechargée le #2',
+ 'Consume all #1 which are currently in stock' => 'Consommer tous les #1 actuellement en stock',
+ 'All' => 'Tout',
+ 'Track charge cycle of battery #1' => 'Indiquer le rechargement de la batterie #1',
+ 'Track execution of chore #1' => 'Indiquer la réalisation de la corvée #1',
+ 'Filter by location' => 'Filtrer par emplacement',
+ 'Search' => 'Recherche',
+ 'Not logged in' => 'Non connecté',
+ 'You have to select a product' => 'Vous devez sélectionner un produit',
+ 'You have to select a chore' => 'Vous devez sélectionner une corvée',
+ 'You have to select a battery' => 'Vous devez sélectionner une batterie',
+ 'A name is required' => 'Un nom est requis',
+ 'A location is required' => 'Un emplacement est requis',
+ 'The amount cannot be lower than #1' => 'La quantité ne peut être inférieure à #1',
+ 'This cannot be negative' => 'Ne peut être négatif',
+ 'A quantity unit is required' => 'Un format est requis',
+ 'A period type is required' => 'Un type de période est requis',
+ 'A best before date is required' => '',
+ 'Settings' => 'Paramètres',
+ 'This can only be before now' => 'Ne peut être qu\'antérieur à maintenant',
+ 'Calendar' => 'Calendrier',
+ 'Recipes' => 'Recettes',
+ 'Edit recipe' => 'Modifier une recette',
+ 'New recipe' => 'Nouvelle recette',
+ 'Ingredients list' => 'Liste des ingrédients',
+ 'Add recipe ingredient' => 'Ajouter un ingrédient dans la recette',
+ 'Edit recipe ingredient' => 'Modifier un ingrédient dans la recette',
+ 'Are you sure to delete recipe "#1"?' => 'Voulez-vous vraiment supprimer la recette "#1" ?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Voulez-vous vraiment supprimer l\'ingrédient "#1" de la recette ?',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => 'Vider la liste',
+ 'Requirements fulfilled' => 'Prérequis remplis',
+ 'Put missing products on shopping list' => 'Ajouter les produits manquants dans la liste de courses',
+ 'Not enough in stock, #1 ingredients missing' => 'Pas assez en stock, #1 ingrédients manquants',
+ 'Enough in stock' => 'Il y en a assez en stock',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Pas assez en stock, #1 ingrédients manquants mais déjà dans la liste de courses',
+ 'Expand to fullscreen' => 'Mettre en plein écran',
+ 'Ingredients' => 'Ingrédients',
+ 'Preparation' => 'Préparation',
+ 'Recipe' => 'Recette',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Pas assez en stock, #1 manquant et #2 déjà dans la liste de courses',
+ 'Show notes' => 'Afficher les notes',
+ 'Put missing amount on shopping list' => 'Ajouter la quantité manquante dans la liste de courses',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Voulez-vous vraiment ajouter tous les ingrédients manquants de la recette "#1" dans la liste de courses ?',
+ 'Added for recipe #1' => 'Ajoutés pour la recette #1',
+ 'Manage users' => 'Gérer les utilisateurs',
+ 'User' => 'Utilisateur',
+ 'Users' => 'Utilisateurs',
+ 'Are you sure to delete user "#1"?' => 'Voulez-vous vraiment supprimer l\'utilisateur "#1" ?',
+ 'Create user' => 'Créer un utilisateur',
+ 'Edit user' => 'Modifier un utilisateur',
+ 'First name' => 'Prénom',
+ 'Last name' => 'Nom',
+ 'A username is required' => 'Un nom d\'utilisateur est requis',
+ 'Confirm password' => 'Confirmation du mot de passe',
+ 'Passwords do not match' => 'Les mots de passe ne sont pas identiques',
+ 'Change password' => 'Changer le mot de passe',
+ 'Done by' => 'Fait par',
+ 'Last done by' => 'Dernière réalisation par',
+ 'Unknown' => 'Inconnu',
+ 'Filter by chore' => 'Filtrer par corvée',
+ 'Chores journal' => 'Journal des corvées',
+ '0 means suggestions for the next charge cycle are disabled' => '0 implique que les suggestions du prochain cycle de charge seront désactivées',
+ 'Charge cycle interval (days)' => 'Intervalle du cycle de charge (jours)',
+ 'Last price' => 'Dernier prix',
+ 'Price history' => 'Historique des prix',
+ 'No price history available' => 'Aucun historique disponible',
+ 'Price' => 'Prix',
+ 'in #1 per purchase quantity unit' => 'en #1 par quantité achetée (au format d\'achat)',
+ 'The price cannot be lower than #1' => 'Le prix ne peut être inférieur à #1',
+ '#1 product expires within the next #2 days' => '#1 produit se périme dans les #2 prochains jours',
+ '#1 product is already expired' => '#1 produit est périmé',
+ '#1 product is below defined min. stock amount' => '#1 produit est sous le seuil de stock minimum',
+ 'Unit' => 'Unité',
+ 'Units' => 'Unités',
+ '#1 chore is due to be done within the next #2 days' => '#1 corvée doit être réalisée dans les #2 prochains jours',
+ '#1 chore is overdue to be done' => '#1 corvée n\'a pas été réalisée à temps',
+ '#1 battery is due to be charged within the next #2 days' => '#1 batterie doit être rechargée dans les #2 prochains jours',
+ '#1 battery is overdue to be charged' => '#1 batterie n\'a pas été rechargée à temps',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '#1 unité a automatiquement été ajoutée et sera appliquée en plus à la quantité entrée ici',
+ 'in singular form' => 'Au singulier',
+ 'in plural form' => 'Au pluriel',
+ 'Never expires' => 'Ne périme jamais',
+ 'This cannot be lower than #1' => 'Ne peut être inférieur à #1',
+ '-1 means that this product never expires' => '-1 implique que ce produit ne périme jamais',
+ 'Quantity unit' => 'Format',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Vérifier uniquement si une unité est en stock (une quantité différente peut alors être utilisée au dessus)',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => 'Voulez-vous vraiment consommer tous les ingrédients requis par la recette "#1" (les ingrédients avec l\'option "Vérifier uniquement si une unité est en stock" seront ignorés) ?',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Enlever tous les ingrédients de la recette "#1" du stock',
+ 'Consume all ingredients needed by this recipe' => 'Consommer tous les ingrédients requis par cette recette',
+ 'Click to show technical details' => 'Cliquer pour afficher les détails techniques',
+ 'Error while saving, probably this item already exists' => 'Erreur à l\'enregistrement, cet objet existe déjà',
+ 'Error details' => 'Détails sur l\'erreur',
+ 'Tasks' => 'Tâches',
+ 'Show done tasks' => 'Afficher les tâches terminées',
+ 'Task' => 'Tâche',
+ 'Due' => 'À faire',
+ 'Assigned to' => 'Assigné à',
+ 'Mark task "#1" as completed' => 'Indiquer la tâche "#1" comme terminée',
+ 'Uncategorized' => 'Sans catégorie',
+ 'Task categories' => 'Catégories de tâche',
+ 'Create task' => 'Créer une tâche',
+ 'A due date is required' => 'Une date de réalisation est requise',
+ 'Category' => 'Catégorie',
+ 'Edit task' => 'Modifier la tâche',
+ 'Are you sure to delete task "#1"?' => 'Voulez-vous vraiment supprimer la tâche "#1" ?',
+ '#1 task is due to be done within the next #2 days' => '#1 tâche doit être réalisée dans les #2 prochains jours',
+ '#1 tasks are due to be done within the next #2 days' => '#1 tâches doivent être réalisées dans les #2 prochains jours',
+ '#1 task is overdue to be done' => '#1 tâche n\'a pas été réalisée à temps',
+ '#1 tasks are overdue to be done' => '#1 tâches n\'ont pas été réalisées à temps',
+ 'Edit task category' => 'Modifier la catégorie de tâche',
+ 'Create task category' => 'Créer une catégorie de tâche',
+ 'Product groups' => 'Groupes de produit',
+ 'Ungrouped' => 'Sans groupe',
+ 'Create product group' => 'Créer un groupe de produit',
+ 'Edit product group' => 'Modifier le groupe de produit',
+ 'Product group' => 'Groupe de produit',
+ 'Are you sure to delete product group "#1"?' => 'Voulez-vous vraiment supprimer le groupe de produit "#1" ?',
+ 'Stay logged in permanently' => 'Rester connecté de manière permanente',
+ 'When not set, you will get logged out at latest after 30 days' => 'Si non défini, vous serez déconnecté après au moins 30 jours',
+ 'Filter by status' => 'Filtrer par statut',
+ 'Below min. stock amount' => 'En dessous du seuil de stock minimum',
+ 'Expiring soon' => 'Expire bientôt',
+ 'Already expired' => 'Déjà périmé',
+ 'Due soon' => 'À réaliser bientôt',
+ 'Overdue' => 'En retard',
+ 'View settings' => 'Voir les paramètres',
+ 'Auto reload on external changes' => 'Mettre à jour automatiquement lors d\'un changement externe',
+ 'Enable night mode' => 'Activer le mode nuit',
+ 'Auto enable in time range' => 'Activer automatiquement pendant la période',
+ 'From' => 'De',
+ 'in format' => 'Au format',
+ 'To' => 'à',
+ 'Time range goes over midnight' => 'La période inclus minuit',
+ 'Product picture' => 'Photo du produit',
+ 'No file selected' => 'Aucun fichier sélectionné',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Si vous ne sélectionnez pas de photo, l\'actuelle sera conservée',
+ 'Delete' => 'Supprimer',
+ 'The current picture will be deleted when you save the product' => 'La photo actuelle va être supprimée lors de la sauvegarde du produit',
+ 'Select file' => 'Sélectionner un fichier',
+ 'Image of product #1' => 'Photo du produit #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Ce produit ne peut être supprimé puisqu\'il est en stock. Merci d\'enlever la quantité en stock avant.',
+ 'Delete not possible' => 'Impossible de supprimer',
+ 'Equipment' => 'Équipement',
+ 'Instruction manual' => 'Manuel d\'utilisation',
+ 'The selected equipment has no instruction manual' => 'L\'équipement sélectionné n\'a pas de manuel d\'utilisation',
+ 'Notes' => 'Notes',
+ 'Edit equipment' => 'Modifier un équipement',
+ 'Create equipment' => 'Créer un équipement',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Si vous ne sélectionnez pas de fichier, le manuel actuel ne sera pas modifié',
+ 'No instruction manual available' => 'Aucun manuel d\'utilisation disponible',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Le manuel d\'utilisation actuel sera supprimé lors de la sauvegarde de cet équipement',
+ 'No picture available' => 'Aucune photo disponible',
+ 'Filter by product group' => 'Filtrer par groupe de produits',
+ 'Presets for new products' => 'Modèle pour les nouveaux produits',
+ 'Included recipes' => 'Recettes incluses',
+ 'A recipe is required' => 'Une recette est requise',
+ 'Add included recipe' => 'Ajouter une recette incluse',
+ 'Edit included recipe' => 'Supprimer une recette incluse',
+ 'Group' => 'Groupe',
+ 'This will be used as a headline to group ingredients together' => 'Cela sera utilisé comme titre pour regrouper les ingrédients ensemble',
+ 'Journal' => 'Journal',
+ 'Stock journal' => 'Journal du stock',
+ 'Filter by product' => 'Filtrer par produit',
+ 'Booking time' => 'Temps de réservation',
+ 'Booking type' => 'Type de réservation',
+ 'Undo booking' => 'Annuler la réservation',
+ 'Undone on' => 'Annulé le',
+ 'Batteries journal' => 'Journal des batteries',
+ 'Filter by battery' => 'Filtrer par batterie',
+ 'Undo charge cycle' => 'Annuler le cycle de charge',
+ 'Undo chore execution' => 'Annuler la réalisation de la corvée',
+ 'Chore execution successfully undone' => 'La réalisation de la corvée a bien été annulée',
+ 'Undo' => 'Annuler',
+ 'Booking successfully undone' => 'Réservation annulée',
+ 'Charge cycle successfully undone' => 'Le cycle de charge a bien été annulé',
+ 'This cannot be negative and must be an integral number' => 'Ne peut être négatif et doit être un nombre entier',
+ 'Disable stock fulfillment checking for this ingredient' => 'Désactiver la vérification du stock pour cet ingrédient',
+ 'Add all list items to stock' => 'Ajouter toute la liste dans le stock',
+ 'Add #3 #1 of #2 to stock' => 'Ajouter #3 #1 de #2 au stock',
+ 'Adding shopping list item #1 of #2' => 'Ajout du produit #1 sur #2 de la liste de courses',
+ 'Use a specific stock item' => 'Utiliser un objet spécifique du stock',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'Le premier élément de cette liste sera sélectionné par la règle par défaut qui est "Le premier arrivant à péremption en premier, puis premier entré premier sorti"',
+ 'Mark #3 #1 of #2 as open' => 'Indiquer #3 #1 de #2 comme ouvert',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => 'Quand un produit est marqué comme ouvert, la date de péremption sera remplacée par la date du jour + ce nombre de jours (une valeur de 0 désactive ce changement)',
+ 'Default best before days after opened' => 'Date de péremption en jours par défaut après ouverture',
+ 'Marked #1 #2 of #3 as opened' => '#1 #2 de #3 indiqués comme ouverts',
+ 'Mark as opened' => 'Indiquer comme ouvert',
+ 'Expires on #1; Bought on #2' => 'Périme le #1; Acheté le #2',
+ 'Not opened' => 'Non ouvert',
+ 'Opened' => 'Ouvert',
+ 'Mark #3 #1 of #2 as open' => 'Indiquer #3 #1 de #2 comme ouvert',
+ '#1 opened' => '#1 ouvert',
+ 'Product expires' => 'Expiration du produit',
+ 'Task due' => 'Tâche à réaliser',
+ 'Chore due' => 'Corvée à réaliser',
+ 'Battery charge cycle due' => 'Rechargement à réaliser',
+ 'Show clock in header' => 'Afficher l\'horloge dans l\'en-tête',
+ 'Stock settings' => 'Paramètres du stock',
+ 'Shopping list to stock workflow' => 'Transition de la liste de courses vers le stock',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Réaliser automatiquement les achats en utilisant le dernier prix connu et la quantité indiquée dans la liste, si le premier a une date de péremption par défaut renseignée',
+ 'Skip' => 'Passer',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/fr/userfield_types.php b/localization-backup/fr/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/fr/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/he_IL/chore_types.php b/localization-backup/he_IL/chore_types.php
new file mode 100644
index 00000000..8b0d685d
--- /dev/null
+++ b/localization-backup/he_IL/chore_types.php
@@ -0,0 +1,9 @@
+ 'ידני',
+ 'dynamic-regular' => 'דינמי',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/he_IL/component_translations.php b/localization-backup/he_IL/component_translations.php
new file mode 100644
index 00000000..020bea52
--- /dev/null
+++ b/localization-backup/he_IL/component_translations.php
@@ -0,0 +1,10 @@
+ '',
+ 'timeago_nan' => '',
+ 'moment_locale' => '',
+ 'datatables_localization' => '',
+ 'summernote_locale' => '',
+ 'fullcalendar_locale' => ''
+);
diff --git a/localization-backup/he_IL/demo_data.php b/localization-backup/he_IL/demo_data.php
new file mode 100644
index 00000000..b494faa6
--- /dev/null
+++ b/localization-backup/he_IL/demo_data.php
@@ -0,0 +1,95 @@
+ '',
+ 'Chocolate' => '',
+ 'Pantry' => '',
+ 'Candy cupboard' => '',
+ 'Tinned food cupboard' => '',
+ 'Fridge' => '',
+ 'Piece' => '',
+ 'Pieces' => '',
+ 'Pack' => '',
+ 'Packs' => '',
+ 'Glass' => '',
+ 'Glasses' => '',
+ 'Tin' => '',
+ 'Tins' => '',
+ 'Can' => '',
+ 'Cans' => '',
+ 'Bunch' => '',
+ 'Bunches' => '',
+ 'Gummy bears' => '',
+ 'Crisps' => '',
+ 'Eggs' => '',
+ 'Noodles' => '',
+ 'Pickles' => '',
+ 'Gulash soup' => '',
+ 'Yogurt' => '',
+ 'Cheese' => '',
+ 'Cold cuts' => '',
+ 'Paprika' => '',
+ 'Cucumber' => '',
+ 'Radish' => '',
+ 'Tomato' => '',
+ 'Changed towels in the bathroom' => '',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => '',
+ 'TV remote control' => '',
+ 'Alarm clock' => '',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => '',
+ 'Sieved tomatoes' => '',
+ 'Salami' => '',
+ 'Toast' => '',
+ 'Minced meat' => '',
+ 'Pizza' => '',
+ 'Spaghetti bolognese' => '',
+ 'Sandwiches' => '',
+ 'English' => '',
+ 'German' => '',
+ 'Italian' => '',
+ 'Demo in different language' => '',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => '',
+ 'Gram' => '',
+ 'Grams' => '',
+ 'Flour' => '',
+ 'Pancakes' => '',
+ 'Sugar' => '',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => '',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => '',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => '',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => '',
+ 'Dishwasher' => '',
+ 'Liter' => '',
+ 'Liters' => '',
+ 'Bottle' => '',
+ 'Bottles' => '',
+ 'Milk' => '',
+ 'Chocolate sauce' => '',
+ 'Milliliters' => '',
+ 'Milliliter' => '',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => '',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/he_IL/stock_transaction_types.php b/localization-backup/he_IL/stock_transaction_types.php
new file mode 100644
index 00000000..d4697b78
--- /dev/null
+++ b/localization-backup/he_IL/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'לרכוש',
+ 'consume' => 'לצרוך',
+ 'inventory-correction' => 'תיקון מלאי',
+ 'product-opened' => 'מוצר נפתח'
+);
diff --git a/localization-backup/he_IL/strings.php b/localization-backup/he_IL/strings.php
new file mode 100644
index 00000000..21272b55
--- /dev/null
+++ b/localization-backup/he_IL/strings.php
@@ -0,0 +1,397 @@
+ '',
+ '#1 products expiring within the next #2 days' => '',
+ '#1 products are already expired' => '',
+ '#1 products are below defined min. stock amount' => '',
+ 'Product' => '',
+ 'Amount' => '',
+ 'Next best before date' => '',
+ 'Logout' => '',
+ 'Chores overview' => '',
+ 'Batteries overview' => '',
+ 'Purchase' => 'לרכוש',
+ 'Consume' => 'לצרוך',
+ 'Inventory' => '',
+ 'Shopping list' => '',
+ 'Chore tracking' => '',
+ 'Battery tracking' => '',
+ 'Products' => '',
+ 'Locations' => '',
+ 'Quantity units' => '',
+ 'Chores' => '',
+ 'Batteries' => '',
+ 'Chore' => '',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => '',
+ 'Battery' => '',
+ 'Last charged' => '',
+ 'Next planned charge cycle' => '',
+ 'Best before' => '',
+ 'OK' => '',
+ 'Product overview' => '',
+ 'Stock quantity unit' => '',
+ 'Stock amount' => '',
+ 'Last purchased' => '',
+ 'Last used' => '',
+ 'Spoiled' => '',
+ 'Barcode lookup is disabled' => '',
+ 'will be added to the list of barcodes for the selected product on submit' => '',
+ 'New amount' => '',
+ 'Note' => '',
+ 'Tracked time' => '',
+ 'Chore overview' => '',
+ 'Tracked count' => '',
+ 'Battery overview' => '',
+ 'Charge cycles count' => '',
+ 'Create shopping list item' => '',
+ 'Edit shopping list item' => '',
+ 'Save' => '',
+ 'Add' => '',
+ 'Name' => '',
+ 'Location' => '',
+ 'Min. stock amount' => '',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => '',
+ 'Create product' => '',
+ 'Barcode(s)' => '',
+ 'Minimum stock amount' => '',
+ 'Default best before days' => '',
+ 'Quantity unit purchase' => '',
+ 'Quantity unit stock' => '',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => '',
+ 'Create quantity unit' => '',
+ 'Period type' => '',
+ 'Period days' => '',
+ 'Create chore' => '',
+ 'Used in' => '',
+ 'Create battery' => '',
+ 'Edit battery' => '',
+ 'Edit chore' => '',
+ 'Edit quantity unit' => '',
+ 'Edit product' => '',
+ 'Edit location' => '',
+ 'Record data' => '',
+ 'Manage master data' => '',
+ 'This will apply to added products' => '',
+ 'never' => '',
+ 'Add products that are below defined min. stock amount' => '',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => '',
+ 'Username' => '',
+ 'Password' => '',
+ 'Invalid credentials, please try again' => '',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => '',
+ 'No' => '',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => '',
+ 'Add as new product' => '',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => '',
+ 'User' => '',
+ 'Users' => '',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/he_IL/userfield_types.php b/localization-backup/he_IL/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/he_IL/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/hu/chore_types.php b/localization-backup/hu/chore_types.php
new file mode 100644
index 00000000..d01e7ee9
--- /dev/null
+++ b/localization-backup/hu/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuálisan',
+ 'dynamic-regular' => 'Dinamikus gyakorisággal',
+ 'daily' => 'Naponta',
+ 'weekly' => 'Hetente',
+ 'monthly' => 'Havonta'
+);
diff --git a/localization-backup/hu/component_translations.php b/localization-backup/hu/component_translations.php
new file mode 100644
index 00000000..d279cbd1
--- /dev/null
+++ b/localization-backup/hu/component_translations.php
@@ -0,0 +1,10 @@
+ 'en',
+ 'timeago_nan' => 'NaN évvel ezelőtt',
+ 'moment_locale' => 'x',
+ 'datatables_localization' => '',
+ 'summernote_locale' => 'x',
+ 'fullcalendar_locale' => 'x'
+);
diff --git a/localization-backup/hu/demo_data.php b/localization-backup/hu/demo_data.php
new file mode 100644
index 00000000..d6d55396
--- /dev/null
+++ b/localization-backup/hu/demo_data.php
@@ -0,0 +1,95 @@
+ 'Keksz',
+ 'Chocolate' => 'Csokoládé',
+ 'Pantry' => 'Éléskamra',
+ 'Candy cupboard' => 'Édességszekrény',
+ 'Tinned food cupboard' => 'Konzervszekrény',
+ 'Fridge' => 'Hűtő',
+ 'Piece' => 'Darab',
+ 'Pieces' => 'Darab',
+ 'Pack' => 'Csomag',
+ 'Packs' => 'Csomag',
+ 'Glass' => 'Üveg',
+ 'Glasses' => 'Üveg',
+ 'Tin' => '',
+ 'Tins' => '',
+ 'Can' => '',
+ 'Cans' => '',
+ 'Bunch' => '',
+ 'Bunches' => '',
+ 'Gummy bears' => '',
+ 'Crisps' => '',
+ 'Eggs' => '',
+ 'Noodles' => '',
+ 'Pickles' => '',
+ 'Gulash soup' => '',
+ 'Yogurt' => '',
+ 'Cheese' => '',
+ 'Cold cuts' => '',
+ 'Paprika' => '',
+ 'Cucumber' => '',
+ 'Radish' => '',
+ 'Tomato' => '',
+ 'Changed towels in the bathroom' => '',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => '',
+ 'TV remote control' => '',
+ 'Alarm clock' => '',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => '',
+ 'Sieved tomatoes' => '',
+ 'Salami' => '',
+ 'Toast' => '',
+ 'Minced meat' => '',
+ 'Pizza' => '',
+ 'Spaghetti bolognese' => '',
+ 'Sandwiches' => '',
+ 'English' => '',
+ 'German' => '',
+ 'Italian' => '',
+ 'Demo in different language' => '',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => '',
+ 'Gram' => '',
+ 'Grams' => '',
+ 'Flour' => '',
+ 'Pancakes' => '',
+ 'Sugar' => '',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => '',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => '',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => '',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => '',
+ 'Dishwasher' => '',
+ 'Liter' => '',
+ 'Liters' => '',
+ 'Bottle' => '',
+ 'Bottles' => '',
+ 'Milk' => '',
+ 'Chocolate sauce' => '',
+ 'Milliliters' => '',
+ 'Milliliter' => '',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => '',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/hu/stock_transaction_types.php b/localization-backup/hu/stock_transaction_types.php
new file mode 100644
index 00000000..218da560
--- /dev/null
+++ b/localization-backup/hu/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ '',
+ 'consume' => '',
+ 'inventory-correction' => '',
+ 'product-opened' => ''
+);
diff --git a/localization-backup/hu/strings.php b/localization-backup/hu/strings.php
new file mode 100644
index 00000000..3228527d
--- /dev/null
+++ b/localization-backup/hu/strings.php
@@ -0,0 +1,397 @@
+ '',
+ '#1 products expiring within the next #2 days' => '',
+ '#1 products are already expired' => '',
+ '#1 products are below defined min. stock amount' => '',
+ 'Product' => '',
+ 'Amount' => '',
+ 'Next best before date' => '',
+ 'Logout' => '',
+ 'Chores overview' => '',
+ 'Batteries overview' => '',
+ 'Purchase' => '',
+ 'Consume' => '',
+ 'Inventory' => '',
+ 'Shopping list' => '',
+ 'Chore tracking' => '',
+ 'Battery tracking' => '',
+ 'Products' => '',
+ 'Locations' => '',
+ 'Quantity units' => '',
+ 'Chores' => '',
+ 'Batteries' => '',
+ 'Chore' => '',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => '',
+ 'Battery' => '',
+ 'Last charged' => '',
+ 'Next planned charge cycle' => '',
+ 'Best before' => '',
+ 'OK' => '',
+ 'Product overview' => '',
+ 'Stock quantity unit' => '',
+ 'Stock amount' => '',
+ 'Last purchased' => '',
+ 'Last used' => '',
+ 'Spoiled' => '',
+ 'Barcode lookup is disabled' => '',
+ 'will be added to the list of barcodes for the selected product on submit' => '',
+ 'New amount' => '',
+ 'Note' => '',
+ 'Tracked time' => '',
+ 'Chore overview' => '',
+ 'Tracked count' => '',
+ 'Battery overview' => '',
+ 'Charge cycles count' => '',
+ 'Create shopping list item' => '',
+ 'Edit shopping list item' => '',
+ 'Save' => '',
+ 'Add' => '',
+ 'Name' => '',
+ 'Location' => '',
+ 'Min. stock amount' => '',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => '',
+ 'Create product' => '',
+ 'Barcode(s)' => '',
+ 'Minimum stock amount' => '',
+ 'Default best before days' => '',
+ 'Quantity unit purchase' => '',
+ 'Quantity unit stock' => '',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => '',
+ 'Create quantity unit' => '',
+ 'Period type' => '',
+ 'Period days' => '',
+ 'Create chore' => '',
+ 'Used in' => '',
+ 'Create battery' => '',
+ 'Edit battery' => '',
+ 'Edit chore' => '',
+ 'Edit quantity unit' => '',
+ 'Edit product' => '',
+ 'Edit location' => '',
+ 'Record data' => '',
+ 'Manage master data' => '',
+ 'This will apply to added products' => '',
+ 'never' => '',
+ 'Add products that are below defined min. stock amount' => '',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => '',
+ 'Username' => '',
+ 'Password' => '',
+ 'Invalid credentials, please try again' => '',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => '',
+ 'No' => '',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => '',
+ 'Add as new product' => '',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => '',
+ 'User' => '',
+ 'Users' => '',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/hu/userfield_types.php b/localization-backup/hu/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/hu/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/hu_HU/chore_types.php b/localization-backup/hu_HU/chore_types.php
new file mode 100644
index 00000000..a3f8eeab
--- /dev/null
+++ b/localization-backup/hu_HU/chore_types.php
@@ -0,0 +1,9 @@
+ '',
+ 'dynamic-regular' => '',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/hu_HU/component_translations.php b/localization-backup/hu_HU/component_translations.php
new file mode 100644
index 00000000..020bea52
--- /dev/null
+++ b/localization-backup/hu_HU/component_translations.php
@@ -0,0 +1,10 @@
+ '',
+ 'timeago_nan' => '',
+ 'moment_locale' => '',
+ 'datatables_localization' => '',
+ 'summernote_locale' => '',
+ 'fullcalendar_locale' => ''
+);
diff --git a/localization-backup/hu_HU/demo_data.php b/localization-backup/hu_HU/demo_data.php
new file mode 100644
index 00000000..b494faa6
--- /dev/null
+++ b/localization-backup/hu_HU/demo_data.php
@@ -0,0 +1,95 @@
+ '',
+ 'Chocolate' => '',
+ 'Pantry' => '',
+ 'Candy cupboard' => '',
+ 'Tinned food cupboard' => '',
+ 'Fridge' => '',
+ 'Piece' => '',
+ 'Pieces' => '',
+ 'Pack' => '',
+ 'Packs' => '',
+ 'Glass' => '',
+ 'Glasses' => '',
+ 'Tin' => '',
+ 'Tins' => '',
+ 'Can' => '',
+ 'Cans' => '',
+ 'Bunch' => '',
+ 'Bunches' => '',
+ 'Gummy bears' => '',
+ 'Crisps' => '',
+ 'Eggs' => '',
+ 'Noodles' => '',
+ 'Pickles' => '',
+ 'Gulash soup' => '',
+ 'Yogurt' => '',
+ 'Cheese' => '',
+ 'Cold cuts' => '',
+ 'Paprika' => '',
+ 'Cucumber' => '',
+ 'Radish' => '',
+ 'Tomato' => '',
+ 'Changed towels in the bathroom' => '',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => '',
+ 'TV remote control' => '',
+ 'Alarm clock' => '',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => '',
+ 'Sieved tomatoes' => '',
+ 'Salami' => '',
+ 'Toast' => '',
+ 'Minced meat' => '',
+ 'Pizza' => '',
+ 'Spaghetti bolognese' => '',
+ 'Sandwiches' => '',
+ 'English' => '',
+ 'German' => '',
+ 'Italian' => '',
+ 'Demo in different language' => '',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => '',
+ 'Gram' => '',
+ 'Grams' => '',
+ 'Flour' => '',
+ 'Pancakes' => '',
+ 'Sugar' => '',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => '',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => '',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => '',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => '',
+ 'Dishwasher' => '',
+ 'Liter' => '',
+ 'Liters' => '',
+ 'Bottle' => '',
+ 'Bottles' => '',
+ 'Milk' => '',
+ 'Chocolate sauce' => '',
+ 'Milliliters' => '',
+ 'Milliliter' => '',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => '',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/hu_HU/stock_transaction_types.php b/localization-backup/hu_HU/stock_transaction_types.php
new file mode 100644
index 00000000..218da560
--- /dev/null
+++ b/localization-backup/hu_HU/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ '',
+ 'consume' => '',
+ 'inventory-correction' => '',
+ 'product-opened' => ''
+);
diff --git a/localization-backup/hu_HU/strings.php b/localization-backup/hu_HU/strings.php
new file mode 100644
index 00000000..3228527d
--- /dev/null
+++ b/localization-backup/hu_HU/strings.php
@@ -0,0 +1,397 @@
+ '',
+ '#1 products expiring within the next #2 days' => '',
+ '#1 products are already expired' => '',
+ '#1 products are below defined min. stock amount' => '',
+ 'Product' => '',
+ 'Amount' => '',
+ 'Next best before date' => '',
+ 'Logout' => '',
+ 'Chores overview' => '',
+ 'Batteries overview' => '',
+ 'Purchase' => '',
+ 'Consume' => '',
+ 'Inventory' => '',
+ 'Shopping list' => '',
+ 'Chore tracking' => '',
+ 'Battery tracking' => '',
+ 'Products' => '',
+ 'Locations' => '',
+ 'Quantity units' => '',
+ 'Chores' => '',
+ 'Batteries' => '',
+ 'Chore' => '',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => '',
+ 'Battery' => '',
+ 'Last charged' => '',
+ 'Next planned charge cycle' => '',
+ 'Best before' => '',
+ 'OK' => '',
+ 'Product overview' => '',
+ 'Stock quantity unit' => '',
+ 'Stock amount' => '',
+ 'Last purchased' => '',
+ 'Last used' => '',
+ 'Spoiled' => '',
+ 'Barcode lookup is disabled' => '',
+ 'will be added to the list of barcodes for the selected product on submit' => '',
+ 'New amount' => '',
+ 'Note' => '',
+ 'Tracked time' => '',
+ 'Chore overview' => '',
+ 'Tracked count' => '',
+ 'Battery overview' => '',
+ 'Charge cycles count' => '',
+ 'Create shopping list item' => '',
+ 'Edit shopping list item' => '',
+ 'Save' => '',
+ 'Add' => '',
+ 'Name' => '',
+ 'Location' => '',
+ 'Min. stock amount' => '',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => '',
+ 'Create product' => '',
+ 'Barcode(s)' => '',
+ 'Minimum stock amount' => '',
+ 'Default best before days' => '',
+ 'Quantity unit purchase' => '',
+ 'Quantity unit stock' => '',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => '',
+ 'Create quantity unit' => '',
+ 'Period type' => '',
+ 'Period days' => '',
+ 'Create chore' => '',
+ 'Used in' => '',
+ 'Create battery' => '',
+ 'Edit battery' => '',
+ 'Edit chore' => '',
+ 'Edit quantity unit' => '',
+ 'Edit product' => '',
+ 'Edit location' => '',
+ 'Record data' => '',
+ 'Manage master data' => '',
+ 'This will apply to added products' => '',
+ 'never' => '',
+ 'Add products that are below defined min. stock amount' => '',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => '',
+ 'Username' => '',
+ 'Password' => '',
+ 'Invalid credentials, please try again' => '',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => '',
+ 'No' => '',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => '',
+ 'Add as new product' => '',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => '',
+ 'User' => '',
+ 'Users' => '',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/hu_HU/userfield_types.php b/localization-backup/hu_HU/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/hu_HU/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/it/chore_types.php b/localization-backup/it/chore_types.php
new file mode 100644
index 00000000..65996989
--- /dev/null
+++ b/localization-backup/it/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manualmente',
+ 'dynamic-regular' => 'Regolatore dinamico',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/it/component_translations.php b/localization-backup/it/component_translations.php
new file mode 100644
index 00000000..8d4e6bb7
--- /dev/null
+++ b/localization-backup/it/component_translations.php
@@ -0,0 +1,10 @@
+ 'it',
+ 'timeago_nan' => 'NaN anni fa',
+ 'moment_locale' => 'it',
+ 'datatables_localization' => '{"sEmptyTable":"Nessun dato disponibile","sInfo":"Mostrando da _START_ a _END_ di _TOTAL_ voci","sInfoEmpty":"Mostrando da 0 a 0 di 0 voci","sInfoFiltered":"(Filtrato da _MAX_ voci totali)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"Mostra _MENU_ voci","sLoadingRecords":"Caricando...","sProcessing":"Calcolando...","sSearch":"Cerca:","sZeroRecords":"Nessun risultato trovato","oPaginate":{"sFirst":"Prima","sLast":"Ultima","sNext":"Prossima","sPrevious":"Precedente"},"oAria":{"sSortAscending":": ordine crescente","sSortDescending":": ordine decrescente"}}',
+ 'summernote_locale' => 'it-IT',
+ 'fullcalendar_locale' => 'fr'
+);
diff --git a/localization-backup/it/demo_data.php b/localization-backup/it/demo_data.php
new file mode 100644
index 00000000..b3c5fa5c
--- /dev/null
+++ b/localization-backup/it/demo_data.php
@@ -0,0 +1,95 @@
+ 'Biscotti',
+ 'Chocolate' => 'Cioccolato',
+ 'Pantry' => 'Vorratskammer',
+ 'Candy cupboard' => 'Süßigkeitenschrank',
+ 'Tinned food cupboard' => 'Konservenschrank',
+ 'Fridge' => 'Kühlschrank',
+ 'Piece' => 'Pezzo',
+ 'Pieces' => 'Pezzi',
+ 'Pack' => 'Pacco',
+ 'Packs' => 'Pacchi',
+ 'Glass' => 'Bicchiere',
+ 'Glasses' => 'Bicchieri',
+ 'Tin' => 'Scatola',
+ 'Tins' => 'Scatole',
+ 'Can' => 'Lattina',
+ 'Cans' => 'Lattine',
+ 'Bunch' => 'Cespo',
+ 'Bunches' => 'Cespi',
+ 'Gummy bears' => 'Caramelle',
+ 'Crisps' => 'Patatine',
+ 'Eggs' => 'Uova',
+ 'Noodles' => 'Spaghetti',
+ 'Pickles' => 'Marmellata',
+ 'Gulash soup' => 'Dado',
+ 'Yogurt' => 'Yogurt',
+ 'Cheese' => 'Parmigiano',
+ 'Cold cuts' => 'Pancetta',
+ 'Paprika' => 'Pepe',
+ 'Cucumber' => 'Zucchine',
+ 'Radish' => 'Radicchio',
+ 'Tomato' => 'Pomodori',
+ 'Changed towels in the bathroom' => 'Cambiare asciugamani in bagno',
+ 'Cleaned the kitchen floor' => 'Pulire la cucina',
+ 'Warranty ends' => 'Scadenza dalla garanzia',
+ 'TV remote control' => 'Telecomando',
+ 'Alarm clock' => 'Sveglia',
+ 'Heat remote control' => 'Termostato',
+ 'Lawn mowed in the garden' => 'Prato falciato nel giardino',
+ 'Some good snacks' => 'Alcuni buoni spuntini',
+ 'Pizza dough' => 'Impasto per pizza',
+ 'Sieved tomatoes' => 'Pomodori setacciati',
+ 'Salami' => 'Salame',
+ 'Toast' => 'Toast',
+ 'Minced meat' => 'Carne macinata',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti alla bolognese',
+ 'Sandwiches' => 'Sandwiches',
+ 'English' => 'Inglese',
+ 'German' => 'Tedesco',
+ 'Italian' => 'Italiano',
+ 'Demo in different language' => 'Demo in lingue diverse',
+ 'This is the note content of the recipe ingredient' => 'Questo è il contenuto della nota dell\'ingrediente della ricetta',
+ 'Demo User' => 'Utente Demo',
+ 'Gram' => 'Grammo',
+ 'Grams' => 'Grammi',
+ 'Flour' => 'Farina',
+ 'Pancakes' => 'Pancakes',
+ 'Sugar' => 'Zucchero',
+ 'Home' => 'Casa',
+ 'Life' => 'Vita',
+ 'Projects' => 'Progetti',
+ 'Repair the garage door' => 'Riparare la porta del garage',
+ 'Fork and improve grocy' => 'Forka e migliora grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Trova una soluzione per cosa fare quando dimentico le chiavi della porta',
+ 'Sweets' => 'Dolci',
+ 'Bakery products' => 'Prodotti da forno',
+ 'Tinned food' => 'Cibo in scatola',
+ 'Butchery products' => 'Prodotti della macelleria',
+ 'Vegetables/Fruits' => 'Verdura/Frutta',
+ 'Refrigerated products' => 'Prodotti refrigerati',
+ 'Coffee machine' => 'Macchina per il caffè',
+ 'Dishwasher' => 'Lavastoviglie',
+ 'Liter' => 'Litro',
+ 'Liters' => 'Litri',
+ 'Bottle' => 'Bottiglia',
+ 'Bottles' => 'Bottiglie',
+ 'Milk' => 'Latte',
+ 'Chocolate sauce' => 'Salsa al cioccolato',
+ 'Milliliters' => 'Millilitri',
+ 'Milliliter' => 'Millilitro',
+ 'Bottom' => 'Parte inferiore',
+ 'Topping' => 'Guarnizione',
+ 'French' => 'Francese',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/it/stock_transaction_types.php b/localization-backup/it/stock_transaction_types.php
new file mode 100644
index 00000000..d0de31e0
--- /dev/null
+++ b/localization-backup/it/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Acquista',
+ 'consume' => 'Consumare',
+ 'inventory-correction' => 'Correzione dell\'inventario',
+ 'product-opened' => 'Prodotto aperto'
+);
diff --git a/localization-backup/it/strings.php b/localization-backup/it/strings.php
new file mode 100644
index 00000000..f3df7cf2
--- /dev/null
+++ b/localization-backup/it/strings.php
@@ -0,0 +1,397 @@
+ 'Dispensa',
+ '#1 products expiring within the next #2 days' => '#1 prodotti scadranno tra #2 giorni',
+ '#1 products are already expired' => '#1 prodotti scaduti',
+ '#1 products are below defined min. stock amount' => '#1 prodotti sotto il limite minimo',
+ 'Product' => 'prodotto',
+ 'Amount' => 'quantità',
+ 'Next best before date' => 'Prossima data di scadenza',
+ 'Logout' => 'Logout',
+ 'Chores overview' => 'Riepilogo delle abitudini',
+ 'Batteries overview' => 'Riepilogo delle batterie',
+ 'Purchase' => 'Acquisti',
+ 'Consume' => 'Consumi',
+ 'Inventory' => 'Inventario',
+ 'Shopping list' => 'Lista della spesa',
+ 'Chore tracking' => 'Dati abitudini',
+ 'Battery tracking' => 'Dati batterie',
+ 'Products' => 'Prodotti',
+ 'Locations' => 'Posizioni',
+ 'Quantity units' => 'Unità di misura',
+ 'Chores' => 'Abitudini',
+ 'Batteries' => 'Batterie',
+ 'Chore' => 'Abitudine',
+ 'Next estimated tracking' => 'Prossima esecuzione',
+ 'Last tracked' => 'Ultima esecuzione',
+ 'Battery' => 'Batterie',
+ 'Last charged' => 'Ultima ricarica',
+ 'Next planned charge cycle' => 'Prossima ricarica',
+ 'Best before' => 'Data di scadenza',
+ 'OK' => 'OK',
+ 'Product overview' => 'Riepilogo dei prodotti',
+ 'Stock quantity unit' => 'Unità di misura',
+ 'Stock amount' => 'Quantità',
+ 'Last purchased' => 'Ultimo acquisto',
+ 'Last used' => 'Ultimo utilizzo',
+ 'Spoiled' => 'Scaduto',
+ 'Barcode lookup is disabled' => 'I codici a barre sono disabilitati',
+ 'will be added to the list of barcodes for the selected product on submit' => 'sarà aggiunto alla lista dei codici a barre per questo prodotto',
+ 'New amount' => 'Nuova quantità',
+ 'Note' => 'Nota',
+ 'Tracked time' => 'Ora di esecuzione',
+ 'Chore overview' => 'Riepilogo dell\'abitudine',
+ 'Tracked count' => 'Numero di esecuzioni',
+ 'Battery overview' => 'Riepilogo della batteria',
+ 'Charge cycles count' => 'Numero di ricariche',
+ 'Create shopping list item' => 'Aggiungi un prodotto alla lista della spesa',
+ 'Edit shopping list item' => 'Modifica un\'entrata della lista della spesa',
+ 'Save' => 'Salva',
+ 'Add' => 'Aggiungi',
+ 'Name' => 'Nome',
+ 'Location' => 'Posizione',
+ 'Min. stock amount' => 'Quantità minima',
+ 'QU purchase' => 'Unità di acquisto',
+ 'QU stock' => 'Unità di dispensa',
+ 'QU factor' => 'Fattore di conversione',
+ 'Description' => 'Descrizione',
+ 'Create product' => 'Aggiungi prodotto',
+ 'Barcode(s)' => 'Codice a barre',
+ 'Minimum stock amount' => 'Quantità minima',
+ 'Default best before days' => 'Data di scadenza standard in giorni',
+ 'Quantity unit purchase' => 'Unità di acquisto',
+ 'Quantity unit stock' => 'Unità di dispensa',
+ 'Factor purchase to stock quantity unit' => 'Fattore di conversione tra quantità di acquisto e di dispensa',
+ 'Create location' => 'Aggiungi posizione',
+ 'Create quantity unit' => 'Aggiungi unità di misura',
+ 'Period type' => 'Tipo di ripetizione',
+ 'Period days' => 'Periodo in giorni',
+ 'Create chore' => 'Aggiungi abitudine',
+ 'Used in' => 'Usato in',
+ 'Create battery' => 'Aggiungi batteria',
+ 'Edit battery' => 'Modifica batteria',
+ 'Edit chore' => 'Modifica abitudine',
+ 'Edit quantity unit' => 'Modifica unità di misura',
+ 'Edit product' => 'Modifica prodotto',
+ 'Edit location' => 'Modifica posizione',
+ 'Record data' => 'Registra dati',
+ 'Manage master data' => 'Gestisci dati',
+ 'This will apply to added products' => 'Verrà applicato ai prodotti aggiunti',
+ 'never' => 'mai',
+ 'Add products that are below defined min. stock amount' => 'Aggiungi prodotti sotti il limite minimo',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Questo numero di giorni verrà aggiunto alla data di acquisto per la data di scadenza',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Questo significa che 1 #1 acquistato diventerà #2 #3 in dispensa',
+ 'Login' => 'Login',
+ 'Username' => 'Username',
+ 'Password' => 'Password',
+ 'Invalid credentials, please try again' => 'Credenziali non valide, per favore riprova',
+ 'Are you sure to delete battery "#1"?' => 'Sei sicuro di voler eliminare la batteria "#1"?',
+ 'Yes' => 'Si',
+ 'No' => 'No',
+ 'Are you sure to delete chore "#1"?' => 'Sei sicuro di voler eliminare l\'abitudine "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" non è stato associato a nessun prodotto, vuoi procedere?',
+ 'Create or assign product' => 'Aggiungi o assegna prodotto',
+ 'Cancel' => 'Annulla',
+ 'Add as new product' => 'Aggiungi come nuovo prodotto',
+ 'Add as barcode to existing product' => 'Assegna il codice a barre ad un prodotto',
+ 'Add as new product and prefill barcode' => 'Aggiungi come nuovo prodotto ed assegna il codice a barre',
+ 'Are you sure to delete quantity unit "#1"?' => 'Sei sicuro di voler eliminare l\'unità di misura "#1"?',
+ 'Are you sure to delete product "#1"?' => 'Sei sicuro di voler eliminare il prodotto "#1"?',
+ 'Are you sure to delete location "#1"?' => 'Sei sicuro di voler eliminare la posizione "#1"?',
+ 'Manage API keys' => 'Gestisci le chiavi API',
+ 'REST API & data model documentation' => 'REST API & Documentazione del modello di dati',
+ 'API keys' => 'Chiavi API',
+ 'Create new API key' => 'Crea nuova chiave API',
+ 'API key' => 'Chiave API',
+ 'Expires' => 'Scade il',
+ 'Created' => 'Creata il',
+ 'This product is not in stock' => 'Questo prodotto non è in dispensa',
+ 'This means #1 will be added to stock' => '#1 sarà aggiunto alla dispensa',
+ 'This means #1 will be removed from stock' => '#1 sarà rimosso dalla dispensa',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'L\'esecuzione dell\'abitudine è #1 giorni dopo la precedente',
+ 'Removed #1 #2 of #3 from stock' => '#1 #2 su #3 rimossi dalla dispensa',
+ 'About grocy' => 'Riguardo grocy',
+ 'Close' => 'Chiudi',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 batterie da ricaricare entro #2 giorni',
+ '#1 batteries are overdue to be charged' => '#1 batterie devono essere ricaricate',
+ '#1 chores are due to be done within the next #2 days' => '#1 abitudini da eseguire entro #2 giorni',
+ '#1 chores are overdue to be done' => '#1 abitudini da eseguire',
+ 'Released on' => 'Rilasciato il',
+ 'Consume #3 #1 of #2' => 'Consumati #3 #1 di #2',
+ 'Added #1 #2 of #3 to stock' => 'Aggiunti #1 #2 di #3',
+ 'Stock amount of #1 is now #2 #3' => 'La quantità in dispensa di #1 è ora #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Esecuzione dell\'abitudine #1 registrata il #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'Ricarica della batteria #1 effettuata il #2',
+ 'Consume all #1 which are currently in stock' => 'Consuma tutto #1 in dispensa',
+ 'All' => 'Tutto',
+ 'Track charge cycle of battery #1' => 'Registra la ricarica della batteria #1',
+ 'Track execution of chore #1' => 'Registra l\'esecuzione dell\'abitudine #1',
+ 'Filter by location' => 'Filtra per posizione',
+ 'Search' => 'Cerca',
+ 'Not logged in' => 'Non autenticato',
+ 'You have to select a product' => 'Devi selezionare un prodotto',
+ 'You have to select a chore' => 'Devi selezionare un\'abitudine',
+ 'You have to select a battery' => 'Devi selezionare una batteria',
+ 'A name is required' => 'Inserisci un nome',
+ 'A location is required' => 'Inserisci la posizione',
+ 'The amount cannot be lower than #1' => 'La quantità non può essere minore di #1',
+ 'This cannot be negative' => 'Il numero non può essere negativo',
+ 'A quantity unit is required' => 'Inserisci un\'unità di misura',
+ 'A period type is required' => 'Seleziona un tipo di ripetizione',
+ 'A best before date is required' => '',
+ 'Settings' => 'Impostazioni',
+ 'This can only be before now' => 'Questo può essere solo prima d\'ora',
+ 'Calendar' => 'Calendario',
+ 'Recipes' => 'Ricette',
+ 'Edit recipe' => 'Modifica Ricetta',
+ 'New recipe' => 'Nuova Ricetta',
+ 'Ingredients list' => 'Lista Ingredienti',
+ 'Add recipe ingredient' => 'Aggiungi l\'ingrediente della ricetta',
+ 'Edit recipe ingredient' => 'Modifica l\'ingrediente della ricetta',
+ 'Are you sure to delete recipe "#1"?' => 'Sei sicuro di voler eliminare la ricetta "# 1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Sei sicuro di voler eliminare l\'ingrediente della ricetta "# 1"?',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => 'Pulisci lista',
+ 'Requirements fulfilled' => 'Requisiti soddisfatti',
+ 'Put missing products on shopping list' => 'Metti i prodotti mancanti nella lista della spesa',
+ 'Not enough in stock, #1 ingredients missing' => 'Non abbastanza in magazzino, mancano gli ingredienti # 1',
+ 'Enough in stock' => 'Abbastanza in magazzino',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Non abbastanza in magazzino, mancano gli ingredienti # 1 ma sono già nella lista della spesa',
+ 'Expand to fullscreen' => 'Espandi a schermo intero',
+ 'Ingredients' => 'Ingredienti',
+ 'Preparation' => 'x',
+ 'Recipe' => 'x',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'x',
+ 'Show notes' => 'x',
+ 'Put missing amount on shopping list' => 'x',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'x',
+ 'Added for recipe #1' => 'x',
+ 'Manage users' => 'x',
+ 'User' => 'x',
+ 'Users' => 'x',
+ 'Are you sure to delete user "#1"?' => 'x',
+ 'Create user' => 'x',
+ 'Edit user' => 'x',
+ 'First name' => 'x',
+ 'Last name' => 'x',
+ 'A username is required' => 'x',
+ 'Confirm password' => 'x',
+ 'Passwords do not match' => 'x',
+ 'Change password' => 'x',
+ 'Done by' => 'x',
+ 'Last done by' => 'x',
+ 'Unknown' => 'x',
+ 'Filter by chore' => 'x',
+ 'Chores journal' => 'x',
+ '0 means suggestions for the next charge cycle are disabled' => 'x',
+ 'Charge cycle interval (days)' => 'x',
+ 'Last price' => 'x',
+ 'Price history' => 'x',
+ 'No price history available' => 'x',
+ 'Price' => 'x',
+ 'in #1 per purchase quantity unit' => 'x',
+ 'The price cannot be lower than #1' => 'x',
+ '#1 product expires within the next #2 days' => 'x',
+ '#1 product is already expired' => 'x',
+ '#1 product is below defined min. stock amount' => 'x',
+ 'Unit' => 'x',
+ 'Units' => 'x',
+ '#1 chore is due to be done within the next #2 days' => 'x',
+ '#1 chore is overdue to be done' => 'x',
+ '#1 battery is due to be charged within the next #2 days' => 'x',
+ '#1 battery is overdue to be charged' => 'x',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => 'x',
+ 'in singular form' => 'x',
+ 'in plural form' => 'x',
+ 'Never expires' => 'x',
+ 'This cannot be lower than #1' => 'x',
+ '-1 means that this product never expires' => 'x',
+ 'Quantity unit' => 'x',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'x',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => 'x',
+ 'Removed all ingredients of recipe "#1" from stock' => 'x',
+ 'Consume all ingredients needed by this recipe' => 'x',
+ 'Click to show technical details' => 'x',
+ 'Error while saving, probably this item already exists' => 'x',
+ 'Error details' => 'x',
+ 'Tasks' => 'x',
+ 'Show done tasks' => 'x',
+ 'Task' => 'x',
+ 'Due' => 'x',
+ 'Assigned to' => 'x',
+ 'Mark task "#1" as completed' => 'x',
+ 'Uncategorized' => 'x',
+ 'Task categories' => 'x',
+ 'Create task' => 'x',
+ 'A due date is required' => 'x',
+ 'Category' => 'x',
+ 'Edit task' => 'x',
+ 'Are you sure to delete task "#1"?' => 'x',
+ '#1 task is due to be done within the next #2 days' => 'x',
+ '#1 tasks are due to be done within the next #2 days' => 'x',
+ '#1 task is overdue to be done' => 'x',
+ '#1 tasks are overdue to be done' => 'x',
+ 'Edit task category' => 'x',
+ 'Create task category' => 'x',
+ 'Product groups' => 'x',
+ 'Ungrouped' => 'x',
+ 'Create product group' => 'x',
+ 'Edit product group' => 'x',
+ 'Product group' => 'x',
+ 'Are you sure to delete product group "#1"?' => 'x',
+ 'Stay logged in permanently' => 'x',
+ 'When not set, you will get logged out at latest after 30 days' => 'x',
+ 'Filter by status' => 'x',
+ 'Below min. stock amount' => 'x',
+ 'Expiring soon' => 'x',
+ 'Already expired' => 'x',
+ 'Due soon' => 'x',
+ 'Overdue' => 'x',
+ 'View settings' => 'x',
+ 'Auto reload on external changes' => 'x',
+ 'Enable night mode' => 'x',
+ 'Auto enable in time range' => 'x',
+ 'From' => 'x',
+ 'in format' => 'x',
+ 'To' => 'x',
+ 'Time range goes over midnight' => 'x',
+ 'Product picture' => 'x',
+ 'No file selected' => 'x',
+ 'If you don\'t select a file, the current picture will not be altered' => 'x',
+ 'Delete' => 'x',
+ 'The current picture will be deleted when you save the product' => 'x',
+ 'Select file' => 'x',
+ 'Image of product #1' => 'x',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'x',
+ 'Delete not possible' => 'x',
+ 'Equipment' => 'x',
+ 'Instruction manual' => 'x',
+ 'The selected equipment has no instruction manual' => 'x',
+ 'Notes' => 'x',
+ 'Edit equipment' => 'x',
+ 'Create equipment' => 'x',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'x',
+ 'No instruction manual available' => 'x',
+ 'The current instruction manual will be deleted when you save the equipment' => 'x',
+ 'No picture available' => 'x',
+ 'Filter by product group' => 'x',
+ 'Presets for new products' => 'x',
+ 'Included recipes' => 'x',
+ 'A recipe is required' => 'x',
+ 'Add included recipe' => 'x',
+ 'Edit included recipe' => 'x',
+ 'Group' => 'x',
+ 'This will be used as a headline to group ingredients together' => 'x',
+ 'Journal' => 'x',
+ 'Stock journal' => 'x',
+ 'Filter by product' => 'x',
+ 'Booking time' => 'x',
+ 'Booking type' => 'x',
+ 'Undo booking' => 'x',
+ 'Undone on' => 'x',
+ 'Batteries journal' => 'x',
+ 'Filter by battery' => 'x',
+ 'Undo charge cycle' => 'x',
+ 'Undo chore execution' => 'x',
+ 'Chore execution successfully undone' => 'x',
+ 'Undo' => 'x',
+ 'Booking successfully undone' => 'x',
+ 'Charge cycle successfully undone' => 'x',
+ 'This cannot be negative and must be an integral number' => 'x',
+ 'Disable stock fulfillment checking for this ingredient' => 'x',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => 'Salta',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/it/userfield_types.php b/localization-backup/it/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/it/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/nl/chore_types.php b/localization-backup/nl/chore_types.php
new file mode 100644
index 00000000..f88b6415
--- /dev/null
+++ b/localization-backup/nl/chore_types.php
@@ -0,0 +1,9 @@
+ 'Handmatig',
+ 'dynamic-regular' => 'Dynamisch regelmatig',
+ 'daily' => 'Dagelijks',
+ 'weekly' => 'Wekelijks',
+ 'monthly' => 'Maandelijks'
+);
diff --git a/localization-backup/nl/component_translations.php b/localization-backup/nl/component_translations.php
new file mode 100644
index 00000000..9f18bac1
--- /dev/null
+++ b/localization-backup/nl/component_translations.php
@@ -0,0 +1,10 @@
+ 'nl',
+ 'timeago_nan' => 'NaN jaar geleden',
+ 'moment_locale' => 'nl',
+ 'datatables_localization' => '',
+ 'summernote_locale' => 'nl-NL',
+ 'fullcalendar_locale' => 'nl'
+);
diff --git a/localization-backup/nl/demo_data.php b/localization-backup/nl/demo_data.php
new file mode 100644
index 00000000..3190f14e
--- /dev/null
+++ b/localization-backup/nl/demo_data.php
@@ -0,0 +1,95 @@
+ 'Koekjes',
+ 'Chocolate' => 'Chocolade',
+ 'Pantry' => 'Voorraadkast',
+ 'Candy cupboard' => 'Snoepjeskast',
+ 'Tinned food cupboard' => 'Blikkenkast',
+ 'Fridge' => 'Koelkast',
+ 'Piece' => 'Stuk',
+ 'Pieces' => 'Stukken',
+ 'Pack' => 'Pak',
+ 'Packs' => 'Pakken',
+ 'Glass' => 'Glas',
+ 'Glasses' => 'Glazen',
+ 'Tin' => 'Blik',
+ 'Tins' => 'Blikken',
+ 'Can' => 'Blik',
+ 'Cans' => 'Blikken',
+ 'Bunch' => 'Bundel',
+ 'Bunches' => 'Bundels',
+ 'Gummy bears' => 'Gombeertjes',
+ 'Crisps' => 'Chips',
+ 'Eggs' => 'Eieren',
+ 'Noodles' => 'Noodles',
+ 'Pickles' => 'Augurken',
+ 'Gulash soup' => 'Goulashsoep',
+ 'Yogurt' => 'Yoghurt',
+ 'Cheese' => 'Kaas',
+ 'Cold cuts' => 'Beleg',
+ 'Paprika' => 'Paprika',
+ 'Cucumber' => 'Komkommer',
+ 'Radish' => 'Radijs',
+ 'Tomato' => 'Tomaat',
+ 'Changed towels in the bathroom' => 'Handdoeken verwisseld in badkamer',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => 'Garantie eindigt',
+ 'TV remote control' => '',
+ 'Alarm clock' => '',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => 'Pizzadeeg',
+ 'Sieved tomatoes' => '',
+ 'Salami' => 'Salami',
+ 'Toast' => '',
+ 'Minced meat' => 'Gehakt',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti bolognese',
+ 'Sandwiches' => 'Sandwiches',
+ 'English' => 'Engels',
+ 'German' => 'Duits',
+ 'Italian' => 'Italiaans',
+ 'Demo in different language' => 'Demo in een andere taal',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => 'Demo Gebruiker',
+ 'Gram' => 'Gram',
+ 'Grams' => 'Gram',
+ 'Flour' => 'Bloem',
+ 'Pancakes' => 'Pannenkoeken',
+ 'Sugar' => 'Suiker',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => 'Herstel de garagepoort',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => 'Snoep',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => 'Groenten/Fruit',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => 'Koffiemachine',
+ 'Dishwasher' => 'Afwasmachine',
+ 'Liter' => 'Liter',
+ 'Liters' => '',
+ 'Bottle' => 'Fles',
+ 'Bottles' => 'Flessen',
+ 'Milk' => 'Melk',
+ 'Chocolate sauce' => 'Chocoladesaus',
+ 'Milliliters' => 'Milliliters',
+ 'Milliliter' => 'Milliliter',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => 'Frans',
+ 'Turkish' => 'Turks',
+ 'Spanish' => 'Spaans',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/nl/stock_transaction_types.php b/localization-backup/nl/stock_transaction_types.php
new file mode 100644
index 00000000..5d63b530
--- /dev/null
+++ b/localization-backup/nl/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Aankoop',
+ 'consume' => 'Consumeren',
+ 'inventory-correction' => 'Voorraadcorrectie',
+ 'product-opened' => 'Product geopend'
+);
diff --git a/localization-backup/nl/strings.php b/localization-backup/nl/strings.php
new file mode 100644
index 00000000..d5095350
--- /dev/null
+++ b/localization-backup/nl/strings.php
@@ -0,0 +1,397 @@
+ 'Voorraadoverzicht',
+ '#1 products expiring within the next #2 days' => '#1 producten vervallen binnen de volgende #2 dagen',
+ '#1 products are already expired' => '#1 producten zijn al verlopen',
+ '#1 products are below defined min. stock amount' => '#1 producten zijn onder gedefinieerde min. voorraad aantal',
+ 'Product' => 'Product',
+ 'Amount' => 'Aantal',
+ 'Next best before date' => 'De eerstvolgende houdbaarheidsdatum',
+ 'Logout' => 'Uitloggen',
+ 'Chores overview' => 'Overzicht klusjes',
+ 'Batteries overview' => 'Batterijen overzicht',
+ 'Purchase' => 'Aankoop',
+ 'Consume' => 'Consumeren',
+ 'Inventory' => 'Voorraad',
+ 'Shopping list' => 'Boodschappenlijst',
+ 'Chore tracking' => 'Klusjes volgen',
+ 'Battery tracking' => 'Batterij volgen',
+ 'Products' => 'Producten',
+ 'Locations' => 'Locaties',
+ 'Quantity units' => 'Aantal eenheden',
+ 'Chores' => 'Klusjes',
+ 'Batteries' => 'Batterijen',
+ 'Chore' => 'Klus',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => 'Laatst gevolgd',
+ 'Battery' => 'Batterij',
+ 'Last charged' => 'Laatst opgeladen',
+ 'Next planned charge cycle' => 'Volgende geplande laadcyclus',
+ 'Best before' => 'Houdbaar tot',
+ 'OK' => 'OK',
+ 'Product overview' => 'Productoverzicht',
+ 'Stock quantity unit' => 'Voorraadhoeveelheidseenheid',
+ 'Stock amount' => 'Voorraadhoeveelheid',
+ 'Last purchased' => 'Laatst gekocht',
+ 'Last used' => 'Laatst gebruikt',
+ 'Spoiled' => 'Verspild',
+ 'Barcode lookup is disabled' => 'Opzoeken op streepjescode is uitgeschakeld',
+ 'will be added to the list of barcodes for the selected product on submit' => 'wordt toegevoegd aan de lijst van streepjescodes voor het geselecteerde product',
+ 'New amount' => 'Nieuwe aantal',
+ 'Note' => 'Notitie',
+ 'Tracked time' => 'Bijgehouden tijd',
+ 'Chore overview' => 'Overzicht klus',
+ 'Tracked count' => 'Bijgehouden aantal',
+ 'Battery overview' => 'Batterijoverzicht',
+ 'Charge cycles count' => 'Aantal laadcycli',
+ 'Create shopping list item' => 'Maak een item in de boodschappenlijst',
+ 'Edit shopping list item' => 'Bewerk item in de boodschappenlijst',
+ 'Save' => 'Opslaan',
+ 'Add' => 'Toevoegen',
+ 'Name' => 'Naam',
+ 'Location' => 'Locatie',
+ 'Min. stock amount' => 'Min. voorraadhoeveelheid',
+ 'QU purchase' => 'QU aankoop',
+ 'QU stock' => 'QU Stock',
+ 'QU factor' => 'QU factor',
+ 'Description' => 'Omschrijving',
+ 'Create product' => 'Maak een product',
+ 'Barcode(s)' => 'Barcode(s)',
+ 'Minimum stock amount' => 'Minimale voorraadhoeveelheid',
+ 'Default best before days' => 'Standaard houdbaarheidsdatum',
+ 'Quantity unit purchase' => 'Aankoop aantal eenheden ',
+ 'Quantity unit stock' => 'Voorraad aantal eenheden',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => 'Maak een locatie',
+ 'Create quantity unit' => 'Maak eenheidseenheid',
+ 'Period type' => 'Periode type',
+ 'Period days' => 'Periode dagen',
+ 'Create chore' => 'Maak klus',
+ 'Used in' => 'Gebruikt in',
+ 'Create battery' => 'Maak een batterij',
+ 'Edit battery' => 'Bewerk batterij',
+ 'Edit chore' => 'Bewerk klus',
+ 'Edit quantity unit' => 'Bewerk hoeveelheidseenheid',
+ 'Edit product' => 'Bewerk product',
+ 'Edit location' => 'Wijzig locatie',
+ 'Record data' => 'Gegevens opslaan',
+ 'Manage master data' => 'Beheer master data',
+ 'This will apply to added products' => 'Dit zal toegepast worden op toegevoegde producten',
+ 'never' => 'nooit',
+ 'Add products that are below defined min. stock amount' => 'Voeg producten toe die onder het gedefinieerde min. voorraad zijn',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Voor aankopen wordt dit aantal dagen toegevoegd aan vandaag voor de houdbaarheidsdatum suggestie',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Dit betekent dat 1 #1 aankoop geconverteerd zal worden in #2 en #3 voorraad',
+ 'Login' => 'Login',
+ 'Username' => 'Gebruikersnaam',
+ 'Password' => 'Wachtwoord',
+ 'Invalid credentials, please try again' => 'Ongeldige aanmeldgegevens',
+ 'Are you sure to delete battery "#1"?' => 'Klaar om batterij "#1" te verwijderen?',
+ 'Yes' => 'Ja',
+ 'No' => 'Nee',
+ 'Are you sure to delete chore "#1"?' => 'Ben je zeker dat je taak "#1" wilt verwijderen?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" kon niet aan een product gelinkt worden, hoe wil je verder gaan?',
+ 'Create or assign product' => 'Maak of assigneer product',
+ 'Cancel' => 'Annuleer',
+ 'Add as new product' => 'Voeg toe als nieuw product',
+ 'Add as barcode to existing product' => 'Voeg toe als streepjescode bij bestaand product',
+ 'Add as new product and prefill barcode' => 'Voeg toe als nieuw product en vul streepjescode in',
+ 'Are you sure to delete quantity unit "#1"?' => 'Weet u zeker dat u hoeveelheidseenheid "#1" wilt verwijderen?',
+ 'Are you sure to delete product "#1"?' => 'Weet u zeker dat u product "#1" wilt verwijderen?',
+ 'Are you sure to delete location "#1"?' => 'Weet u zeker dat u locatie "#1" wilt verwijderen?',
+ 'Manage API keys' => 'Beheer API sleutels',
+ 'REST API & data model documentation' => 'REST API & data model documentatie',
+ 'API keys' => 'API sleutels',
+ 'Create new API key' => 'Maak nieuwe API sleutel',
+ 'API key' => 'API sleutel',
+ 'Expires' => 'Vervalt',
+ 'Created' => 'Aangemaakt',
+ 'This product is not in stock' => 'Dit product is niet in voorraad',
+ 'This means #1 will be added to stock' => '#1 zal worden toegevoegd aan de voorraad',
+ 'This means #1 will be removed from stock' => '#1 zal worden verwijderd uit de voorraad',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '#1 #2 van #3 verwijderd uit de voorraad',
+ 'About grocy' => 'Over grocy',
+ 'Close' => 'Sluit',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => 'Vrijgegeven op',
+ 'Consume #3 #1 of #2' => 'Consumeer #3 #1 van #2',
+ 'Added #1 #2 of #3 to stock' => 'Voeg #1 #2 van #3 toe aan voorraad',
+ 'Stock amount of #1 is now #2 #3' => 'Vooraad van #1 is nu #2 #3',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => 'Alle',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => 'Filteren op locatie',
+ 'Search' => 'Zoek',
+ 'Not logged in' => 'Niet ingelogd',
+ 'You have to select a product' => 'Je moet een product selecteren',
+ 'You have to select a chore' => 'Je moet een klusje selecteren',
+ 'You have to select a battery' => 'Je moet een batterij selecteren',
+ 'A name is required' => 'Een naam is verplicht',
+ 'A location is required' => 'Een locatie is verplicht',
+ 'The amount cannot be lower than #1' => 'De hoeveelheid kan niet lager zijn dan #1',
+ 'This cannot be negative' => 'Dit kan niet negatief zijn',
+ 'A quantity unit is required' => 'Een hoeveelheidseenheid is verplicht',
+ 'A period type is required' => 'Een periode type is verplicht',
+ 'A best before date is required' => 'Een THT is verplicht',
+ 'Settings' => 'Instellingen',
+ 'This can only be before now' => 'Dit kan een voor nu zijn',
+ 'Calendar' => 'Kalender',
+ 'Recipes' => 'Recepten',
+ 'Edit recipe' => 'Bewerk recept',
+ 'New recipe' => 'Nieuw recept',
+ 'Ingredients list' => 'Ingrediëntenlijst',
+ 'Add recipe ingredient' => 'Voeg ingrediënt toe aan recept',
+ 'Edit recipe ingredient' => 'Bewerk ingrediënt',
+ 'Are you sure to delete recipe "#1"?' => 'Ben je zeker dat je recept "#1" wil verwijderen?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Ben je zeker dat je ingrediënt "#1" wil verwijderen?',
+ 'Are you sure to empty shopping list "#1"?' => 'Weet je zeker dat je boodschappenlijst #1 leeg wilt maken?',
+ 'Clear list' => 'Maak lijst leeg',
+ 'Requirements fulfilled' => 'Vereisten volbracht',
+ 'Put missing products on shopping list' => 'Voeg ontbrekende producten toe aan boodschappenlijst',
+ 'Not enough in stock, #1 ingredients missing' => 'Niet genoeg in voorraad, #1 ingrediënten ontbreken',
+ 'Enough in stock' => 'Genoeg in voorraad',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Niet genoeg in voorraad, #1 ingrediënten ontbreken maar staan al op de boodschappenlijst',
+ 'Expand to fullscreen' => 'Fullscreen',
+ 'Ingredients' => 'Ingrediënten',
+ 'Preparation' => 'Voorbereiding',
+ 'Recipe' => 'Recept',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Niet genoeg op voorraad, #1 ontbreekt, #2 al op de boodschappenlijst',
+ 'Show notes' => 'Toon notities',
+ 'Put missing amount on shopping list' => 'Zet ontbrekende hoeveelheid op boodschappenlijst',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Ben je zeker dat je alle ontbrekende ingrediënten voor recept "#1" op de boodschappenlijst wilt zetten?',
+ 'Added for recipe #1' => 'Toegevoegd voor recept #1',
+ 'Manage users' => 'Beheer gebruikers',
+ 'User' => 'Gebruiker',
+ 'Users' => 'Gebruikers',
+ 'Are you sure to delete user "#1"?' => 'Ben je zeker dat je gebruiker "#1" wilt verwijderen?',
+ 'Create user' => 'Maak gebruiker',
+ 'Edit user' => 'Bewerk gebruiker',
+ 'First name' => 'Voornaam',
+ 'Last name' => 'Achternaam',
+ 'A username is required' => 'een gebruikersnaam is verplicht',
+ 'Confirm password' => 'Bevestig wachtwoord',
+ 'Passwords do not match' => 'Wachtwoorden komen niet overeen',
+ 'Change password' => 'Wachtwoord wijzigen',
+ 'Done by' => 'Gedaan door',
+ 'Last done by' => 'Laatst gedaan door',
+ 'Unknown' => 'Onbekend',
+ 'Filter by chore' => 'Filteren op klus',
+ 'Chores journal' => 'Klusjesdagboek',
+ '0 means suggestions for the next charge cycle are disabled' => '0 betekent dat suggesties voor de volgende laadcyclus zijn uitgeschakeld',
+ 'Charge cycle interval (days)' => 'Laadcyclusinterval (dagen)',
+ 'Last price' => 'Laatste prijs',
+ 'Price history' => 'Prijs geschiedenis',
+ 'No price history available' => 'Geen prijsgeschiedenis beschikbaar',
+ 'Price' => 'Prijs',
+ 'in #1 per purchase quantity unit' => 'in #1 per aankoophoeveelheid',
+ 'The price cannot be lower than #1' => 'Prijs kan niet lager zijn dan #1',
+ '#1 product expires within the next #2 days' => '#1 product vervalt in de komende #2 dagen',
+ '#1 product is already expired' => '#1 product is al vervallen',
+ '#1 product is below defined min. stock amount' => '#1 product is onder min. voorraadhoeveelheid',
+ 'Unit' => 'Eenheid',
+ 'Units' => 'enheden',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => 'In enkelvoud',
+ 'in plural form' => 'In meervoud',
+ 'Never expires' => 'Vervalt nooit',
+ 'This cannot be lower than #1' => 'Dit kan niet lager zijn dan #1',
+ '-1 means that this product never expires' => '-1 wilt zeggen dat het product noot vervalt',
+ 'Quantity unit' => 'Hoeveelheidseenheid',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Alle ingrediënten van recept "#1" uit voorraad verwijderd',
+ 'Consume all ingredients needed by this recipe' => 'Consumeer alle ingrediënten die voor dit recept nodig zijn',
+ 'Click to show technical details' => 'Klik op technische details te tonen',
+ 'Error while saving, probably this item already exists' => 'Error bij opslaan, waarschijnlijk bestaat dit item al',
+ 'Error details' => 'Error details',
+ 'Tasks' => 'Klusjes',
+ 'Show done tasks' => 'Toon afgewerkte klusjes',
+ 'Task' => 'Klus',
+ 'Due' => 'Verwacht',
+ 'Assigned to' => 'Toegewezen aan',
+ 'Mark task "#1" as completed' => 'Klusje "#1" als afgewerkt aanduiden',
+ 'Uncategorized' => 'Ongecategoriseerd',
+ 'Task categories' => 'Klusjescategorieën',
+ 'Create task' => 'Maak klus',
+ 'A due date is required' => '',
+ 'Category' => 'Categorie',
+ 'Edit task' => 'Bewerk taak',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => 'Bewerk kluscategorie',
+ 'Create task category' => 'Maak kluscategorie',
+ 'Product groups' => 'Productcategorieën',
+ 'Ungrouped' => 'Geen categorie',
+ 'Create product group' => 'Maak productcategorie',
+ 'Edit product group' => 'Bewerk productcategorie',
+ 'Product group' => 'Productcategorie',
+ 'Are you sure to delete product group "#1"?' => 'Weet je zeker dat je productcategorie "#1" wilt verwijderen?',
+ 'Stay logged in permanently' => 'Permanent aangemeld blijven',
+ 'When not set, you will get logged out at latest after 30 days' => 'Wanneer niet aangevinkt zal je na maximum 30 dagen afgemeld worden',
+ 'Filter by status' => 'Filteren op status',
+ 'Below min. stock amount' => 'Onder min. stock hoeveelheid',
+ 'Expiring soon' => 'Vervalt binnenkort',
+ 'Already expired' => 'Al vervallen',
+ 'Due soon' => 'Bij over tijd',
+ 'Overdue' => 'Over tijd',
+ 'View settings' => 'Beeld instellingen',
+ 'Auto reload on external changes' => 'Auto-vernieuwen bij externe wijzigingen',
+ 'Enable night mode' => 'Zet nachtmodus aan',
+ 'Auto enable in time range' => 'Automatisch aanzetten in tijdsspanne',
+ 'From' => 'Van',
+ 'in format' => 'in formaat',
+ 'To' => 'Tot',
+ 'Time range goes over midnight' => 'Tijdsspanne gaat voorbij middernacht',
+ 'Product picture' => 'Productafbeelding',
+ 'No file selected' => 'Geen bestand geslecteerd',
+ 'If you don\'t select a file, the current picture will not be altered' => 'De huidige afbeelding wordt niet gewijzigd als je geen bestand selecteerd',
+ 'Delete' => 'Verwijder',
+ 'The current picture will be deleted when you save the product' => 'De huidige afbeelding wordt gewist wanneer je het product opslaat',
+ 'Select file' => 'Selecteer bestand',
+ 'Image of product #1' => 'Afbeelding van product #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Dit product kan niet worden verwijdert want het is in voorraad, verwijder dit eerst uit je voorraad.',
+ 'Delete not possible' => 'Verwijderen niet mogelijk',
+ 'Equipment' => 'Toestellen',
+ 'Instruction manual' => 'Gebruikshandleiding',
+ 'The selected equipment has no instruction manual' => 'Het geselecteerde toestel heeft gaan gebruikshandleiding',
+ 'Notes' => 'Notities',
+ 'Edit equipment' => 'Bewerk toestel',
+ 'Create equipment' => 'Maak toestel',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Wanneer je geen bestand kiest zal de huidige gebruikshandleiding niet gewijzigd worden',
+ 'No instruction manual available' => 'Geen gebruikshandleiding beschikbaar',
+ 'The current instruction manual will be deleted when you save the equipment' => 'De huidige gebruikshandleiding zal verwijderd worden wanneer je het toestel opslaat',
+ 'No picture available' => 'Geen afbeelding beschikbaar',
+ 'Filter by product group' => 'Filteren op productcategorie',
+ 'Presets for new products' => 'Vooraf ingesteld voor nieuwe producten',
+ 'Included recipes' => 'Bijgevoegde recepten',
+ 'A recipe is required' => 'Een recept is vereist',
+ 'Add included recipe' => 'Voeg bijgevoegd recept toe',
+ 'Edit included recipe' => 'Bewerk bijgevoegd recept',
+ 'Group' => 'Groep',
+ 'This will be used as a headline to group ingredients together' => 'Dit is een hoofding om ingrediënten te groeperen',
+ 'Journal' => 'Dagboek',
+ 'Stock journal' => 'Voorraad dagboek',
+ 'Filter by product' => 'Filteren op product',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => 'Filteren op batterij',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => 'Ongedaan maken',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => 'Dit kan niet negatief zijn en moet een integraal getal zijn',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => 'Voeg alle lijst items toe aan voorraad',
+ 'Add #3 #1 of #2 to stock' => 'Voeg #3 #1 van #2 toe aan voorraad',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => 'Gebruik een specifiek voorraad item',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => 'Markeer #1 #2 van #3 als open',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => 'Standaard houdbaar tot na geopend',
+ 'Marked #1 #2 of #3 as opened' => 'Markeer #1 #2 van #3 als geopend',
+ 'Mark as opened' => 'Markeer als geopend',
+ 'Expires on #1; Bought on #2' => 'Vervalt op #1; Aangekocht op #2',
+ 'Not opened' => 'Niet geopend',
+ 'Opened' => 'Geopend',
+ 'Mark #3 #1 of #2 as open' => 'Markeer #1 #2 van #3 als open',
+ '#1 opened' => '#1 geopend',
+ 'Product expires' => 'Product vervalt',
+ 'Task due' => '',
+ 'Chore due' => 'Klusje tegen',
+ 'Battery charge cycle due' => 'Batterij oplaadcyclus nabij',
+ 'Show clock in header' => 'Toon klok in koptekst',
+ 'Stock settings' => 'Voorraadinstellingen',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => 'Overslaan',
+ 'Servings' => 'Porties',
+ 'Costs' => 'Kosten',
+ 'Based on the prices of the last purchase per product' => 'Gebaseerd op de prijs van de laatste aankoop per product',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => 'Afbeelding',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Zet het vinkje uit om ingrediënten niet op de boodschappenlijst te zetten',
+ 'This is for statistical purposes only' => 'Dit dient enkel voor statistische doeleinden',
+ 'You have to select a recipe' => 'Je moet een recept selecteren',
+ 'Key type' => 'Sleutel type',
+ 'Share/Integrate calendar (iCal)' => 'Deel/Integreer agenda (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Gebruik de volgende (publieke) URL om de agenda te delen of integreren in iCal formaat',
+ 'Allow partial units in stock' => 'Sta gedeeltelijke eenheden in voorraad toe',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => 'Tarra gewicht',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => 'Je moet een locatie selecteren',
+ 'List' => 'Lijst',
+ 'Gallery' => 'Gallerij',
+ 'The current picture will be deleted when you save the recipe' => 'De huidige afbeelding zal worden verwijderd wanneer je het recept opslaat.',
+ 'Show product details' => 'Toon product details',
+ 'Stock journal for this product' => 'Toon dagboek voor dit product',
+ 'Show chore details' => 'Toon klus details',
+ 'Journal for this chore' => 'Dagboek voor deze klus',
+ 'Show battery details' => 'Toon batterij details',
+ 'Journal for this battery' => 'Dagboek voor deze batterij',
+ 'System info' => 'Systeeminfo',
+ 'Changelog' => 'Changelog',
+ 'will be multiplied a factor of #1 to get #2' => 'wordt vermenigvuldigt met #1 om #2 te krijgen',
+ 'The given date is earlier than today, are you sure?' => 'De opgegeven datum is eerder dan vandaag, bent u zeker?',
+ 'Product count' => 'Productenteller',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => 'Voeg item toe',
+ 'Selected shopping list' => 'Selecteer boodschappenlijst',
+ 'New shopping list' => 'Nieuwe boodschappenlijst',
+ 'Delete shopping list' => 'Verwijder boodschappenlijst',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => 'Taken instellingen',
+ 'Create shopping list' => 'Maak boodschappenlijst',
+ 'Are you sure to delete shopping list "#1"?' => 'Weet je zeker dat je boodschappenlijst #1 wilt verwijderen?',
+ 'Average shelf life' => '',
+ 'Spoil rate' => 'Verspillings gemiddelde',
+ 'Show more' => 'Laat meer zien',
+ 'Show less' => 'Laat minder zien',
+ 'The amount must be between #1 and #2' => 'De hoeveelheid moet liggen tussen #1 en #2',
+ 'Day of month' => 'Dag van de maand',
+ 'Monday' => 'Maandag',
+ 'Tuesday' => 'Dinsdag',
+ 'Wednesday' => 'Woensdag',
+ 'Thursday' => 'Donderdag',
+ 'Friday' => 'rijdag',
+ 'Saturday' => 'Zaterdag',
+ 'Sunday' => 'ondag',
+ 'Configure userfields' => 'Configureer gebruikersvelden',
+ 'Userfields' => 'Gebruikersvelden',
+ 'Filter by entity' => 'Entiteit filteren',
+ 'Entity' => 'Entiteit',
+ 'Caption' => '',
+ 'Type' => 'Type',
+ 'Create userfield' => 'Maak gebruikersveld aan',
+ 'A entity is required' => 'Een entiteit is verplicht',
+ 'A caption is required' => '',
+ 'A type is required' => 'Een type is verplicht',
+ 'Show as column in tables' => 'Laat als kolom zien in tabellen',
+ 'This is required and can only contain letters and numbers' => 'Dit is verplicht en kan alleen cijfers en letters bevatten',
+ 'Edit userfield' => 'Wijzig gebruikersveld'
+);
diff --git a/localization-backup/nl/userfield_types.php b/localization-backup/nl/userfield_types.php
new file mode 100644
index 00000000..705dbe1b
--- /dev/null
+++ b/localization-backup/nl/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Tekst (één regel)',
+ 'text-multi-line' => 'Tekst (meerdere regels)',
+ 'number-integral' => 'Number (héél getal)',
+ 'number-decimal' => 'Nummer (decimaal)',
+ 'date' => 'Getal (zonder tijd)',
+ 'datetime' => 'Datum en tijd',
+ 'checkbox' => 'Checkbox'
+);
diff --git a/localization-backup/no/chore_types.php b/localization-backup/no/chore_types.php
new file mode 100644
index 00000000..7af3dd17
--- /dev/null
+++ b/localization-backup/no/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuel',
+ 'dynamic-regular' => 'Automatisk',
+ 'daily' => 'Daglig',
+ 'weekly' => 'Ukentlig',
+ 'monthly' => 'Månedlig'
+);
diff --git a/localization-backup/no/component_translations.php b/localization-backup/no/component_translations.php
new file mode 100644
index 00000000..eb80aedf
--- /dev/null
+++ b/localization-backup/no/component_translations.php
@@ -0,0 +1,10 @@
+ 'no',
+ 'timeago_nan' => 'for NaN År',
+ 'moment_locale' => 'nb',
+ 'datatables_localization' => '{"sEmptyTable":"Det finnes ingen data i tabellen","sInfo":"_START_ fra _END_ til _TOTAL_ skriv","sInfoEmpty":"Ingen data tilgjengelign","sInfoFiltered":"(filtrert fra _MAX_ skriv)","sInfoPostFix":"","sInfoThousands":".","sLengthMenu":"_MENU_ per side","sLoadingRecords":"Laster ..","sProcessing":"Vennligst vent ..","sSearch":"Søk","sZeroRecords":"Ingen oppføringer tilgjengelig","oPaginate":{"sFirst":"Første","sPrevious":"Bakover","sNext":"Neste","sLast":"Siste"},"oAria":{"sSortAscending":": Sortér stigende","sSortDescending":": Sortér synkende"},"select":{"rows":{"0":"klikk på en linje for å velge","1":"1 linje valgt","_":" linger valgt"}},"buttons":{"print":"Print","colvis":"Søyle","copy":"Kopi","copyTitle":"Kopier til utklippstavlen","copyKeys":"Trykk ctrl eller ⌘ + C for å kopiere tabell
til utklipptavlen.
For å avbryte, klikke på meldingen eller trykk på ESC.","copySuccess":{"1":"1 Kolonne kopiert","_":" kolonne kopiert"}}}',
+ 'summernote_locale' => 'nb-NO',
+ 'fullcalendar_locale' => 'nb'
+);
diff --git a/localization-backup/no/demo_data.php b/localization-backup/no/demo_data.php
new file mode 100644
index 00000000..413f9027
--- /dev/null
+++ b/localization-backup/no/demo_data.php
@@ -0,0 +1,95 @@
+ 'Cookies',
+ 'Chocolate' => 'Sjokolade',
+ 'Pantry' => 'Spiskammers',
+ 'Candy cupboard' => 'Godteriskapet',
+ 'Tinned food cupboard' => 'Boksematskapet',
+ 'Fridge' => 'Kjøleskapet',
+ 'Piece' => 'Ett',
+ 'Pieces' => 'Flere',
+ 'Pack' => 'Pakke',
+ 'Packs' => 'Pakker',
+ 'Glass' => 'Glass',
+ 'Glasses' => 'Glass',
+ 'Tin' => 'Hermetikkboks',
+ 'Tins' => 'Hermetikkbokser',
+ 'Can' => 'Boks',
+ 'Cans' => 'Bokser',
+ 'Bunch' => 'Klase',
+ 'Bunches' => 'Klaser',
+ 'Gummy bears' => 'Vingummibjørner',
+ 'Crisps' => 'Chips',
+ 'Eggs' => 'Egg',
+ 'Noodles' => 'Nuddler',
+ 'Pickles' => 'Sur agurk',
+ 'Gulash soup' => 'Gulasj suppe',
+ 'Yogurt' => 'Yoghurt',
+ 'Cheese' => 'Ost',
+ 'Cold cuts' => 'Kjøttpålegg',
+ 'Paprika' => 'Paprika',
+ 'Cucumber' => 'Agurk',
+ 'Radish' => 'Reddik',
+ 'Tomato' => 'Tomat',
+ 'Changed towels in the bathroom' => 'Bytt handklær på badet',
+ 'Cleaned the kitchen floor' => 'Vasket kjøkkengulvet',
+ 'Warranty ends' => 'Garanti utgår',
+ 'TV remote control' => 'Fjernkontroll for TV',
+ 'Alarm clock' => 'Alarmklokke',
+ 'Heat remote control' => 'Fjernkontroll for termostat',
+ 'Lawn mowed in the garden' => 'Kuttet gresset i hagen',
+ 'Some good snacks' => 'Noen gode snacks',
+ 'Pizza dough' => 'Pizzadeig',
+ 'Sieved tomatoes' => 'Tomatpuré',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Ristet brød',
+ 'Minced meat' => 'Kjøttdeig',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti Bolognese',
+ 'Sandwiches' => 'Smørbrød',
+ 'English' => 'Engelsk',
+ 'German' => 'Tysk',
+ 'Italian' => 'Italiensk',
+ 'Demo in different language' => 'Demo i annet språk',
+ 'This is the note content of the recipe ingredient' => 'Dette er notisen for ingrediensen i oppskriften',
+ 'Demo User' => 'Demo Bruker',
+ 'Gram' => 'Gram',
+ 'Grams' => 'Gram',
+ 'Flour' => 'Mel',
+ 'Pancakes' => 'Pannekaker',
+ 'Sugar' => 'Sukker',
+ 'Home' => 'Hus',
+ 'Life' => 'Livstil',
+ 'Projects' => 'Projekter',
+ 'Repair the garage door' => 'Reparere garasjedøren',
+ 'Fork and improve grocy' => 'Fork og forbedre grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Finne på løsning for hva jeg skal gjøre når jeg mister dørnøklene',
+ 'Sweets' => 'Godteri',
+ 'Bakery products' => 'Bakevarer',
+ 'Tinned food' => 'Boksemat',
+ 'Butchery products' => 'Kjøtt/ Ferskvare',
+ 'Vegetables/Fruits' => 'Frukt/ Grønnsaker',
+ 'Refrigerated products' => 'Frysedisk',
+ 'Coffee machine' => 'Kaffetrakter',
+ 'Dishwasher' => 'Oppvaskmaskin',
+ 'Liter' => 'Liter',
+ 'Liters' => 'Liter',
+ 'Bottle' => 'Flaske',
+ 'Bottles' => 'Flasker',
+ 'Milk' => 'Melk',
+ 'Chocolate sauce' => 'Sjokoladesaus',
+ 'Milliliters' => 'Milliliter',
+ 'Milliliter' => 'Milliliter',
+ 'Bottom' => 'Bunn',
+ 'Topping' => 'Topping',
+ 'French' => 'Fransk',
+ 'Turkish' => 'Tyrkisk',
+ 'Spanish' => 'Spansk',
+ 'Russian' => 'Russisk',
+ 'The thing which happens on the 5th of every month' => 'Husarbeid som skjer den 5 hver måneden',
+ 'The thing which happens daily' => 'Husarbeid som skjer daglig',
+ 'The thing which happens on Mondays and Wednesdays' => 'Husarbeid som skjer på mandager og onsdager',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/no/stock_transaction_types.php b/localization-backup/no/stock_transaction_types.php
new file mode 100644
index 00000000..8ee68a6c
--- /dev/null
+++ b/localization-backup/no/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Innkjøp',
+ 'consume' => 'Forbruk produkt',
+ 'inventory-correction' => 'Korreksjon av husholdningsantall ',
+ 'product-opened' => 'Produkt åpnet'
+);
diff --git a/localization-backup/no/strings.php b/localization-backup/no/strings.php
new file mode 100644
index 00000000..98bf7c4b
--- /dev/null
+++ b/localization-backup/no/strings.php
@@ -0,0 +1,397 @@
+ 'Husholdning',
+ '#1 products expiring within the next #2 days' => '#1 produkt går ut på dato innen de neste #2 dagene',
+ '#1 products are already expired' => '#1 produkt har gått ut på dato',
+ '#1 products are below defined min. stock amount' => '#1 produkt under minimum husholdningsnivå',
+ 'Product' => 'Produkt',
+ 'Amount' => 'Antall',
+ 'Next best before date' => 'Kommende best før dato',
+ 'Logout' => 'Logg ut',
+ 'Chores overview' => 'Oversikt husarbeid',
+ 'Batteries overview' => 'Oversikt batteri',
+ 'Purchase' => 'Innkjøp',
+ 'Consume' => 'Forbruk produkt',
+ 'Inventory' => 'Endre husholdning',
+ 'Shopping list' => 'Handleliste',
+ 'Chore tracking' => 'Logge husarbeid',
+ 'Battery tracking' => 'Batteri ladesyklus',
+ 'Products' => 'Produkter',
+ 'Locations' => 'Lokasjoner',
+ 'Quantity units' => 'Forpakning',
+ 'Chores' => 'Husarbeid',
+ 'Batteries' => 'Batterier',
+ 'Chore' => 'Husarbeid',
+ 'Next estimated tracking' => 'Neste handling',
+ 'Last tracked' => 'Sist logget',
+ 'Battery' => 'Batteri',
+ 'Last charged' => 'Sist ladet',
+ 'Next planned charge cycle' => 'Neste planlagte ladesyklus',
+ 'Best before' => 'Best før',
+ 'OK' => 'OK',
+ 'Product overview' => 'Produkt oversikt',
+ 'Stock quantity unit' => 'Forpakningstype i husholdningen',
+ 'Stock amount' => 'Husholdning',
+ 'Last purchased' => 'Sist kjøpt',
+ 'Last used' => 'Sist brukt',
+ 'Spoiled' => 'Produkt har gått ut på dato',
+ 'Barcode lookup is disabled' => 'Strekkodesøk deaktivert',
+ 'will be added to the list of barcodes for the selected product on submit' => 'Blir lagt til liste over strekkoder når produkt blir lagt inn.',
+ 'New amount' => 'Nytt antall',
+ 'Note' => 'Info',
+ 'Tracked time' => 'Tid utført/ ladet',
+ 'Chore overview' => 'Oversikt husarbeid',
+ 'Tracked count' => 'Antall utførelser/ ladninger',
+ 'Battery overview' => 'Batteri oversikt',
+ 'Charge cycles count' => 'Antall ladesykluser',
+ 'Create shopping list item' => 'Opprett handelisteoppføring',
+ 'Edit shopping list item' => 'Endre på handlelistoppføring',
+ 'Save' => 'Lagre',
+ 'Add' => 'Legg til',
+ 'Name' => 'Navn',
+ 'Location' => 'Lokasjon',
+ 'Min. stock amount' => 'Minimumsantall for husholdningen',
+ 'QU purchase' => 'Forpakingsfaktor innkjøp',
+ 'QU stock' => 'Forpakingsfaktor husholdning',
+ 'QU factor' => 'Forpakingsfaktor',
+ 'Description' => 'Beskrivelse',
+ 'Create product' => 'Opprett produkt',
+ 'Barcode(s)' => 'Strekkode(r)',
+ 'Minimum stock amount' => 'Minimumsantall for husholdningen',
+ 'Default best before days' => 'Standard for antall dager best før',
+ 'Quantity unit purchase' => 'Forpakning kjøpt',
+ 'Quantity unit stock' => 'Forpakning husholdning',
+ 'Factor purchase to stock quantity unit' => 'Innkjøpsfaktor for forpakning',
+ 'Create location' => 'Opprett lokasjon',
+ 'Create quantity unit' => 'Opprett forpakning',
+ 'Period type' => 'Gjentakelse',
+ 'Period days' => 'Antall dager for gjentakelse',
+ 'Create chore' => 'Opprett husarbeid oppgave',
+ 'Used in' => 'Brukt',
+ 'Create battery' => 'Opprett batteri',
+ 'Edit battery' => 'Endre batteri',
+ 'Edit chore' => 'Endre husarbeid oppgave',
+ 'Edit quantity unit' => 'Endre forpakning',
+ 'Edit product' => 'Endre produkt',
+ 'Edit location' => 'Endre lokasjon',
+ 'Record data' => 'Logg handlinger',
+ 'Manage master data' => 'Administrer masterdata',
+ 'This will apply to added products' => 'Dette vil gjelde for produkt som blir lagt til',
+ 'never' => 'aldri',
+ 'Add products that are below defined min. stock amount' => 'Legg til produkt som er under minimumsnivå for husholdningen',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Når innkjøp gjøres vil dette bli brukt som antall dager "best før"',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Dette betyr at 1 #1 innkjøp vil bli omgjort til #2 #3 husholdning',
+ 'Login' => 'Logg inn',
+ 'Username' => 'Brukernavn',
+ 'Password' => 'Passord',
+ 'Invalid credentials, please try again' => 'Feil brukernavn og/eller passord, prøv igjen',
+ 'Are you sure to delete battery "#1"?' => 'Er du sikker du ønsker å slette batteri "#1"?',
+ 'Yes' => 'Ja',
+ 'No' => 'Nei',
+ 'Are you sure to delete chore "#1"?' => 'Er du sikker på du ønsker å slette husarbeid oppgave "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" kunne ikke bli tildelt et produkt, hvordan ønsker du å fortsette?',
+ 'Create or assign product' => 'Opprett eller tildel til et produkt',
+ 'Cancel' => 'Avbryt',
+ 'Add as new product' => 'Legg til som nytt produkt',
+ 'Add as barcode to existing product' => 'Legg til strekkode til allerede eksisterende produkt',
+ 'Add as new product and prefill barcode' => 'Legg til som nytt produkt med forhåndsfylt strekkode',
+ 'Are you sure to delete quantity unit "#1"?' => 'Er du sikker du ønsker å slette forpakning "#1"?',
+ 'Are you sure to delete product "#1"?' => 'Er du sikker du ønsker å slette produkt "#1"?',
+ 'Are you sure to delete location "#1"?' => 'Er du sikker du ønsker å slette lokasjon "#1"?',
+ 'Manage API keys' => 'Administrer API-Keys',
+ 'REST API & data model documentation' => 'REST-API & Datamodell Dokumentasjon',
+ 'API keys' => 'API-Keys',
+ 'Create new API key' => 'Opprett ny API-Key',
+ 'API key' => 'API-Key',
+ 'Expires' => 'Går ut',
+ 'Created' => 'Opprettet',
+ 'This product is not in stock' => 'Dette produktet er ikke i husholdningen',
+ 'This means #1 will be added to stock' => 'Dette betyr at #1 vil bli lagt til i husholdningen',
+ 'This means #1 will be removed from stock' => 'Dette betyr at #1 vil bli fjernet fra husholdningen',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Dette betyr at det er estimert at den nye utførelsen av denne husarbeid oppgaven er logget #1 dag etter den sist var logget',
+ 'Removed #1 #2 of #3 from stock' => 'Fjernet #1 #2 #3 fra husholdningen',
+ 'About grocy' => 'Om Grocy',
+ 'Close' => 'Lukk',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 batteri må lades innen de #2 neste dagene',
+ '#1 batteries are overdue to be charged' => '#1 batteri har gått over fristen for å bli ladet opp',
+ '#1 chores are due to be done within the next #2 days' => '#1 husarbeids oppgaver skal gjøres inne de #2 neste dagene',
+ '#1 chores are overdue to be done' => '#1 husarbeids oppgaver har gått over fristen for utførelse',
+ 'Released on' => 'Utgitt',
+ 'Consume #3 #1 of #2' => 'Forbruk #3 #1 av #2',
+ 'Added #1 #2 of #3 to stock' => '#1 #2 #3 lagt til i husholdningen',
+ 'Stock amount of #1 is now #2 #3' => 'Husholdning antall #1 er nå #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Utførte husarbeid oppgave "#1" den #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'Ladet #1 den #2',
+ 'Consume all #1 which are currently in stock' => 'Forbruk alle #1 som er i husholdningen',
+ 'All' => 'Alle',
+ 'Track charge cycle of battery #1' => '#1 ladet',
+ 'Track execution of chore #1' => 'Utfør husarbeidsoppgave "#1"',
+ 'Filter by location' => 'Filtrér etter lokasjon',
+ 'Search' => 'Søk',
+ 'Not logged in' => 'Ikke logget inn',
+ 'You have to select a product' => 'Du må velge et produkt',
+ 'You have to select a chore' => 'Du må velge en husarbeidsoppgave',
+ 'You have to select a battery' => 'Du må velge et batteri',
+ 'A name is required' => 'Vennligst fyll inn et navn',
+ 'A location is required' => 'En lokasjon kreves',
+ 'The amount cannot be lower than #1' => 'Antallet kan ikke være lavere enn #1',
+ 'This cannot be negative' => 'Dette kan ikke være negativt',
+ 'A quantity unit is required' => 'Forpakning antall/størrelse kreves',
+ 'A period type is required' => 'En periodetype kreves',
+ 'A best before date is required' => 'En best før dato kreves',
+ 'Settings' => 'Innstillinger',
+ 'This can only be before now' => 'Dette kan kun være før nå',
+ 'Calendar' => 'Kalender',
+ 'Recipes' => 'Oppskrifter',
+ 'Edit recipe' => 'Endre oppskrift',
+ 'New recipe' => 'Ny oppskrift',
+ 'Ingredients list' => 'Liste over ingredienser',
+ 'Add recipe ingredient' => 'Legg ingrediens til oppskrift',
+ 'Edit recipe ingredient' => 'Endre ingrediens i oppskrift',
+ 'Are you sure to delete recipe "#1"?' => 'Er du sikker du ønsker å slette oppskrift "#1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Er du sikker du ønsker å slette ingrediens "#1" fra oppskriften?',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => 'Slett handleliste',
+ 'Requirements fulfilled' => 'Har jeg alt jeg trenger for denne oppskriften?',
+ 'Put missing products on shopping list' => 'Legg manglende produkter til handlelisten',
+ 'Not enough in stock, #1 ingredients missing' => 'Ikke nok i husholdningen, #1 ingrediens(er) mangler',
+ 'Enough in stock' => 'Nok i husholdningen',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Ikke nok i husholdningen, #1 ingrediens(er) mangler, men denne/disse er på handlelisten',
+ 'Expand to fullscreen' => 'Full skjerm',
+ 'Ingredients' => 'Ingredienser',
+ 'Preparation' => 'Forberedelse / Slik gjør du',
+ 'Recipe' => 'Oppskrift',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Ikke nok i husholdningen, mangler #1, er #2 på handlelisten',
+ 'Show notes' => 'Vis notater',
+ 'Put missing amount on shopping list' => 'Legg manglende til handlelisten',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Er du sikker du ønsker å legge alle manglende ingredienser for oppskrift "#1" i handlelisten?',
+ 'Added for recipe #1' => 'Lagt til fra oppskrift "#1"',
+ 'Manage users' => 'Administrer brukere',
+ 'User' => 'Bruker',
+ 'Users' => 'Brukere',
+ 'Are you sure to delete user "#1"?' => 'Er du sikker på du ønsker å slette bruker, "#1"?',
+ 'Create user' => 'Legg til bruker',
+ 'Edit user' => 'Endre på bruker',
+ 'First name' => 'Fornavn',
+ 'Last name' => 'Etternavn',
+ 'A username is required' => 'Et brukernavn er nødvendig',
+ 'Confirm password' => 'Bekreft passord',
+ 'Passwords do not match' => 'Passord er ikke like',
+ 'Change password' => 'Endre passord',
+ 'Done by' => 'Utført av',
+ 'Last done by' => 'Sist utført av',
+ 'Unknown' => 'Ukjent',
+ 'Filter by chore' => 'Filtrér husarbeid',
+ 'Chores journal' => 'Statistikk husarbeid',
+ '0 means suggestions for the next charge cycle are disabled' => '0 betyr neste ladesyklus er avslått',
+ 'Charge cycle interval (days)' => 'Ladesyklysintervall (dager)',
+ 'Last price' => 'Siste pris',
+ 'Price history' => 'Prishistorikk',
+ 'No price history available' => 'Ingen prishistorikk tilgjengelig',
+ 'Price' => 'Pris',
+ 'in #1 per purchase quantity unit' => 'I #1 per kjøpt forpakning ',
+ 'The price cannot be lower than #1' => 'Prisen kan ikke være lavere enn #1',
+ '#1 product expires within the next #2 days' => '#1 produkt går ut på dato innen de #2 neste dagene',
+ '#1 product is already expired' => '#1 produkt er allerede gått ut på dato',
+ '#1 product is below defined min. stock amount' => '#1 produkt er under minimums husholdningsnivå',
+ 'Unit' => 'Enhet',
+ 'Units' => 'Enheter',
+ '#1 chore is due to be done within the next #2 days' => '#1 husarbeid oppgave skal gjøres inne de #2 neste dagene',
+ '#1 chore is overdue to be done' => '#1 husarbeid oppgave har gått over fristen for utførelse',
+ '#1 battery is due to be charged within the next #2 days' => '#1 Batteri må lades innen #2 dager',
+ '#1 battery is overdue to be charged' => '#1 Batteri har gått over fristen for å lades',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '#1 enhet ble automatisk lagt til i tillegg til hva som blir skrevet inn her',
+ 'in singular form' => 'I entall',
+ 'in plural form' => 'I flertall',
+ 'Never expires' => 'Går ikke ut på dato',
+ 'This cannot be lower than #1' => 'Dette kan ikke være lavere enn #1',
+ '-1 means that this product never expires' => 'Ved å skrive -1 vil produktet ikke gå ut på dato',
+ 'Quantity unit' => 'Forpakning',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Ønsker du å bruke mindre/større enn normal forpakningsstørrelse?',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => 'Er du sikker du ønsker å forbruke alle ingredienser for "#1" oppskriften? (Ingredienser merket med "Ønsker du å bruke mindre/større enn normal forpakningsstørrelse??" blir ignorert',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Fjern alle ingredienser for "#1" oppskriften fra husholdningen.',
+ 'Consume all ingredients needed by this recipe' => 'Forbruk alle ingredienser for denne oppskriften',
+ 'Click to show technical details' => 'Klikk for å vise teknisk informasjon',
+ 'Error while saving, probably this item already exists' => 'Kunne ikke lagre, produkt er lagt til fra før',
+ 'Error details' => 'Detaljer om feil',
+ 'Tasks' => 'Oppgaver',
+ 'Show done tasks' => 'Vis ferdige oppgaver',
+ 'Task' => 'Oppgave',
+ 'Due' => 'Forfall',
+ 'Assigned to' => 'Tildelt',
+ 'Mark task "#1" as completed' => 'Merk oppgave "#1" som ferdig',
+ 'Uncategorized' => 'Mangler kategori',
+ 'Task categories' => 'Oppgave kategorier',
+ 'Create task' => 'Opprett en oppgave',
+ 'A due date is required' => 'En forfallsdato kreves',
+ 'Category' => 'Kategori',
+ 'Edit task' => 'Endre oppgave',
+ 'Are you sure to delete task "#1"?' => 'Er du sikker du ønsker slette oppgave "#1"?',
+ '#1 task is due to be done within the next #2 days' => '#1 oppgave har utførelse forfall innen de neste #2 dagene',
+ '#1 tasks are due to be done within the next #2 days' => '#1 oppgaver har utførelse forfall innen de neste #2 dagene',
+ '#1 task is overdue to be done' => '#1 oppgave har forfalt utførelse dato',
+ '#1 tasks are overdue to be done' => '#1 oppgaver har forfalt utførelse dato',
+ 'Edit task category' => 'Endre oppgave kategori',
+ 'Create task category' => 'Opprett oppgave kategori',
+ 'Product groups' => 'Produktgrupper',
+ 'Ungrouped' => 'Mangler gruppe',
+ 'Create product group' => 'Opprett produkt gruppe',
+ 'Edit product group' => 'Endre produkt gruppe',
+ 'Product group' => 'Produktgruppe',
+ 'Are you sure to delete product group "#1"?' => 'Er du sikker du ønsker å slette produktgruppe "#1"?',
+ 'Stay logged in permanently' => 'Husk meg',
+ 'When not set, you will get logged out at latest after 30 days' => 'Hvis "Husk meg" ikke er huket av vil du automatisk bli logget av om 30 dager',
+ 'Filter by status' => 'Filtrér etter status',
+ 'Below min. stock amount' => 'Under under minimum husholdningsnivå',
+ 'Expiring soon' => 'Går snart ut på dato',
+ 'Already expired' => 'Utgått på dato',
+ 'Due soon' => 'Forfaller snart',
+ 'Overdue' => 'Forfalt',
+ 'View settings' => 'Se instillinger',
+ 'Auto reload on external changes' => 'Automatisk fornying ved ekstern endring',
+ 'Enable night mode' => 'Aktiver nattmodus',
+ 'Auto enable in time range' => 'Automatisk aktivering i tidsrommet',
+ 'From' => 'Fra',
+ 'in format' => 'format',
+ 'To' => 'Til',
+ 'Time range goes over midnight' => 'Tidsrommet går over midnatt',
+ 'Product picture' => 'Produktbilde',
+ 'No file selected' => 'Produktbilde ikke valgt',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Hvis du ikke velger et bilde, vil nåværende produktbilde bli værende',
+ 'Delete' => 'Slett',
+ 'The current picture will be deleted when you save the product' => 'Nåværende produktbilde vil bli slettet når du lagrer produktet',
+ 'Select file' => 'Velg produktbilde',
+ 'Image of product #1' => 'Bilde av produkt #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Dette produktet kan ikke slettes fordi det er gjenværende produkter i husholdningen',
+ 'Delete not possible' => 'Ikke mulig å slette',
+ 'Equipment' => 'Instruksjonmanualer',
+ 'Instruction manual' => 'Instruksjonsmanual',
+ 'The selected equipment has no instruction manual' => 'Merket utstyr har ingen instruksjonsmanual',
+ 'Notes' => 'Notater',
+ 'Edit equipment' => 'Endre instruksjonmanualer for utstyr',
+ 'Create equipment' => 'Opprett instruksjonmanualer for utstyr',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Hvis du ikke velger en instruksjonsmanual, vil nåværende instruksjonsmanual ikke bli endret',
+ 'No instruction manual available' => 'Ingen instruksjonsmanual tilgjengelig',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Nåværende instruksjonsmanual vil bli slettet når du lagrer utstyret',
+ 'No picture available' => 'Ingen bilde tilgjengelig',
+ 'Filter by product group' => 'Filtrér etter produktgruppe',
+ 'Presets for new products' => 'Standard for nye produkter',
+ 'Included recipes' => 'Inkludert oppskrift',
+ 'A recipe is required' => 'En oppskrift kreves',
+ 'Add included recipe' => 'Legg til inkludert oppskrift',
+ 'Edit included recipe' => 'Endre inkludert oppskrift',
+ 'Group' => 'Gruppe',
+ 'This will be used as a headline to group ingredients together' => 'Dette vil bli brukt som overskrift for gruppering av ingredienser',
+ 'Journal' => 'Logg',
+ 'Stock journal' => 'Husholdningslogg',
+ 'Filter by product' => 'Filtrér etter produkt',
+ 'Booking time' => 'Tid logget',
+ 'Booking type' => 'Booking type',
+ 'Undo booking' => 'Angre booking',
+ 'Undone on' => 'Angret den',
+ 'Batteries journal' => 'Batterilogg',
+ 'Filter by battery' => 'Filtrér etter batteri',
+ 'Undo charge cycle' => 'Angre ladesyklus',
+ 'Undo chore execution' => 'Fjerne utførelse av husarbeidsoppgave',
+ 'Chore execution successfully undone' => 'Husarbeid fjernet',
+ 'Undo' => 'Angre',
+ 'Booking successfully undone' => 'Booking fjernet',
+ 'Charge cycle successfully undone' => 'Ladesyklus fjernet',
+ 'This cannot be negative and must be an integral number' => 'Tallet kan ikke være negativ og må være et helt tall',
+ 'Disable stock fulfillment checking for this ingredient' => 'Ikke bruk husholdningsjekk for denne ingrediensen ',
+ 'Add all list items to stock' => 'Legg alle produktene i listen til husholdningen',
+ 'Add #3 #1 of #2 to stock' => 'Legg til #3 #1 av #2 til husholdningen',
+ 'Adding shopping list item #1 of #2' => 'Legger til produkt #1 av #2 fra handlelisten',
+ 'Use a specific stock item' => 'Velg et bestemt produkt',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'Første produkt på listen vil bli konsumert først i henhold til standard regelen. "Går ut på dato først. Deretter først inn, først ut".',
+ 'Mark #3 #1 of #2 as open' => 'Merk #3 #1 av #2 som åpnet',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => 'Når et produkt blir merket som åpnet endres best før datoen fra i dag + dette antallet av dager. (Et 0 vil deaktivere dette)',
+ 'Default best before days after opened' => 'Standard best før dager etter åpnet',
+ 'Marked #1 #2 of #3 as opened' => 'Merket #1 #2 av #3 som åpnet',
+ 'Mark as opened' => 'Merk som åpnet',
+ 'Expires on #1; Bought on #2' => 'Går ut på dato #1; Kjøpt #2',
+ 'Not opened' => 'Ikke åpnet',
+ 'Opened' => 'Åpnet',
+ 'Mark #3 #1 of #2 as open' => 'Merk #3 #1 av #2 som åpnet',
+ '#1 opened' => '#1 åpnet',
+ 'Product expires' => 'Produkt går ut på dato',
+ 'Task due' => 'Tidsfrist for oppgave',
+ 'Chore due' => 'Tidsfrist for husarbeid',
+ 'Battery charge cycle due' => 'Batteri må lades',
+ 'Show clock in header' => 'Vis klokken på toppen av siden',
+ 'Stock settings' => 'Husholdningsinnstillinger',
+ 'Shopping list to stock workflow' => 'Arbeidsflyt fra handleliste til husholding',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Legg produkter automatisk til fra handlelisten. Dette vil bruke sist innkjøpspris og forutsetter at "Standard for antall dager best før" er satt',
+ 'Skip' => 'Hopp over',
+ 'Servings' => 'Prosjoner',
+ 'Costs' => 'Kostnad',
+ 'Based on the prices of the last purchase per product' => 'Basert på prisen av siste kjøpte produkt',
+ 'The ingredients listed here result in this amount of servings' => 'Ingrediensene som er lagt til er beregnet for antall porsjoner du oppgir her',
+ 'Do not check against the shopping list when adding missing items to it' => 'Ikke sjekk handleliste når du legger til manglende produkt',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => 'Som standard vil antallet som skal legges til handlelisten være slik "nødvendig antall - husholdningsantall - handleliste antall". Men når denne funksjonen er aktivert vil det være slik "nødvendig antall - husholdningsantall"',
+ 'Picture' => 'Bilde',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Fjern huk for å ikke legge produktet i handlelisten',
+ 'This is for statistical purposes only' => 'Dette er kun for statistikk',
+ 'You have to select a recipe' => 'Du må velge en oppskrift',
+ 'Key type' => 'Key type',
+ 'Share/Integrate calendar (iCal)' => 'Del/ Integrer kalender (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Bruk følgene (offentlig) URL til å dele eller integrere kalenderen i iCal format',
+ 'Allow partial units in stock' => 'Tillat oppdelte enheter i husholdningen',
+ 'Enable tare weight handling' => 'Aktiver tara vekt funksjon',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Dette er nyttig f.eks med mel i en beholder. Ved innkjøp/ forbruk/ endring av husholdning veier du alltid hele beholderen. Gjenværende mengde vil så bli kalkulert i forhold til hva som er i husholdningen og tara vekten definert under',
+ 'Tare weight' => 'Tara vekt',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Tara vekt funksjon på - vennligst vei hele beholderen. Mengden vil automatisk bli kalkulert',
+ 'You have to select a location' => 'Du må velge en lokasjon',
+ 'List' => 'Liste',
+ 'Gallery' => 'Bildegalleri',
+ 'The current picture will be deleted when you save the recipe' => 'Nåværende bilde vil bli slettet når du larer oppskriften',
+ 'Show product details' => 'Vis produkt detaljer',
+ 'Stock journal for this product' => 'Husholdningslogg for dette produktet',
+ 'Show chore details' => 'Vis husarbeidarbeid detaljer',
+ 'Journal for this chore' => 'Logg for husarbeidsoppgave',
+ 'Show battery details' => 'Hvis batteridetaljer',
+ 'Journal for this battery' => 'Logg for dette batteriet',
+ 'System info' => 'System info',
+ 'Changelog' => 'Change Log',
+ 'will be multiplied a factor of #1 to get #2' => 'Vil bli ganget med #1 for å få #2',
+ 'The given date is earlier than today, are you sure?' => 'Den oppgitte datoen er tidligere enn i dag, er du sikker du ønsker å bruke denne?',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => 'Vis mer',
+ 'Show less' => 'Vis mindre',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => 'Mandag',
+ 'Tuesday' => 'Tirsdag',
+ 'Wednesday' => 'Onsdag',
+ 'Thursday' => 'Torsdag',
+ 'Friday' => 'Fredag',
+ 'Saturday' => 'Lørdag',
+ 'Sunday' => 'Søndag',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/no/userfield_types.php b/localization-backup/no/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/no/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/pl/chore_types.php b/localization-backup/pl/chore_types.php
new file mode 100644
index 00000000..59a0cc89
--- /dev/null
+++ b/localization-backup/pl/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manualny',
+ 'dynamic-regular' => 'Dynamiczny regularny',
+ 'daily' => 'Codzienny',
+ 'weekly' => 'Tygodniowy',
+ 'monthly' => 'Miesięczny'
+);
diff --git a/localization-backup/pl/component_translations.php b/localization-backup/pl/component_translations.php
new file mode 100644
index 00000000..255cda14
--- /dev/null
+++ b/localization-backup/pl/component_translations.php
@@ -0,0 +1,10 @@
+ 'pl',
+ 'timeago_nan' => 'NaN lat temu',
+ 'moment_locale' => 'pl',
+ 'datatables_localization' => '{"sEmptyTable":"Brak danych do wyświetlenia","sInfo":"Pokazuję od _START_ do _END_ z _TOTAL_ wpisów","sInfoEmpty":"Pokazuję od 0 do 0 z 0 wpisów","sInfoFiltered":"(przefiltrowane z _MAX_ wszystkich wpisów)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"Pokaż _MENU_ wpisów","sLoadingRecords":"Ładowanie...","sProcessing":"Przetwarzanie...","sSearch":"Szukaj:","sZeroRecords":"Nie znaleziono pasujących elementów","oPaginate":{"sFirst":"Pierwsza","sLast":"Ostatnia","sNext":"Następna","sPrevious":"Poprzednia"},"oAria":{"sSortAscending":": aktywuj, aby posortować kolumnę rosnąco","sSortDescending":": aktywuj, aby posortować kolumnę malejąco"}}',
+ 'summernote_locale' => 'pl-PL',
+ 'fullcalendar_locale' => 'pl'
+);
diff --git a/localization-backup/pl/demo_data.php b/localization-backup/pl/demo_data.php
new file mode 100644
index 00000000..6fa68269
--- /dev/null
+++ b/localization-backup/pl/demo_data.php
@@ -0,0 +1,95 @@
+ 'Ciastka',
+ 'Chocolate' => 'Czekolada',
+ 'Pantry' => 'Spiżarnia',
+ 'Candy cupboard' => 'Szafka cukierkowa',
+ 'Tinned food cupboard' => 'Szafka na konserwy',
+ 'Fridge' => 'Lodówka',
+ 'Piece' => 'Kawałek',
+ 'Pieces' => 'Kawałki/ów',
+ 'Pack' => 'Paczka',
+ 'Packs' => 'Paczek/ki',
+ 'Glass' => 'Szklanka',
+ 'Glasses' => 'Szklanki/ek',
+ 'Tin' => 'Puszka',
+ 'Tins' => 'Puszek/ki',
+ 'Can' => 'Opakowanie',
+ 'Cans' => 'Opakowań/nia',
+ 'Bunch' => 'Pęczek',
+ 'Bunches' => 'Pęczki/ów',
+ 'Gummy bears' => 'Żelki',
+ 'Crisps' => 'Chipsy',
+ 'Eggs' => 'Jajka',
+ 'Noodles' => 'Makaron',
+ 'Pickles' => 'Ogórki konserwowe',
+ 'Gulash soup' => 'Gulasz',
+ 'Yogurt' => 'Jogurt',
+ 'Cheese' => 'Ser',
+ 'Cold cuts' => 'Wędlina',
+ 'Paprika' => 'Papryka',
+ 'Cucumber' => 'Ogórek',
+ 'Radish' => 'Rzodkiweka',
+ 'Tomato' => 'Pomidor',
+ 'Changed towels in the bathroom' => 'Zmieniono ręczniki w łazience',
+ 'Cleaned the kitchen floor' => 'Posprzątano kuchnię',
+ 'Warranty ends' => 'Koniec gwarancji',
+ 'TV remote control' => 'Pilot do TV',
+ 'Alarm clock' => 'Budzik',
+ 'Heat remote control' => 'Pilot do sterowania ciepłem',
+ 'Lawn mowed in the garden' => 'Skoszono trawnik w ogrodzie',
+ 'Some good snacks' => 'Dobre przekąski',
+ 'Pizza dough' => 'Ciasto na pizzę',
+ 'Sieved tomatoes' => 'Przesiane pomidory',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Tost',
+ 'Minced meat' => 'Mięso mielone',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti bolognese',
+ 'Sandwiches' => 'Kanapki',
+ 'English' => 'Angielski',
+ 'German' => 'Niemiecki',
+ 'Italian' => 'Włoski',
+ 'Demo in different language' => 'Demo w innych językach',
+ 'This is the note content of the recipe ingredient' => 'To jest treść notatki składnika receptury',
+ 'Demo User' => 'Użytkownik demonstracyjny',
+ 'Gram' => 'Gram',
+ 'Grams' => 'Gramy/ów',
+ 'Flour' => 'Mąka',
+ 'Pancakes' => 'Naleśniki',
+ 'Sugar' => 'Cukier',
+ 'Home' => 'Dom',
+ 'Life' => 'Życiowe',
+ 'Projects' => 'Projekty',
+ 'Repair the garage door' => 'Naprawić drzwi garażowe',
+ 'Fork and improve grocy' => 'Skopiuj i ulepsz grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Znajdź rozwiązanie, co zrobić, gdy zapomnę kluczy do drzwi',
+ 'Sweets' => 'Słodycze',
+ 'Bakery products' => 'Pieczywo',
+ 'Tinned food' => 'Konserwy',
+ 'Butchery products' => 'Produkty mięsne',
+ 'Vegetables/Fruits' => 'Warzywa/Owoce',
+ 'Refrigerated products' => 'Produkty mrożone',
+ 'Coffee machine' => 'Maszyna do kawy',
+ 'Dishwasher' => 'Zmywarka',
+ 'Liter' => 'Litr',
+ 'Liters' => 'Litrów/ry',
+ 'Bottle' => 'Butelka',
+ 'Bottles' => 'Butelek/ki',
+ 'Milk' => 'Mleko',
+ 'Chocolate sauce' => 'Sos czekoladowy',
+ 'Milliliters' => 'Milimetrów/ry',
+ 'Milliliter' => 'Milimetr',
+ 'Bottom' => 'Spód',
+ 'Topping' => 'Górny',
+ 'French' => 'Francuski',
+ 'Turkish' => 'Turecki',
+ 'Spanish' => 'Hiszpański',
+ 'Russian' => 'Rosyjski',
+ 'The thing which happens on the 5th of every month' => 'To, co dzieje się 5 dnia każdego miesiąca',
+ 'The thing which happens daily' => 'To, co dzieje się codziennie',
+ 'The thing which happens on Mondays and Wednesdays' => 'To, co dzieje się w poniedziałki i środy',
+ 'Swedish' => 'Szwedzki',
+ 'Polish' => ''
+);
diff --git a/localization-backup/pl/stock_transaction_types.php b/localization-backup/pl/stock_transaction_types.php
new file mode 100644
index 00000000..3b283f56
--- /dev/null
+++ b/localization-backup/pl/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Zakup',
+ 'consume' => 'Spożycie',
+ 'inventory-correction' => 'Korekta zapasów',
+ 'product-opened' => 'Produkt otwarty'
+);
diff --git a/localization-backup/pl/strings.php b/localization-backup/pl/strings.php
new file mode 100644
index 00000000..ff571ab3
--- /dev/null
+++ b/localization-backup/pl/strings.php
@@ -0,0 +1,397 @@
+ 'Przegląd zapasów',
+ '#1 products expiring within the next #2 days' => 'Ilość produktów, które będą przeterminowane w ciągu #2 dni: #1',
+ '#1 products are already expired' => 'Przeterminowane produkty: #1',
+ '#1 products are below defined min. stock amount' => '#1 produktów są poniżej zdefiniowanej minimalnej ilości',
+ 'Product' => 'Produkt',
+ 'Amount' => 'Ilość',
+ 'Next best before date' => 'Następna data przydatności do spożycia ',
+ 'Logout' => 'Wyloguj',
+ 'Chores overview' => 'Przegląd obowiązków',
+ 'Batteries overview' => 'Przegląd baterii',
+ 'Purchase' => 'Zakup',
+ 'Consume' => 'Spożyj',
+ 'Inventory' => 'Spis produktów',
+ 'Shopping list' => 'Lista zakupów',
+ 'Chore tracking' => 'Wykonanie obowiązku',
+ 'Battery tracking' => 'Sprawdzenie stanu baterii',
+ 'Products' => 'Produkty',
+ 'Locations' => 'Miejsca',
+ 'Quantity units' => 'Jednostki ilości',
+ 'Chores' => 'Obowiązki',
+ 'Batteries' => 'Baterie',
+ 'Chore' => 'Obowiązek',
+ 'Next estimated tracking' => 'Następne planowane wykonanie',
+ 'Last tracked' => 'Ostatnie wykonanie',
+ 'Battery' => 'Bateria',
+ 'Last charged' => 'Ostatnio ładowane',
+ 'Next planned charge cycle' => 'Następny planowany cykl ładowania',
+ 'Best before' => 'Najlepiej spożyć przed',
+ 'OK' => 'OK',
+ 'Product overview' => 'Przegląd produktów',
+ 'Stock quantity unit' => 'Jednostka ilości zapasów',
+ 'Stock amount' => 'Ilość zapasów',
+ 'Last purchased' => 'Ostatnio kupione',
+ 'Last used' => 'Ostatnio użyte',
+ 'Spoiled' => 'Zepsute',
+ 'Barcode lookup is disabled' => 'Czytnik kodów kreskowych jest wyłączony',
+ 'will be added to the list of barcodes for the selected product on submit' => 'po przesłaniu zostanie dodany do listy kodów kreskowych dla podanego produktu',
+ 'New amount' => 'Nowa ilość',
+ 'Note' => 'Notatka',
+ 'Tracked time' => 'Data wykonania',
+ 'Chore overview' => 'Przegląd obowiązków',
+ 'Tracked count' => 'Ilość wykonań',
+ 'Battery overview' => 'Przegląd baterii',
+ 'Charge cycles count' => 'Ilość cykli ładowania',
+ 'Create shopping list item' => 'Dodaj pozycję na liście zakupów',
+ 'Edit shopping list item' => 'Edytuj przedmiot na liście zakupów',
+ 'Save' => 'Zapisz',
+ 'Add' => 'Dodaj',
+ 'Name' => 'Nazwa',
+ 'Location' => 'Miejsce',
+ 'Min. stock amount' => 'Min. ilość',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => 'Opis',
+ 'Create product' => 'Dodaj produkt',
+ 'Barcode(s)' => 'Kod(y) kreskowe',
+ 'Minimum stock amount' => 'Minimalna ilość',
+ 'Default best before days' => 'Domyślna ilość dni przydatności do spożycia ',
+ 'Quantity unit purchase' => 'Jednostka ilości zakupu',
+ 'Quantity unit stock' => 'Jednostka ilości zapasów',
+ 'Factor purchase to stock quantity unit' => 'Konwersja ilości zakupu do zapasów',
+ 'Create location' => 'Dodaj miejsce',
+ 'Create quantity unit' => 'Dodaj jednostkę miary',
+ 'Period type' => 'Typ okresu',
+ 'Period days' => 'Dni okresu',
+ 'Create chore' => 'Dodaj obowiązek',
+ 'Used in' => 'Użyte w',
+ 'Create battery' => 'Dodaj baterię',
+ 'Edit battery' => 'Edytuj baterię',
+ 'Edit chore' => 'Edytuj obowiązek',
+ 'Edit quantity unit' => 'Edycja jednostki ilości',
+ 'Edit product' => 'Edytuj produkt',
+ 'Edit location' => 'Edytuj lokalizację',
+ 'Record data' => '',
+ 'Manage master data' => 'Zarządzanie danymi',
+ 'This will apply to added products' => '',
+ 'never' => 'nigdy',
+ 'Add products that are below defined min. stock amount' => 'Dodaj produkty poniżej zdefiniowanej minimalnej ilości',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Oznacza to, że 1 #1 z zakupu będzie przeliczona na #2 #3 do zapasów',
+ 'Login' => 'Zaloguj',
+ 'Username' => 'Nazwa użytkownika',
+ 'Password' => 'Hasło',
+ 'Invalid credentials, please try again' => 'Nieprawidłowe dane logowania, spróbuj jeszcze raz',
+ 'Are you sure to delete battery "#1"?' => 'Czy na pewno chcesz usunąć baterię "#1"?',
+ 'Yes' => 'Tak',
+ 'No' => 'Nie',
+ 'Are you sure to delete chore "#1"?' => 'Czy na pewno chcesz usunąć obowiązek "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => 'Dodaj lub przydziel produkt',
+ 'Cancel' => 'Anuluj',
+ 'Add as new product' => 'Dodaj jako nowy produkt',
+ 'Add as barcode to existing product' => 'Dodaj jako kod kreskowy do istniejącego produktu',
+ 'Add as new product and prefill barcode' => 'Dodaj jako nowy produkt i dodaj kod kreskowy',
+ 'Are you sure to delete quantity unit "#1"?' => 'Czy na pewno chcesz usunąć jednostkę ilości "#1"?',
+ 'Are you sure to delete product "#1"?' => 'Czy na pewno chcesz usunąć produkt "#1"?',
+ 'Are you sure to delete location "#1"?' => 'Czy na pewno chcesz usunąć miejsce "#1"?',
+ 'Manage API keys' => 'Zarządzaj kluczami API',
+ 'REST API & data model documentation' => 'REST API & dokumentacja modelu danych',
+ 'API keys' => 'Klucze API',
+ 'Create new API key' => 'Utwórz nowy klucz API',
+ 'API key' => 'Klucz API',
+ 'Expires' => 'Traci ważność',
+ 'Created' => 'Dodano',
+ 'This product is not in stock' => 'Nie ma tego produktu na stanie',
+ 'This means #1 will be added to stock' => ' To znaczy, że #1 zostanie dodany na stan',
+ 'This means #1 will be removed from stock' => 'To znaczy, że #1 zostanie usunięty ze stanu',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Oznacza to, że nowa realizacja tego zadania jest zaplanowana na #1 dni po ostatnim wykonaniu',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => 'O grocy',
+ 'Close' => 'Zamknij',
+ '#1 batteries are due to be charged within the next #2 days' => 'Ilość baterii do naładowania w ciągu #2 dni: #1',
+ '#1 batteries are overdue to be charged' => 'Baterie po terminie ładowania: #1',
+ '#1 chores are due to be done within the next #2 days' => 'Ilość obowiązków do wykonania w ciągu #2 dni: #1',
+ '#1 chores are overdue to be done' => 'Obowiązki niewykonane w terminie: #1',
+ 'Released on' => 'Wydano dnia',
+ 'Consume #3 #1 of #2' => '#2 - spożyj #3 #1',
+ 'Added #1 #2 of #3 to stock' => 'Dodano #1 #2 #3 do zapasów',
+ 'Stock amount of #1 is now #2 #3' => 'Zapasy #1 wynoszą teraz #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Obowiązek #1 wykonano dnia #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'Naładowano baterię #1 dnia #2',
+ 'Consume all #1 which are currently in stock' => '#1 - spożyj całość z zapasów',
+ 'All' => 'Wszystko',
+ 'Track charge cycle of battery #1' => 'Oznacz cykl ładowania baterii #1 jako wykonany',
+ 'Track execution of chore #1' => 'Oznacz obowiązek #1 jako wykonany',
+ 'Filter by location' => 'Filtruj po miejscu',
+ 'Search' => 'Szukaj',
+ 'Not logged in' => 'Nie zalogowany',
+ 'You have to select a product' => 'Musisz wybrać produkt',
+ 'You have to select a chore' => 'Musisz wybrać obowiązek',
+ 'You have to select a battery' => 'Musisz wybrać baterię',
+ 'A name is required' => 'Nazwa jest wymagana',
+ 'A location is required' => 'Lokalizacja jest wymagana',
+ 'The amount cannot be lower than #1' => 'Wartość nie może być mniejsza niż #1',
+ 'This cannot be negative' => 'Wartość nie może być ujemna',
+ 'A quantity unit is required' => 'Jednostka ilości jest wymagana',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => 'Ustawienia',
+ 'This can only be before now' => 'Wartość musi być przed dniem dzisiejszym',
+ 'Calendar' => 'Kalendarz',
+ 'Recipes' => 'Przepisy',
+ 'Edit recipe' => 'Edytuj przepis',
+ 'New recipe' => 'Nowy przepis',
+ 'Ingredients list' => 'Lista składników',
+ 'Add recipe ingredient' => 'Dodaj składnik przepisu',
+ 'Edit recipe ingredient' => 'Edytuj składnik przepisu',
+ 'Are you sure to delete recipe "#1"?' => 'Czy na pewno chcesz usunąć przepis "#1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Czy na pewno chcesz usunąć składnik przepisu "#1"?',
+ 'Are you sure to empty shopping list "#1"?' => 'Czy na pewno chcesz wyczyścić listę zakupów "#1"?',
+ 'Clear list' => 'Wyczyść listę',
+ 'Requirements fulfilled' => 'Wymagania spełnione',
+ 'Put missing products on shopping list' => 'Dodaj brakujące produkty do listy zakupów',
+ 'Not enough in stock, #1 ingredients missing' => 'Za mało zapasów, brakuje #1 składników',
+ 'Enough in stock' => 'Dość na stanie',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Za mało zapasów. Brakujące składniki, które znajdują się już na liście zakupów: #1',
+ 'Expand to fullscreen' => 'Pokaż w pełnym ekranie',
+ 'Ingredients' => 'Składniki',
+ 'Preparation' => 'Przygotowanie',
+ 'Recipe' => 'Przepis',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Za mało na stanie. #1 brakuje, #2 znajduje się na liście zakupów',
+ 'Show notes' => 'Pokaż notatki',
+ 'Put missing amount on shopping list' => 'Dodaj brakującą ilość do listy zakupów',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Czy na pewno chcesz dodać wszystkie brakujące składniki przepisu "#1" na listę zakupów?',
+ 'Added for recipe #1' => 'Dodano do przepisu #1',
+ 'Manage users' => 'Zarządzaj użytkownikami',
+ 'User' => 'Użytkownik',
+ 'Users' => 'Użytkownicy',
+ 'Are you sure to delete user "#1"?' => 'Czy na pewno chcesz usunąć użytkownika "#1"?',
+ 'Create user' => 'Utwórz użytkownika',
+ 'Edit user' => 'Edytuj użytkownika',
+ 'First name' => 'Imię',
+ 'Last name' => 'Nazwisko',
+ 'A username is required' => 'Nazwa użytkownika jest wymagana',
+ 'Confirm password' => 'Potwierdź hasło',
+ 'Passwords do not match' => 'Hasła nie są identyczne',
+ 'Change password' => 'Zmień hasło',
+ 'Done by' => 'Zrobione przez',
+ 'Last done by' => 'Ostatnio zrobione przez',
+ 'Unknown' => 'Nieznany',
+ 'Filter by chore' => 'Filtruj po obowiązkach',
+ 'Chores journal' => 'Dziennik obowiązków',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => 'Interwał cyklu ładowania (dni)',
+ 'Last price' => 'Ostatnia cena',
+ 'Price history' => 'Historia cen',
+ 'No price history available' => 'Historia cen jest niedostępna',
+ 'Price' => 'Cena',
+ 'in #1 per purchase quantity unit' => 'w #1 za zakup jednostki ilości',
+ 'The price cannot be lower than #1' => 'Cena nie może być mniejsza niż #1',
+ '#1 product expires within the next #2 days' => 'Ilość produktów, które będą przeterminowane w ciągu #2 dni: #1',
+ '#1 product is already expired' => 'Przeterminowane produkty: #1',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => 'Jednostka',
+ 'Units' => 'Jednostki',
+ '#1 chore is due to be done within the next #2 days' => 'Ilość obowiązków do wykonania w ciągu #2 dni: #1',
+ '#1 chore is overdue to be done' => 'Obowiązki niewykonane w terminie: #1',
+ '#1 battery is due to be charged within the next #2 days' => 'Ilość baterii do naładowania za #2 dni: #1',
+ '#1 battery is overdue to be charged' => 'Baterie po terminie ładowania: #1',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => 'w liczbie pojedynczej',
+ 'in plural form' => 'w liczbie mnogiej',
+ 'Never expires' => 'Brak terminu ważności',
+ 'This cannot be lower than #1' => 'Nie może być mniejsze niż #1',
+ '-1 means that this product never expires' => '-1 oznacza, że produkt nie ma terminu utraty ważności',
+ 'Quantity unit' => 'Jednostka ilości',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Zaznacz tylko w przypadku, gdy w zapasach znajduje się jedna jednostka (można użyć innej ilości powyżej)',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => 'Czy na pewno chcesz spożyć wszystkie składniki wymagane do przepisu "#1" (składniki z opcją "Zaznacz tylko w przypadku, gdy w zapasach znajduje się jedna jednostka" zostaną zignorowane)?',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Usuń wszystkie składniki przepisu "#1" z zapasów',
+ 'Consume all ingredients needed by this recipe' => 'Użyj wszystkich składników wymaganych do tego przepisu',
+ 'Click to show technical details' => 'Naciśnij, aby poznać techniczne szczegóły',
+ 'Error while saving, probably this item already exists' => 'Błąd podczas zapisywania, najprawdopodobniej przedmiot już istnieje',
+ 'Error details' => 'Szczegóły błędu',
+ 'Tasks' => 'Zadania',
+ 'Show done tasks' => 'Pokaż ukończone zadania',
+ 'Task' => 'Zadanie',
+ 'Due' => 'Termin wykonania',
+ 'Assigned to' => 'Przypisany do',
+ 'Mark task "#1" as completed' => 'Oznacz zadanie "#1" jako wykonane',
+ 'Uncategorized' => 'Bez kategorii',
+ 'Task categories' => 'Kategorie zadań',
+ 'Create task' => 'Dodaj zadanie',
+ 'A due date is required' => 'Termin wykonania jest wymagany',
+ 'Category' => 'Kategoria',
+ 'Edit task' => 'Edytuj zadanie',
+ 'Are you sure to delete task "#1"?' => 'Czy jesteś pewien, że chcesz usunąć zadanie "#1"?',
+ '#1 task is due to be done within the next #2 days' => 'Ilość zadań do wykonania w ciągu #2 dni: #1',
+ '#1 tasks are due to be done within the next #2 days' => 'Ilość zadań do wykonania w ciągu #2 dni: #1',
+ '#1 task is overdue to be done' => 'Zadania niewykonane w terminie: #1',
+ '#1 tasks are overdue to be done' => 'Zadania niewykonane w terminie: #1',
+ 'Edit task category' => 'Edytuj kategorię zadania',
+ 'Create task category' => 'Dodaj kategorię zadania',
+ 'Product groups' => 'Grupy produktów',
+ 'Ungrouped' => 'Bez grupy',
+ 'Create product group' => 'Dodaj grupę produktów',
+ 'Edit product group' => 'Edytuj grupę produktów',
+ 'Product group' => 'Grupa produktów',
+ 'Are you sure to delete product group "#1"?' => 'Czy na pewno chcesz usunąć grupę produktów "#1"?',
+ 'Stay logged in permanently' => 'Pozostań zalogowany na zawsze',
+ 'When not set, you will get logged out at latest after 30 days' => 'Gdy nie ustawione - zostaniesz wylogowany/a po najpóźniej 30 dniach',
+ 'Filter by status' => 'Filtruj po statusie',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => 'Niedługo traci ważność',
+ 'Already expired' => 'Po terminie ważności',
+ 'Due soon' => 'Blisko terminu',
+ 'Overdue' => 'Po terminie',
+ 'View settings' => 'Zobacz ustawienia',
+ 'Auto reload on external changes' => 'Automatyczne przeładowanie przy zewnętrznych zmianach',
+ 'Enable night mode' => 'Włącz tryb nocny',
+ 'Auto enable in time range' => 'Aktywne w godzinach',
+ 'From' => 'Od',
+ 'in format' => 'w formacie',
+ 'To' => 'Do',
+ 'Time range goes over midnight' => 'Zakres czasu przekracza północ',
+ 'Product picture' => 'Zdjęcie produktu',
+ 'No file selected' => 'Nie wybrano pliku',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => 'Usuń',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => 'Wybierz plik',
+ 'Image of product #1' => 'Zdjęcie produktu #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => 'Usunięcie niemożliwe',
+ 'Equipment' => 'Wyposażenie',
+ 'Instruction manual' => 'Instrukcja obsługi',
+ 'The selected equipment has no instruction manual' => 'Wybrany element wyposażenia nie ma instrukcji obsługi',
+ 'Notes' => 'Notatki',
+ 'Edit equipment' => 'Edytuj wyposażenie',
+ 'Create equipment' => 'Dodaj wyposażenie',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Jeżeli nie wybierzesz nowego pliku - obecna instrukcja obsługi zostanie nienaruszona',
+ 'No instruction manual available' => 'Brak instrukcji obsługi',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => 'Brak zdjęcia',
+ 'Filter by product group' => 'Filtruj po grupie produktu',
+ 'Presets for new products' => 'Ustawienia wstępne dla nowych produktów',
+ 'Included recipes' => 'Dołączone przepisy',
+ 'A recipe is required' => 'Wymagany jest przepis',
+ 'Add included recipe' => 'Dołącz przepis',
+ 'Edit included recipe' => 'Edytuj dołączony przepis',
+ 'Group' => 'Grupa',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => 'Dziennik',
+ 'Stock journal' => 'Dziennik zapasów',
+ 'Filter by product' => 'Filtruj po produkcie',
+ 'Booking time' => 'Data rezerwacji',
+ 'Booking type' => 'Typ rezerwacji',
+ 'Undo booking' => 'Anuluj rezerwację',
+ 'Undone on' => 'Anulowano dnia',
+ 'Batteries journal' => 'Dziennik baterii',
+ 'Filter by battery' => 'Filtruj po baterii',
+ 'Undo charge cycle' => 'Anuluj cykl ładowania',
+ 'Undo chore execution' => 'Anuluj wykonanie obowiązku',
+ 'Chore execution successfully undone' => 'Pomyślnie anulowano wykonanie obowiązku',
+ 'Undo' => 'Anuluj',
+ 'Booking successfully undone' => 'Rezerwacja została anulowana',
+ 'Charge cycle successfully undone' => 'Pomyślnie anulowano cykl ładowania',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => 'Dodaj wszystkie pozycje z listy do zapasów',
+ 'Add #3 #1 of #2 to stock' => '#2 - dodaj #3 #1 do zapasów',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => 'Użyj konkretnej pozycji z zapasów',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '#2 - oznacz #3 #1 jako otwarte',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => 'Domyślna ilość dni przydatności do spożycia po otwarciu',
+ 'Marked #1 #2 of #3 as opened' => '#3 - oznaczono #1 #2 jako otwarte',
+ 'Mark as opened' => 'Oznacz jako otwarte',
+ 'Expires on #1; Bought on #2' => 'Termin przydatności: #1; Kupiono dnia: #2',
+ 'Not opened' => 'Zamknięte',
+ 'Opened' => 'Otwarte',
+ 'Mark #3 #1 of #2 as open' => '#2 - oznacz #3 #1 jako otwarte',
+ '#1 opened' => 'Otwarto #1',
+ 'Product expires' => 'Produkt traci ważność',
+ 'Task due' => 'Termin wykonania zadania',
+ 'Chore due' => 'Termin wykonania obowiązku',
+ 'Battery charge cycle due' => 'Termin wymiany baterii',
+ 'Show clock in header' => 'Pokaż zegar w nagłówku',
+ 'Stock settings' => 'Ustawienia zapasów',
+ 'Shopping list to stock workflow' => 'Lista zakupów do przepływu pracy zapasów',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Automatycznie dokonaj rezerwacji przy użyciu ostatniej ceny i kwoty pozycji listy zakupów, jeśli produkt ma ustawioną opcję „Domyślna ilość dni przydatności do spożycia”',
+ 'Skip' => 'Pomiń',
+ 'Servings' => 'Porcje',
+ 'Costs' => 'Koszta',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => 'Zdjęcie',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Odznacz składniki, których nie chcesz dodać na listę zakupów',
+ 'This is for statistical purposes only' => 'Wyłącznie do celów statystycznych',
+ 'You have to select a recipe' => 'Musisz wybrać przepis',
+ 'Key type' => 'Rodzaj klucza',
+ 'Share/Integrate calendar (iCal)' => 'Udostępnij/Integruj kalendarz (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Użyj tego (publicznego) adresu URL, aby udostępnić lub zintegrować kalendarz w formacie iCal',
+ 'Allow partial units in stock' => 'Zezwalaj na częściowe sztuki w zapasach',
+ 'Enable tare weight handling' => 'Włącz obsługę masy tary',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Jest to przydatne np. w przypadku mąki w słoikach - przy zakupie / spożyciu/ zapasie zawsze waży się cały słoik, kwota jest następnie automatycznie obliczana na podstawie tego, co znajduje się w magazynie i masy tary zdefiniowanej poniżej',
+ 'Tare weight' => 'Waga opakowania',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Włączona obsługa masy tary - zważ całe opakowanie, kwota zostanie automatycznie obliczona',
+ 'You have to select a location' => 'Musisz wybrać miejsce',
+ 'List' => 'Lista',
+ 'Gallery' => 'Galeria',
+ 'The current picture will be deleted when you save the recipe' => 'Bieżące zdjęcie zostanie usunięte po zapisaniu przepisu',
+ 'Show product details' => 'Pokaż szczegóły produktu',
+ 'Stock journal for this product' => 'Dziennik zapasów produktu',
+ 'Show chore details' => 'Pokaż szczegóły',
+ 'Journal for this chore' => 'Dziennik obowiązku',
+ 'Show battery details' => 'Pokaż szczegóły baterii',
+ 'Journal for this battery' => 'Dziennik baterii',
+ 'System info' => 'Informacje systemowe',
+ 'Changelog' => 'Lista zmian',
+ 'will be multiplied a factor of #1 to get #2' => 'zostanie pomnożony przez współczynnik #1, aby uzyskać #2',
+ 'The given date is earlier than today, are you sure?' => 'Podana data jest wcześniejsza niż dzisiejsza, czy na pewno?',
+ 'Product count' => 'Liczba produktów',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => 'Wprowadź nazwę nowego produktu lub kodu kreskowego i wciśnij TAB, aby dodać pozycję',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => 'Będzie to użyte jako domyślne ustawienie podczas dodawania tego produktu jako składnika receptury',
+ 'Add item' => 'Dodaj pozycję',
+ 'Selected shopping list' => 'Zaznaczona lista zakupów',
+ 'New shopping list' => 'Nowa lista zakupów',
+ 'Delete shopping list' => 'Usuń listę zakupów',
+ 'Chores settings' => 'Ustawienia obowiązków',
+ 'Batteries settings' => 'Ustawienia obowiązków',
+ 'Tasks settings' => 'Ustawienia zadań',
+ 'Create shopping list' => 'Dodaj listę zakupów',
+ 'Are you sure to delete shopping list "#1"?' => 'Czy na pewno chcesz usunąć listę zakupów "#1"?',
+ 'Average shelf life' => 'Średni okres trwałości',
+ 'Spoil rate' => 'Wskaźnik zepsucia',
+ 'Show more' => 'Pokaż więcej',
+ 'Show less' => 'Pokaż mniej',
+ 'The amount must be between #1 and #2' => 'Wartość musi być pomiędzy #1 a #2',
+ 'Day of month' => 'Dzień miesiąca',
+ 'Monday' => 'Poniedziałek',
+ 'Tuesday' => 'Wtorek',
+ 'Wednesday' => 'Środa',
+ 'Thursday' => 'Czwartek',
+ 'Friday' => 'Piątek',
+ 'Saturday' => 'Sobota',
+ 'Sunday' => 'Niedziela',
+ 'Configure userfields' => 'Konfiguracja pól użytkownika',
+ 'Userfields' => 'Pola użytkownika',
+ 'Filter by entity' => 'Filtruj po obiekcie',
+ 'Entity' => 'Obiekt',
+ 'Caption' => 'Opis',
+ 'Type' => 'Typ',
+ 'Create userfield' => 'Dodaj pole użytkownika',
+ 'A entity is required' => 'Należy wybrać obiekt',
+ 'A caption is required' => 'Opis jest wymagany',
+ 'A type is required' => 'Należy wybrać typ',
+ 'Show as column in tables' => 'Pokaż jako kolumna w tabelach',
+ 'This is required and can only contain letters and numbers' => 'Pole jest wymagane i może zawierać jedynie litery i cyfry',
+ 'Edit userfield' => 'Edytuj pole użytkownika'
+);
diff --git a/localization-backup/pl/userfield_types.php b/localization-backup/pl/userfield_types.php
new file mode 100644
index 00000000..29ea3fe7
--- /dev/null
+++ b/localization-backup/pl/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Tekst (jedna linia)',
+ 'text-multi-line' => 'Tekst (wiele linii)',
+ 'number-integral' => 'Liczba (całkowita)',
+ 'number-decimal' => 'Liczba (dziesiętna)',
+ 'date' => 'Data (bez czasu)',
+ 'datetime' => 'Data i czas',
+ 'checkbox' => 'Pole wyboru'
+);
diff --git a/localization-backup/pt_BR/chore_types.php b/localization-backup/pt_BR/chore_types.php
new file mode 100644
index 00000000..96624426
--- /dev/null
+++ b/localization-backup/pt_BR/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manualmente',
+ 'dynamic-regular' => 'Regular dinâmico',
+ 'daily' => 'Diário',
+ 'weekly' => 'Semanal',
+ 'monthly' => 'Mensal'
+);
diff --git a/localization-backup/pt_BR/component_translations.php b/localization-backup/pt_BR/component_translations.php
new file mode 100644
index 00000000..f009ff5a
--- /dev/null
+++ b/localization-backup/pt_BR/component_translations.php
@@ -0,0 +1,10 @@
+ 'ptbr',
+ 'timeago_nan' => 'NaN anos atrás',
+ 'moment_locale' => 'x',
+ 'datatables_localization' => '{"sEmptyTable":"Não existem dados disponívels na tabela","sInfo":"Showing _START_ to _END_ of _TOTAL_ entries","sInfoEmpty":"Showing 0 to 0 of 0 entries","sInfoFiltered":"(filtered from _MAX_ total entries)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"Show _MENU_ entries","sLoadingRecords":"Carregando...","sProcessing":"Processando...","sSearch":"Search:","sZeroRecords":"Nenhum registro correspondente encontrado","oPaginate":{"sFirst":"Primeiro","sLast":"Último","sNext":"Próximo","sPrevious":"Anterior"},"oAria":{"sSortAscending":": ativar para classificar coluna como ascendente","sSortDescending":": ativar para classificar coluna como descendente"}}',
+ 'summernote_locale' => 'x',
+ 'fullcalendar_locale' => 'x'
+);
diff --git a/localization-backup/pt_BR/demo_data.php b/localization-backup/pt_BR/demo_data.php
new file mode 100644
index 00000000..c84c5f4e
--- /dev/null
+++ b/localization-backup/pt_BR/demo_data.php
@@ -0,0 +1,95 @@
+ 'Biscoitos',
+ 'Chocolate' => 'Chocolate',
+ 'Pantry' => 'Despensa',
+ 'Candy cupboard' => 'Armário de doces',
+ 'Tinned food cupboard' => 'Armário de Enlatados',
+ 'Fridge' => 'Geladeira',
+ 'Piece' => 'Pedaço',
+ 'Pieces' => 'Pedaços',
+ 'Pack' => 'Pacote',
+ 'Packs' => 'Pacotes',
+ 'Glass' => 'Vidro',
+ 'Glasses' => 'Vidros',
+ 'Tin' => 'Lata',
+ 'Tins' => 'Latas',
+ 'Can' => 'Lata',
+ 'Cans' => 'Latas',
+ 'Bunch' => 'Cacho',
+ 'Bunches' => 'Cachos',
+ 'Gummy bears' => 'Gomas',
+ 'Crisps' => 'Batatinhas',
+ 'Eggs' => 'Ovos',
+ 'Noodles' => 'Noodles',
+ 'Pickles' => 'Picles',
+ 'Gulash soup' => 'Sopa de goulash',
+ 'Yogurt' => 'Yogurt',
+ 'Cheese' => 'Queijo',
+ 'Cold cuts' => 'Cortes frios',
+ 'Paprika' => 'Páprica',
+ 'Cucumber' => 'Pepino',
+ 'Radish' => 'Rabanete',
+ 'Tomato' => 'Tomate',
+ 'Changed towels in the bathroom' => 'Trocar toalhas do banheiro',
+ 'Cleaned the kitchen floor' => 'Limpar o chão da cozinha',
+ 'Warranty ends' => 'Término de Garantia',
+ 'TV remote control' => 'Controle Remoto da TV',
+ 'Alarm clock' => 'Despertador',
+ 'Heat remote control' => 'Controle remoto do aquecedor',
+ 'Lawn mowed in the garden' => 'Cortar a grama do jardim',
+ 'Some good snacks' => 'Alguns lanches',
+ 'Pizza dough' => 'Massa de pizza',
+ 'Sieved tomatoes' => 'Tomates pelados',
+ 'Salami' => 'Salame',
+ 'Toast' => 'Torrada',
+ 'Minced meat' => 'Carne Moída',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Espaguete à bolonhesa',
+ 'Sandwiches' => 'Sanduiches',
+ 'English' => 'Inglês',
+ 'German' => 'Alemão',
+ 'Italian' => 'Italiano',
+ 'Demo in different language' => 'Demonstração em idioma diferente',
+ 'This is the note content of the recipe ingredient' => 'Este é o conteúdo do ingrediente da receita',
+ 'Demo User' => 'Usuário de demonstração',
+ 'Gram' => 'Grama',
+ 'Grams' => 'Gramas',
+ 'Flour' => 'Farinha',
+ 'Pancakes' => 'Panquecas',
+ 'Sugar' => 'Açucar',
+ 'Home' => 'Casa',
+ 'Life' => 'Vida',
+ 'Projects' => 'Projetos',
+ 'Repair the garage door' => 'Consertar o portão da Garagem',
+ 'Fork and improve grocy' => 'Ajude a aprimorar o grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Encontre uma solução para o que fazer quando eu esquecer as chaves da porta',
+ 'Sweets' => 'Doces',
+ 'Bakery products' => 'Produtos de confeitaria',
+ 'Tinned food' => 'Alimentos enlatados',
+ 'Butchery products' => 'Produtos de açougue',
+ 'Vegetables/Fruits' => 'Vegetais/Frutas',
+ 'Refrigerated products' => 'Produtos refrigerados',
+ 'Coffee machine' => 'Máquina de café',
+ 'Dishwasher' => 'Lava-louças',
+ 'Liter' => 'Litro',
+ 'Liters' => 'Litros',
+ 'Bottle' => 'Garrafa',
+ 'Bottles' => 'Garrafas',
+ 'Milk' => 'Leite',
+ 'Chocolate sauce' => 'Chocolate temperado',
+ 'Milliliters' => 'Milimetros',
+ 'Milliliter' => 'Milimetro',
+ 'Bottom' => 'Inferior',
+ 'Topping' => 'Cobertura',
+ 'French' => 'Francês',
+ 'Turkish' => 'Turco',
+ 'Spanish' => 'Espanhol',
+ 'Russian' => 'Russo',
+ 'The thing which happens on the 5th of every month' => 'Coisas que ocorrem todo dia 5 de cada mês',
+ 'The thing which happens daily' => 'Coisas que ocorrem diariamente',
+ 'The thing which happens on Mondays and Wednesdays' => 'Coisas que ocorrem as segundas e quartas',
+ 'Swedish' => 'Sueco',
+ 'Polish' => ''
+);
diff --git a/localization-backup/pt_BR/stock_transaction_types.php b/localization-backup/pt_BR/stock_transaction_types.php
new file mode 100644
index 00000000..04ab39ed
--- /dev/null
+++ b/localization-backup/pt_BR/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Compra',
+ 'consume' => 'Consumo',
+ 'inventory-correction' => 'Correção de Inventário',
+ 'product-opened' => 'Produtos Abertos'
+);
diff --git a/localization-backup/pt_BR/strings.php b/localization-backup/pt_BR/strings.php
new file mode 100644
index 00000000..3a66bd02
--- /dev/null
+++ b/localization-backup/pt_BR/strings.php
@@ -0,0 +1,397 @@
+ 'Visão geral do Estoque',
+ '#1 products expiring within the next #2 days' => '#1 produto vencendo nos próximos #2 days',
+ '#1 products are already expired' => '#1 produtos estão vencendo',
+ '#1 products are below defined min. stock amount' => '#1 produtos estão abaixo da quantidade minima de estoque definida',
+ 'Product' => 'Produto',
+ 'Amount' => 'Quantidade',
+ 'Next best before date' => 'Próximo prazo de validade',
+ 'Logout' => 'Sair',
+ 'Chores overview' => 'Visão Geral das Tarefas Domésticas',
+ 'Batteries overview' => 'Visão Geral das Baterias',
+ 'Purchase' => 'Compra',
+ 'Consume' => 'Consumo',
+ 'Inventory' => 'Inventário',
+ 'Shopping list' => 'Lista de Compras',
+ 'Chore tracking' => 'Monitoramento de tarefas domésticas',
+ 'Battery tracking' => 'Monitoramento de Bateria',
+ 'Products' => 'Produtos',
+ 'Locations' => 'Localizações',
+ 'Quantity units' => 'Unidades de medida',
+ 'Chores' => 'Tarefas Domésticas',
+ 'Batteries' => 'Baterias',
+ 'Chore' => 'Tarefa Doméstica',
+ 'Next estimated tracking' => 'Próximo acompanhamento estimado',
+ 'Last tracked' => 'Último acompanhamento',
+ 'Battery' => 'Bateria',
+ 'Last charged' => 'Última Carga',
+ 'Next planned charge cycle' => 'Próximo ciclo de carga planejada',
+ 'Best before' => 'Melhor consumido antes de ',
+ 'OK' => 'OK',
+ 'Product overview' => 'Visão geral de Produto',
+ 'Stock quantity unit' => 'Unidades de medida do estoque',
+ 'Stock amount' => 'Total de Estoque',
+ 'Last purchased' => 'Última compra',
+ 'Last used' => 'Último uso',
+ 'Spoiled' => '',
+ 'Barcode lookup is disabled' => 'A pesquisa de código de barras está desativada',
+ 'will be added to the list of barcodes for the selected product on submit' => 'será adicionado à lista de códigos de barras do produto selecionado no envio',
+ 'New amount' => 'Novo total',
+ 'Note' => 'Nota',
+ 'Tracked time' => 'Registo de tempo',
+ 'Chore overview' => 'Visão Geral de Tarefas',
+ 'Tracked count' => 'Total de Registos',
+ 'Battery overview' => 'Visão Geral de Bateria',
+ 'Charge cycles count' => 'Contagem de ciclos de carga',
+ 'Create shopping list item' => 'Criar item na lista de compras',
+ 'Edit shopping list item' => 'Editar item da lista de compras',
+ 'Save' => 'Salvar',
+ 'Add' => 'Adicionar',
+ 'Name' => 'Nome',
+ 'Location' => 'Localização',
+ 'Min. stock amount' => 'Total mínimo de estoque',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => 'Descrição',
+ 'Create product' => 'Criar produto',
+ 'Barcode(s)' => 'Código(s) de Barra',
+ 'Minimum stock amount' => 'Total mínimo de estoque',
+ 'Default best before days' => 'Próximo prazo de validade padrão',
+ 'Quantity unit purchase' => 'Unidades de medida de compra',
+ 'Quantity unit stock' => 'Unidades de medida do estoque',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => 'Criar Localização',
+ 'Create quantity unit' => 'Criar unidade de medida',
+ 'Period type' => 'Tipo de período',
+ 'Period days' => '',
+ 'Create chore' => 'Criar tarefa doméstica',
+ 'Used in' => 'Usado em',
+ 'Create battery' => 'Criar bateria',
+ 'Edit battery' => 'Editar bateria',
+ 'Edit chore' => 'Editar tarefa doméstica',
+ 'Edit quantity unit' => 'Edutar unidade de medida',
+ 'Edit product' => 'Editar produto',
+ 'Edit location' => 'Editar localização',
+ 'Record data' => 'Gravar dados',
+ 'Manage master data' => '',
+ 'This will apply to added products' => 'Isso irá se aplicar aos produtos acicionados',
+ 'never' => 'nunca',
+ 'Add products that are below defined min. stock amount' => 'Adicionar produtos que estão abaixo da quantidade mínima de estoque definido',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => 'Login',
+ 'Username' => 'Usuário',
+ 'Password' => 'Senha',
+ 'Invalid credentials, please try again' => 'Credenciais inválidas, por favor tente novamente',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => 'Sim',
+ 'No' => 'Não',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => 'Cancelar',
+ 'Add as new product' => 'Adicionar como produto novo',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => 'Gerenciar usuários',
+ 'User' => 'Usuário',
+ 'Users' => 'Usuários',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/pt_BR/userfield_types.php b/localization-backup/pt_BR/userfield_types.php
new file mode 100644
index 00000000..cae31010
--- /dev/null
+++ b/localization-backup/pt_BR/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Texto (linha única)',
+ 'text-multi-line' => 'Texto (Multiplas Linhas)',
+ 'number-integral' => 'Número (inteiro)',
+ 'number-decimal' => 'Número (decimal)',
+ 'date' => 'Data (sem horário)',
+ 'datetime' => 'Data e Hora',
+ 'checkbox' => 'Caixa de Seleção'
+);
diff --git a/localization-backup/pt_PT/chore_types.php b/localization-backup/pt_PT/chore_types.php
new file mode 100644
index 00000000..96624426
--- /dev/null
+++ b/localization-backup/pt_PT/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manualmente',
+ 'dynamic-regular' => 'Regular dinâmico',
+ 'daily' => 'Diário',
+ 'weekly' => 'Semanal',
+ 'monthly' => 'Mensal'
+);
diff --git a/localization-backup/pt_PT/component_translations.php b/localization-backup/pt_PT/component_translations.php
new file mode 100644
index 00000000..1cb558ee
--- /dev/null
+++ b/localization-backup/pt_PT/component_translations.php
@@ -0,0 +1,10 @@
+ 'ptpt',
+ 'timeago_nan' => 'NaN anos atrás',
+ 'moment_locale' => 'x',
+ 'datatables_localization' => '{"sEmptyTable":"Não há dados disponiveis na tabela","sInfo":"Showing _START_ to _END_ of _TOTAL_ entries","sInfoEmpty":"A mostrar 0 a 0 de 0 registos","sInfoFiltered":"(filtered from _MAX_ total entries)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"Show _MENU_ entries","sLoadingRecords":"A carregar...","sProcessing":"A processar...","sSearch":"Pesquisa:","sZeroRecords":"Não foram encontrados registos","oPaginate":{"sFirst":"Primeira","sLast":"Última","sNext":"Próxima","sPrevious":"Anterior"},"oAria":{"sSortAscending":": activar para ordernar coluna em ascendente","sSortDescending":": activar para ordernar coluna em descendente"}}',
+ 'summernote_locale' => 'x',
+ 'fullcalendar_locale' => 'x'
+);
diff --git a/localization-backup/pt_PT/demo_data.php b/localization-backup/pt_PT/demo_data.php
new file mode 100644
index 00000000..4db69718
--- /dev/null
+++ b/localization-backup/pt_PT/demo_data.php
@@ -0,0 +1,95 @@
+ 'Biscoitos',
+ 'Chocolate' => 'Chocolate',
+ 'Pantry' => 'Despensa',
+ 'Candy cupboard' => 'Armário dos doces',
+ 'Tinned food cupboard' => 'Armário dos enlatados',
+ 'Fridge' => 'Frigorifico',
+ 'Piece' => 'Pedaço',
+ 'Pieces' => 'Pedaços',
+ 'Pack' => 'Embalagem',
+ 'Packs' => 'Embalagens',
+ 'Glass' => 'Copo',
+ 'Glasses' => 'Copos',
+ 'Tin' => 'Lata',
+ 'Tins' => 'Latas',
+ 'Can' => 'Lata',
+ 'Cans' => 'Latas',
+ 'Bunch' => 'Molho',
+ 'Bunches' => 'Molhos',
+ 'Gummy bears' => 'Ursinhos de goma',
+ 'Crisps' => 'Batatas fritas',
+ 'Eggs' => 'Ovos',
+ 'Noodles' => 'Noodles',
+ 'Pickles' => 'Picles',
+ 'Gulash soup' => 'Sopa Goulash',
+ 'Yogurt' => 'Iogurte',
+ 'Cheese' => 'Queijo',
+ 'Cold cuts' => 'Cortes frios',
+ 'Paprika' => 'Paprica',
+ 'Cucumber' => 'Pepino',
+ 'Radish' => 'Rabanete',
+ 'Tomato' => 'Tomate',
+ 'Changed towels in the bathroom' => 'Toalhas mudadas na Casa de Banho',
+ 'Cleaned the kitchen floor' => 'Chão da Cozinha limpo',
+ 'Warranty ends' => 'Garantia termina',
+ 'TV remote control' => 'Comando da TV',
+ 'Alarm clock' => 'Relógio de alarme',
+ 'Heat remote control' => 'Comando do aquecimento',
+ 'Lawn mowed in the garden' => 'Relva cortada no jardim',
+ 'Some good snacks' => 'Alguns bons petiscos',
+ 'Pizza dough' => 'Massa para piza',
+ 'Sieved tomatoes' => 'Tomates triturados',
+ 'Salami' => 'Salame',
+ 'Toast' => 'Torrada',
+ 'Minced meat' => 'Carne picada',
+ 'Pizza' => 'Piza',
+ 'Spaghetti bolognese' => 'Esparguete à bolonhesa',
+ 'Sandwiches' => 'Sanduiche',
+ 'English' => 'Inglês',
+ 'German' => 'Alemão',
+ 'Italian' => 'Italiano',
+ 'Demo in different language' => 'Demonstração em idioma diferente',
+ 'This is the note content of the recipe ingredient' => 'Este é o conteúdo da nota do ingrediente da receita',
+ 'Demo User' => 'Utilizador de demonstração',
+ 'Gram' => 'Grama',
+ 'Grams' => 'Gramas',
+ 'Flour' => 'Farinha',
+ 'Pancakes' => 'Panquecas',
+ 'Sugar' => 'Açúcar',
+ 'Home' => 'Casa',
+ 'Life' => 'Vida',
+ 'Projects' => 'Projectos',
+ 'Repair the garage door' => 'Reparar a porta da garagem',
+ 'Fork and improve grocy' => 'Fazer um Fork para melhorar o Grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Encontrar uma solução para o que fazer quando me esqueço das chaves da porta',
+ 'Sweets' => 'Doces',
+ 'Bakery products' => 'Produtos de pastelaria',
+ 'Tinned food' => 'Comida enlatada',
+ 'Butchery products' => 'Produtos do talho',
+ 'Vegetables/Fruits' => 'Vegetais/Frutas',
+ 'Refrigerated products' => 'Produtos refrigerados',
+ 'Coffee machine' => 'Máquina de café',
+ 'Dishwasher' => 'Máquina de lavar loiça',
+ 'Liter' => 'Litro',
+ 'Liters' => 'Litros',
+ 'Bottle' => 'Garrafa',
+ 'Bottles' => 'Garrafas',
+ 'Milk' => 'Leite',
+ 'Chocolate sauce' => 'Molho de Chocolate',
+ 'Milliliters' => 'Mililitros',
+ 'Milliliter' => 'Mililitro',
+ 'Bottom' => 'Fundo',
+ 'Topping' => 'Cobertura',
+ 'French' => 'Francês',
+ 'Turkish' => 'Turco',
+ 'Spanish' => 'Espanhol',
+ 'Russian' => 'Russo',
+ 'The thing which happens on the 5th of every month' => 'A coisa que acontece ao dia 5 todos os meses',
+ 'The thing which happens daily' => 'A coisa que acontece todos os dias',
+ 'The thing which happens on Mondays and Wednesdays' => 'A coisa que acontece às Segundas e Quartas',
+ 'Swedish' => 'Sueco',
+ 'Polish' => ''
+);
diff --git a/localization-backup/pt_PT/stock_transaction_types.php b/localization-backup/pt_PT/stock_transaction_types.php
new file mode 100644
index 00000000..6a6ccd43
--- /dev/null
+++ b/localization-backup/pt_PT/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Comprar',
+ 'consume' => 'Consumir',
+ 'inventory-correction' => 'Correcção de Inventário',
+ 'product-opened' => 'Produto aberto'
+);
diff --git a/localization-backup/pt_PT/strings.php b/localization-backup/pt_PT/strings.php
new file mode 100644
index 00000000..8f00ff28
--- /dev/null
+++ b/localization-backup/pt_PT/strings.php
@@ -0,0 +1,397 @@
+ 'Visão geral do Stock',
+ '#1 products expiring within the next #2 days' => '#1 produtos a expirar nos próximos #2 dias',
+ '#1 products are already expired' => '#1 produtos já expiraram',
+ '#1 products are below defined min. stock amount' => '#1 produtos estão abaixo da quantidade mínima definida ',
+ 'Product' => 'Produto',
+ 'Amount' => 'Quantidade',
+ 'Next best before date' => 'Próxima data de validade a expirar',
+ 'Logout' => 'Logout',
+ 'Chores overview' => 'Visão geral das Tarefas',
+ 'Batteries overview' => 'Visão geral das Pilhas',
+ 'Purchase' => 'Comprar',
+ 'Consume' => 'Consumir',
+ 'Inventory' => 'Inventário',
+ 'Shopping list' => 'Lista de compras',
+ 'Chore tracking' => 'Tracking de Tarefas',
+ 'Battery tracking' => 'Tracking de Pilhas',
+ 'Products' => 'Produtos',
+ 'Locations' => 'Localizações',
+ 'Quantity units' => 'Unidades de medida',
+ 'Chores' => 'Tarefas',
+ 'Batteries' => 'Pilhas',
+ 'Chore' => 'Tarefa',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => '',
+ 'Battery' => 'Pilha',
+ 'Last charged' => 'Última carga',
+ 'Next planned charge cycle' => 'Próximo ciclo de carga planeado',
+ 'Best before' => 'Consumir antes de',
+ 'OK' => 'OK',
+ 'Product overview' => 'Visão geral do Produto',
+ 'Stock quantity unit' => 'Unidade de medida do Stock',
+ 'Stock amount' => 'Quantidade em stock',
+ 'Last purchased' => 'Comprado pela última vez em',
+ 'Last used' => 'Usado pela última vez em',
+ 'Spoiled' => 'Estragado',
+ 'Barcode lookup is disabled' => 'Pesquisa por código de barras desactivada',
+ 'will be added to the list of barcodes for the selected product on submit' => 'ao submeter irá ser adicionado à lista de códigos de barra para o produto seleccionado',
+ 'New amount' => 'Nova quantidade',
+ 'Note' => 'Nota',
+ 'Tracked time' => '',
+ 'Chore overview' => 'Visão geral da Tarefa',
+ 'Tracked count' => '',
+ 'Battery overview' => 'Visão geral da Pilha',
+ 'Charge cycles count' => 'Total de ciclos de carga',
+ 'Create shopping list item' => 'Criar item na lista de compras',
+ 'Edit shopping list item' => 'Editar item da lista de compras',
+ 'Save' => 'Guardar',
+ 'Add' => 'Adicionar',
+ 'Name' => 'Nome',
+ 'Location' => 'Localização',
+ 'Min. stock amount' => 'Quantidade mínima de stock',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => 'Descrição',
+ 'Create product' => 'Criar produto',
+ 'Barcode(s)' => 'Código(s) de barras',
+ 'Minimum stock amount' => 'Quantidade mínima de stock',
+ 'Default best before days' => 'Data de validade padrão',
+ 'Quantity unit purchase' => 'Unidade de medida da compra',
+ 'Quantity unit stock' => 'Unidade de medida do stock',
+ 'Factor purchase to stock quantity unit' => 'Unidade de medida do stock por compra',
+ 'Create location' => 'Criar localização',
+ 'Create quantity unit' => 'Criar unidade de medida',
+ 'Period type' => 'Tipo de periodo',
+ 'Period days' => 'Dias do periodo',
+ 'Create chore' => 'Criar tarefa',
+ 'Used in' => 'Usado em',
+ 'Create battery' => 'Criar Pilha',
+ 'Edit battery' => 'Editar Pilha',
+ 'Edit chore' => 'Editar Tarefa',
+ 'Edit quantity unit' => 'Editar unidade de medida',
+ 'Edit product' => 'Editar Produto',
+ 'Edit location' => 'Editar Localização',
+ 'Record data' => 'Gravar dados',
+ 'Manage master data' => 'Gerir dados mestre',
+ 'This will apply to added products' => 'Isto será aplicado a todos os produtos',
+ 'never' => 'nunca',
+ 'Add products that are below defined min. stock amount' => 'Adicionar produtos que estão abaixo da quantidade min. de stock definida',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => '',
+ 'Username' => '',
+ 'Password' => '',
+ 'Invalid credentials, please try again' => '',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => '',
+ 'No' => '',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => '',
+ 'Add as new product' => '',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => '',
+ 'User' => '',
+ 'Users' => '',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/pt_PT/userfield_types.php b/localization-backup/pt_PT/userfield_types.php
new file mode 100644
index 00000000..6430d585
--- /dev/null
+++ b/localization-backup/pt_PT/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Texto (linha única)',
+ 'text-multi-line' => 'Texto (múltiplas linhas)',
+ 'number-integral' => 'Número (inteiro)',
+ 'number-decimal' => 'Número (décimal)',
+ 'date' => 'Data (sem horas)',
+ 'datetime' => 'Data e Hora',
+ 'checkbox' => 'Checkbox'
+);
diff --git a/localization-backup/ru/chore_types.php b/localization-backup/ru/chore_types.php
new file mode 100644
index 00000000..77c7872a
--- /dev/null
+++ b/localization-backup/ru/chore_types.php
@@ -0,0 +1,9 @@
+ 'Вручную',
+ 'dynamic-regular' => 'Динамически постоянно',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/ru/component_translations.php b/localization-backup/ru/component_translations.php
new file mode 100644
index 00000000..76b46911
--- /dev/null
+++ b/localization-backup/ru/component_translations.php
@@ -0,0 +1,10 @@
+ 'ru',
+ 'timeago_nan' => 'NaN год',
+ 'moment_locale' => 'ru',
+ 'datatables_localization' => '{}',
+ 'summernote_locale' => 'ru-RU',
+ 'fullcalendar_locale' => 'ru'
+);
diff --git a/localization-backup/ru/demo_data.php b/localization-backup/ru/demo_data.php
new file mode 100644
index 00000000..3f96c2f1
--- /dev/null
+++ b/localization-backup/ru/demo_data.php
@@ -0,0 +1,95 @@
+ 'Печенье',
+ 'Chocolate' => 'Шоколад',
+ 'Pantry' => '',
+ 'Candy cupboard' => '',
+ 'Tinned food cupboard' => '',
+ 'Fridge' => 'Холодильник',
+ 'Piece' => 'Штука',
+ 'Pieces' => 'Штук(и)',
+ 'Pack' => 'Упаковка',
+ 'Packs' => 'Упаков(ки/ок)',
+ 'Glass' => 'Стакан',
+ 'Glasses' => 'Стакан(а/ов)',
+ 'Tin' => '',
+ 'Tins' => '',
+ 'Can' => '',
+ 'Cans' => '',
+ 'Bunch' => '',
+ 'Bunches' => '',
+ 'Gummy bears' => '',
+ 'Crisps' => '',
+ 'Eggs' => 'Яйца',
+ 'Noodles' => 'Макароны',
+ 'Pickles' => 'Огурцы',
+ 'Gulash soup' => '',
+ 'Yogurt' => 'Йогурт',
+ 'Cheese' => 'Сыр',
+ 'Cold cuts' => '',
+ 'Paprika' => '',
+ 'Cucumber' => '',
+ 'Radish' => '',
+ 'Tomato' => 'Помидор',
+ 'Changed towels in the bathroom' => '',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => 'Гарантия заканчивается',
+ 'TV remote control' => 'Пульт ДУ',
+ 'Alarm clock' => 'Часы с будильником',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => '',
+ 'Sieved tomatoes' => '',
+ 'Salami' => '',
+ 'Toast' => '',
+ 'Minced meat' => '',
+ 'Pizza' => '',
+ 'Spaghetti bolognese' => '',
+ 'Sandwiches' => '',
+ 'English' => '',
+ 'German' => '',
+ 'Italian' => '',
+ 'Demo in different language' => '',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => '',
+ 'Gram' => '',
+ 'Grams' => '',
+ 'Flour' => '',
+ 'Pancakes' => '',
+ 'Sugar' => '',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => '',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => '',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => '',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => '',
+ 'Dishwasher' => '',
+ 'Liter' => '',
+ 'Liters' => '',
+ 'Bottle' => '',
+ 'Bottles' => '',
+ 'Milk' => '',
+ 'Chocolate sauce' => '',
+ 'Milliliters' => '',
+ 'Milliliter' => '',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => 'Французский',
+ 'Turkish' => 'Турецкий',
+ 'Spanish' => 'Испанский',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/ru/stock_transaction_types.php b/localization-backup/ru/stock_transaction_types.php
new file mode 100644
index 00000000..56e9185d
--- /dev/null
+++ b/localization-backup/ru/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Купить',
+ 'consume' => 'Употребить',
+ 'inventory-correction' => 'Исправление инвентаря',
+ 'product-opened' => 'Продукт открыт'
+);
diff --git a/localization-backup/ru/strings.php b/localization-backup/ru/strings.php
new file mode 100644
index 00000000..0cb19f93
--- /dev/null
+++ b/localization-backup/ru/strings.php
@@ -0,0 +1,398 @@
+ 'Обзор склада',
+ '#1 products expiring within the next #2 days' => 'У #1 продуктов заканчивается срок годности через #2 дня (дней)',
+ '#1 products are already expired' => 'У #1 продуктов закончился срок годности',
+ '#1 products are below defined min. stock amount' => '#1 продуктов имеются меньше мин. заданного кол-ва',
+ 'Product' => 'Продукт',
+ 'Amount' => 'Количество',
+ 'Next best before date' => 'Следующий срок годности',
+ 'Logout' => 'Выйти',
+ 'Chores overview' => 'Обзор работ по дому',
+ 'Batteries overview' => 'Обзор батарей',
+ 'Purchase' => 'Покупка',
+ 'Consume' => 'Потребление',
+ 'Inventory' => 'Инвентарь',
+ 'Shopping list' => 'Список покупок',
+ 'Chore tracking' => 'Выполнить работу по дому',
+ 'Battery tracking' => 'Отслеживание батарей',
+ 'Products' => 'Продукты',
+ 'Locations' => 'Места хранения',
+ 'Quantity units' => 'Единицы измерения',
+ 'Chores' => 'Работы по дому',
+ 'Batteries' => 'Батареи',
+ 'Chore' => 'Работа по дому',
+ 'Next estimated tracking' => 'Следующий период отслеживания',
+ 'Last tracked' => 'Последнее время отслеживания',
+ 'Battery' => 'Батарея',
+ 'Last charged' => 'Последний раз заряжалась',
+ 'Next planned charge cycle' => 'Следующий запланированный цикл заряда',
+ 'Best before' => 'Срок годности',
+ 'OK' => 'Готово',
+ 'Product overview' => 'Обзор продуктов',
+ 'Stock quantity unit' => 'Единица измерения запаса',
+ 'Stock amount' => 'Количество в запасе',
+ 'Last purchased' => 'Последняя покупка',
+ 'Last used' => 'Последний раз использовалось',
+ 'Spoiled' => 'Испорчено',
+ 'Barcode lookup is disabled' => 'Поиск по штрихкоду отключён',
+ 'will be added to the list of barcodes for the selected product on submit' => 'будет добавлен к списку штрихкодов для выбранного продукта при сохранении',
+ 'New amount' => 'Новое количество',
+ 'Note' => 'Заметки',
+ 'Tracked time' => 'Время выполнения',
+ 'Chore overview' => 'Обзор работы по дому',
+ 'Tracked count' => 'Количество выполнений',
+ 'Battery overview' => 'Обзор батарей',
+ 'Charge cycles count' => 'Количество циклов заряда',
+ 'Create shopping list item' => 'Создать элемент списка покупок',
+ 'Edit shopping list item' => 'Изменить элемент списка покупок',
+ 'Save' => 'Сохранить',
+ 'Add' => 'Добавить',
+ 'Name' => 'Имя',
+ 'Location' => 'Место хранения',
+ 'Min. stock amount' => 'Мин. кол-во в запасе',
+ 'QU purchase' => 'Ед.изм. покупки',
+ 'QU stock' => 'Ед.изм. запаса',
+ 'QU factor' => 'Пересчёт ед.изм.',
+ 'Description' => 'Описание',
+ 'Create product' => 'Создать продукт',
+ 'Barcode(s)' => 'Штрихкод(ы)',
+ 'Minimum stock amount' => 'Минимальное количество в запасе',
+ 'Default best before days' => 'Срок годности по умолчанию',
+ 'Quantity unit purchase' => 'Единица измерения про покупке',
+ 'Quantity unit stock' => 'Единица измерения в запасе',
+ 'Factor purchase to stock quantity unit' => 'Коэффициент пересчёта единиц измерения при покупке и в запасе',
+ 'Create location' => 'Создать место хранения',
+ 'Create quantity unit' => 'Создать единицу измерения',
+ 'Period type' => 'Тип периода',
+ 'Period days' => 'Период в днях',
+ 'Create chore' => 'Создать работу по дому',
+ 'Used in' => 'Используется в',
+ 'Create battery' => 'Создать батарею',
+ 'Edit battery' => 'Изменить батарею',
+ 'Edit chore' => 'Изменить работу по дому',
+ 'Edit quantity unit' => 'Изменить единицу измерения',
+ 'Edit product' => 'Изменить продукт',
+ 'Edit location' => 'Изменить место хранения',
+ 'Record data' => 'Записать данные',
+ 'Manage master data' => 'Управление основными данными',
+ 'This will apply to added products' => 'Будет применено к добавленным продуктам',
+ 'never' => 'никогда',
+ 'Add products that are below defined min. stock amount' => 'Добавить продукты, которых меньше мин. заданного кол-ва',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Данное количество дней будет добавлено к предлагаемому сроку годности при покупке',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Означает, что 1 купленный #1 будет пересчитан в #2 #3 в запасе',
+ 'Login' => 'Вход',
+ 'Username' => 'Имя пользователя',
+ 'Password' => 'Пароль',
+ 'Invalid credentials, please try again' => 'Неправильные данные для входа, попробуйте снова',
+ 'Are you sure to delete battery "#1"?' => 'Вы уверены, что нужно удалить батарею "#1"? ',
+ 'Yes' => 'Да',
+ 'No' => 'Нет',
+ 'Are you sure to delete chore "#1"?' => 'Вы уверены, что нужно удалить работу по дому "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" не может быть преобразован к существующему продукту. Как вы хотите продолжить?',
+ 'Create or assign product' => 'Создать или назначить продукт',
+ 'Cancel' => 'Отмена',
+ 'Add as new product' => 'Добавить как новый продукт',
+ 'Add as barcode to existing product' => 'Добавить в качестве штрихкода к существующему продукту',
+ 'Add as new product and prefill barcode' => 'Добавить новый продукт, заполнив штрихкод',
+ 'Are you sure to delete quantity unit "#1"?' => 'Вы уверены, что нужно удалить единицу измерения "#1"?',
+ 'Are you sure to delete product "#1"?' => 'Вы уверены, что нужно удалить продукт "#1"?',
+ 'Are you sure to delete location "#1"?' => 'Вы уверены, что нужно удалить место хранения "#1"?',
+ 'Manage API keys' => 'Управление ключами доступа к API',
+ 'REST API & data model documentation' => 'Документация на REST API и модуль данных',
+ 'API keys' => 'Ключи доступа к API',
+ 'Create new API key' => 'Создать ключ доступа к API',
+ 'API key' => 'Ключ доступа к API',
+ 'Expires' => 'Истекает',
+ 'Created' => 'Создан',
+ 'This product is not in stock' => 'Данного продукта нет в запасе',
+ 'This means #1 will be added to stock' => 'Означает, что #1 будет добавлен в запас',
+ 'This means #1 will be removed from stock' => 'Означает, что #1 будет убран из запаса',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Это означает, что следующее выполнение данной работы по дому будет назначено спустя #1 дней после самого недавнего выполнения',
+ 'Removed #1 #2 of #3 from stock' => 'Убрано #1 #2 из #3 из запаса',
+ 'About grocy' => 'О grocy',
+ 'Close' => 'Закрыть',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 батарей нужно будет зарядить в ближайшие #2 дня',
+ '#1 batteries are overdue to be charged' => '#1 батарей нужно зарядить',
+ '#1 chores are due to be done within the next #2 days' => 'Срок исполнения #1 работ по дому наступает в ближайшие #2 дня (дней)',
+ '#1 chores are overdue to be done' => 'У #1 работ по дому уже подошёл срок выполнения',
+ 'Released on' => 'Выпуск от',
+ 'Consume #3 #1 of #2' => 'Употреблено #3 #1 из #2',
+ 'Added #1 #2 of #3 to stock' => 'Добавлено #1 #2 из #3 в запас',
+ 'Stock amount of #1 is now #2 #3' => '#1 в запасе теперь #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Отмечено выполнения работы по дому #1 в #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'Отмечен цикл заряд батареи #1 в #2',
+ 'Consume all #1 which are currently in stock' => 'Употребить все #1, что находятся в запасе',
+ 'All' => 'Все',
+ 'Track charge cycle of battery #1' => 'Отметить цикл заряда батареи #1',
+ 'Track execution of chore #1' => 'Отметить выполнение работы по дому #1',
+ 'Filter by location' => 'Отфильтровать по месту хранения',
+ 'Search' => 'Поиск',
+ 'Not logged in' => 'Нет входа в систему',
+ 'You have to select a product' => 'Вам нужно выбрать продукт',
+ 'You have to select a chore' => 'Вам нужно выбрать работу по дому',
+ 'You have to select a battery' => 'Вам нужно выбрать батарею',
+ 'A name is required' => 'Имя необходимо',
+ 'A location is required' => 'Место хранения необходимо',
+ 'The amount cannot be lower than #1' => 'Количество не может быть меньше #1',
+ 'This cannot be negative' => 'Значение не может быть отрицательным',
+ 'A quantity unit is required' => 'Необходима единица измерения',
+ 'A period type is required' => 'Необходим тип периода',
+ 'A best before date is required' => 'Необходим срок годности',
+ 'Settings' => 'Настройки',
+ 'This can only be before now' => 'Данное поле должно быть раньше текущего времени',
+ 'Calendar' => 'Календарь',
+ 'Recipes' => 'Рецепты',
+ 'Edit recipe' => 'Изменить рецепт',
+ 'New recipe' => 'Новый рецепт',
+ 'Ingredients list' => 'Список ингредиентов',
+ 'Add recipe ingredient' => 'Добавить ингредиент рецепта',
+ 'Edit recipe ingredient' => 'Изменить ингредиент рецепта',
+ 'Are you sure to delete recipe "#1"?' => 'Вы уверены, что нужно удалить рецепт "#1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Вы уверены, что нужно удалить ингредиент рецепта "#1"?',
+ 'Are you sure to empty shopping list "#1"?' => 'Вы уверены, что нужно очистить список покупок "#1"? ',
+ 'Clear list' => 'Очистить список',
+ 'Requirements fulfilled' => 'Требования выполнены',
+ 'Put missing products on shopping list' => 'Добавить отсутствующие продукты в список покупок',
+ 'Not enough in stock, #1 ingredients missing' => 'Запаса недостаточно, #1 ингредиентов нет',
+ 'Enough in stock' => 'Достаточно в запасе',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Запаса недостаточно, #1 ингредиентов нет, но уже добавлены в список покупок',
+ 'Expand to fullscreen' => 'Раскрыть на весь экран',
+ 'Ingredients' => 'Ингредиенты',
+ 'Preparation' => 'Приготовление',
+ 'Recipe' => 'Рецепт',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Запаса недостаточно, #1 ингредиентов нет, #2 уже добавлены в список покупок',
+ 'Show notes' => 'Показать заметки',
+ 'Put missing amount on shopping list' => 'Добавить отсутствующее количество в список покупок',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Вы уверены, что нужно добавить все отсутствующие ингредиенты для рецепта "#1" в список покупок?',
+ 'Added for recipe #1' => 'Добавлен рецепт #1',
+ 'Manage users' => 'Управление пользователями',
+ 'User' => 'Пользователь',
+ 'Users' => 'Пользователи',
+ 'Are you sure to delete user "#1"?' => 'Вы уверены, что нужно удалить пользователя "#1"?',
+ 'Create user' => 'Создать пользователя',
+ 'Edit user' => 'Изменить пользователя',
+ 'First name' => 'Имя',
+ 'Last name' => 'Фамилия',
+ 'A username is required' => 'Имя пользователя обязательно',
+ 'Confirm password' => 'Подтверждение пароля',
+ 'Passwords do not match' => 'Пароли не совпадают',
+ 'Change password' => 'Изменить пароль',
+ 'Done by' => 'Выполнено ',
+ 'Last done by' => 'Последний раз выполнено',
+ 'Unknown' => 'Неизвестно',
+ 'Filter by chore' => 'Отфильтровать по работе по дому',
+ 'Chores journal' => 'Журнал выполнения работ по дому',
+ '0 means suggestions for the next charge cycle are disabled' => '0 означен, что предложения следующего цикла заряда выключены',
+ 'Charge cycle interval (days)' => 'Цикл работы от 1 заряда (дней)',
+ 'Last price' => 'Последняя цена покупки',
+ 'Price history' => 'История цен',
+ 'No price history available' => 'Нет истории цен для показа',
+ 'Price' => 'Цена',
+ 'in #1 per purchase quantity unit' => 'в #1 на покупку единицы измерения',
+ 'The price cannot be lower than #1' => 'Цена не может быть ниже #1',
+ '#1 product expires within the next #2 days' => 'У #1 продукта закончится срок годности через #2 дня(дней)',
+ '#1 product is already expired' => 'У #1 продукта уже закончился срок годности',
+ '#1 product is below defined min. stock amount' => '#1 продукт имеется меньше мин. заданного кол-ва',
+ 'Unit' => 'Ед.изм.',
+ 'Units' => 'Ед.изм.',
+ '#1 chore is due to be done within the next #2 days' => 'Срок исполнения #1 работы по дому наступает в ближайшие #2 дня (дней) ',
+ '#1 chore is overdue to be done' => 'У #1 работы по дому уже подошёл срок исполнения ',
+ '#1 battery is due to be charged within the next #2 days' => '#1 батарею нужно будет зарядить в ближайшие #2 дня ',
+ '#1 battery is overdue to be charged' => '#1 батарею нужно зарядить',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => 'в единственном числе',
+ 'in plural form' => 'в множественном числе',
+ 'Never expires' => 'Бесконечный срок годности',
+ 'This cannot be lower than #1' => 'Не может быть менее #1',
+ '-1 means that this product never expires' => '-1 означает, что у данного продукта бесконечный срок годности',
+ 'Quantity unit' => 'Единица измерения',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Все ингредиенты рецепта "#1" убраны из запаса',
+ 'Consume all ingredients needed by this recipe' => 'Употребить все ингредиенты, необходимые данному рецепту',
+ 'Click to show technical details' => 'Нажмите, чтобы посмотреть технические детали',
+ 'Error while saving, probably this item already exists' => 'Ошибка при сохранении, вероятно, данный элемент уже существует',
+ 'Error details' => 'Детали ошибки',
+ 'Tasks' => 'Задачи',
+ 'Show done tasks' => 'Показать законченные задачи',
+ 'Task' => 'Задача',
+ 'Due' => 'Срок выполнения',
+ 'Assigned to' => 'Назначена',
+ 'Mark task "#1" as completed' => 'Пометить задачу "#1" как выполненную',
+ 'Uncategorized' => 'Без категории',
+ 'Task categories' => 'Категории задач',
+ 'Create task' => 'Создать задачу',
+ 'A due date is required' => 'Необходим срок выполнения',
+ 'Category' => 'Категория',
+ 'Edit task' => 'Изменить задачу',
+ 'Are you sure to delete task "#1"?' => 'Вы уверены, что нужно удалить задачу "#1"?',
+ '#1 task is due to be done within the next #2 days' => 'У #1 задачи заканчивается срок выполнения в ближайшие #2 дня(дней)',
+ '#1 tasks are due to be done within the next #2 days' => 'У #1 задач заканчивается срок выполнения в ближайшие #2 дня (дней)',
+ '#1 task is overdue to be done' => 'У #1 задачи вышел срок выполнения',
+ '#1 tasks are overdue to be done' => 'У #1 задач вышел срок выполнения',
+ 'Edit task category' => 'Изменить категорию задач',
+ 'Create task category' => 'Создать категорию задач',
+ 'Product groups' => 'Группы продуктов',
+ 'Ungrouped' => 'Без группы',
+ 'Create product group' => 'Создать группу продуктов',
+ 'Edit product group' => 'Изменить группу продуктов',
+ 'Product group' => 'Группа продуктов',
+ 'Are you sure to delete product group "#1"?' => 'Вы уверены, что нужно удалить группу "#1"?',
+ 'Stay logged in permanently' => 'Оставаться в сети всегда',
+ 'When not set, you will get logged out at latest after 30 days' => 'Если не отмечено, то вы выйдете автоматически через 30 дней',
+ 'Filter by status' => 'Отфильтровать по статусу',
+ 'Below min. stock amount' => 'Меньше мин. заданного кол-ва',
+ 'Expiring soon' => 'Скоро заканчивается срок',
+ 'Already expired' => 'Срок годности вышел',
+ 'Due soon' => 'Срок выполнения подходит',
+ 'Overdue' => 'Срок выполнен кончился',
+ 'View settings' => 'Настройки показа',
+ 'Auto reload on external changes' => 'Автоматическая перезагрузка при внешних изменениях',
+ 'Enable night mode' => 'Включить ночной режим',
+ 'Auto enable in time range' => 'Автоматически включать на данном отрезке времени',
+ 'From' => 'Начиная с',
+ 'in format' => 'в формате',
+ 'To' => 'Заканчивая на',
+ 'Time range goes over midnight' => 'Временной период пересекает полночь',
+ 'Product picture' => 'Изображение продукта',
+ 'No file selected' => 'Файл не выбран',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Если файл не выбран, то текущее изображение не изменится',
+ 'Delete' => 'Удалить',
+ 'The current picture will be deleted when you save the product' => 'Текущее изображение будет удалено при сохранении продукта',
+ 'Select file' => 'Выбрать файл',
+ 'Image of product #1' => 'Изображение продукта #1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Данный продукт не может быть удалён, так как он ещё есть в запасе. Пожалуйста, сначала опустошите запас.',
+ 'Delete not possible' => 'Удаление невозможно',
+ 'Equipment' => 'Техника',
+ 'Instruction manual' => 'Инструкция',
+ 'The selected equipment has no instruction manual' => 'У данной техники нет инструкции',
+ 'Notes' => 'Заметки',
+ 'Edit equipment' => 'Изменить технику',
+ 'Create equipment' => 'Создать технику',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Если файл не выбран, то текущая инструкция не будет изменена',
+ 'No instruction manual available' => 'Нет доступной инструкции
+',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Текущая инструкция будет удалена при сохранении техники',
+ 'No picture available' => 'Нет доступного изображения',
+ 'Filter by product group' => 'Отфильтровать по групп',
+ 'Presets for new products' => 'Настройки по умолчанию для новых продуктов',
+ 'Included recipes' => 'Включённые рецепты',
+ 'A recipe is required' => 'Необходим рецепт',
+ 'Add included recipe' => 'Добавить включённый рецепт',
+ 'Edit included recipe' => 'Изменить включённый рецепт',
+ 'Group' => 'Группа',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => 'Журнал',
+ 'Stock journal' => 'Журнал запасов',
+ 'Filter by product' => 'Отфильтровать по продукту',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => 'Отменено',
+ 'Batteries journal' => 'Журнал батарей',
+ 'Filter by battery' => 'Отфильтровать по батарее',
+ 'Undo charge cycle' => 'Отменить цикл заряда',
+ 'Undo chore execution' => 'Отменить выполнение работы по дому',
+ 'Chore execution successfully undone' => 'Успешно отменено выполнение работы по дому',
+ 'Undo' => 'Отменить',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => 'Добавить всё в списке в запас',
+ 'Add #3 #1 of #2 to stock' => 'Добавить #3 #1 #2 в запас',
+ 'Adding shopping list item #1 of #2' => 'Добавляется элемент списка покупок #1 из #2',
+ 'Use a specific stock item' => 'Использовать конкретный элемент из запаса',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'Первый элемент этого списка будет выбран по правилу "Сначала с меньшим сроком годности, затем по дате поступления"',
+ 'Mark #3 #1 of #2 as open' => 'Пометить #3 #1 #2 как открытую',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '#1 #2 #3 помечена открытой',
+ 'Mark as opened' => 'Пометить как открытые',
+ 'Expires on #1; Bought on #2' => 'Срок годности: #1; Приобретено: #2',
+ 'Not opened' => 'Не открыто',
+ 'Opened' => 'Открыто',
+ 'Mark #3 #1 of #2 as open' => 'Пометить #3 #1 #2 как открытую',
+ '#1 opened' => '#1 открыто',
+ 'Product expires' => 'У продукта заканчивается срок годности',
+ 'Task due' => 'Срок выполнения задачи',
+ 'Chore due' => 'Срок выполнения работы по дому',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => 'Показывать часы в заголовке',
+ 'Stock settings' => 'Настройки запаса',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => 'Пропустить',
+ 'Servings' => 'Порции',
+ 'Costs' => 'Цены',
+ 'Based on the prices of the last purchase per product' => 'На основании цен на недавние покупки продуктов',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => 'Изображение',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Снимите выделение с элементов, чтобы не добавлять их в список покупок',
+ 'This is for statistical purposes only' => 'Нужно только для статистический целей',
+ 'You have to select a recipe' => 'Вам нужно выбрать рецепт',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => 'Разрешить дробные количества в запасе',
+ 'Enable tare weight handling' => 'Включить расчёт с учётом тары',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Это удобно, например, для хранения муки в контейнере - при покупке/потреблении/инветаризации взвесьте весь контейнер, а настоящее количество будет автоматически рассчитано на основе объёма в запасе и веса тары ниже',
+ 'Tare weight' => 'Вес тары',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Включён расчёт с учётом тары - пожалуйста, взвесьте весь контейнер, изменения в количестве будут автоматически рассчитаны',
+ 'You have to select a location' => 'Вам нужно выбрать место хранения',
+ 'List' => 'Список',
+ 'Gallery' => 'Галерея',
+ 'The current picture will be deleted when you save the recipe' => 'Текущее изображение будет удалено при сохранении рецепта',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/ru/userfield_types.php b/localization-backup/ru/userfield_types.php
new file mode 100644
index 00000000..357d8823
--- /dev/null
+++ b/localization-backup/ru/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Текст (однострочный)',
+ 'text-multi-line' => 'Текст (многострочный)',
+ 'number-integral' => 'Число (целочисленное)',
+ 'number-decimal' => 'Число (дробное)',
+ 'date' => 'Дата (без времени)',
+ 'datetime' => 'Дата и время',
+ 'checkbox' => 'Флажок'
+);
diff --git a/localization-backup/sv_SE/chore_types.php b/localization-backup/sv_SE/chore_types.php
new file mode 100644
index 00000000..1d168443
--- /dev/null
+++ b/localization-backup/sv_SE/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuellt',
+ 'dynamic-regular' => 'Dynamisk regelbunden',
+ 'daily' => 'Daglig',
+ 'weekly' => 'Veckovis',
+ 'monthly' => 'Månadsvis'
+);
diff --git a/localization-backup/sv_SE/component_translations.php b/localization-backup/sv_SE/component_translations.php
new file mode 100644
index 00000000..845c3ed4
--- /dev/null
+++ b/localization-backup/sv_SE/component_translations.php
@@ -0,0 +1,10 @@
+ 'sv',
+ 'timeago_nan' => 'NaN år sedan',
+ 'moment_locale' => 'sv',
+ 'datatables_localization' => '{"sEmptyTable":"Ingen data tillgänglig i tabellen","sInfo":"Visar _START_ till _END_ av _TOTAL_ noteringar","sInfoEmpty":"Visar 0 till 0 av 0 noteringar","sInfoFiltered":"(filtrerat från _MAX_ totala noteringar)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"Show _MENU_ noteringar","sLoadingRecords":"Laddar...","sProcessing":"Processar...","sSearch":"Söker:","sZeroRecords":"Ingen träff som matchar","oPaginate":{"sFirst":"Första","sLast":"Sista","sNext":"Nästa","sPrevious":"Föregående"},"oAria":{"sSortAscending":": aktivera för att sortera kolumn stigande","sSortDescending":": aktivera för att sortera kolumn fallande"}}',
+ 'summernote_locale' => 'sv-SE',
+ 'fullcalendar_locale' => 'sv'
+);
diff --git a/localization-backup/sv_SE/demo_data.php b/localization-backup/sv_SE/demo_data.php
new file mode 100644
index 00000000..5e23bd36
--- /dev/null
+++ b/localization-backup/sv_SE/demo_data.php
@@ -0,0 +1,95 @@
+ 'Kakor',
+ 'Chocolate' => 'Choklad',
+ 'Pantry' => 'Skafferi',
+ 'Candy cupboard' => 'Godis skåp',
+ 'Tinned food cupboard' => 'Konservburk för konserverad mat',
+ 'Fridge' => 'Kylskåp',
+ 'Piece' => 'Bit',
+ 'Pieces' => 'Bitar',
+ 'Pack' => 'Förpackning',
+ 'Packs' => 'Förpackningar',
+ 'Glass' => 'Glas',
+ 'Glasses' => 'Glasögon',
+ 'Tin' => 'Burk',
+ 'Tins' => 'Burkar',
+ 'Can' => 'Dos',
+ 'Cans' => 'Dos',
+ 'Bunch' => 'Knippa',
+ 'Bunches' => 'Klasar',
+ 'Gummy bears' => 'Gummibjörnar',
+ 'Crisps' => 'Chips',
+ 'Eggs' => 'Ägg',
+ 'Noodles' => 'Spaghetti',
+ 'Pickles' => 'Ättiksgurka',
+ 'Gulash soup' => 'Gulashoppa',
+ 'Yogurt' => 'Yoghurt',
+ 'Cheese' => 'Ost',
+ 'Cold cuts' => 'Pålägg',
+ 'Paprika' => 'Paprika',
+ 'Cucumber' => 'Gurka',
+ 'Radish' => 'Rädisa',
+ 'Tomato' => 'Tomat',
+ 'Changed towels in the bathroom' => 'Byta handdukar i badrummet',
+ 'Cleaned the kitchen floor' => 'Rengjorde köksgolvet',
+ 'Warranty ends' => 'Garantin upphör',
+ 'TV remote control' => 'TV fjärrkontroll',
+ 'Alarm clock' => 'Väckarklocka',
+ 'Heat remote control' => 'Klimat fjärrkontroll',
+ 'Lawn mowed in the garden' => 'Gräset klippt i trädgården',
+ 'Some good snacks' => 'Några bra tilltugg',
+ 'Pizza dough' => 'Pizzadeg',
+ 'Sieved tomatoes' => 'Siktade tomater',
+ 'Salami' => 'Salami',
+ 'Toast' => 'Rostat bröd',
+ 'Minced meat' => 'Köttfärs',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spaghetti bolognese',
+ 'Sandwiches' => 'Smörgåsar',
+ 'English' => 'Engelsk',
+ 'German' => 'Tysk',
+ 'Italian' => 'Italienska',
+ 'Demo in different language' => 'Demo på olika språk',
+ 'This is the note content of the recipe ingredient' => 'Detta är anteckningsinnehållet i receptens ingrediens',
+ 'Demo User' => 'Demo-användare',
+ 'Gram' => 'Gram',
+ 'Grams' => 'Gram',
+ 'Flour' => 'Mjöl',
+ 'Pancakes' => 'pannkakor',
+ 'Sugar' => 'Socker',
+ 'Home' => 'Hem',
+ 'Life' => 'Liv',
+ 'Projects' => 'Projekt',
+ 'Repair the garage door' => 'Reparera garagedörren',
+ 'Fork and improve grocy' => 'Gaffel och förbättra grocy',
+ 'Find a solution for what to do when I forget the door keys' => 'Hitta en lösning för vad man ska göra när jag glömmer dörrnycklarna',
+ 'Sweets' => 'Sötsaker',
+ 'Bakery products' => 'Bageriprodukter',
+ 'Tinned food' => 'Konserverad mat',
+ 'Butchery products' => 'Slaktprodukter',
+ 'Vegetables/Fruits' => 'Grönsaker / frukt',
+ 'Refrigerated products' => 'Kylda produkter',
+ 'Coffee machine' => 'Kaffemaskin',
+ 'Dishwasher' => 'Diskmaskin',
+ 'Liter' => 'Liter',
+ 'Liters' => 'Liter',
+ 'Bottle' => 'Flaska',
+ 'Bottles' => 'Flaskor',
+ 'Milk' => 'Mjölk',
+ 'Chocolate sauce' => 'Chokladsås',
+ 'Milliliters' => 'Milliliter',
+ 'Milliliter' => 'Milliliter',
+ 'Bottom' => 'Botten',
+ 'Topping' => 'Garnering',
+ 'French' => 'Franska',
+ 'Turkish' => 'Turkiska',
+ 'Spanish' => 'Spansk',
+ 'Russian' => 'Ryska',
+ 'The thing which happens on the 5th of every month' => 'Det som händer den 5: e varje månad',
+ 'The thing which happens daily' => 'Saker som händer dagligen',
+ 'The thing which happens on Mondays and Wednesdays' => 'Saker som händer på måndagar och onsdagar',
+ 'Swedish' => 'Swedish',
+ 'Polish' => ''
+);
diff --git a/localization-backup/sv_SE/stock_transaction_types.php b/localization-backup/sv_SE/stock_transaction_types.php
new file mode 100644
index 00000000..3b5026b1
--- /dev/null
+++ b/localization-backup/sv_SE/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Inköp',
+ 'consume' => 'Konsumera',
+ 'inventory-correction' => 'Korrigera lager',
+ 'product-opened' => 'Produkt öppnad'
+);
diff --git a/localization-backup/sv_SE/strings.php b/localization-backup/sv_SE/strings.php
new file mode 100644
index 00000000..23210691
--- /dev/null
+++ b/localization-backup/sv_SE/strings.php
@@ -0,0 +1,397 @@
+ 'Lageröversikt',
+ '#1 products expiring within the next #2 days' => '#1 produkter som löper ut inom #2 dagar',
+ '#1 products are already expired' => '#1 produkter är redan utgått',
+ '#1 products are below defined min. stock amount' => '#1 produkter är under definierade min. lagerbelopp',
+ 'Product' => 'Produkt',
+ 'Amount' => 'Belopp',
+ 'Next best before date' => 'Nästa bäst före datumet',
+ 'Logout' => 'Logga ut',
+ 'Chores overview' => 'Sysslor översikt',
+ 'Batteries overview' => 'Batterier översikt',
+ 'Purchase' => 'Inköp',
+ 'Consume' => 'Konsumera',
+ 'Inventory' => 'Lager',
+ 'Shopping list' => 'Inköpslista',
+ 'Chore tracking' => 'Sysslor spårning',
+ 'Battery tracking' => 'Batterispårning',
+ 'Products' => 'Produkter',
+ 'Locations' => 'Platser',
+ 'Quantity units' => 'Mängdenheter',
+ 'Chores' => 'Sysslor',
+ 'Batteries' => 'Batterier',
+ 'Chore' => 'Syssla',
+ 'Next estimated tracking' => 'Nästa beräknad spårning',
+ 'Last tracked' => 'Senast spåras',
+ 'Battery' => 'Batteri',
+ 'Last charged' => 'Senast debiterad',
+ 'Next planned charge cycle' => 'Nästa planerad laddningscykel',
+ 'Best before' => 'Bäst före',
+ 'OK' => 'ok',
+ 'Product overview' => 'Produktöversikt',
+ 'Stock quantity unit' => 'Lager kvantitet enhet',
+ 'Stock amount' => 'Lagerbelopp',
+ 'Last purchased' => 'Senast köpt',
+ 'Last used' => 'Senast använd',
+ 'Spoiled' => 'Skämd',
+ 'Barcode lookup is disabled' => 'Streckkodsuppslag är inaktiverad',
+ 'will be added to the list of barcodes for the selected product on submit' => 'kommer att läggas till i listan över streckkoder för den valda produkten vid inlämning',
+ 'New amount' => 'Nytt belopp',
+ 'Note' => 'Anteckna',
+ 'Tracked time' => 'Spårad tid',
+ 'Chore overview' => 'Syssla översikt',
+ 'Tracked count' => 'Spårräkning',
+ 'Battery overview' => 'Batteriöversikt',
+ 'Charge cycles count' => 'Laddningscykler räknas',
+ 'Create shopping list item' => 'Skapa köpobjekt',
+ 'Edit shopping list item' => 'Redigera inköpslista',
+ 'Save' => 'Spara',
+ 'Add' => 'Lägg till',
+ 'Name' => 'Namn',
+ 'Location' => 'Plats',
+ 'Min. stock amount' => 'Min. lagerbelopp',
+ 'QU purchase' => 'QU köp',
+ 'QU stock' => 'QU lager',
+ 'QU factor' => 'QU-faktor',
+ 'Description' => 'Beskrivning',
+ 'Create product' => 'Skapa produkt',
+ 'Barcode(s)' => 'Streckkod (er)',
+ 'Minimum stock amount' => 'Minsta beståndsbelopp',
+ 'Default best before days' => 'Standard bäst före dagar',
+ 'Quantity unit purchase' => 'Kvantitetsenhetsköp',
+ 'Quantity unit stock' => 'Kvantitetsenhet lager',
+ 'Factor purchase to stock quantity unit' => 'Faktorköp till lager kvantitet enhet',
+ 'Create location' => 'Skapa plats',
+ 'Create quantity unit' => 'Skapa kvantitetsenhet',
+ 'Period type' => 'Periodstyp',
+ 'Period days' => 'Period dagar',
+ 'Create chore' => 'Skapa syssla',
+ 'Used in' => 'Använd i',
+ 'Create battery' => 'Skapa batteri',
+ 'Edit battery' => 'Redigera batteri',
+ 'Edit chore' => 'Redigera syssla',
+ 'Edit quantity unit' => 'Redigera kvantitetsenhet',
+ 'Edit product' => 'Redigera produkt',
+ 'Edit location' => 'Redigera plats',
+ 'Record data' => 'Spara data',
+ 'Manage master data' => 'Hantera data',
+ 'This will apply to added products' => 'Detta gäller för tillagda produkter',
+ 'never' => 'aldrig',
+ 'Add products that are below defined min. stock amount' => 'Lägg till produkter som är under definierade min. lagerbelopp',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'För inköp kommer denna mängd dagar att läggas till idag för det bästa före datumförslaget',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Det betyder att 1 #1 köpt kommer att konverteras till #2 #3 i lager',
+ 'Login' => 'Logga in',
+ 'Username' => 'Användarnamn',
+ 'Password' => 'Lösenord',
+ 'Invalid credentials, please try again' => 'Ogiltiga uppgifter, var god försök igen',
+ 'Are you sure to delete battery "#1"?' => 'Är du säker på att radera batteri "#1"?',
+ 'Yes' => 'Ja',
+ 'No' => 'Nej',
+ 'Are you sure to delete chore "#1"?' => 'Är du säker på att ta bort syssla "#1"?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" kunde inte hittas som produkt, hur vill du fortsätta?',
+ 'Create or assign product' => 'Skapa eller tilldel produkt',
+ 'Cancel' => 'Annullera',
+ 'Add as new product' => 'Lägg till som ny produkt',
+ 'Add as barcode to existing product' => 'Lägg till som streckkod till befintlig produkt',
+ 'Add as new product and prefill barcode' => 'Lägg till som ny produkt och fyll i streckkoden',
+ 'Are you sure to delete quantity unit "#1"?' => 'Är du säker på att radera kvantitetsenheten "#1"?',
+ 'Are you sure to delete product "#1"?' => 'Är du säker på att ta bort produkten "#1"?',
+ 'Are you sure to delete location "#1"?' => 'Är du säker på att radera platsen "#1"?',
+ 'Manage API keys' => 'Hantera API-nycklar',
+ 'REST API & data model documentation' => 'REST API och datamodell dokumentation',
+ 'API keys' => 'API-nycklar',
+ 'Create new API key' => 'Skapa ny API-nyckel',
+ 'API key' => 'API-nyckel',
+ 'Expires' => 'Utgår',
+ 'Created' => 'Skapad',
+ 'This product is not in stock' => 'Denna produkt finns inte i lager',
+ 'This means #1 will be added to stock' => 'Detta betyder att #1 kommer att läggas till lager',
+ 'This means #1 will be removed from stock' => 'Detta betyder att #1 kommer att tas bort från lager',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Det betyder att det uppskattas att en ny exekvering av denna syssla spåras #1 dagar efter det att den sista spåras',
+ 'Removed #1 #2 of #3 from stock' => 'Ta bort #1 #2 av #3 från lager',
+ 'About grocy' => 'Om grocy',
+ 'Close' => 'Stänga',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 batteri/er behöver laddas inom de närmaste 2 dagarna',
+ '#1 batteries are overdue to be charged' => '#1 batteri/er behöver laddas nu',
+ '#1 chores are due to be done within the next #2 days' => '#1 syssla/or bör göras inom de närmaste 2 dagarna',
+ '#1 chores are overdue to be done' => '#1 syssla/or borde ha utförts',
+ 'Released on' => 'Släppt på',
+ 'Consume #3 #1 of #2' => 'Konsumera #3 #1 av #2',
+ 'Added #1 #2 of #3 to stock' => 'Tillagt #1 #2 av #3 till lager',
+ 'Stock amount of #1 is now #2 #3' => 'Lager mängd av #1 är nu #2 #3',
+ 'Tracked execution of chore #1 on #2' => 'Spårat utförande av syssla #1 på #2',
+ 'Tracked charge cycle of battery #1 on #2' => 'Spårad laddningscykel för batteriet #1 på #2',
+ 'Consume all #1 which are currently in stock' => 'Konsumera alla #1 som för närvarande finns i lager',
+ 'All' => 'Allt',
+ 'Track charge cycle of battery #1' => 'Spårningscykel för batteriet #1',
+ 'Track execution of chore #1' => 'Spåra utförandet av syssla #1',
+ 'Filter by location' => 'Filtrera efter plats',
+ 'Search' => 'Sök',
+ 'Not logged in' => 'Inte inloggad',
+ 'You have to select a product' => 'Du måste välja en produkt',
+ 'You have to select a chore' => 'Du måste välja en syssla',
+ 'You have to select a battery' => 'Du måste välja ett batteri',
+ 'A name is required' => 'Ett namn krävs',
+ 'A location is required' => 'En plats krävs',
+ 'The amount cannot be lower than #1' => 'Mängden kan inte vara lägre än #1',
+ 'This cannot be negative' => 'Detta kan inte vara negativt',
+ 'A quantity unit is required' => 'En kvantitetsenhet krävs',
+ 'A period type is required' => 'En periodstyp krävs',
+ 'A best before date is required' => 'Ett bäst före datum krävs',
+ 'Settings' => 'inställningar',
+ 'This can only be before now' => 'Detta kan bara vara för nu',
+ 'Calendar' => 'Kalender',
+ 'Recipes' => 'Recept',
+ 'Edit recipe' => 'Redigera recept',
+ 'New recipe' => 'Nytt recept',
+ 'Ingredients list' => 'Ingredienser lista',
+ 'Add recipe ingredient' => 'Lägg till recept ingrediens',
+ 'Edit recipe ingredient' => 'Redigera recept ingrediens',
+ 'Are you sure to delete recipe "#1"?' => 'Är du säker på att radera receptet "#1"?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Är du säker på att radera recept ingrediens "#1"?',
+ 'Are you sure to empty shopping list "#1"?' => 'Är du säker på att tömma shoppinglistan "#1"?',
+ 'Clear list' => 'Tydlig lista',
+ 'Requirements fulfilled' => 'Krav uppfyllda',
+ 'Put missing products on shopping list' => 'Sätt saknade produkter på inköpslista',
+ 'Not enough in stock, #1 ingredients missing' => 'Inte tillräckligt i lager, saknas #1 ingredienser',
+ 'Enough in stock' => 'Tillräckligt i lager',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Inte tillräckligt i lager, saknas #1 ingredienser men redan på köpslistan',
+ 'Expand to fullscreen' => 'Expandera till fullskärm',
+ 'Ingredients' => 'Ingredienser',
+ 'Preparation' => 'Förberedelse',
+ 'Recipe' => 'Recept',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Inte tillräckligt i lager, #1 saknas, #2 redan på inköpslista',
+ 'Show notes' => 'Visa anteckningar',
+ 'Put missing amount on shopping list' => 'Ange saknas belopp på inköpslista',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Är du säker på att lägga alla saknade ingredienser för receptet "#1" på köplistan?',
+ 'Added for recipe #1' => 'Tillagd för recept #1',
+ 'Manage users' => 'Hantera användare',
+ 'User' => 'Användare',
+ 'Users' => 'användare',
+ 'Are you sure to delete user "#1"?' => 'Vill du radera användaren "#1"?',
+ 'Create user' => 'Skapa användare',
+ 'Edit user' => 'Redigera användare',
+ 'First name' => 'Förnamn',
+ 'Last name' => 'Efternamn',
+ 'A username is required' => 'Ett användarnamn är obligatoriskt',
+ 'Confirm password' => 'Bekräfta lösenord',
+ 'Passwords do not match' => 'Lösenorden matchar inte',
+ 'Change password' => 'ändra lösenord',
+ 'Done by' => 'Gjord av',
+ 'Last done by' => 'Senast gjord av',
+ 'Unknown' => 'Okänd',
+ 'Filter by chore' => 'Filtrera efter syssla',
+ 'Chores journal' => 'Sysslor journal',
+ '0 means suggestions for the next charge cycle are disabled' => '0 betyder att förslag till nästa laddningscykel är inaktiverade',
+ 'Charge cycle interval (days)' => 'Laddningscykelintervall (dagar)',
+ 'Last price' => 'Sista priset',
+ 'Price history' => 'Prishistoria',
+ 'No price history available' => 'Ingen prishistoria tillgänglig',
+ 'Price' => 'Pris',
+ 'in #1 per purchase quantity unit' => 'i #1 per inköpskvantitetsenhet',
+ 'The price cannot be lower than #1' => 'Priset kan inte vara lägre än #1',
+ '#1 product expires within the next #2 days' => '#1 produkt löper ut inom 2 dagar',
+ '#1 product is already expired' => '#1-produkten har redan gått ut',
+ '#1 product is below defined min. stock amount' => '#1 produkten är under definierad min. lagerbelopp',
+ 'Unit' => 'Enhet',
+ 'Units' => 'Enheter',
+ '#1 chore is due to be done within the next #2 days' => '#1 syssla/or bör göras inom de närmaste 2 dagarna',
+ '#1 chore is overdue to be done' => '#1 syssla/or borde ha utförts',
+ '#1 battery is due to be charged within the next #2 days' => 'Batteri #1 beror på att debiteras inom de närmaste 2 dagarna',
+ '#1 battery is overdue to be charged' => '#1 batteriet är för sent för att laddas',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '#1-enhet läggs automatiskt till och kommer att gälla utöver det belopp som anges här',
+ 'in singular form' => 'i singular form',
+ 'in plural form' => 'i plural form',
+ 'Never expires' => 'Går aldrig ut',
+ 'This cannot be lower than #1' => 'Detta kan inte vara lägre än #1',
+ '-1 means that this product never expires' => '-1 betyder att denna produkt aldrig löper ut',
+ 'Quantity unit' => 'Mängdenhet',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Kontrollera bara om en enda enhet finns i lager (en annan mängd kan sedan användas ovan)',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => 'Är du säker på att konsumera alla ingredienser som behövs med receptet "#1" (ingredienser märkta med "kontrollera endast om en enhet finns i lager" kommer att ignoreras)?',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Ta bort alla ingredienser i receptet "#1" från lager',
+ 'Consume all ingredients needed by this recipe' => 'Konsumera alla ingredienser som behövs av detta recept',
+ 'Click to show technical details' => 'Klicka för att visa tekniska detaljer',
+ 'Error while saving, probably this item already exists' => 'Ett fel uppstod vid lagring, förmodligen finns det här objektet',
+ 'Error details' => 'Detaljer om felet',
+ 'Tasks' => 'Uppgifter',
+ 'Show done tasks' => 'Visa utförda uppgifter',
+ 'Task' => 'Uppgift',
+ 'Due' => 'Till följd av',
+ 'Assigned to' => 'Tilldelats',
+ 'Mark task "#1" as completed' => 'Markera uppgiften "#1" som färdigställd',
+ 'Uncategorized' => 'Okategoriserad',
+ 'Task categories' => 'Uppgiftskategorier',
+ 'Create task' => 'Skapa uppgift',
+ 'A due date is required' => 'Förfallodatum krävs',
+ 'Category' => 'Kategori',
+ 'Edit task' => 'Redigera uppgiften',
+ 'Are you sure to delete task "#1"?' => 'Är du säker på att ta bort uppgift "#1"?',
+ '#1 task is due to be done within the next #2 days' => '#1 uppgift beror på att ske inom de närmaste 2 dagarna',
+ '#1 tasks are due to be done within the next #2 days' => '#1 uppgifter beror på att ske inom de närmaste 2 dagarna',
+ '#1 task is overdue to be done' => '#1 uppgift är försenad att göra',
+ '#1 tasks are overdue to be done' => '#1 uppgifter är försenade att göra',
+ 'Edit task category' => 'Redigera uppgiftskategori',
+ 'Create task category' => 'Skapa uppgiftskategori',
+ 'Product groups' => 'Produktgrupper',
+ 'Ungrouped' => 'ogrupperade',
+ 'Create product group' => 'Skapa produktgrupp',
+ 'Edit product group' => 'Redigera produktgrupp',
+ 'Product group' => 'Produktgrupp',
+ 'Are you sure to delete product group "#1"?' => 'Är du säker på att radera produktgrupp "#1"?',
+ 'Stay logged in permanently' => 'Håll dig inloggad permanent',
+ 'When not set, you will get logged out at latest after 30 days' => 'När du inte är inställd kommer du att bli utloggad senast efter 30 dagar',
+ 'Filter by status' => 'Filtrera efter status',
+ 'Below min. stock amount' => 'Under min. lagerbelopp',
+ 'Expiring soon' => 'Förfallande snart',
+ 'Already expired' => 'Redan utgått',
+ 'Due soon' => 'Förfaller snart',
+ 'Overdue' => 'Försenad',
+ 'View settings' => 'Visa inställningar',
+ 'Auto reload on external changes' => 'Auto reload på externa ändringar',
+ 'Enable night mode' => 'Aktivera nattläge',
+ 'Auto enable in time range' => 'Automatisk aktivering i tidsintervall',
+ 'From' => 'Från',
+ 'in format' => 'i format',
+ 'To' => 'Till',
+ 'Time range goes over midnight' => 'Tidsintervallet går över midnatt',
+ 'Product picture' => 'Produktbild',
+ 'No file selected' => 'Ingen fil vald',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Om du inte väljer en fil, kommer inte den nuvarande bilden att ändras',
+ 'Delete' => 'Radera',
+ 'The current picture will be deleted when you save the product' => 'Den aktuella bilden raderas när du sparar produkten',
+ 'Select file' => 'Välj fil',
+ 'Image of product #1' => 'Bild av produkt nr 1',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Den här produkten kan inte raderas eftersom den finns i lager, var god ta bort lagerbeloppet först.',
+ 'Delete not possible' => 'Radera inte möjligt',
+ 'Equipment' => 'Utrustning',
+ 'Instruction manual' => 'Instruktionsmanual',
+ 'The selected equipment has no instruction manual' => 'Den valda utrustningen har ingen bruksanvisning',
+ 'Notes' => 'Anteckningar',
+ 'Edit equipment' => 'Redigera utrustning',
+ 'Create equipment' => 'Skapa utrustning',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Om du inte väljer en fil, så kommer inte manualen att ändras',
+ 'No instruction manual available' => 'Ingen instruktionsbok tillgänglig',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Den nuvarande bruksanvisningen raderas när du sparar utrustningen',
+ 'No picture available' => 'Ingen bild tillgänglig',
+ 'Filter by product group' => 'Filtrera efter produktgrupp',
+ 'Presets for new products' => 'Förinställningar för nya produkter',
+ 'Included recipes' => 'Inkluderade recept',
+ 'A recipe is required' => 'Ett recept krävs',
+ 'Add included recipe' => 'Lägg till medföljande recept',
+ 'Edit included recipe' => 'Redigera inkluderat recept',
+ 'Group' => 'Grupp',
+ 'This will be used as a headline to group ingredients together' => 'Detta kommer att användas som en rubrik för att gruppera ingredienser tillsammans',
+ 'Journal' => 'Journal',
+ 'Stock journal' => 'Lager journal',
+ 'Filter by product' => 'Filtrera efter produkt',
+ 'Booking time' => 'Bokningstid',
+ 'Booking type' => 'Bokningstyp',
+ 'Undo booking' => 'Ångra bokning',
+ 'Undone on' => 'Ogjord den',
+ 'Batteries journal' => 'Batterier journal',
+ 'Filter by battery' => 'Filtrera med batteri',
+ 'Undo charge cycle' => 'Ångra laddningscykel',
+ 'Undo chore execution' => 'Ångra utförande av syssla',
+ 'Chore execution successfully undone' => 'Ångrande av sysslan är framgångsrikt utförd',
+ 'Undo' => 'Ångra',
+ 'Booking successfully undone' => 'Bokningen lyckades obefintlig',
+ 'Charge cycle successfully undone' => 'Laddningscykeln är framgångsrikt borttagen',
+ 'This cannot be negative and must be an integral number' => 'Detta kan inte vara negativt och måste vara ett integrerat nummer',
+ 'Disable stock fulfillment checking for this ingredient' => 'Inaktivera kontroll av lageruppfyllelse för denna ingrediens',
+ 'Add all list items to stock' => 'Lägg till alla listobjekt på lager',
+ 'Add #3 #1 of #2 to stock' => 'Lägg till #3 #1 av #2 i lager',
+ 'Adding shopping list item #1 of #2' => 'Lägger till inköpslista nr 1 av #2',
+ 'Use a specific stock item' => 'Använd ett specifikt lagerobjekt',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'Det första objektet i den här listan skulle plockas av standardregeln som är "Första utgången först, sedan först i första utgåvan"',
+ 'Mark #3 #1 of #2 as open' => 'Markera #3 #1 av #2 såm öppnad',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => 'När en produkt markerades som öppnad, kommer det bästa före datumet att ersättas med idag + detta antal dagar (ett värde av 0 avaktiverar detta)',
+ 'Default best before days after opened' => 'Standard bäst före dagar efter öppnandet',
+ 'Marked #1 #2 of #3 as opened' => 'Markerad #1 #2 av #3 som öppnad',
+ 'Mark as opened' => 'Markera som öppnat',
+ 'Expires on #1; Bought on #2' => 'Förfaller #1; Köpt den #2',
+ 'Not opened' => 'Ej öppnad',
+ 'Opened' => 'Öppnad',
+ 'Mark #3 #1 of #2 as open' => 'Markera #3 #1 av #2 såm öppnad',
+ '#1 opened' => '#1 öppnade',
+ 'Product expires' => 'Produkten löper ut',
+ 'Task due' => 'Uppgift pågår',
+ 'Chore due' => 'Syssla pågår',
+ 'Battery charge cycle due' => 'Batteriladdningscykel förfaller',
+ 'Show clock in header' => 'Visa klockan i sidhuvudet',
+ 'Stock settings' => 'Lagerinställningar',
+ 'Shopping list to stock workflow' => 'Shopping lista till lager arbetsflöde',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Gör automatiskt bokningen med det sista priset och summan av inköpslista, om produkten har "Standard bäst före dagar"',
+ 'Skip' => 'Hoppa över',
+ 'Servings' => 'Serveringar',
+ 'Costs' => 'Kostar',
+ 'Based on the prices of the last purchase per product' => 'Baserat på priserna för det senaste köpet per produkt',
+ 'The ingredients listed here result in this amount of servings' => 'Ingredienserna som anges här resulterar i denna mängd portioner',
+ 'Do not check against the shopping list when adding missing items to it' => 'Kontrollera inte inköpslistan när du lägger till saknade objekt i den',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => 'Som standard är beloppet som ska läggas till i inköpslistan "nödvändig mängd - lagerbelopp - antal belopp för inköpslista" - när det är aktiverat, kontrolleras det endast i lagerbeloppet, inte mot det som redan finns på köplistan',
+ 'Picture' => 'Bild',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Avmarkera ingredienser för att inte lägga dem på inköpslistan',
+ 'This is for statistical purposes only' => 'Detta är endast för statistiska ändamål',
+ 'You have to select a recipe' => 'Du måste välja ett recept',
+ 'Key type' => 'Nyckeltyp',
+ 'Share/Integrate calendar (iCal)' => 'Dela / Integrera kalender (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Använd följande (offentliga) URL för att dela eller integrera kalendern i iCal-format',
+ 'Allow partial units in stock' => 'Tillåt dela enheter på lager',
+ 'Enable tare weight handling' => 'Aktivera Vikthantering',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Detta är användbart t.ex. för mjöl i burkar - vid köp / konsumtion / inventering väger du alltid hela burken, det belopp som ska läggas ut beräknas sedan automatiskt baserat på vad som finns i lager och den vikt som anges nedan',
+ 'Tare weight' => 'Vikt',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Vikthantering aktiverad - vänligen väga hela behållaren, kommer beloppet som ska läggas ut automatiskt att beräknas',
+ 'You have to select a location' => 'Du måste välja en plats',
+ 'List' => 'Lista',
+ 'Gallery' => 'Galleri',
+ 'The current picture will be deleted when you save the recipe' => 'Den aktuella bilden raderas när du sparar receptet',
+ 'Show product details' => 'Visa produktdetaljer',
+ 'Stock journal for this product' => 'Lagerbok för denna produkt',
+ 'Show chore details' => 'Visa detaljer för syssla',
+ 'Journal for this chore' => 'Journal för denna syssla',
+ 'Show battery details' => 'Visa batteridetaljer',
+ 'Journal for this battery' => 'Tidskrift för detta batteri',
+ 'System info' => 'System information',
+ 'Changelog' => 'Ändringslogg',
+ 'will be multiplied a factor of #1 to get #2' => 'kommer att multipliceras med en faktor #1 för att få #2',
+ 'The given date is earlier than today, are you sure?' => 'Det angivna datumet är tidigare än idag, är du säker?',
+ 'Product count' => 'Produktantal',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => 'Skriv ett nytt produktnamn eller streckkod och tryck på TAB för att starta ett arbetsflöde',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => 'Detta kommer att användas som standardinställning när du lägger till denna produkt som receptkomponent',
+ 'Add item' => 'Lägg till vara',
+ 'Selected shopping list' => 'Valda inköpslista',
+ 'New shopping list' => 'Ny köplista',
+ 'Delete shopping list' => 'Ta bort inköpslista',
+ 'Chores settings' => 'Sysslor inställningar',
+ 'Batteries settings' => 'Batterier inställningar',
+ 'Tasks settings' => 'Inställningar för uppgifter',
+ 'Create shopping list' => 'Skapa inköpslista',
+ 'Are you sure to delete shopping list "#1"?' => 'Är du säker på att radera inköpslista "#1"?',
+ 'Average shelf life' => 'Genomsnittlig hållbarhet',
+ 'Spoil rate' => 'Skämd takt',
+ 'Show more' => 'Visa mer',
+ 'Show less' => 'Visa mindre',
+ 'The amount must be between #1 and #2' => 'Beloppet måste vara mellan #1 och #2',
+ 'Day of month' => 'Dag i månad',
+ 'Monday' => 'Måndag',
+ 'Tuesday' => 'Tisdag',
+ 'Wednesday' => 'Onsdag',
+ 'Thursday' => 'Torsdag',
+ 'Friday' => 'Fredag',
+ 'Saturday' => 'Lördag',
+ 'Sunday' => 'Söndag',
+ 'Configure userfields' => 'Configure userfields',
+ 'Userfields' => 'Userfields',
+ 'Filter by entity' => 'Filter by entity',
+ 'Entity' => 'Entity',
+ 'Caption' => 'Caption',
+ 'Type' => 'Type',
+ 'Create userfield' => 'Create userfield',
+ 'A entity is required' => 'A entity is required',
+ 'A caption is required' => 'A caption is required',
+ 'A type is required' => 'A type is required',
+ 'Show as column in tables' => 'Show as column in tables',
+ 'This is required and can only contain letters and numbers' => 'This is required and can only contain letters and numbers',
+ 'Edit userfield' => 'Edit userfield'
+);
diff --git a/localization-backup/sv_SE/userfield_types.php b/localization-backup/sv_SE/userfield_types.php
new file mode 100644
index 00000000..5a4b8c92
--- /dev/null
+++ b/localization-backup/sv_SE/userfield_types.php
@@ -0,0 +1,11 @@
+ 'Text (en rad)',
+ 'text-multi-line' => 'Text (multipla rader)',
+ 'number-integral' => 'Nummer (integral)',
+ 'number-decimal' => 'Nummer (decimal)',
+ 'date' => 'Datum (utan tid)',
+ 'datetime' => 'Datum & tid',
+ 'checkbox' => 'Kryssruta'
+);
diff --git a/localization-backup/ta/chore_types.php b/localization-backup/ta/chore_types.php
new file mode 100644
index 00000000..a3f8eeab
--- /dev/null
+++ b/localization-backup/ta/chore_types.php
@@ -0,0 +1,9 @@
+ '',
+ 'dynamic-regular' => '',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/ta/component_translations.php b/localization-backup/ta/component_translations.php
new file mode 100644
index 00000000..020bea52
--- /dev/null
+++ b/localization-backup/ta/component_translations.php
@@ -0,0 +1,10 @@
+ '',
+ 'timeago_nan' => '',
+ 'moment_locale' => '',
+ 'datatables_localization' => '',
+ 'summernote_locale' => '',
+ 'fullcalendar_locale' => ''
+);
diff --git a/localization-backup/ta/demo_data.php b/localization-backup/ta/demo_data.php
new file mode 100644
index 00000000..b494faa6
--- /dev/null
+++ b/localization-backup/ta/demo_data.php
@@ -0,0 +1,95 @@
+ '',
+ 'Chocolate' => '',
+ 'Pantry' => '',
+ 'Candy cupboard' => '',
+ 'Tinned food cupboard' => '',
+ 'Fridge' => '',
+ 'Piece' => '',
+ 'Pieces' => '',
+ 'Pack' => '',
+ 'Packs' => '',
+ 'Glass' => '',
+ 'Glasses' => '',
+ 'Tin' => '',
+ 'Tins' => '',
+ 'Can' => '',
+ 'Cans' => '',
+ 'Bunch' => '',
+ 'Bunches' => '',
+ 'Gummy bears' => '',
+ 'Crisps' => '',
+ 'Eggs' => '',
+ 'Noodles' => '',
+ 'Pickles' => '',
+ 'Gulash soup' => '',
+ 'Yogurt' => '',
+ 'Cheese' => '',
+ 'Cold cuts' => '',
+ 'Paprika' => '',
+ 'Cucumber' => '',
+ 'Radish' => '',
+ 'Tomato' => '',
+ 'Changed towels in the bathroom' => '',
+ 'Cleaned the kitchen floor' => '',
+ 'Warranty ends' => '',
+ 'TV remote control' => '',
+ 'Alarm clock' => '',
+ 'Heat remote control' => '',
+ 'Lawn mowed in the garden' => '',
+ 'Some good snacks' => '',
+ 'Pizza dough' => '',
+ 'Sieved tomatoes' => '',
+ 'Salami' => '',
+ 'Toast' => '',
+ 'Minced meat' => '',
+ 'Pizza' => '',
+ 'Spaghetti bolognese' => '',
+ 'Sandwiches' => '',
+ 'English' => '',
+ 'German' => '',
+ 'Italian' => '',
+ 'Demo in different language' => '',
+ 'This is the note content of the recipe ingredient' => '',
+ 'Demo User' => '',
+ 'Gram' => '',
+ 'Grams' => '',
+ 'Flour' => '',
+ 'Pancakes' => '',
+ 'Sugar' => '',
+ 'Home' => '',
+ 'Life' => '',
+ 'Projects' => '',
+ 'Repair the garage door' => '',
+ 'Fork and improve grocy' => '',
+ 'Find a solution for what to do when I forget the door keys' => '',
+ 'Sweets' => '',
+ 'Bakery products' => '',
+ 'Tinned food' => '',
+ 'Butchery products' => '',
+ 'Vegetables/Fruits' => '',
+ 'Refrigerated products' => '',
+ 'Coffee machine' => '',
+ 'Dishwasher' => '',
+ 'Liter' => '',
+ 'Liters' => '',
+ 'Bottle' => '',
+ 'Bottles' => '',
+ 'Milk' => '',
+ 'Chocolate sauce' => '',
+ 'Milliliters' => '',
+ 'Milliliter' => '',
+ 'Bottom' => '',
+ 'Topping' => '',
+ 'French' => '',
+ 'Turkish' => '',
+ 'Spanish' => '',
+ 'Russian' => '',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/ta/stock_transaction_types.php b/localization-backup/ta/stock_transaction_types.php
new file mode 100644
index 00000000..218da560
--- /dev/null
+++ b/localization-backup/ta/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ '',
+ 'consume' => '',
+ 'inventory-correction' => '',
+ 'product-opened' => ''
+);
diff --git a/localization-backup/ta/strings.php b/localization-backup/ta/strings.php
new file mode 100644
index 00000000..3228527d
--- /dev/null
+++ b/localization-backup/ta/strings.php
@@ -0,0 +1,397 @@
+ '',
+ '#1 products expiring within the next #2 days' => '',
+ '#1 products are already expired' => '',
+ '#1 products are below defined min. stock amount' => '',
+ 'Product' => '',
+ 'Amount' => '',
+ 'Next best before date' => '',
+ 'Logout' => '',
+ 'Chores overview' => '',
+ 'Batteries overview' => '',
+ 'Purchase' => '',
+ 'Consume' => '',
+ 'Inventory' => '',
+ 'Shopping list' => '',
+ 'Chore tracking' => '',
+ 'Battery tracking' => '',
+ 'Products' => '',
+ 'Locations' => '',
+ 'Quantity units' => '',
+ 'Chores' => '',
+ 'Batteries' => '',
+ 'Chore' => '',
+ 'Next estimated tracking' => '',
+ 'Last tracked' => '',
+ 'Battery' => '',
+ 'Last charged' => '',
+ 'Next planned charge cycle' => '',
+ 'Best before' => '',
+ 'OK' => '',
+ 'Product overview' => '',
+ 'Stock quantity unit' => '',
+ 'Stock amount' => '',
+ 'Last purchased' => '',
+ 'Last used' => '',
+ 'Spoiled' => '',
+ 'Barcode lookup is disabled' => '',
+ 'will be added to the list of barcodes for the selected product on submit' => '',
+ 'New amount' => '',
+ 'Note' => '',
+ 'Tracked time' => '',
+ 'Chore overview' => '',
+ 'Tracked count' => '',
+ 'Battery overview' => '',
+ 'Charge cycles count' => '',
+ 'Create shopping list item' => '',
+ 'Edit shopping list item' => '',
+ 'Save' => '',
+ 'Add' => '',
+ 'Name' => '',
+ 'Location' => '',
+ 'Min. stock amount' => '',
+ 'QU purchase' => '',
+ 'QU stock' => '',
+ 'QU factor' => '',
+ 'Description' => '',
+ 'Create product' => '',
+ 'Barcode(s)' => '',
+ 'Minimum stock amount' => '',
+ 'Default best before days' => '',
+ 'Quantity unit purchase' => '',
+ 'Quantity unit stock' => '',
+ 'Factor purchase to stock quantity unit' => '',
+ 'Create location' => '',
+ 'Create quantity unit' => '',
+ 'Period type' => '',
+ 'Period days' => '',
+ 'Create chore' => '',
+ 'Used in' => '',
+ 'Create battery' => '',
+ 'Edit battery' => '',
+ 'Edit chore' => '',
+ 'Edit quantity unit' => '',
+ 'Edit product' => '',
+ 'Edit location' => '',
+ 'Record data' => '',
+ 'Manage master data' => '',
+ 'This will apply to added products' => '',
+ 'never' => '',
+ 'Add products that are below defined min. stock amount' => '',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => '',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => '',
+ 'Login' => '',
+ 'Username' => '',
+ 'Password' => '',
+ 'Invalid credentials, please try again' => '',
+ 'Are you sure to delete battery "#1"?' => '',
+ 'Yes' => '',
+ 'No' => '',
+ 'Are you sure to delete chore "#1"?' => '',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '',
+ 'Create or assign product' => '',
+ 'Cancel' => '',
+ 'Add as new product' => '',
+ 'Add as barcode to existing product' => '',
+ 'Add as new product and prefill barcode' => '',
+ 'Are you sure to delete quantity unit "#1"?' => '',
+ 'Are you sure to delete product "#1"?' => '',
+ 'Are you sure to delete location "#1"?' => '',
+ 'Manage API keys' => '',
+ 'REST API & data model documentation' => '',
+ 'API keys' => '',
+ 'Create new API key' => '',
+ 'API key' => '',
+ 'Expires' => '',
+ 'Created' => '',
+ 'This product is not in stock' => '',
+ 'This means #1 will be added to stock' => '',
+ 'This means #1 will be removed from stock' => '',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => '',
+ 'Removed #1 #2 of #3 from stock' => '',
+ 'About grocy' => '',
+ 'Close' => '',
+ '#1 batteries are due to be charged within the next #2 days' => '',
+ '#1 batteries are overdue to be charged' => '',
+ '#1 chores are due to be done within the next #2 days' => '',
+ '#1 chores are overdue to be done' => '',
+ 'Released on' => '',
+ 'Consume #3 #1 of #2' => '',
+ 'Added #1 #2 of #3 to stock' => '',
+ 'Stock amount of #1 is now #2 #3' => '',
+ 'Tracked execution of chore #1 on #2' => '',
+ 'Tracked charge cycle of battery #1 on #2' => '',
+ 'Consume all #1 which are currently in stock' => '',
+ 'All' => '',
+ 'Track charge cycle of battery #1' => '',
+ 'Track execution of chore #1' => '',
+ 'Filter by location' => '',
+ 'Search' => '',
+ 'Not logged in' => '',
+ 'You have to select a product' => '',
+ 'You have to select a chore' => '',
+ 'You have to select a battery' => '',
+ 'A name is required' => '',
+ 'A location is required' => '',
+ 'The amount cannot be lower than #1' => '',
+ 'This cannot be negative' => '',
+ 'A quantity unit is required' => '',
+ 'A period type is required' => '',
+ 'A best before date is required' => '',
+ 'Settings' => '',
+ 'This can only be before now' => '',
+ 'Calendar' => '',
+ 'Recipes' => '',
+ 'Edit recipe' => '',
+ 'New recipe' => '',
+ 'Ingredients list' => '',
+ 'Add recipe ingredient' => '',
+ 'Edit recipe ingredient' => '',
+ 'Are you sure to delete recipe "#1"?' => '',
+ 'Are you sure to delete recipe ingredient "#1"?' => '',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => '',
+ 'Requirements fulfilled' => '',
+ 'Put missing products on shopping list' => '',
+ 'Not enough in stock, #1 ingredients missing' => '',
+ 'Enough in stock' => '',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => '',
+ 'Expand to fullscreen' => '',
+ 'Ingredients' => '',
+ 'Preparation' => '',
+ 'Recipe' => '',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => '',
+ 'Show notes' => '',
+ 'Put missing amount on shopping list' => '',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => '',
+ 'Added for recipe #1' => '',
+ 'Manage users' => '',
+ 'User' => '',
+ 'Users' => '',
+ 'Are you sure to delete user "#1"?' => '',
+ 'Create user' => '',
+ 'Edit user' => '',
+ 'First name' => '',
+ 'Last name' => '',
+ 'A username is required' => '',
+ 'Confirm password' => '',
+ 'Passwords do not match' => '',
+ 'Change password' => '',
+ 'Done by' => '',
+ 'Last done by' => '',
+ 'Unknown' => '',
+ 'Filter by chore' => '',
+ 'Chores journal' => '',
+ '0 means suggestions for the next charge cycle are disabled' => '',
+ 'Charge cycle interval (days)' => '',
+ 'Last price' => '',
+ 'Price history' => '',
+ 'No price history available' => '',
+ 'Price' => '',
+ 'in #1 per purchase quantity unit' => '',
+ 'The price cannot be lower than #1' => '',
+ '#1 product expires within the next #2 days' => '',
+ '#1 product is already expired' => '',
+ '#1 product is below defined min. stock amount' => '',
+ 'Unit' => '',
+ 'Units' => '',
+ '#1 chore is due to be done within the next #2 days' => '',
+ '#1 chore is overdue to be done' => '',
+ '#1 battery is due to be charged within the next #2 days' => '',
+ '#1 battery is overdue to be charged' => '',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '',
+ 'in singular form' => '',
+ 'in plural form' => '',
+ 'Never expires' => '',
+ 'This cannot be lower than #1' => '',
+ '-1 means that this product never expires' => '',
+ 'Quantity unit' => '',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => '',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '',
+ 'Removed all ingredients of recipe "#1" from stock' => '',
+ 'Consume all ingredients needed by this recipe' => '',
+ 'Click to show technical details' => '',
+ 'Error while saving, probably this item already exists' => '',
+ 'Error details' => '',
+ 'Tasks' => '',
+ 'Show done tasks' => '',
+ 'Task' => '',
+ 'Due' => '',
+ 'Assigned to' => '',
+ 'Mark task "#1" as completed' => '',
+ 'Uncategorized' => '',
+ 'Task categories' => '',
+ 'Create task' => '',
+ 'A due date is required' => '',
+ 'Category' => '',
+ 'Edit task' => '',
+ 'Are you sure to delete task "#1"?' => '',
+ '#1 task is due to be done within the next #2 days' => '',
+ '#1 tasks are due to be done within the next #2 days' => '',
+ '#1 task is overdue to be done' => '',
+ '#1 tasks are overdue to be done' => '',
+ 'Edit task category' => '',
+ 'Create task category' => '',
+ 'Product groups' => '',
+ 'Ungrouped' => '',
+ 'Create product group' => '',
+ 'Edit product group' => '',
+ 'Product group' => '',
+ 'Are you sure to delete product group "#1"?' => '',
+ 'Stay logged in permanently' => '',
+ 'When not set, you will get logged out at latest after 30 days' => '',
+ 'Filter by status' => '',
+ 'Below min. stock amount' => '',
+ 'Expiring soon' => '',
+ 'Already expired' => '',
+ 'Due soon' => '',
+ 'Overdue' => '',
+ 'View settings' => '',
+ 'Auto reload on external changes' => '',
+ 'Enable night mode' => '',
+ 'Auto enable in time range' => '',
+ 'From' => '',
+ 'in format' => '',
+ 'To' => '',
+ 'Time range goes over midnight' => '',
+ 'Product picture' => '',
+ 'No file selected' => '',
+ 'If you don\'t select a file, the current picture will not be altered' => '',
+ 'Delete' => '',
+ 'The current picture will be deleted when you save the product' => '',
+ 'Select file' => '',
+ 'Image of product #1' => '',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => '',
+ 'Delete not possible' => '',
+ 'Equipment' => '',
+ 'Instruction manual' => '',
+ 'The selected equipment has no instruction manual' => '',
+ 'Notes' => '',
+ 'Edit equipment' => '',
+ 'Create equipment' => '',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => '',
+ 'No instruction manual available' => '',
+ 'The current instruction manual will be deleted when you save the equipment' => '',
+ 'No picture available' => '',
+ 'Filter by product group' => '',
+ 'Presets for new products' => '',
+ 'Included recipes' => '',
+ 'A recipe is required' => '',
+ 'Add included recipe' => '',
+ 'Edit included recipe' => '',
+ 'Group' => '',
+ 'This will be used as a headline to group ingredients together' => '',
+ 'Journal' => '',
+ 'Stock journal' => '',
+ 'Filter by product' => '',
+ 'Booking time' => '',
+ 'Booking type' => '',
+ 'Undo booking' => '',
+ 'Undone on' => '',
+ 'Batteries journal' => '',
+ 'Filter by battery' => '',
+ 'Undo charge cycle' => '',
+ 'Undo chore execution' => '',
+ 'Chore execution successfully undone' => '',
+ 'Undo' => '',
+ 'Booking successfully undone' => '',
+ 'Charge cycle successfully undone' => '',
+ 'This cannot be negative and must be an integral number' => '',
+ 'Disable stock fulfillment checking for this ingredient' => '',
+ 'Add all list items to stock' => '',
+ 'Add #3 #1 of #2 to stock' => '',
+ 'Adding shopping list item #1 of #2' => '',
+ 'Use a specific stock item' => '',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => '',
+ 'Default best before days after opened' => '',
+ 'Marked #1 #2 of #3 as opened' => '',
+ 'Mark as opened' => '',
+ 'Expires on #1; Bought on #2' => '',
+ 'Not opened' => '',
+ 'Opened' => '',
+ 'Mark #3 #1 of #2 as open' => '',
+ '#1 opened' => '',
+ 'Product expires' => '',
+ 'Task due' => '',
+ 'Chore due' => '',
+ 'Battery charge cycle due' => '',
+ 'Show clock in header' => '',
+ 'Stock settings' => '',
+ 'Shopping list to stock workflow' => '',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => '',
+ 'Skip' => '',
+ 'Servings' => '',
+ 'Costs' => '',
+ 'Based on the prices of the last purchase per product' => '',
+ 'The ingredients listed here result in this amount of servings' => '',
+ 'Do not check against the shopping list when adding missing items to it' => '',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => '',
+ 'Picture' => '',
+ 'Uncheck ingredients to not put them on the shopping list' => '',
+ 'This is for statistical purposes only' => '',
+ 'You have to select a recipe' => '',
+ 'Key type' => '',
+ 'Share/Integrate calendar (iCal)' => '',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => '',
+ 'Allow partial units in stock' => '',
+ 'Enable tare weight handling' => '',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => '',
+ 'Tare weight' => '',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => '',
+ 'You have to select a location' => '',
+ 'List' => '',
+ 'Gallery' => '',
+ 'The current picture will be deleted when you save the recipe' => '',
+ 'Show product details' => '',
+ 'Stock journal for this product' => '',
+ 'Show chore details' => '',
+ 'Journal for this chore' => '',
+ 'Show battery details' => '',
+ 'Journal for this battery' => '',
+ 'System info' => '',
+ 'Changelog' => '',
+ 'will be multiplied a factor of #1 to get #2' => '',
+ 'The given date is earlier than today, are you sure?' => '',
+ 'Product count' => '',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => '',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => '',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/ta/userfield_types.php b/localization-backup/ta/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/ta/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);
diff --git a/localization-backup/tr/chore_types.php b/localization-backup/tr/chore_types.php
new file mode 100644
index 00000000..b28ed2a7
--- /dev/null
+++ b/localization-backup/tr/chore_types.php
@@ -0,0 +1,9 @@
+ 'Manuel',
+ 'dynamic-regular' => 'Dinamik düzenli',
+ 'daily' => '',
+ 'weekly' => '',
+ 'monthly' => ''
+);
diff --git a/localization-backup/tr/component_translations.php b/localization-backup/tr/component_translations.php
new file mode 100644
index 00000000..26d7d4c6
--- /dev/null
+++ b/localization-backup/tr/component_translations.php
@@ -0,0 +1,10 @@
+ 'tr',
+ 'timeago_nan' => 'NaN yıl önce',
+ 'moment_locale' => 'tr',
+ 'datatables_localization' => '{"sEmptyTable":"Tablo içerisinde uygun veri yok","sInfo":"_TOTAL_ girdiden _START_ - _END_ aralığı gösteriliyor","sInfoEmpty":"0 girdiden 0 - 0 aralığı gösteriliyor","sInfoFiltered":"(_MAX_ toplam girdiden filtrelendi)","sInfoPostFix":"","sInfoThousands":",","sLengthMenu":"_MENU_ girdilerini göster","sLoadingRecords":"Yükleniyor...","sProcessing":"İşleniyor...","sSearch":"Ara:","sZeroRecords":"Eşleşen kayıt bulunamadı","oPaginate":{"sFirst":"İlk","sLast":"Son","sNext":"Sonraki","sPrevious":"Önceki"},"oAria":{"sSortAscending":": sütunu artan sıraya göre sıralamak için aktif edin","sSortDescending":": sütunu azalan sıraya göre sıralamak için aktif edin"}}',
+ 'summernote_locale' => 'tr-TR',
+ 'fullcalendar_locale' => 'tr'
+);
diff --git a/localization-backup/tr/demo_data.php b/localization-backup/tr/demo_data.php
new file mode 100644
index 00000000..85ffc17c
--- /dev/null
+++ b/localization-backup/tr/demo_data.php
@@ -0,0 +1,95 @@
+ 'Kurabiyeler',
+ 'Chocolate' => 'Çikolata',
+ 'Pantry' => 'Kiler',
+ 'Candy cupboard' => 'Şeker dolabı',
+ 'Tinned food cupboard' => 'Konserve dolabı',
+ 'Fridge' => 'Buzdolabı',
+ 'Piece' => 'Tane',
+ 'Pieces' => 'Tane',
+ 'Pack' => 'Paket',
+ 'Packs' => 'Paket',
+ 'Glass' => 'Bardak',
+ 'Glasses' => 'Bardak',
+ 'Tin' => 'Teneke',
+ 'Tins' => 'Teneke',
+ 'Can' => 'Konserve',
+ 'Cans' => 'Konserve',
+ 'Bunch' => 'Demet',
+ 'Bunches' => 'Demet',
+ 'Gummy bears' => 'Jelibon ayı',
+ 'Crisps' => 'Cips',
+ 'Eggs' => 'Yumurta',
+ 'Noodles' => 'Noodle',
+ 'Pickles' => 'Turşu',
+ 'Gulash soup' => 'Gulaş çorbası',
+ 'Yogurt' => 'Yoğurt',
+ 'Cheese' => 'Peynir',
+ 'Cold cuts' => 'Söğüş',
+ 'Paprika' => 'Kırmızı biber',
+ 'Cucumber' => 'Salatalık',
+ 'Radish' => 'Turp',
+ 'Tomato' => 'Domates',
+ 'Changed towels in the bathroom' => 'Banyoda değişen havlular',
+ 'Cleaned the kitchen floor' => 'Temizlenen mutfak zeminleri',
+ 'Warranty ends' => 'Garantisi bitiyor',
+ 'TV remote control' => 'TV uzaktan kumandası',
+ 'Alarm clock' => 'Alarm saati',
+ 'Heat remote control' => 'Uzaktan ısı kontrolü',
+ 'Lawn mowed in the garden' => 'Biçilen bahçeler',
+ 'Some good snacks' => 'Bazı iyi atıştırmalıklar',
+ 'Pizza dough' => 'Pizza hamuru',
+ 'Sieved tomatoes' => 'Elenmiş domates',
+ 'Salami' => 'Salam',
+ 'Toast' => 'Tost',
+ 'Minced meat' => 'Kıyma',
+ 'Pizza' => 'Pizza',
+ 'Spaghetti bolognese' => 'Spagetti bolonez',
+ 'Sandwiches' => 'Sandviç',
+ 'English' => 'İngilizce',
+ 'German' => 'Almanca',
+ 'Italian' => 'İtalyanca',
+ 'Demo in different language' => 'Farklı dilde bir demo',
+ 'This is the note content of the recipe ingredient' => 'Bu, tarif malzemesi için bir not içeriği',
+ 'Demo User' => 'Demo Kullanıcısı',
+ 'Gram' => 'Gram',
+ 'Grams' => 'Gram',
+ 'Flour' => 'Un',
+ 'Pancakes' => 'Pankek',
+ 'Sugar' => 'Şeker',
+ 'Home' => 'Ev',
+ 'Life' => 'Yaşam',
+ 'Projects' => 'Projeler',
+ 'Repair the garage door' => 'Garaj kapısını tamir et',
+ 'Fork and improve grocy' => 'grocy\'i forkla ve geliştir',
+ 'Find a solution for what to do when I forget the door keys' => 'Anahtarları unuttuğumda ne yapmam gerektiğine dair bir çözüm bul',
+ 'Sweets' => 'Tatlılar',
+ 'Bakery products' => 'Fırın ürünleri',
+ 'Tinned food' => 'Konserve yiyecekler',
+ 'Butchery products' => 'Kasap ürünleri',
+ 'Vegetables/Fruits' => 'Sebze/Meyve',
+ 'Refrigerated products' => 'Dondurulmuş ürünler',
+ 'Coffee machine' => 'Kahve makinesi',
+ 'Dishwasher' => 'Bulaşık makinesi',
+ 'Liter' => 'Litre',
+ 'Liters' => 'Litre',
+ 'Bottle' => 'Şişe',
+ 'Bottles' => 'Şişe',
+ 'Milk' => 'Süt',
+ 'Chocolate sauce' => 'Çikolata sosu',
+ 'Milliliters' => 'Mililitre',
+ 'Milliliter' => 'Mililitre',
+ 'Bottom' => 'Dip',
+ 'Topping' => 'Süsleme',
+ 'French' => 'Fransızca',
+ 'Turkish' => 'Türkçe',
+ 'Spanish' => 'İspanyolca',
+ 'Russian' => 'Rusça',
+ 'The thing which happens on the 5th of every month' => '',
+ 'The thing which happens daily' => '',
+ 'The thing which happens on Mondays and Wednesdays' => '',
+ 'Swedish' => '',
+ 'Polish' => ''
+);
diff --git a/localization-backup/tr/stock_transaction_types.php b/localization-backup/tr/stock_transaction_types.php
new file mode 100644
index 00000000..a2accfab
--- /dev/null
+++ b/localization-backup/tr/stock_transaction_types.php
@@ -0,0 +1,8 @@
+ 'Satın al',
+ 'consume' => 'Tüket',
+ 'inventory-correction' => 'Envanter doğrulama',
+ 'product-opened' => 'Ürün açıldı'
+);
diff --git a/localization-backup/tr/strings.php b/localization-backup/tr/strings.php
new file mode 100644
index 00000000..dd955ce1
--- /dev/null
+++ b/localization-backup/tr/strings.php
@@ -0,0 +1,397 @@
+ 'Stoklara genel bakış',
+ '#1 products expiring within the next #2 days' => '#1 ürünün son kullanma tarihi #2 gün içerisinde dolacak',
+ '#1 products are already expired' => '#1 ürünün son kullanma tarihi geçti',
+ '#1 products are below defined min. stock amount' => '#1 ürün belirlenen minimum stok miktarının altında',
+ 'Product' => 'Ürün',
+ 'Amount' => 'Miktar',
+ 'Next best before date' => 'Son kullanma tarihi',
+ 'Logout' => 'Çıkış yap',
+ 'Chores overview' => 'Ev işlerine genel bakış',
+ 'Batteries overview' => 'Pillere genel bakış',
+ 'Purchase' => 'Satın al',
+ 'Consume' => 'Tüket',
+ 'Inventory' => 'Envanter',
+ 'Shopping list' => 'Alışveriş listesi',
+ 'Chore tracking' => 'Ev işleri takibi',
+ 'Battery tracking' => 'Pil takibi',
+ 'Products' => 'Ürünler',
+ 'Locations' => 'Lokasyonlar',
+ 'Quantity units' => 'Miktar birimleri',
+ 'Chores' => 'Ev işleri',
+ 'Batteries' => 'Piller',
+ 'Chore' => 'Ev işi',
+ 'Next estimated tracking' => 'Sonraki tahmini takip',
+ 'Last tracked' => 'Son takip',
+ 'Battery' => 'Pil',
+ 'Last charged' => 'Son şarj ediş',
+ 'Next planned charge cycle' => 'Sonraki planlanan şarj döngüsü',
+ 'Best before' => 'Son kullanma tarihi',
+ 'OK' => 'Tamam',
+ 'Product overview' => 'Ürün genel bakışı',
+ 'Stock quantity unit' => 'Stok miktar birimi',
+ 'Stock amount' => 'Stok miktarı',
+ 'Last purchased' => 'Son satın alış',
+ 'Last used' => 'Son kullanış',
+ 'Spoiled' => 'Bozulmuş',
+ 'Barcode lookup is disabled' => 'Barkod inceleme özelliği devre dışı bırakıldı',
+ 'will be added to the list of barcodes for the selected product on submit' => 'kayıt esnasında seçilen ürün için barkod listesine eklenecek',
+ 'New amount' => 'Yeni miktar',
+ 'Note' => 'Not',
+ 'Tracked time' => 'Takip edilen süre',
+ 'Chore overview' => 'Ev işlerine genel bakış',
+ 'Tracked count' => 'Takip sayısı',
+ 'Battery overview' => 'Pillere genel bakış',
+ 'Charge cycles count' => 'Şarj döngüsü sayısı',
+ 'Create shopping list item' => 'Alışveriş listesine bir madde ekle',
+ 'Edit shopping list item' => 'Alışveriş listesi maddesini düzenle',
+ 'Save' => 'Kaydet',
+ 'Add' => 'Ekle',
+ 'Name' => 'İsim',
+ 'Location' => 'Lokasyon',
+ 'Min. stock amount' => 'Min. stok miktarı',
+ 'QU purchase' => 'QU satın al',
+ 'QU stock' => 'QU stok',
+ 'QU factor' => 'QU faktör',
+ 'Description' => 'Açıklama',
+ 'Create product' => 'Ürün oluştur',
+ 'Barcode(s)' => 'Barkod(lar)',
+ 'Minimum stock amount' => 'Minimum stok miktarı',
+ 'Default best before days' => 'Varsayılan son kullanım tarihi',
+ 'Quantity unit purchase' => 'Miktar birim alımı',
+ 'Quantity unit stock' => 'Miktar birim stoğu',
+ 'Factor purchase to stock quantity unit' => 'Alımı stok miktar birimle çarp',
+ 'Create location' => 'Lokasyon oluştur',
+ 'Create quantity unit' => 'Miktar birimi oluştur',
+ 'Period type' => 'Dönem türü',
+ 'Period days' => 'Dönem günleri',
+ 'Create chore' => 'Ev işi oluştur',
+ 'Used in' => 'içinde kullanılıyor',
+ 'Create battery' => 'Pil oluştur',
+ 'Edit battery' => 'Pil düzenle',
+ 'Edit chore' => 'Ev işi düzenle',
+ 'Edit quantity unit' => 'Miktar birimi düzenle',
+ 'Edit product' => 'Ürünü düzenle',
+ 'Edit location' => 'Lokasyonu düzenle',
+ 'Record data' => 'Veri kaydet',
+ 'Manage master data' => 'Ana veriyi yönet',
+ 'This will apply to added products' => 'Bu eklenen ürünlere uygulanacak',
+ 'never' => 'asla',
+ 'Add products that are below defined min. stock amount' => 'Tanımlanan min. stok miktarının altındaki ürünleri ekle',
+ 'For purchases this amount of days will be added to today for the best before date suggestion' => 'Satın alımlar için bu kadar gün son kullanım tarihi önerisi üzerine bugün eklenecek',
+ 'This means 1 #1 purchased will be converted into #2 #3 in stock' => 'Bu 1 #1 satın alımının #2 #3 stoklarına dönüştürüleceğini ifade ediyor',
+ 'Login' => 'Giriş yap',
+ 'Username' => 'Kullanıcı adı',
+ 'Password' => 'Parola',
+ 'Invalid credentials, please try again' => 'Yanlış giriş bilgisi, lütfen tekrar deneyin',
+ 'Are you sure to delete battery "#1"?' => 'Pil "#1"\'i silmek istediğine emin misin?',
+ 'Yes' => 'Evet',
+ 'No' => 'Hayır',
+ 'Are you sure to delete chore "#1"?' => 'Ev işi "#1"\'i silmek istediğine emin misin?',
+ '"#1" could not be resolved to a product, how do you want to proceed?' => '"#1" bir ürünle eşleşmiyor, nasıl ilerlemek istersin?',
+ 'Create or assign product' => 'Oluştur veya bir ürüne ata',
+ 'Cancel' => 'İptal et',
+ 'Add as new product' => 'Yeni ürün olarak ekle',
+ 'Add as barcode to existing product' => 'Var olan ürüne barkod olarak ekle',
+ 'Add as new product and prefill barcode' => 'Yeni ürün olarak ekle ve barkodu otomatik doldur',
+ 'Are you sure to delete quantity unit "#1"?' => 'Miktar birimi "#1"\'i silmek istediğine emin misin?',
+ 'Are you sure to delete product "#1"?' => 'Ürün "#1"\'i silmek istediğine emin misin?',
+ 'Are you sure to delete location "#1"?' => 'Lokasyon "#1"\'i silmek istediğine emin misin?',
+ 'Manage API keys' => 'API anahtarlarını yönet',
+ 'REST API & data model documentation' => 'REST API & veri modeli dökümantasyonu',
+ 'API keys' => 'API anahtarları',
+ 'Create new API key' => 'Yeni API anahtarı oluştur',
+ 'API key' => 'API anahtarı',
+ 'Expires' => 'Süresi doluyor',
+ 'Created' => 'Oluşturuldu',
+ 'This product is not in stock' => 'Bu ürün stoklarda yok',
+ 'This means #1 will be added to stock' => 'Bu #1\'in stoklara ekleneceğini ifade ediyor',
+ 'This means #1 will be removed from stock' => 'Bu #1\'in stoklardan silineceğini ifade ediyor',
+ 'This means it is estimated that a new execution of this chore is tracked #1 days after the last was tracked' => 'Bu ev işinin sonraki takibinin son takipten #1 gün sonra olacağının tahmin edildiğini ifade ediyor',
+ 'Removed #1 #2 of #3 from stock' => '#3\'ün #1 #2\'si stoklardan silindi',
+ 'About grocy' => 'grocy hakkında',
+ 'Close' => 'Kapat',
+ '#1 batteries are due to be charged within the next #2 days' => '#1 pilin önümüzdeki #2 gün içerisinde şarj olması bekleniyor',
+ '#1 batteries are overdue to be charged' => '#1 pilin şarj etme zamanı geçti',
+ '#1 chores are due to be done within the next #2 days' => '#1 ev işi önümüzdeki #2 gün içerisinde yapılacak',
+ '#1 chores are overdue to be done' => '#1 ev işinin yapılma zamanı geçti',
+ 'Released on' => 'Yayınlanma tarihi',
+ 'Consume #3 #1 of #2' => '#3\'ün #1/#2\'sini tüket',
+ 'Added #1 #2 of #3 to stock' => '#1\'in #2/#3\'ü stoklara eklendi',
+ 'Stock amount of #1 is now #2 #3' => '#1\'in stok miktarı şimdi #2 #3',
+ 'Tracked execution of chore #1 on #2' => '#1\'in #2 üzerindeki uygulaması takip edildi',
+ 'Tracked charge cycle of battery #1 on #2' => 'Pil #1\'in #2 üzerindeki şarj döngüsü takip edildi',
+ 'Consume all #1 which are currently in stock' => '#1\'in bütün stoklarını tüket',
+ 'All' => 'Hepsi',
+ 'Track charge cycle of battery #1' => 'Pil #1\'in şarj döngüsünü takip et',
+ 'Track execution of chore #1' => 'Ev işi #1\'in uygulamasını takip et',
+ 'Filter by location' => 'Lokasyona göre filtrele',
+ 'Search' => 'Ara',
+ 'Not logged in' => 'Giriş yapılmadı',
+ 'You have to select a product' => 'Ürün seçmeniz lazım',
+ 'You have to select a chore' => 'Ev işi seçmeniz lazım',
+ 'You have to select a battery' => 'Pil seçmeniz lazım',
+ 'A name is required' => 'Bir isim zorunlu',
+ 'A location is required' => 'Bir lokasyon zorunlu',
+ 'The amount cannot be lower than #1' => 'Miktar #1\'den az olamaz',
+ 'This cannot be negative' => 'Bu negatif olamaz',
+ 'A quantity unit is required' => 'Miktar birim zorunlu',
+ 'A period type is required' => 'Dönem tipi zorunlu',
+ 'A best before date is required' => 'Son kullanma tarihi gerekiyor',
+ 'Settings' => 'Ayarlar',
+ 'This can only be before now' => 'Bu sadece şu andan önce olabilir',
+ 'Calendar' => 'Takvim',
+ 'Recipes' => 'Tarifler',
+ 'Edit recipe' => 'Tarifi düzenle',
+ 'New recipe' => 'Yeni tarif',
+ 'Ingredients list' => 'Malzeme listesi',
+ 'Add recipe ingredient' => 'Tarife malzeme ekle',
+ 'Edit recipe ingredient' => 'Tarif malzemesini düzenle',
+ 'Are you sure to delete recipe "#1"?' => 'Tarif "#1"\'i silmek istediğine emin misin?',
+ 'Are you sure to delete recipe ingredient "#1"?' => 'Tarif malzemesi "#1"\'i silmek istediğine emin misin?',
+ 'Are you sure to empty shopping list "#1"?' => '',
+ 'Clear list' => 'Listeyi temizle',
+ 'Requirements fulfilled' => 'Gereklilikler sağlandı',
+ 'Put missing products on shopping list' => 'Eksik malzemeleri alışveriş listesine ekle',
+ 'Not enough in stock, #1 ingredients missing' => 'Stokta yeterince #1 malzemesi yok',
+ 'Enough in stock' => 'Stokta yeteri kadar var',
+ 'Not enough in stock, #1 ingredients missing but already on the shopping list' => 'Stokta #1 yok ancak alışveriş listesine eklenmiş',
+ 'Expand to fullscreen' => 'Tam ekran yap',
+ 'Ingredients' => 'Malzemeler',
+ 'Preparation' => 'Hazırlanışı',
+ 'Recipe' => 'Tarif',
+ 'Not enough in stock, #1 missing, #2 already on shopping list' => 'Stokta yeterince #1 yok, #2 alış veriş listesine eklenmiş',
+ 'Show notes' => 'Notları göster',
+ 'Put missing amount on shopping list' => 'Eksik miktar kadar alışveriş listesine ekle',
+ 'Are you sure to put all missing ingredients for recipe "#1" on the shopping list?' => 'Tarif "#1"\'deki bütün eksik malzemeleri alışveriş listesine eklemek istediğinize emin misiniz?',
+ 'Added for recipe #1' => 'Tarif #1 için eklendi',
+ 'Manage users' => 'Kullanıcıları yönet',
+ 'User' => 'Kullanıcı',
+ 'Users' => 'Kullanıcılar',
+ 'Are you sure to delete user "#1"?' => 'Kullanıcı "#1"\'i silmek istediğine emin misin?',
+ 'Create user' => 'Kullanıcı oluştur',
+ 'Edit user' => 'Kullanıcıyı düzenle',
+ 'First name' => 'İsim',
+ 'Last name' => 'Soyisim',
+ 'A username is required' => 'Bir kullanıcı adı zorunlu',
+ 'Confirm password' => 'Parolayı doğrulayın',
+ 'Passwords do not match' => 'Parolalar uyuşmuyor',
+ 'Change password' => 'Parolayı değiştir',
+ 'Done by' => 'Tamamlanma tarihi',
+ 'Last done by' => 'Son tamamlanma tarih',
+ 'Unknown' => 'Bilinmeyen',
+ 'Filter by chore' => 'Ev işine göre filtrele',
+ 'Chores journal' => 'Ev işi günlüğü',
+ '0 means suggestions for the next charge cycle are disabled' => '0 sonraki şarj döngüsünün devre dışı bırakıldığını ifade eder',
+ 'Charge cycle interval (days)' => 'Şart döngüsü aralığı (gün)',
+ 'Last price' => 'Son fiyat',
+ 'Price history' => 'Fiyat tarihçesi',
+ 'No price history available' => 'Fiyat tarihçesi yok',
+ 'Price' => 'Fiyat',
+ 'in #1 per purchase quantity unit' => '#1 için her miktar birimini satın al',
+ 'The price cannot be lower than #1' => 'Fiyat #1\'den az olamaz',
+ '#1 product expires within the next #2 days' => '#1 ürünün son kullanma tarihi #2 gün içerisinde dolacak',
+ '#1 product is already expired' => '#1 ürünün son kullanma tarihi geçti',
+ '#1 product is below defined min. stock amount' => '#1 ürün belirlenen min. stok miktarının altında',
+ 'Unit' => 'Birim',
+ 'Units' => 'Birimler',
+ '#1 chore is due to be done within the next #2 days' => '#1 ev işi önümüzdeki #2 gün içerisinde yapılacak',
+ '#1 chore is overdue to be done' => '#1 ev işinin yapılma zamanı geçti',
+ '#1 battery is due to be charged within the next #2 days' => '#1 pilin önümüzdeki #2 gün içerisinde şarj olması bekleniyor',
+ '#1 battery is overdue to be charged' => '#1 pilin şarj etme zamanı geçti',
+ '#1 unit was automatically added and will apply in addition to the amount entered here' => '#1 birim otomatik olarak eklendi ve buraya girilen miktar haricinde uygulanacak',
+ 'in singular form' => 'tekil formda',
+ 'in plural form' => 'çoğul formda',
+ 'Never expires' => 'Son kullanma tarihi asla dolmuyor',
+ 'This cannot be lower than #1' => 'Bu #1\'den az olamaz',
+ '-1 means that this product never expires' => '-1 ürünün son kullanma tarihinin asla dolmadığını ifade eder',
+ 'Quantity unit' => 'Miktar birimi',
+ 'Only check if a single unit is in stock (a different quantity can then be used above)' => 'Sadece tek ürün stoklardaysa işaretleyin (farklı miktar daha sonra yukarıdan kullanılabilir)',
+ 'Are you sure to consume all ingredients needed by recipe "#1" (ingredients marked with "check only if a single unit is in stock" will be ignored)?' => '"#1" için gereken tüm malzemeleri tüketmek istediğine emin misin ("sadece tek ürün varsa işaretle" ile işaretlenmiş ürünler ihmal edilecek)?',
+ 'Removed all ingredients of recipe "#1" from stock' => 'Tarif "#1"\'in tüm malzemeleri stoklardan silindi',
+ 'Consume all ingredients needed by this recipe' => 'Bu tarif için gereken tüm malzemeleri tüket',
+ 'Click to show technical details' => 'Teknik detayları görmek için tıkla',
+ 'Error while saving, probably this item already exists' => 'Kaydederken problem oldu, bu ürün muhtemelen zaten kayıtlı',
+ 'Error details' => 'Hata detayları',
+ 'Tasks' => 'Görevler',
+ 'Show done tasks' => 'Tamamlanmış görevleri göster',
+ 'Task' => 'Görev',
+ 'Due' => 'Tamamlanma tarihi',
+ 'Assigned to' => 'Atanan kişi',
+ 'Mark task "#1" as completed' => 'Görev "#1"\'i tamamlandı olarak işaretle',
+ 'Uncategorized' => 'Kategorize edilmemiş',
+ 'Task categories' => 'Görev kategorileri',
+ 'Create task' => 'Görev oluştur',
+ 'A due date is required' => 'Bir tamamlanma tarihi zorunlu',
+ 'Category' => 'Kategori',
+ 'Edit task' => 'Görevi düzenle',
+ 'Are you sure to delete task "#1"?' => 'Görev "#1"\'i silmek istediğine emin misin?',
+ '#1 task is due to be done within the next #2 days' => '#1 görev önümüzdeki #2 gün içerisinde yapılacak',
+ '#1 tasks are due to be done within the next #2 days' => '#1 görev önümüzdeki #2 gün içerisinde yapılacak',
+ '#1 task is overdue to be done' => '#1 görevin yapılma zamanı geçti',
+ '#1 tasks are overdue to be done' => '#1 görevin yapılma zamanı geçti',
+ 'Edit task category' => 'Görev kategorisini düzenle',
+ 'Create task category' => 'Görev kategorisi oluştur',
+ 'Product groups' => 'Ürün grupları',
+ 'Ungrouped' => 'Grupsuz',
+ 'Create product group' => 'Ürün grubu oluştur',
+ 'Edit product group' => 'Ürün grubunu düzenle',
+ 'Product group' => 'Ürün grubu',
+ 'Are you sure to delete product group "#1"?' => 'Ürün grubu "#1"\'i silmek istediğine emin misin?',
+ 'Stay logged in permanently' => 'Sürekli olarak girişli kal',
+ 'When not set, you will get logged out at latest after 30 days' => 'Seçilmediği takdirde, en az 30 gün sonra otomatik olarak çıkış yapacaksınız',
+ 'Filter by status' => 'Duruma göre filtrele',
+ 'Below min. stock amount' => 'Min. stok miktarının altında',
+ 'Expiring soon' => 'Son kullanma tarihi yakında doluyor',
+ 'Already expired' => 'Son kullanma tarihi dolmuş',
+ 'Due soon' => 'Tamamlanma süresi yakında',
+ 'Overdue' => 'Tamamlanma süresi geçmiş',
+ 'View settings' => 'Ayarlara bak',
+ 'Auto reload on external changes' => 'Dış değişikliklerde otomatik olarak yenile',
+ 'Enable night mode' => 'Gece modunu aktif et',
+ 'Auto enable in time range' => 'Zaman aralığında otomatik olarak aktif et',
+ 'From' => 'Tarafından',
+ 'in format' => 'biçiminde',
+ 'To' => 'İçin',
+ 'Time range goes over midnight' => 'Zaman aralığı gece yarısını geçiyor',
+ 'Product picture' => 'Ürün fotoğrafı',
+ 'No file selected' => 'Hiçbir dosya seçilmedi',
+ 'If you don\'t select a file, the current picture will not be altered' => 'Eğer herhangi bir dosya seçmezseniz, şimdiki fotoğraf değişmeyecek',
+ 'Delete' => 'Sil',
+ 'The current picture will be deleted when you save the product' => 'Ürünü kaydettiğiniz zaman şimdiki fotoğraf silinecek',
+ 'Select file' => 'Dosya seç',
+ 'Image of product #1' => '#1 ürününe ait fotoğraf',
+ 'This product cannot be deleted because it is in stock, please remove the stock amount first.' => 'Bu ürün silinemiyor çünkü stoklarda var, lütfen öncelikle stok miktarını silin',
+ 'Delete not possible' => 'Silme işlemi mümkün değil',
+ 'Equipment' => 'Ekipman',
+ 'Instruction manual' => 'Kullanım kılavuzu',
+ 'The selected equipment has no instruction manual' => 'Seçili ekipmanın kullanım kılavuzu yok',
+ 'Notes' => 'Notlar',
+ 'Edit equipment' => 'Ekipmanı düzenle',
+ 'Create equipment' => 'Ekipman oluştur',
+ 'If you don\'t select a file, the current instruction manual will not be altered' => 'Eğer herhangi bir dosya seçmezseniz, şimdiki kullanım kılavuzu değişmeyecek',
+ 'No instruction manual available' => 'Herhangi bir kullanım kılavuzu yok',
+ 'The current instruction manual will be deleted when you save the equipment' => 'Ekipmanı kaydettiğiniz zaman şimdiki kullanım kılavuzu silinecek',
+ 'No picture available' => 'Görsel mevcut değil',
+ 'Filter by product group' => 'Ürün grubuna göre filtrele',
+ 'Presets for new products' => 'Yeni ürünler için ön tanımlar',
+ 'Included recipes' => 'Dahil edilmiş tarifler',
+ 'A recipe is required' => 'Bir tarif gerekiyor',
+ 'Add included recipe' => 'Dahil edilmiş tarif ekle',
+ 'Edit included recipe' => 'Dahil edilmiş tarifi düzenle',
+ 'Group' => 'Grup',
+ 'This will be used as a headline to group ingredients together' => 'Bu, malzemeleri beraber gruplamak için başlık olarak kullanılacak',
+ 'Journal' => 'Günlük',
+ 'Stock journal' => 'Stok günlüğü',
+ 'Filter by product' => 'Ürüne göre filtrele',
+ 'Booking time' => 'Rezervasyon zamanı',
+ 'Booking type' => 'Rezervasyon türü',
+ 'Undo booking' => 'Rezervasyonu geri al',
+ 'Undone on' => 'Tarihinde tamamlanmamış',
+ 'Batteries journal' => 'Pil günlüğü',
+ 'Filter by battery' => 'Pile göre filtrele',
+ 'Undo charge cycle' => 'Şart döngüsünü geri al',
+ 'Undo chore execution' => 'Ev işi uygulamasını geri al',
+ 'Chore execution successfully undone' => 'Ev işi başarıyla geri alındı',
+ 'Undo' => 'Geri al',
+ 'Booking successfully undone' => 'Rezervasyon başarıyla geri alındı',
+ 'Charge cycle successfully undone' => 'Şarj döngüsü başarıyla geri alındı',
+ 'This cannot be negative and must be an integral number' => 'Bu, negatif olamaz ve bir tam sayı olmak zorunda',
+ 'Disable stock fulfillment checking for this ingredient' => 'Bu malzeme için stok yenilemeyi kapat',
+ 'Add all list items to stock' => 'Bütün liste maddelerini stoğa ekle',
+ 'Add #3 #1 of #2 to stock' => '#3\'ün #1/#2\'sini stoğa ekle',
+ 'Adding shopping list item #1 of #2' => 'Alışveriş listesi maddelerinin #1/#2\'si ekleniyor',
+ 'Use a specific stock item' => 'Spesifik bir stok maddesi kullan',
+ 'The first item in this list would be picked by the default rule which is "First expiring first, then first in first out"' => 'Bu listedeki ilk madde ön tanımlı olarak "Süresi ilk dolan ilk, ondan sonra ilk giren ilk çıkar" mantığıyla seçilecektir',
+ 'Mark #3 #1 of #2 as open' => '#3\'ün #1/#2\'sini açık olarak işaretle',
+ 'When a product was marked as opened, the best before date will be replaced by today + this amount of days (a value of 0 disables this)' => 'Ürün açık olarak işaretlendikten sonra, son kullanım tarihi bugün + belirtilen gün miktarı olarak güncellenecektir (0 değeri bunu kapatır)',
+ 'Default best before days after opened' => 'Açıldıktan sonrası için ön tanımlı son kullanım tarihi',
+ 'Marked #1 #2 of #3 as opened' => '#1\'in #2/#3\'ü açık olarak işaretlendi',
+ 'Mark as opened' => 'Açıldı olarak işaretle',
+ 'Expires on #1; Bought on #2' => '#1\'de son kullanım tarihi doluyor; #2\'de satın alındı',
+ 'Not opened' => 'Açılmadı',
+ 'Opened' => 'Açıldı',
+ 'Mark #3 #1 of #2 as open' => '#3\'ün #1/#2\'sini açık olarak işaretle',
+ '#1 opened' => '#1 açıldı',
+ 'Product expires' => 'Ürünün son kullanma tarihi doluyor',
+ 'Task due' => 'Görev süresi',
+ 'Chore due' => 'Ev işi süresi',
+ 'Battery charge cycle due' => 'Pil şarj döngüsü süresi',
+ 'Show clock in header' => 'Saati başlıkta göster',
+ 'Stock settings' => 'Stok ayarları',
+ 'Shopping list to stock workflow' => 'Alışveriş listesinden stok akışına',
+ 'Automatically do the booking using the last price and the amount of the shopping list item, if the product has "Default best before days" set' => 'Eğer ürünün "ön tanımlı son kullanım tarihi" ayarlanmamışsa, otomatik olarak rezervasyonu son fiyatı ve alışveriş listesindeki madde sayısını baz alarak yap',
+ 'Skip' => 'Geç',
+ 'Servings' => 'Porsiyon',
+ 'Costs' => 'Maliyet',
+ 'Based on the prices of the last purchase per product' => 'Satın alınan her ürünün son satın alış fiyatlarına göre',
+ 'The ingredients listed here result in this amount of servings' => 'Burada listelenen malzemelerle bu kadar porsiyon çıkıyor',
+ 'Do not check against the shopping list when adding missing items to it' => 'Eksik malzemeleri eklerken alışveriş listesine karşı kontrol etme',
+ 'By default the amount to be added to the shopping list is "needed amount - stock amount - shopping list amount" - when this is enabled, it is only checked against the stock amount, not against what is already on the shopping list' => 'Varsayılan olarak alışveriş listesine eklenen miktar "gereken miktar - stok miktarı - alışveriş listesi miktarı" olarak hesaplanır. Bu aktif edildiği zaman sadece stok miktarına karşı kontrol yapılır ve alışveriş listesi kontrol edilmez.',
+ 'Picture' => 'Resim',
+ 'Uncheck ingredients to not put them on the shopping list' => 'Alışveriş listesine malzemeleri eklememek için işareti kaldırın',
+ 'This is for statistical purposes only' => 'Bu sadece istatistiki amaçlar için',
+ 'You have to select a recipe' => 'Bir tarif seçmelisiniz',
+ 'Key type' => 'Anahtar türü',
+ 'Share/Integrate calendar (iCal)' => 'Takvime ekle/paylaş (iCal)',
+ 'Use the following (public) URL to share or integrate the calendar in iCal format' => 'Takvimle iCal formatında paylaşmak veya takvime entegre etmek için aşağıdaki (herkese açık) URL\'yi kullanın',
+ 'Allow partial units in stock' => 'Stoklarda kısmi birimlere izin ver',
+ 'Enable tare weight handling' => 'Dara ağırlığı yönetimini aktif et',
+ 'This is useful e.g. for flour in jars - on purchase/consume/inventory you always weigh the whole jar, the amount to be posted is then automatically calculated based on what is in stock and the tare weight defined below' => 'Örnek: Kavanozlardaki unu satın alım/harcama/envanter işlemlerinde kavanozun tamamını tartıyorsunuz, sonrasında kaydedilecek olan miktar otomatik olarak stoklarda olanlar ve aşağıda tanımlanmış olan dara ağırlığı üzerinden hesaplanıyor',
+ 'Tare weight' => 'Dara ağırlığı',
+ 'Tare weight handling enabled - please weigh the whole container, the amount to be posted will be automatically calculcated' => 'Dara ağırlığı kontrolü aktif edildi - lütfen tüm konteyneri tartın, gönderilecek olan veri otomatik olarak hesaplanacaktır',
+ 'You have to select a location' => 'Bir lokasyon seçmeniz gerekiyor',
+ 'List' => 'Liste',
+ 'Gallery' => 'Galeri',
+ 'The current picture will be deleted when you save the recipe' => 'Tarifi kaydettiğiniz zaman şimdiki fotoğraf silinecek',
+ 'Show product details' => 'Ürün detaylarını göster',
+ 'Stock journal for this product' => 'Bu ürün için stok günlüğü',
+ 'Show chore details' => 'Düzenli iş detaylarını göster',
+ 'Journal for this chore' => 'Bu düzenli iş için günlük',
+ 'Show battery details' => 'Pil detaylarını göster',
+ 'Journal for this battery' => 'Bu pil için günlük',
+ 'System info' => 'Sistem bilgisi',
+ 'Changelog' => 'Değişiklikler',
+ 'will be multiplied a factor of #1 to get #2' => '#2\'yi bulmak için #1\'in faktörüyle çarpılacak',
+ 'The given date is earlier than today, are you sure?' => 'Yazılan tarih bugünden daha önce, emin misiniz?',
+ 'Product count' => 'Ürün sayısı',
+ 'Type a new product name or barcode and hit TAB to start a workflow' => 'İş akışı başlatmak için yeni bir ürün ismi veya barkodu yazın ve TAB tuşuna basın',
+ 'This will be used as the default setting when adding this product as a recipe ingredient' => 'Varsayılan olarak bu ürünü tarif malzemesi olarak eklediğinizde bu ayar kullanılacak',
+ 'Add item' => '',
+ 'Selected shopping list' => '',
+ 'New shopping list' => '',
+ 'Delete shopping list' => '',
+ 'Chores settings' => '',
+ 'Batteries settings' => '',
+ 'Tasks settings' => '',
+ 'Create shopping list' => '',
+ 'Are you sure to delete shopping list "#1"?' => '',
+ 'Average shelf life' => '',
+ 'Spoil rate' => '',
+ 'Show more' => '',
+ 'Show less' => '',
+ 'The amount must be between #1 and #2' => '',
+ 'Day of month' => '',
+ 'Monday' => '',
+ 'Tuesday' => '',
+ 'Wednesday' => '',
+ 'Thursday' => '',
+ 'Friday' => '',
+ 'Saturday' => '',
+ 'Sunday' => '',
+ 'Configure userfields' => '',
+ 'Userfields' => '',
+ 'Filter by entity' => '',
+ 'Entity' => '',
+ 'Caption' => '',
+ 'Type' => '',
+ 'Create userfield' => '',
+ 'A entity is required' => '',
+ 'A caption is required' => '',
+ 'A type is required' => '',
+ 'Show as column in tables' => '',
+ 'This is required and can only contain letters and numbers' => '',
+ 'Edit userfield' => ''
+);
diff --git a/localization-backup/tr/userfield_types.php b/localization-backup/tr/userfield_types.php
new file mode 100644
index 00000000..db54dcea
--- /dev/null
+++ b/localization-backup/tr/userfield_types.php
@@ -0,0 +1,11 @@
+ '',
+ 'text-multi-line' => '',
+ 'number-integral' => '',
+ 'number-decimal' => '',
+ 'date' => '',
+ 'datetime' => '',
+ 'checkbox' => ''
+);