Use managed fonts
Include userentities dynamically in grocy.openapi.json for /userfields/{entity}/{objectId} endpoints (closes#1218)
Fixed userfieldsform load / save (for products and recipes) handling (fixes#1302)
Fixed PUT/DELETE /objects/{entity}/{objectId} when the given object id was invalid (fixes#1396)
Allow arrays in HTMLPurifier (fixes#1407)
* 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)
* 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>
* 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>
- Only refresh contextual number/datetime info/formatting where needed (closes#513)
- Also refresh correlated stock journal entries on undo (closes#471)
- Prefill "New amount" with the current stock amount on the inventory page (closes#434)
- Ensure that the location_id of the stock and stock_log tables is never empty after migration 95 (references #421)
- Load initial values of the /stockedit form server side to improve loading performance (references #421)
- Use more or less the same input ordering as on the purchase page for the /stockedit page (references #421)
- Also display the "Compact view" button on the shopping list page when FEATURE_FLAG_SHOPPINGLIST_MULTIPLE_LISTS is disabled (references #453)
- Ensure that the currently active sidebar menu item is visible
- Optimized sidebar menu item grouping/spacing
- Properly order the API documentation route groups and put the "by-barcode" routes into a separate group
- Updated dependencies
- Pulled translations from Transifex
- Prepared changelog for next release
* viewjs consume: implement location and update stock specific
* Transfer Products
* services StockService#GetProductStockEntriesByLocation: add method
* services StockService#AddProduct: check for stock and locations
* services StockService: include location_id
* services StockService#LocationExists: add method
* services StockService#UndoBooking: fix based on stockRow
* Reimplement StockServer->TransferProduct (one loop for the whole action to preserve stock_id)
* Ensure that the location_id is never NULL in the stock and stock_log table (checked by an INSERT trigger, sets the products default location if empty)
* Only consider stock amount at the given location on consume, if supplied
* Restore more/old display text for "specific stock entry"
* Don't allow transfering tare weight enabled products
* Various small changes (code style, missing OpenAPI endpoint, remove location_id null checking)
* Updated translations strings
* Added transaction_id and correlation_id to stock_log entries to group them together
* ProductCard - location to default location label change
* Also undo correlated bookings on undo
* Added API endpoints for listing and undoing transactions and use them on purchase/consume/inventory/stockoverview
* Initial Stock detail page
* Allow Undo for Tranfers
* Price step to .01
* Some localization string changes & fixes