* Grocycode: Productpicker, StockService
* Grocycode: Datamatrix generation
* Grocycode: Display in UI, make Images downloadable
* Grocycode: Do not show on product card
* Grocycode: Stockentry Label view
* Grocycode: Webhooks & Labelprinter Feature
* Grocycode: Manual Label printing
* Grocycode: Print Label from product form
* Quagga2: use zxing for DataMatrix recognition
* Grocycode: Default settings for label printing
* Prepare merge of master
* Grocycode: docs
* Docs: label printing webhook
* Review
- "grocy" is currently written lower-case everywhere, so let's do this also for "grocycode"
- Unified phrases / capitalization
- Minor UI adjustments (mainly context menu item ordering / ordering/spacing on product edit page)
- Documented API changes for Swagger UI (grocy.openapi.json)
- Reverted German localizations (those are managed via Transifex; would cause conflicts when manually edited - will import them later there)
- Reverted a somehow messed up localization string (productform/help text for `cumulate_min_stock_amount_of_sub_products`)
- Suppress deprecation warnings when generating Datamatrix PNG (otherwise the PNG is invalid, https://github.com/jucksearm/php-barcode/issues/3)
- Default `FEATURE_FLAG_LABELPRINTER` to disabled
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
Fixed some localization strings
Reviewed/optimized product deletion handling
Add option to hide products from the stock overview page (closes#906)
Prefill default_due_days also on the inventory page (closes#591)
Added DataTables accent chinese-string plugin (closes#872)
Show costs and calories per recipe ingredient (closes#1072)
Fixed user permission saving (fixes#1099)
User permissions should not have an effect for demo mode (closes#972)
Handle QU conversion when consuming a substituation (child) product (fixes#1118)
Consume/open any child product when the parent product is not in stock (closes#899)
Added a retry camera barcode scanning button to product picker workflow (closes#736)
Fixed number input min/max amount handling
Only (auto) save valid user inputs
More filters on the stock journal pages
Save the last price per used barcode and preselect that as a total price on purchase if not empty (closes#1131)
Don't apply conversions for only_check_single_unit_in_stock ingredients (fixes#1120)
Render shopping list userfields (closes#1052)
Fixed Focus when adding included recipes (closes#1019)
Order all base objects with NOCASE (closes#1086)
* Simplified stock overview on mobile.
* Stock table horizontally scrollable
* Use the new mobile views for all pages (except the shopping list page, use the existing special handling there for now)
And add a clear filter button to all pages
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Fixes#1035: Check available amount after filtering by stock_entry_id
* Fixes#1036: Remove stock-related buttons/options from Shopping-list if FEATURE_FLAG_STOCK is disabled
* Fixes#1010: Repair recipe-picture upload.
* Fixes#958: Disable auto-reload of equipments-page.
* Fix uncaught exception in locationpicker.js
* Fixes#761 and #762: Add "Remove exact amount" for products with tare weight handling and use it for recipe-consumption.
* Fixes#1048: Repair product-group-filter on "Master Data"/Products
* Renamed variable
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Fix#997. Remove datetimepicker if FEATURE_FLAG_STOCK_BEST_BEFORE_DATE is not set.
* datetimepicker: Fix that SetValue did not set the value if "shortcut-checkbox" (e.g. "never expires") was checked.
* Use parent div as clickable area for checkboxes in dropdowns
* Fix nightmode-enable
* Fix possibly undefined variables in CalendarService.php
* Fix undefined variable in GenericEntityApiController.php
* Fix "Trying to access property barcodes on non-object" in productpicker
* Fix undefined "hintId" in shoppinglocationpicker
* Fix undefined variables in locationpicker.blade.php
* Add a few instructions to the readme on how to get `grocy` running locally
* Fix toggle for header-clock
I'm not 100% sure why, but with this change, the listener which calls
`CheckHeaderClockEnabled` will be invoked *before* the listener which
persists the setting.
If the setting is persisted before that, the clock doesn't show up when
enabling it in the settings-menu and appears/disappears in the exact
opposite way the setting is true/false.
* Allow replacing a product picture when removing it at first
Right now, a preview image of a product doesn't get updated when
pressing the delete-button at first and adding a new image the
upload-form which can be quite confusing for an end-user.
This patch allows to delete an image and add a new one in one go.
* Add `Save & return` button to product form
Same concept as for recipes: when pressing this button, the user will
stay at the form's site after saving.
* Removed unneeded class
* Revert "Add a few instructions to the readme on how to get `grocy` running locally"
This reverts commit 6ffad1d3c729de9ce4bdd19aa87d7577dd2fcd36.
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Add QR-Code for API-Url/Key
* Show only API-Keys for current user
* Allow only admin users to create custom API-Keys
* Use a managed package of qrcode-generator instead of a copy of the JS file
* Reuse existing localization string (API key)
* Center QR-Code in popups
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Locales: use http-accept-language or "language"-cookie
* Add user-setting "locale"
Rename CULTURE to DEFAULT_LOCALE
* Use LocaleMiddleware also in dev mode
* CORS: don't require authentication on OPTIONS
* Use a standard user-settings-control and start a new generic user settings page, not a separate page for the locale setting
* Fixed (broken by myself) link-return handling
* Clarify language settings
* Removed unneeded files
* Better user settings icon
* Added localization hints
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Add permissions to Database & add "User"-classes
* Add UI & API for Permissions, protect "User"-(Api)-Controller with new permissions.
* Add some permissions.
* Add permission localization
* Add error handling.
* Error pages: only redirect on 404
* ExceptionController: return JSON-Response on api-routes
* Rename PRODUCT_ADD to PRODUCT_PURCHASE
* Move translation to new file
* Fix checkboxes stay selected on reload.
* Remove configurable User-implementation
* Remove MASTER_DATA_READ
* Disable buttons the user isn't allowed to use.
* Add default permissions for new users
* When migration to permissions, everyone starts as ADMIN
* Permission-Localization: add to transifex & LocalizationService
* Review
Co-authored-by: Bernd Bestel <bernd@berrnd.de>