Commit Graph

609 Commits

Author SHA1 Message Date
Katharina Bogad
7f598058bf i18n: static pot to json compilation
Translations aren't embedded on every page load anymore;
this saves roughly 55kB on every single request, because
these can now be cached.
2021-06-20 23:12:17 +02:00
Katharina Bogad
64b8195f62 viewjs: Code deduplication, Grocy. -> GrocyConfig. 2021-06-20 13:06:15 +02:00
Katharina Bogad
3b342f90db viewjs: extract functions for DataTable Initialisation
Also revert back to use rollup-plugin-css-porter,
because rollup-postcss has issues and also doesn't work.
2021-06-20 09:17:11 +02:00
Katharina Bogad
f7bc6a3f6d Modernize Javascript
This *absolute commit monster* does the following things:

- Introduce gulp to build javascript and css files.

  This includes moving node_modules out of the public/ folder.
  Use `gulp --tasks` to get a list of all tasks; however some
  of them are automatically generated.

  Use `gulp live` to watch for changes and automatically recompile
  what's needed.

- Upgrade to yarn2
- Upgrade FullCalendar to 4.4.2

  I know that 5.x is the current version, but two major version upgrades
  are too much right now. Also v5 would break any custom css as they
  renamed a bunch of classes.

- Move Styles to sass

  (Most) global styles are now included in one sass file. This also
  means that we now compile our own bootstrap.

- Javascript is now in strict mode

  Because everything is a module now, `use strict` is now in effect
  for all javascript files. There are probably still some parts left
  where implicit variable declarations were used.

- grocy*.js were split up in modules.

  `window.Grocy` is now an instance of GrocyClass. API-wise nothing
  has changed (albeit some functions were added regarding Undo actions)
  At the Moment, this leaks a whole bunch of functions into window
  (that was easier than tracking those down).

- FindObjectIn... style functions were removed.

  Array.prototype.find and Array.prototype.filter suffice.

- Use babel to preprocess javascript.
- Use rollup to bundle javascript.

  rollup bundles and tree-shakes es6 javascript bundles.
  It also allows to "import" css files and generate css
  files specific to this javascript file. This is used
  in viewjs scripts, for example when importing FullCalendar,
  to generate an associated viewcss file.

- Use postcss to post-process css files.

  postcss uses autoprefixer to handle browser compatiblity.
  Internally this uses the package `browserslist`; and is currently
  configured to the default setting.

- Minify assets when building in production

  `gulp publish` builds all assets in production mode, that is,
  the assets get minified. This includes javascript as well as
  css files.

- css bundling

  concatCss is used to pull @imports of non-sass-files into one
  grocy.css

- animate.css is now in the main bundle

  animate.css was used in so many places that it is now located
  in the main style bundle.
2021-06-18 12:44:39 +02:00
Katharina Bogad
2471e78188
Grocycode, label printing (#1500)
* 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>
2021-06-12 17:21:12 +02:00
rozgonik
980778e599
Fix untranslateable hint values (#1435) 2021-03-31 22:14:42 +02:00
Bernd Bestel
c483c34598
Display calories always per single serving (fixes #1359) 2021-02-21 20:57:34 +01:00
Bernd Bestel
5583074001
Don't initialise numeric Userfields with 1.0 (fixes #1312) 2021-02-21 19:14:49 +01:00
Bernd Bestel
2aca551692
Fixed product page QU conversion hint pluralisation (fixes #1352) 2021-02-21 18:24:04 +01:00
Lauri Niskanen
0a6c7d73a7
Hide unsuitable fields from printed recipe pages (#1332)
* Hide unsuitable fields from printed recipe pages

Resolves #1330.

* Use proper total energy label in the recipe page
2021-02-14 12:55:01 +01:00
Bernd Bestel
a455a01204
Fixed print layout display handling (fixes #1272) 2021-01-30 13:11:40 +01:00
Bernd Bestel
d78e156609
Use barcode defaults also for scan mode (fixes #1253) 2021-01-04 21:15:22 +01:00
Bernd Bestel
a646f2c6bd
Fixed included recipe missing amount resolving (references #1252) 2021-01-03 22:40:33 +01:00
Bernd Bestel
65f0253307
Fixed product form min tare weight 2021-01-03 16:22:58 +01:00
Bernd Bestel
966211b71a
Fixed shopping list product userfields (fixes #1246) 2021-01-02 17:30:28 +01:00
Bernd Bestel
43ef9b793b
Fixed chore form weekly day selection labels (fixes #1242) 2021-01-01 14:31:49 +01:00
Bernd Bestel
97b93f23bd
Fixed/unified shopping list item button tooltips (fixes #1239) 2020-12-31 13:09:55 +01:00
Bernd Bestel
9f1692e31f
Improved shopping list item form validation (closes #1226) 2020-12-29 21:06:31 +01:00
Bernd Bestel
278a5f004a
Fix consuming when FEATURE_FLAG_STOCK_LOCATION_TRACKING is disabled (fixes #1229) 2020-12-29 18:06:56 +01:00
Bernd Bestel
6fcc0636e8
Optimized textarea heights 2020-12-27 09:38:31 +01:00
Bernd Bestel
2e3c237648
Fixed zero decimals handling (fixes #1213) 2020-12-23 19:56:37 +01:00
Bernd Bestel
cf05be35fe
Fix default for product option "Never show on stock overview" (fixes #1212) 2020-12-22 19:10:02 +01:00
Bernd Bestel
937bd6b702
Fixed camera scanning targets (fixes #1210) 2020-12-22 19:06:41 +01:00
Bernd Bestel
b42bcaaa44
Hide price decimals setting when FEATURE_FLAG_STOCK_PRICE_TRACKING is disabled 2020-12-22 16:24:13 +01:00
Bernd Bestel
c1ac9e8a45
Optimized/clarified new "Hide product from stock overview" option (references #906) 2020-12-21 20:43:10 +01:00
Bernd Bestel
694b78f72a
Optimized GROCY_FEATURE_FLAG_STOCK handling (closes #966) 2020-12-21 20:13:49 +01:00
Bernd Bestel
7478d9bb38
Removed RTL CSS handling (not needed until we have full RTL support) 2020-12-21 19:36:20 +01:00
Bernd Bestel
cf299a3d0b
Optimized file save/delete handling 2020-12-21 19:16:14 +01:00
Bernd Bestel
5953e42d70
Updated icons 2020-12-21 19:04:48 +01:00
Bernd Bestel
431a2ab9f7
Added new Userfield type "Link (with title)" (closes #790) 2020-12-21 17:57:48 +01:00
Bernd Bestel
e97fccd03a
Optimized shopping list header 2020-12-21 16:29:39 +01:00
Bernd Bestel
01306bc1ae
Fixed product barcodes table display when FEATURE_FLAG_STOCK_PRICE_TRACKING is disabled (fixes #1202) 2020-12-21 09:54:20 +01:00
Bernd Bestel
360f25ec44
Make the new user picture a little bigger (references #1158) 2020-12-21 09:49:40 +01:00
Bernd Bestel
3b1f8cba70
Moved the new copy/merge products buttons in a dropdown menu 2020-12-21 09:30:19 +01:00
Bernd Bestel
2b13102299
Implemented Userfields for users (closes #1159) 2020-12-20 22:16:58 +01:00
Bernd Bestel
8f1ce607f7
Implemented user pictures (closes #1158) 2020-12-20 22:08:50 +01:00
Bernd Bestel
c9b5e14473
Make it possible to merge products (closes #243) 2020-12-20 20:58:22 +01:00
Bernd Bestel
dadf93a94c
Merge used libraries for Barcode/QR-Code generation 2020-12-20 19:53:28 +01:00
Bernd Bestel
1d16021404
Show barcode as barcode-image on shopping list (closes #1133) 2020-12-20 19:31:12 +01:00
Robert Resch
6ec3743d12
fix missing > (#1201) 2020-12-20 16:02:33 +01:00
Bernd Bestel
6eaee0c6f9
Fixed number display for quick consume buttons 2020-12-20 15:02:22 +01:00
Bernd Bestel
b2d7003335
Performance optimizations 2020-12-20 10:44:19 +01:00
Bernd Bestel
76e4a1578c
Added Default store as a column to the shopping list (closes #957) 2020-12-20 10:26:02 +01:00
Bernd Bestel
268b8e87d7
Make it possible to hide chores/batteries (closes #1069) 2020-12-20 10:19:44 +01:00
Bernd Bestel
832141a718
Made the shopping list print view configurable (closes #740) 2020-12-19 23:57:33 +01:00
Bernd Bestel
77e842a736
Fixed shopping list print button when FEATURE_FLAG_SHOPPINGLIST_MULTIPLE_LISTS was disabled (references #1199) 2020-12-19 23:00:07 +01:00
Bernd Bestel
f5e0709913
Added columns for last price on shopping list (closes #410) 2020-12-19 17:55:49 +01:00
Bernd Bestel
250b308d5d
Support -1 for "Default due days after freezing" (closes #846) 2020-12-19 17:32:47 +01:00
Bernd Bestel
362b3f8508
Added min. stock amount column to stock overview (closes #856) 2020-12-19 17:25:13 +01:00
Bernd Bestel
3ad5f2cac5
Added a note field to product barcodes (closes #962) 2020-12-19 17:20:54 +01:00