2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-07-02 11:40:58 +00:00

add user setting to select a default label printer (#4349) (#4362)

This commit is contained in:
simonkuehling
2023-02-20 21:24:11 +01:00
committed by GitHub
parent 75ca325892
commit 17bfea4428
3 changed files with 23 additions and 1 deletions

View File

@ -46,6 +46,7 @@ import InvenTree.ready
import InvenTree.tasks
import InvenTree.validators
import order.validators
from plugin import registry
logger = logging.getLogger('inventree')
@ -1628,6 +1629,15 @@ class InvenTreeSetting(BaseInvenTreeSetting):
return False
def label_printer_options():
"""Build a list of available label printer options."""
printers = [('', _('No Printer (Export to PDF)'))]
label_printer_plugins = registry.with_mixin('labels')
if label_printer_plugins:
printers.extend([(p.slug, p.name + ' - ' + p.human_name) for p in label_printer_plugins])
return printers
class InvenTreeUserSetting(BaseInvenTreeSetting):
"""An InvenTreeSetting object with a usercontext."""
@ -1781,6 +1791,13 @@ class InvenTreeUserSetting(BaseInvenTreeSetting):
'validator': bool,
},
"LABEL_DEFAULT_PRINTER": {
'name': _('Default label printer'),
'description': _('Configure which label printer should be selected by default'),
'default': '',
'choices': label_printer_options
},
"REPORT_INLINE": {
'name': _('Inline report display'),
'description': _('Display PDF reports in the browser, instead of downloading as a file'),