diff --git a/InvenTree/common/models.py b/InvenTree/common/models.py index 1434bba95e..11157763cb 100644 --- a/InvenTree/common/models.py +++ b/InvenTree/common/models.py @@ -842,6 +842,13 @@ class InvenTreeSetting(BaseInvenTreeSetting): 'validator': bool, }, + 'BARCODE_WEBCAM_SUPPORT': { + 'name': _('Barcode Webcam Support'), + 'description': _('Allow barcode scanning via webcam in browser'), + 'default': True, + 'validator': bool, + }, + 'PART_IPN_REGEX': { 'name': _('IPN Regex'), 'description': _('Regular expression pattern for matching Part IPN') diff --git a/InvenTree/part/test_part.py b/InvenTree/part/test_part.py index b86e0acecc..5932c36757 100644 --- a/InvenTree/part/test_part.py +++ b/InvenTree/part/test_part.py @@ -91,11 +91,23 @@ class TemplateTagTest(TestCase): def test_global_settings(self): result = inventree_extras.global_settings() - self.assertEqual(len(result), 61) + self.assertEqual(len(result), len(InvenTreeSetting.SETTINGS)) def test_visible_global_settings(self): result = inventree_extras.visible_global_settings() - self.assertEqual(len(result), 60) + + n = len(result) + + n_hidden = 0 + n_visible = 0 + + for val in InvenTreeSetting.SETTINGS.values(): + if val.get('hidden', False): + n_hidden += 1 + else: + n_visible += 1 + + self.assertEqual(n, n_visible) class PartTest(TestCase): diff --git a/InvenTree/templates/InvenTree/settings/barcode.html b/InvenTree/templates/InvenTree/settings/barcode.html index 8532476b75..ea45455203 100644 --- a/InvenTree/templates/InvenTree/settings/barcode.html +++ b/InvenTree/templates/InvenTree/settings/barcode.html @@ -13,6 +13,7 @@