diff --git a/README.md b/README.md index b47bc29e..ad3f2f59 100644 --- a/README.md +++ b/README.md @@ -123,7 +123,9 @@ Example: Button "**P** Add as new product" can be "pressed" by using the `P` key ### Barcode lookup via external services Products can be directly added to the database via looking them up against external services by a barcode. -This is currently only possible through the REST API. + +This can be done in-place using the product picker workflow "External barcode lookup (via plugin)" (the workflow dialog is displayed when entering something unknown in any product input field). + There is no plugin included for any service, see the reference implementation in `data/plugins/DemoBarcodeLookupPlugin.php`. ### Database migrations diff --git a/changelog/75_UNRELEASED_xxxx-xx-xx.md b/changelog/75_UNRELEASED_xxxx-xx-xx.md new file mode 100644 index 00000000..7396b76d --- /dev/null +++ b/changelog/75_UNRELEASED_xxxx-xx-xx.md @@ -0,0 +1,60 @@ +> ⚠️ xxxBREAKING CHANGESxxx + +> ❗ xxxImportant upgrade informationXXX + +> 💡 xxxMinor upgrade informationXXX + +### New feature: xxxx + +- xxx + +### Stock + +- Added a new product picker workflow "External barcode lookup (via plugin)" + - This executes the configured barcode lookup plugin with the given barcode + - If the lookup was successful, the product edit page of the created product is displayed, where the product setup can be completed (if required) + - After that, the transaction is continued with that product + +### Shopping list + +- xxx + +### Recipes + +- xxx + +### Meal plan + +- xxx + +### Chores + +- xxx + +### Calendar + +- xxx + +### Tasks + +- xxx + +### Batteries + +- xxx + +### Equipment + +- xxx + +### Userfields + +- xxx + +### General + +- xxx + +### API + +- xxx diff --git a/public/viewjs/components/productpicker.js b/public/viewjs/components/productpicker.js index 42ff0c53..f6371792 100644 --- a/public/viewjs/components/productpicker.js +++ b/public/viewjs/components/productpicker.js @@ -249,8 +249,8 @@ $('#product_id_text_input').on('blur', function(e) Grocy.Components.ProductPicker.PopupOpen = false; window.location.href = U('/product/new?flow=InplaceNewProductWithBarcode&barcode=' + encodeURIComponent(input) + '&returnto=' + encodeURIComponent(Grocy.CurrentUrlRelative + "?flow=InplaceAddBarcodeToExistingProduct&barcode=" + input + "&" + embedded) + "&" + embedded); } - } - /*barcodepluginlookup: { + }, + barcodepluginlookup: { label: 'E ' + __t('External barcode lookup (via plugin)'), className: 'btn-dark add-new-product-plugin-dialog-button responsive-button ' + addProductWorkflowsAdditionalCssClasses, callback: function() @@ -275,7 +275,7 @@ $('#product_id_text_input').on('blur', function(e) } ); } - }*/ + } }; if (!Grocy.FeatureFlags.GROCY_FEATURE_FLAG_DISABLE_BROWSER_BARCODE_CAMERA_SCANNING)