Persist tape printer settings alongside sheet defaults
This commit is contained in:
1 parent
f86efd875d
commit
6433f1b172
1 file changed
+21
-2
+21
-2
@@ -15,7 +15,7 @@ Routes:
|
|||||||
/admin/labels/print the printable sheet
|
/admin/labels/print the printable sheet
|
||||||
/admin/labels/print.pdf same sheet as a PDF (ReportLab only)
|
/admin/labels/print.pdf same sheet as a PDF (ReportLab only)
|
||||||
/admin/labels/categories manage the taxonomy
|
/admin/labels/categories manage the taxonomy
|
||||||
/admin/labels/settings API key and print defaults
|
/admin/labels/settings API key, print defaults, tape printer
|
||||||
|
|
||||||
Created by: Jess Rogerson (yelling commands at Claude.AI)
|
Created by: Jess Rogerson (yelling commands at Claude.AI)
|
||||||
"""
|
"""
|
||||||
@@ -32,7 +32,7 @@ from app import db
|
|||||||
from app.models.part_label import PartCategory, PartLabel, slugify
|
from app.models.part_label import PartCategory, PartLabel, slugify
|
||||||
from app.models.site_setting import SiteSetting
|
from app.models.site_setting import SiteSetting
|
||||||
from app.routes.admin import admin_required
|
from app.routes.admin import admin_required
|
||||||
from app.services import label_render
|
from app.services import label_render, tape_printer
|
||||||
from app.services.part_catalog import (RebrickableAPI, cache_part_image,
|
from app.services.part_catalog import (RebrickableAPI, cache_part_image,
|
||||||
ensure_seeded, seed_categories)
|
ensure_seeded, seed_categories)
|
||||||
|
|
||||||
@@ -418,6 +418,19 @@ def settings():
|
|||||||
or label_render.DEFAULT_PRESET)
|
or label_render.DEFAULT_PRESET)
|
||||||
SiteSetting.set('label_offset_x', request.form.get('offset_x') or '0')
|
SiteSetting.set('label_offset_x', request.form.get('offset_x') or '0')
|
||||||
SiteSetting.set('label_offset_y', request.form.get('offset_y') or '0')
|
SiteSetting.set('label_offset_y', request.form.get('offset_y') or '0')
|
||||||
|
|
||||||
|
# Brother VC-500W (or any AirPrint label printer) over IPP
|
||||||
|
SiteSetting.set('tape_printer_host',
|
||||||
|
(request.form.get('tape_printer_host') or '').strip())
|
||||||
|
SiteSetting.set('tape_printer_port',
|
||||||
|
(request.form.get('tape_printer_port') or '631').strip())
|
||||||
|
SiteSetting.set('tape_printer_path',
|
||||||
|
(request.form.get('tape_printer_path')
|
||||||
|
or '/ipp/print').strip())
|
||||||
|
SiteSetting.set('tape_printer_format',
|
||||||
|
(request.form.get('tape_printer_format') or '').strip())
|
||||||
|
SiteSetting.set('tape_default',
|
||||||
|
request.form.get('tape_default') or tape_printer.DEFAULT_TAPE)
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
flash('Label settings saved.', 'success')
|
flash('Label settings saved.', 'success')
|
||||||
return redirect(url_for('labels.settings'))
|
return redirect(url_for('labels.settings'))
|
||||||
@@ -433,4 +446,10 @@ def settings():
|
|||||||
offset_x=SiteSetting.get('label_offset_x', '0'),
|
offset_x=SiteSetting.get('label_offset_x', '0'),
|
||||||
offset_y=SiteSetting.get('label_offset_y', '0'),
|
offset_y=SiteSetting.get('label_offset_y', '0'),
|
||||||
pdf_available=label_render.reportlab_available(),
|
pdf_available=label_render.reportlab_available(),
|
||||||
|
tapes=tape_printer.TAPE_PRESETS,
|
||||||
|
tape_printer_host=SiteSetting.get('tape_printer_host', '') or '',
|
||||||
|
tape_printer_port=SiteSetting.get('tape_printer_port', '631') or '631',
|
||||||
|
tape_printer_path=SiteSetting.get('tape_printer_path', '/ipp/print') or '/ipp/print',
|
||||||
|
tape_printer_format=SiteSetting.get('tape_printer_format', '') or '',
|
||||||
|
tape_default=SiteSetting.get('tape_default', tape_printer.DEFAULT_TAPE),
|
||||||
)
|
)
|
||||||
Reference in new issue
Block a user