* Added option to include details in the webhook sent to label printers
* Removed LABEL_PRINTER_INCLUDE_DETAILS flag
* Make this actually work
* Care about all places where webhooks are used / don't forget recipes
---------
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* fix: make stockentry grocycodes consume the actual stock entry not the product in general
if the stock_entry_id is in the request body use this instead of the stockentry grocycode
this may not be the correct way to interpret this but one of them has to win
* Undo formatting changes
* fix: add variable definition and reorder args used in ConsumeProduct
* Simplify
* Fix this also for transferring a product
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
Always execute migration 9999 (can be used to fix things manually)
Optimized meal plan navigation / date range filtering
Prepared next release
Pulled translations from Transifex
Various code optimizations
Improve journal pages loading time (new date range filter)
Various small style adjustments (meal plan page and others)
Pulled German translations from Transifex
Show the shopping list total value (closes#1309)
Make it possible to copy recipes (closes#714)
Implemented optional "auto decimal separator for price inputs" (closes#1345)
Removed table grouped column fixed order restriction (closes#1402)
Don't filter out style, class, id attributes of html text (closes#1298)
Added product picture as column on the stock overview page (closes#1283)
Added grocycodes also for chores and batteries (+ camera barcode scanning for /choretracking and /batterytracking, this now closes#221)
* Added escpos-php library
* Added button to shoppinglist print menu
* Added to translation
* Added basic printing logic and API call
* Working implementation for printing with the API
* Added openapi json
* Correctly parsing boolean parameter
* Working button in UI
* Change to grocy formatting
* Add Date
* Only show thermal print button when Feature Flag is set
* Fixed API call and added error message parsing
* Undo translation
* Add flag to print quantities as well
* Added printing notes
* Added quantity conversion
* Increse feed
* Fixed that checkbox was undefined, as dialog was already closed
* Added padding
* Formatting
* Added note about user permission
* Fixed error when using notes instead of products
* Review
- Default FEATURE_FLAG_THERMAL_PRINTER to disabled
- Added missing localization strings (and slightly adjusted one)
* Fixed merge conflicts
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* 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)
* 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>
* added button to add expired products to shoppinglist
* Localizations are managed via Transifex
Revert "added button to add expired products to shoppinglist"
This reverts commit ad1ab5d6a0f4bd1dbc88dbb0bda67713d4038014.
* Revert unnecessary change
* Reuse existing function (GetExpiringProducts) to get expired products
Co-authored-by: Mario Klug <mario.klug@sourcefactory.at>
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Stockjournal: Add "Done by"
* Add API for Stock-Journal
* Add "Journal-Summary"
* Use ALTER TABLE
* Moved the "Jounral summary" button to the stock journal page
* Changed icon & context menu position for new stock journal summary page
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* Add FilteredApiResponse
* Use FilteredApiResponse for Generic-Entity-Search
* Use FilteredApiResponse for Recipe-Fullfillment
* Use FilteredApiResponse for GetUsers
* Use FilteredApiResponse for current Tasks
* Use FilteredApiResponse for ProductStockEntries & ProductStockLocations
* Use FilteredApiResponse for current chores
* Use FilteredApiResponse for batteries-current
* Fix missing highlighting of "< X days"
* Keep to use existing views
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>
* Puchase add qu_factor_to_stock
* qu_factor_purchase_to_stock for stock edit
* product barcodes with QU and Stores
* remove product barcode tags
* migrations/0103 add value and factor_puchase_amount to stock_current and stock_current_location_content
* Remove unused method
* StockService#GetProductDetails: include stock_value
* productcard: include stock_value
* Add Purchase Factor to Stock Overview
* update demo data with stock qu_factor_purchase_to_stock
* recipes_pos_resolved update
* avg_price and oldest_price in product details
* add average price to product card
* hint for recipe costs not included if not in stock
* Round value and factor_purchas_amount. Include currency for stock value
* Add factor_purchase_amount to product card stock amount
* Allow editing qu_factor_purchase_to_stock for stock entries
* fix update qu_factor_purchase_to_stock for Transfers
* Add barcode to existing product update to add to product_barcodes table
* Add barcode to new product workflow update to add to product_barcodes table
* *** Price now saved as 1 QU to stock in stock tables ***
* remove column product barcode and use product_barcodes
* Allow products to be deactivated instead of deleted
* Embedded barcode and qu-conversion with page reload on change
* Save current product barcode into new product_barcodes table
* Embedded popup for product group add/edit
* barcode scanner added to product barcodes input
* Edit product qu_stock is unavailable after first purchase
* StockOverview: Filters break when columns are reordered so for now just disable colReorder
* view stockoverview.blade: display product_group column
* Review
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* use singletons to reduce need to recreate the same objects
* unable to make the constructor private
* comment out debug printing to log file
* correct typo of treating self() as a var instead of a function
* utilise Localisation service as a singleton
* fix errent line that should have been commented
* remove phpinfo
* correct mistake in stock controller
* try storing app in apcu
* serialise inside the app closures
* get timings for db-changed-time
* get timings for db-changed-time
* store localisation service in apcu
* stor translations in apcu instead of localisation service (due to database connection)
* correct syntax error
* forgot to uncomment instance map
* correct indentation and variable out of scope
* more timings for app execution time
* try apc caching for views
* correct scope for Pot variable
* remove additional fopen
* correct timings for app build time
* correct timings for app object build time
* correct timings for app route build time
* get timings for routing timings
* get more in depth timings for routing loading
* fix more in depth timings for routing loading
* start investigating session auth middleware creation
* start investigating session auth middleware creation
* start investigating Login controller time
* start investigating Login controller time
* in depth look at Logincontroller timings
* comment out debug printing
* lazily obtain valus for page rendering
* correct syntax error
* correct scope of variable
* correct visibiity of methds inherited from BaseController
* missing use for Userfieldsservice
* lazy loading of open api spec
* lazy loading of users service
* lazy loading of batteries service
* lazy loading of services in controllers
* lazy loading of services in services
* correct mistake
* fix userservice
* fix userservice
* fix userfieldservice
* fix chores service
* fix calendar service
* remove Dockerfile used for development
* Remove docker compose file used for development
* Clean up app.php
* remove last diff
* Clean up base controller
* Clean up controllers
* lean up middleware
* Clean up and tuen all services into singletons
* remove debug from routes.php
* remove acpu from localisation
* Complete removal of acpu from localisation
* fixes for things broken
* More fixes following merge
* Fix for start up bug. Re factoring singleton code had brroken due to scope of clas var.
* fix bug where getUsersService is declared twice
* bug fixes following merge
* bug fixes following merge
* bug fixes following merge
* bug fixes following merge
* bug fixes following merge
* Fix all the not working things...
* Deleted off-topic files
* Deleted off-topic files
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
* refactor to be stock/entry/{entryId}
* Allow recipeform add productworkflow
* on document ready stockdetail filter based on ProductPicker
* openDate fixes for undo
* RefreshStockDetailRow refresh location-id