173 Commits

Author SHA1 Message Date
tsia
eb190537e9
Fixed Timezone in CalendarApiController (#763)
`PHP Warning:  DateTime::setTimezone() expects parameter 1 to be DateTimeZone, string given in /var/www/grocy/controllers/CalendarApiController.php on line 22`
2020-04-19 14:55:08 +02:00
Bernd Bestel
1390c65864
Show optionally an icon on the stock overview page if the product is already on the shopping list (closes #708) 2020-04-13 18:47:41 +02:00
Bernd Bestel
25be604b31
Also return userfields in generic object(s) GET API routes (closes #601) 2020-04-13 16:52:34 +02:00
Bernd Bestel
42e6a8ef94
Added new API endpoints to get all user and config settings (closes #718) 2020-04-13 10:35:20 +02:00
kriddles
2fee4b45ff
set default store for product, purchase set last store purchased if available or use product default (#672) 2020-03-27 19:27:40 +01:00
tsia
81d84d93e2
fixed missing class error in CalendarApiController (#669) 2020-03-27 17:44:29 +01:00
Immae
a45317aea1
Add shopping location for price tracking (#658) 2020-03-25 19:34:56 +01:00
Bernd Bestel
dcfd9d848d
Added changelog for #637 / #638 2020-03-22 09:27:49 +01:00
Marc Runkel
03eee1329c
Fix recipes page (#638)
* My config

* Add check to see if any recipe is selected

* Add check to see if a recipe is actually selected

Co-authored-by: Marc Runkel <marc.runkel@plusforta.de>
2020-03-22 09:24:49 +01:00
Bernd Bestel
f1496894b5
Fixed adding new chores did not work (references #479) 2020-03-06 21:01:41 +01:00
Bernd Bestel
c38c519b18
Fixed that images did not work after merging #479 2020-03-01 19:48:08 +01:00
zebardy
1a5f3ce926
Convert services to singletons and use lazy loading to improve performance (#479)
* 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>
2020-03-01 17:47:47 +01:00
Bernd Bestel
5dd78aa19a
Remove accidentally added function 2020-02-11 19:36:15 +01:00
Bernd Bestel
d4fa1a64c2
Upgrade Slim Framework to v4 (closes #561) 2020-02-11 17:42:03 +01:00
kriddles
c5f38689fa
Include product_group in recipe ingredient list (#556)
* Include product_group in recipe ingredient list

* Delete 0098.sql

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-02-10 18:04:57 +01:00
Bernd Bestel
6b8169a1f1
Changelog and small changes for #557) 2020-02-10 18:00:42 +01:00
kriddles
898ea26139
Recipe Overview recipePositionsResolved should only include normal recipes (#557) 2020-02-10 17:56:52 +01:00
Bernd Bestel
35eb976706
Don't show nested-resolved recipe ingredients of the selected recipe 2020-02-04 19:49:09 +01:00
Bernd Bestel
23efe0c87a
Added an option to hide the calendar on the shopping list (closes #531) 2020-02-01 12:55:12 +01:00
Bernd Bestel
eaacca61c2
Order product picker list by name on the recipe edit page (references #520) 2020-01-28 20:58:35 +01:00
Bernd Bestel
0e41500a63
Properly check for any boolean value query parameter 2020-01-27 22:20:20 +01:00
Bernd Bestel
e84c7063d3
Consume any subproduct when consuming a recipe ingredient which is not in stock (fixes #446) 2020-01-27 22:14:11 +01:00
Bernd Bestel
4c1c971f6d
Rename /stockedit and /stockdetail to match the "naming conventions" (references #421) 2020-01-27 19:19:09 +01:00
Bernd Bestel
05aceb72ae
Squashed commit
- 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
2020-01-27 19:00:49 +01:00
Bernd Bestel
e111d07f4e
Added the ability to directly add products to the meal plan (closes #450) 2020-01-25 11:51:00 +01:00
Bernd Bestel
fd5a72264d
Meal plan recipe and notes also fit into one table (references #477) 2020-01-23 21:57:47 +01:00
Bernd Bestel
8d7f985b59
Make it possible to add notes to meal plan (days) (closes #477) 2020-01-23 20:59:19 +01:00
Bernd Bestel
469dcefc7a
Don't show not listable entites in Swagger UI (fixes #510) 2020-01-23 20:05:44 +01:00
Bernd Bestel
99d4b05a3c
Make purchased date on /stockedit editable / Dirty workaround for 2 datetimepickers on the same page (references #506) 2020-01-23 18:58:05 +01:00
kriddles
ef9f28d154 421 (#507)
* 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
2020-01-22 21:08:49 +01:00
Bernd Bestel
c22496ca7c
Fixed /stockedit opened checkbox (references #506) 2020-01-21 20:04:33 +01:00
Bernd Bestel
f543a3a472
Fixed and optimized some things related to #421 (& some more cleanup) 2020-01-21 17:30:09 +01:00
kriddles
2a608c41e9 Stock detail updates (#493)
* Fix spelling

* stockdetail refresh with location name

* Stock updates

* change stock_row_id to id

* fix stockdetail refresh rows after clicking undo

* fix stockdetail consume spoiled
2020-01-17 17:54:34 +01:00
Bernd Bestel
a8cf5ae9ab
Handle demo mode via a setting instead of checking the existence of a file (closes #484) 2020-01-05 09:11:11 +01:00
kriddles
6c7420ea08 Stock Service Updates (#421)
* 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
2019-12-19 19:48:36 +01:00
kriddles
c6ae8cc348 Calendar descriptions (iCal export) (#417)
* controllers CalendarApiController: setDescription for events

* services CalendarService: include link to mealplan in calendar descriptions
2019-10-12 10:16:06 +02:00
Bernd Bestel
cf3217ada4
Fixed expired products count on stock overview page (fixes #392) 2019-09-26 16:42:59 +02:00
Lewis Juggins
fd14083443 Support meal plan as default page (#383)
* Support meal plan as default page

* Update SystemController.php
2019-09-25 13:08:41 +02:00
Bernd Bestel
04808eaa66
Include the server timezone in iCal calendar export (closes #379) 2019-09-25 09:52:32 +02:00
Bernd Bestel
5351828e79
Reuse existing shopping list items when adding products from the stock overview page (closes #375) 2019-09-24 18:27:50 +02:00
Bernd Bestel
49b26bd375
Return a Cache-Control header for files served via the API 2019-09-24 10:38:41 +02:00
Bernd Bestel
c32ea087df
Added a little barcode scanner testing page (references #362) 2019-09-21 20:01:49 +02:00
Bernd Bestel
b57fd83cb8
Fixed various smaller problems after some testing 2019-09-21 13:08:42 +02:00
Bernd Bestel
327c1f4fb3
Fixed meal plan did not load when a containing recipe was deleted (closes #361) 2019-09-21 09:18:40 +02:00
Bernd Bestel
c228126c3a
Added a new field calories for products (closes #268) 2019-09-20 20:06:24 +02:00
Bernd Bestel
a95d6be4f4
Added more product actions on the stock overview page (closes #327) 2019-09-20 13:37:53 +02:00
Bernd Bestel
ca9b8d068a
Reuse existing routes for the by-barcode API routes and complete them (references #331) 2019-09-20 10:45:58 +02:00
Bernd Bestel
58a69d650f
Added an API endpoint to add/remove products to stock by its barcode (closes #331) 2019-09-19 18:36:46 +02:00
Bernd Bestel
346b589534
Make it possible to test quantity unit plural forms (closes #261) 2019-09-18 20:21:09 +02:00
Bernd Bestel
096fb7a116
Implement custom entities / objects (closes #242) 2019-09-18 16:18:15 +02:00