zebra-day 1.0.2__py3-none-any.whl → 2.1.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- zebra_day/__init__.py +7 -2
- zebra_day/_version.py +1 -0
- zebra_day/cli/__init__.py +80 -30
- zebra_day/cli/cognito.py +15 -9
- zebra_day/cli/gui.py +101 -13
- zebra_day/cli/printer.py +34 -27
- zebra_day/cli/template.py +19 -15
- zebra_day/cmd_mgr.py +3 -6
- zebra_day/docs/gx420d-gx430d-ug-en.pdf +0 -0
- zebra_day/docs/hardware_config_guide.md +149 -0
- zebra_day/docs/programatic_guide.md +181 -0
- zebra_day/docs/qln420_zebra_manual.pdf +0 -0
- zebra_day/docs/uid_screed_light.md +38 -0
- zebra_day/docs/zd620-zd420-ug-en.pdf +0 -0
- zebra_day/docs/zebra_day_ui_guide.md +194 -0
- zebra_day/etc/printer_config.json +5 -11
- zebra_day/etc/printer_config.template.json +5 -11
- zebra_day/etc/tmp_printers120.json +10 -0
- zebra_day/etc/tmp_printers139.json +10 -0
- zebra_day/etc/tmp_printers145.json +10 -0
- zebra_day/etc/tmp_printers147.json +10 -0
- zebra_day/etc/tmp_printers207.json +10 -0
- zebra_day/etc/tmp_printers34.json +10 -0
- zebra_day/etc/tmp_printers389.json +10 -0
- zebra_day/etc/tmp_printers398.json +10 -0
- zebra_day/etc/tmp_printers437.json +10 -0
- zebra_day/etc/tmp_printers439.json +10 -0
- zebra_day/etc/tmp_printers440.json +10 -0
- zebra_day/etc/tmp_printers469.json +10 -0
- zebra_day/etc/tmp_printers485.json +10 -0
- zebra_day/etc/tmp_printers508.json +10 -0
- zebra_day/etc/tmp_printers531.json +10 -0
- zebra_day/etc/tmp_printers540.json +10 -0
- zebra_day/etc/tmp_printers542.json +10 -0
- zebra_day/etc/tmp_printers543.json +10 -0
- zebra_day/etc/tmp_printers552.json +10 -0
- zebra_day/etc/tmp_printers715.json +10 -0
- zebra_day/etc/tmp_printers835.json +10 -0
- zebra_day/etc/tmp_printers842.json +10 -0
- zebra_day/etc/tmp_printers931.json +10 -0
- zebra_day/etc/tmp_printers969.json +10 -0
- zebra_day/etc/tmp_printers972.json +10 -0
- zebra_day/exceptions.py +1 -1
- zebra_day/files/blank_preview.png +0 -0
- zebra_day/files/corners_20cmX30cm_preview.png +0 -0
- zebra_day/files/corners_smallTube_preview.png +0 -0
- zebra_day/files/generic_2inX1in_preview.png +0 -0
- zebra_day/files/test_png_12020.png +0 -0
- zebra_day/files/test_png_12352.png +0 -0
- zebra_day/files/test_png_15472.png +0 -0
- zebra_day/files/test_png_24493.png +0 -0
- zebra_day/files/test_png_2897.png +0 -0
- zebra_day/files/test_png_30069.png +0 -0
- zebra_day/files/test_png_31690.png +0 -0
- zebra_day/files/test_png_33804.png +0 -0
- zebra_day/files/test_png_34737.png +0 -0
- zebra_day/files/test_png_4161.png +0 -0
- zebra_day/files/test_png_44748.png +0 -0
- zebra_day/files/test_png_4635.png +0 -0
- zebra_day/files/test_png_47791.png +0 -0
- zebra_day/files/test_png_47799.png +0 -0
- zebra_day/files/test_png_55588.png +0 -0
- zebra_day/files/test_png_56349.png +0 -0
- zebra_day/files/test_png_58809.png +0 -0
- zebra_day/files/test_png_5936.png +0 -0
- zebra_day/files/test_png_64110.png +0 -0
- zebra_day/files/test_png_64891.png +0 -0
- zebra_day/files/test_png_67242.png +0 -0
- zebra_day/files/test_png_69002.png +0 -0
- zebra_day/files/test_png_70065.png +0 -0
- zebra_day/files/test_png_72366.png +0 -0
- zebra_day/files/test_png_77793.png +0 -0
- zebra_day/files/test_png_89893.png +0 -0
- zebra_day/files/test_png_9572.png +0 -0
- zebra_day/files/tube_20mmX30mmA_preview.png +0 -0
- zebra_day/imgs/.hold +0 -0
- zebra_day/imgs/bar_ltpurp.png +0 -0
- zebra_day/imgs/bar_purp.png +0 -0
- zebra_day/imgs/bar_purp3.png +0 -0
- zebra_day/imgs/bar_red.png +0 -0
- zebra_day/imgs/legacy/UBC_gantt_chart.png +0 -0
- zebra_day/imgs/legacy/gx420d_network_config.png +0 -0
- zebra_day/imgs/legacy/gx420d_printer_config.png +0 -0
- zebra_day/imgs/legacy/ngrok.png +0 -0
- zebra_day/imgs/legacy/printer_details.png +0 -0
- zebra_day/imgs/legacy/quick_start_test_label.png +0 -0
- zebra_day/imgs/legacy/quick_start_test_label2.png +0 -0
- zebra_day/imgs/legacy/zd620_network_config.png +0 -0
- zebra_day/imgs/legacy/zd620_printer_config.png +0 -0
- zebra_day/imgs/legacy/zday_quick_gui.png +0 -0
- zebra_day/imgs/legacy/zebra_day_alt_css_dog.png +0 -0
- zebra_day/imgs/legacy/zebra_day_alt_css_flower.png +0 -0
- zebra_day/imgs/legacy/zebra_day_alt_css_main.png +0 -0
- zebra_day/imgs/legacy/zebra_day_available_zpl_templates.png +0 -0
- zebra_day/imgs/legacy/zebra_day_bkup_pconfig.png +0 -0
- zebra_day/imgs/legacy/zebra_day_home.png +0 -0
- zebra_day/imgs/legacy/zebra_day_manual_print.png +0 -0
- zebra_day/imgs/legacy/zebra_day_printer_fleet_json.png +0 -0
- zebra_day/imgs/legacy/zebra_day_quick_ex.png +0 -0
- zebra_day/imgs/legacy/zebra_day_zpl_template_IRLa.png +0 -0
- zebra_day/imgs/legacy/zebra_day_zpl_template_IRLb.png +0 -0
- zebra_day/imgs/ui_api_docs.png +0 -0
- zebra_day/imgs/ui_config.png +0 -0
- zebra_day/imgs/ui_dashboard.png +0 -0
- zebra_day/imgs/ui_print_request.png +0 -0
- zebra_day/imgs/ui_printers.png +0 -0
- zebra_day/imgs/ui_templates.png +0 -0
- zebra_day/logging_config.py +4 -9
- zebra_day/mkcert.py +157 -0
- zebra_day/paths.py +1 -2
- zebra_day/print_mgr.py +261 -185
- zebra_day/templates/modern/config.html +7 -0
- zebra_day/templates/modern/config_backups.html +59 -0
- zebra_day/templates/modern/config_editor.html +95 -0
- zebra_day/templates/modern/config_new.html +93 -0
- zebra_day/templates/modern/print_request.html +70 -8
- zebra_day/templates/modern/printer_detail.html +161 -34
- zebra_day/templates/modern/printers.html +17 -6
- zebra_day/templates/modern/template_editor.html +7 -4
- zebra_day/web/__init__.py +1 -1
- zebra_day/web/app.py +99 -17
- zebra_day/web/auth.py +17 -15
- zebra_day/web/middleware.py +8 -5
- zebra_day/web/routers/__init__.py +0 -1
- zebra_day/web/routers/api.py +330 -31
- zebra_day/web/routers/ui.py +174 -591
- zebra_day/zpl_renderer.py +45 -34
- {zebra_day-1.0.2.dist-info → zebra_day-2.1.4.dist-info}/METADATA +144 -74
- zebra_day-2.1.4.dist-info/RECORD +240 -0
- zebra_day/bin/fetch_zebra_config.py +0 -15
- zebra_day/bin/generate_coord_grid_zpl.py +0 -50
- zebra_day/bin/print_zpl_from_file.py +0 -21
- zebra_day/bin/probe_new_label_dimensions.py +0 -75
- zebra_day/bin/scan_for_networed_zebra_printers.py +0 -23
- zebra_day/bin/scan_for_networed_zebra_printers_arp_scan.sh +0 -1
- zebra_day/bin/scan_for_networed_zebra_printers_curl.sh +0 -30
- zebra_day/bin/zserve.py +0 -1062
- zebra_day/templates/base.html +0 -36
- zebra_day/templates/bpr.html +0 -72
- zebra_day/templates/build_new_config.html +0 -36
- zebra_day/templates/build_print_request.html +0 -32
- zebra_day/templates/chg_ui_style.html +0 -19
- zebra_day/templates/edit_template.html +0 -128
- zebra_day/templates/edit_zpl.html +0 -37
- zebra_day/templates/index.html +0 -82
- zebra_day/templates/legacy/base.html +0 -37
- zebra_day/templates/legacy/bpr.html +0 -72
- zebra_day/templates/legacy/build_new_config.html +0 -36
- zebra_day/templates/legacy/build_print_request.html +0 -32
- zebra_day/templates/legacy/chg_ui_style.html +0 -19
- zebra_day/templates/legacy/edit_template.html +0 -128
- zebra_day/templates/legacy/edit_zpl.html +0 -37
- zebra_day/templates/legacy/index.html +0 -82
- zebra_day/templates/legacy/list_prior_configs.html +0 -24
- zebra_day/templates/legacy/print_result.html +0 -30
- zebra_day/templates/legacy/printer_details.html +0 -25
- zebra_day/templates/legacy/printer_status.html +0 -70
- zebra_day/templates/legacy/save_result.html +0 -17
- zebra_day/templates/legacy/send_print_request.html +0 -34
- zebra_day/templates/legacy/simple_print.html +0 -94
- zebra_day/templates/legacy/view_pstation_json.html +0 -29
- zebra_day/templates/list_prior_configs.html +0 -24
- zebra_day/templates/print_result.html +0 -30
- zebra_day/templates/printer_details.html +0 -25
- zebra_day/templates/printer_status.html +0 -70
- zebra_day/templates/save_result.html +0 -17
- zebra_day/templates/send_print_request.html +0 -34
- zebra_day/templates/simple_print.html +0 -94
- zebra_day/templates/view_pstation_json.html +0 -29
- zebra_day-1.0.2.dist-info/RECORD +0 -179
- {zebra_day-1.0.2.dist-info → zebra_day-2.1.4.dist-info}/WHEEL +0 -0
- {zebra_day-1.0.2.dist-info → zebra_day-2.1.4.dist-info}/entry_points.txt +0 -0
- {zebra_day-1.0.2.dist-info → zebra_day-2.1.4.dist-info}/licenses/LICENSE +0 -0
- {zebra_day-1.0.2.dist-info → zebra_day-2.1.4.dist-info}/top_level.txt +0 -0
zebra_day/templates/base.html
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>{% block title %}Zebra Day{% endblock %}</title>
|
|
7
|
-
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
|
|
8
|
-
<link rel="stylesheet" href="/static/general.css">
|
|
9
|
-
<link rel="stylesheet" href="/{{ css_theme }}">
|
|
10
|
-
{% block extra_head %}{% endblock %}
|
|
11
|
-
</head>
|
|
12
|
-
<body>
|
|
13
|
-
<div id="spinner" class="spinner-hidden">
|
|
14
|
-
<div class="loader"></div>
|
|
15
|
-
</div>
|
|
16
|
-
|
|
17
|
-
<main>
|
|
18
|
-
{% block content %}{% endblock %}
|
|
19
|
-
</main>
|
|
20
|
-
|
|
21
|
-
<div style="position: fixed; border: 5px; bottom: 0; right: 0; padding: 8px; text-decoration: none;">
|
|
22
|
-
<a href="/chg_ui_style" style="font-size: 18px;" id="bottomRightLink">change ui style</a>
|
|
23
|
-
</div>
|
|
24
|
-
|
|
25
|
-
<script>
|
|
26
|
-
// Spinner logic for forms
|
|
27
|
-
document.querySelectorAll('form[id="myForm"]').forEach(function(form) {
|
|
28
|
-
form.addEventListener('submit', function(event) {
|
|
29
|
-
document.getElementById('spinner').classList.remove('spinner-hidden');
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
</script>
|
|
33
|
-
{% block extra_scripts %}{% endblock %}
|
|
34
|
-
</body>
|
|
35
|
-
</html>
|
|
36
|
-
|
zebra_day/templates/bpr.html
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Formulate Print Request, Step 1</h1>
|
|
7
|
-
<small><a href="/">home</a></small>
|
|
8
|
-
|
|
9
|
-
<h2>Select Lab + Printer + ZPL Template</h2>
|
|
10
|
-
<hr>
|
|
11
|
-
<p align="center">You will be prompted for the data to print on the next page</p>
|
|
12
|
-
|
|
13
|
-
<form name="bpr_form" action="/build_print_request" align="center">
|
|
14
|
-
<ul>
|
|
15
|
-
<li>
|
|
16
|
-
<label>Select a lab:</label>
|
|
17
|
-
<select id="labsDropdown" name="lab" onchange="populatePrinters()">
|
|
18
|
-
<option value="">Select Lab</option>
|
|
19
|
-
{% for lab in labs %}
|
|
20
|
-
<option value="{{ lab }}">{{ lab }}</option>
|
|
21
|
-
{% endfor %}
|
|
22
|
-
</select>
|
|
23
|
-
</li>
|
|
24
|
-
<li>
|
|
25
|
-
<label>Select a printer:</label>
|
|
26
|
-
<select id="printersDropdown" name="printer">
|
|
27
|
-
<option value="">Select Printer</option>
|
|
28
|
-
</select>
|
|
29
|
-
</li>
|
|
30
|
-
<li>
|
|
31
|
-
<label>Select a template:</label>
|
|
32
|
-
<select name="label_zpl_style">
|
|
33
|
-
<option value="">Select one</option>
|
|
34
|
-
<optgroup label="Stable Templates">
|
|
35
|
-
{% for template in stable_templates %}
|
|
36
|
-
<option value="{{ template }}">{{ template }}</option>
|
|
37
|
-
{% endfor %}
|
|
38
|
-
</optgroup>
|
|
39
|
-
<optgroup label="Draft Templates">
|
|
40
|
-
{% for template in draft_templates %}
|
|
41
|
-
<option value="{{ template }}">{{ template }}</option>
|
|
42
|
-
{% endfor %}
|
|
43
|
-
</optgroup>
|
|
44
|
-
</select>
|
|
45
|
-
</li>
|
|
46
|
-
</ul>
|
|
47
|
-
<br>
|
|
48
|
-
<input type="submit" value="Continue">
|
|
49
|
-
</form>
|
|
50
|
-
{% endblock %}
|
|
51
|
-
|
|
52
|
-
{% block extra_scripts %}
|
|
53
|
-
<script>
|
|
54
|
-
var labs = {{ labs_dict | safe }};
|
|
55
|
-
|
|
56
|
-
function populatePrinters() {
|
|
57
|
-
var lab = document.getElementById("labsDropdown").value;
|
|
58
|
-
var printersDropdown = document.getElementById("printersDropdown");
|
|
59
|
-
printersDropdown.innerHTML = '<option value="">Select Printer</option>';
|
|
60
|
-
|
|
61
|
-
if (lab && labs[lab]) {
|
|
62
|
-
for (var printer in labs[lab]) {
|
|
63
|
-
var option = document.createElement("option");
|
|
64
|
-
option.text = printer;
|
|
65
|
-
option.value = printer;
|
|
66
|
-
printersDropdown.add(option);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
</script>
|
|
71
|
-
{% endblock %}
|
|
72
|
-
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Scan Network For Zebra Printers</h1>
|
|
7
|
-
<small><a href="/">home</a></small>
|
|
8
|
-
<hr>
|
|
9
|
-
|
|
10
|
-
<p>This will probe for printers, and with all discovered printers will create a new printers JSON
|
|
11
|
-
and over-write the current fleet data for this lab.</p>
|
|
12
|
-
|
|
13
|
-
<form id="myForm" action="/probe_zebra_printers_add_to_printers_json">
|
|
14
|
-
<ul>
|
|
15
|
-
<li>
|
|
16
|
-
<label>Choose Existing, Or Enter New Lab Code:</label><br>
|
|
17
|
-
<input type="text" name="lab" list="lab_names" value="scan-results">
|
|
18
|
-
<datalist id="lab_names">
|
|
19
|
-
{% for lab in labs %}
|
|
20
|
-
<option value="{{ lab }}">{{ lab }}</option>
|
|
21
|
-
{% endfor %}
|
|
22
|
-
</datalist>
|
|
23
|
-
</li>
|
|
24
|
-
<li>
|
|
25
|
-
<label>Enter IP Root To Scan:</label><br>
|
|
26
|
-
<input type="text" value="{{ ip_root }}" name="ip_stub">
|
|
27
|
-
</li>
|
|
28
|
-
</ul>
|
|
29
|
-
<br>
|
|
30
|
-
<input type="submit" value="Scan Network">
|
|
31
|
-
</form>
|
|
32
|
-
|
|
33
|
-
<br>
|
|
34
|
-
<small><a href="/list_prior_printer_config_files">The current printers JSON will be backed up and can be found here.</a></small>
|
|
35
|
-
{% endblock %}
|
|
36
|
-
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Send Label Print Request</h1>
|
|
7
|
-
<small><a href="/">home</a></small>
|
|
8
|
-
<hr>
|
|
9
|
-
|
|
10
|
-
<h3>{{ lab }} .. {{ printer }} .. {{ printer_ip }} .. {{ label_zpl_style }}</h3>
|
|
11
|
-
<hr>
|
|
12
|
-
|
|
13
|
-
<form id="myForm" action="/_print_label">
|
|
14
|
-
<ul>
|
|
15
|
-
<li><label>UID for Barcode:</label> <input type="text" name="uid_barcode"></li>
|
|
16
|
-
<li><label>ALT-A:</label> <input type="text" name="alt_a"></li>
|
|
17
|
-
<li><label>ALT-B:</label> <input type="text" name="alt_b"></li>
|
|
18
|
-
<li><label>ALT-C:</label> <input type="text" name="alt_c"></li>
|
|
19
|
-
<li><label>ALT-D:</label> <input type="text" name="alt_d"></li>
|
|
20
|
-
<li><label>ALT-E:</label> <input type="text" name="alt_e"></li>
|
|
21
|
-
<li><label>ALT-F:</label> <input type="text" name="alt_f"></li>
|
|
22
|
-
</ul>
|
|
23
|
-
<br>
|
|
24
|
-
<label>Override Lab:</label> <input type="text" name="lab" value="{{ lab }}"><br>
|
|
25
|
-
<label>Override Printer:</label> <input type="text" name="printer" value="{{ printer }}"><br>
|
|
26
|
-
<label>Override IP:</label> <input type="text" name="printer_ip" value="{{ printer_ip }}"><br>
|
|
27
|
-
<label>Override label_style_zpl:</label> <input type="text" name="label_zpl_style" value="{{ label_zpl_style }}"><br>
|
|
28
|
-
<br>
|
|
29
|
-
<input type="submit" value="Print Label">
|
|
30
|
-
</form>
|
|
31
|
-
{% endblock %}
|
|
32
|
-
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Change The Zebra Day UI Style</h1>
|
|
7
|
-
<ul>
|
|
8
|
-
<small><a href="/">home</a></small>
|
|
9
|
-
<hr>
|
|
10
|
-
|
|
11
|
-
<h2>Available Style CSS Files:</h2>
|
|
12
|
-
<ul>
|
|
13
|
-
{% for css_file in css_files %}
|
|
14
|
-
<li><a href="/chg_ui_style?css_file={{ css_file }}">{{ css_file }}</a></li>
|
|
15
|
-
{% endfor %}
|
|
16
|
-
</ul>
|
|
17
|
-
</ul>
|
|
18
|
-
{% endblock %}
|
|
19
|
-
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h2>Editing: {{ filename }}</h2>
|
|
7
|
-
<small>
|
|
8
|
-
<a href="/">home</a> ///
|
|
9
|
-
<a href="/edit_zpl">back to label list</a> ///
|
|
10
|
-
<a href="https://labelary.com/zpl.html" target="_blank">ZPL intro</a>
|
|
11
|
-
</small>
|
|
12
|
-
<hr>
|
|
13
|
-
|
|
14
|
-
<table border="1" width="100%">
|
|
15
|
-
<tr>
|
|
16
|
-
<td style="vertical-align: top; width: 40%;">
|
|
17
|
-
<form method="post" action="/save" id="textForm">
|
|
18
|
-
<textarea name="content" rows="26" cols="45">{{ content }}</textarea>
|
|
19
|
-
<br>
|
|
20
|
-
<input type="hidden" name="filename" value="{{ filename }}">
|
|
21
|
-
<br>
|
|
22
|
-
<label>TMP File Tag:</label>
|
|
23
|
-
<input style="width: 100px;" type="text" name="ftag" value="na">
|
|
24
|
-
<br><br>
|
|
25
|
-
<input type="submit" value="Save Draft">
|
|
26
|
-
<input type="button" value="Render PNG" onclick="submitToPNGrenderer();">
|
|
27
|
-
|
|
28
|
-
<hr>
|
|
29
|
-
<h3>Print IRL:</h3>
|
|
30
|
-
<select id="labsDropdown" name="lab" onchange="populatePrinters()">
|
|
31
|
-
<option value="">Select Lab</option>
|
|
32
|
-
{% for lab in labs %}
|
|
33
|
-
<option value="{{ lab }}">{{ lab }}</option>
|
|
34
|
-
{% endfor %}
|
|
35
|
-
</select>
|
|
36
|
-
<select id="printersDropdown" name="printer">
|
|
37
|
-
<option value="">Select Printer</option>
|
|
38
|
-
</select>
|
|
39
|
-
<br><br>
|
|
40
|
-
<input type="button" value="Print with format keys" onclick="submitToRealPrint();">
|
|
41
|
-
<input type="button" value="Print with data" onclick="submitToLocPrint();">
|
|
42
|
-
</form>
|
|
43
|
-
</td>
|
|
44
|
-
<td style="vertical-align: top; width: 60%;">
|
|
45
|
-
<div id="pngContainer" style="text-align: center;">
|
|
46
|
-
<p><em>Click "Render PNG" to preview label</em></p>
|
|
47
|
-
</div>
|
|
48
|
-
<hr>
|
|
49
|
-
<h3>Format Keys</h3>
|
|
50
|
-
<p>Use these placeholders in your ZPL template:</p>
|
|
51
|
-
<ul>
|
|
52
|
-
<li><code>{uid_barcode}</code> - UID for barcode</li>
|
|
53
|
-
<li><code>{alt_a}</code> through <code>{alt_f}</code> - Additional fields</li>
|
|
54
|
-
</ul>
|
|
55
|
-
</td>
|
|
56
|
-
</tr>
|
|
57
|
-
</table>
|
|
58
|
-
{% endblock %}
|
|
59
|
-
|
|
60
|
-
{% block extra_scripts %}
|
|
61
|
-
<script>
|
|
62
|
-
var labs = {{ labs_dict | safe }};
|
|
63
|
-
|
|
64
|
-
function populatePrinters() {
|
|
65
|
-
var lab = document.getElementById("labsDropdown").value;
|
|
66
|
-
var printersDropdown = document.getElementById("printersDropdown");
|
|
67
|
-
printersDropdown.innerHTML = '<option value="">Select Printer</option>';
|
|
68
|
-
|
|
69
|
-
if (lab && labs[lab]) {
|
|
70
|
-
for (var printer in labs[lab]) {
|
|
71
|
-
var option = document.createElement("option");
|
|
72
|
-
option.text = printer;
|
|
73
|
-
option.value = printer;
|
|
74
|
-
printersDropdown.add(option);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
function submitToLocPrint() {
|
|
80
|
-
var form = document.getElementById('textForm');
|
|
81
|
-
form.action = '/build_print_request';
|
|
82
|
-
form.submit();
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
function submitToRealPrint() {
|
|
86
|
-
var form = document.getElementById('textForm');
|
|
87
|
-
var formData = new FormData(form);
|
|
88
|
-
|
|
89
|
-
fetch('/build_and_send_raw_print_request', {
|
|
90
|
-
method: 'POST',
|
|
91
|
-
body: formData
|
|
92
|
-
})
|
|
93
|
-
.then(response => response.json())
|
|
94
|
-
.then(data => {
|
|
95
|
-
console.log('Print request sent:', data);
|
|
96
|
-
alert('Print request sent!');
|
|
97
|
-
})
|
|
98
|
-
.catch(error => {
|
|
99
|
-
console.error('Error:', error);
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
function submitToPNGrenderer() {
|
|
104
|
-
var form = document.getElementById('textForm');
|
|
105
|
-
var formData = new FormData(form);
|
|
106
|
-
|
|
107
|
-
fetch('/png_renderer', {
|
|
108
|
-
method: 'POST',
|
|
109
|
-
body: formData
|
|
110
|
-
})
|
|
111
|
-
.then(response => response.text())
|
|
112
|
-
.then(pngPath => {
|
|
113
|
-
const pngImage = document.createElement('img');
|
|
114
|
-
pngImage.src = pngPath;
|
|
115
|
-
pngImage.style.maxWidth = '100%';
|
|
116
|
-
const container = document.getElementById('pngContainer');
|
|
117
|
-
container.innerHTML = '';
|
|
118
|
-
container.appendChild(pngImage);
|
|
119
|
-
})
|
|
120
|
-
.catch(error => {
|
|
121
|
-
console.error('Error:', error);
|
|
122
|
-
});
|
|
123
|
-
|
|
124
|
-
event.preventDefault();
|
|
125
|
-
}
|
|
126
|
-
</script>
|
|
127
|
-
{% endblock %}
|
|
128
|
-
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Edit ZPL Templates</h1>
|
|
7
|
-
<ul>
|
|
8
|
-
<small><a href="/">home</a></small>
|
|
9
|
-
<hr>
|
|
10
|
-
|
|
11
|
-
<p>To specify a template to use (via the programmatic API or the GUI), use the file name string (not including the path prefix) and remove the trailing '.zpl'.</p>
|
|
12
|
-
<p>Example: <b>tube_2inX1in</b></p>
|
|
13
|
-
|
|
14
|
-
<hr>
|
|
15
|
-
|
|
16
|
-
<h2>Stable ZPL Templates</h2>
|
|
17
|
-
<ul>
|
|
18
|
-
{% for template in stable_templates %}
|
|
19
|
-
<li><a href="/edit?filename={{ template }}">{{ template }}</a></li>
|
|
20
|
-
{% else %}
|
|
21
|
-
<li>No stable templates found</li>
|
|
22
|
-
{% endfor %}
|
|
23
|
-
</ul>
|
|
24
|
-
|
|
25
|
-
<hr>
|
|
26
|
-
|
|
27
|
-
<h2>Draft ZPL Templates</h2>
|
|
28
|
-
<ul>
|
|
29
|
-
{% for template in draft_templates %}
|
|
30
|
-
<li><a href="/edit?dtype=tmps&filename={{ template }}">{{ template }}</a></li>
|
|
31
|
-
{% else %}
|
|
32
|
-
<li>No draft templates found</li>
|
|
33
|
-
{% endfor %}
|
|
34
|
-
</ul>
|
|
35
|
-
</ul>
|
|
36
|
-
{% endblock %}
|
|
37
|
-
|
zebra_day/templates/index.html
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
{% extends "base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Daylily Zebra Printer And Print Request Manager</h1>
|
|
7
|
-
<ul>
|
|
8
|
-
<small>IP address detected: {{ local_ip }}</small>
|
|
9
|
-
<hr>
|
|
10
|
-
|
|
11
|
-
<h2>Zebra Printer Fleet Status, By Site</h2>
|
|
12
|
-
<ul>
|
|
13
|
-
<p>Detected sites:</p>
|
|
14
|
-
<ul>
|
|
15
|
-
{% for lab in labs %}
|
|
16
|
-
<li><a href="/printer_status?lab={{ lab }}">{{ lab }} Zebra Printer Status</a></li>
|
|
17
|
-
{% else %}
|
|
18
|
-
<li>No labs found. Try scanning and resetting printers.json</li>
|
|
19
|
-
{% endfor %}
|
|
20
|
-
</ul>
|
|
21
|
-
</ul>
|
|
22
|
-
<hr>
|
|
23
|
-
|
|
24
|
-
<h2>Print Labels Manually</h2>
|
|
25
|
-
<ul>
|
|
26
|
-
<p>This tool is meant for infrequent use. The intention of zebra_day is to be used to create more fully featured tools/systems.</p>
|
|
27
|
-
<ul>
|
|
28
|
-
<li><a href="/simple_print_request">Print labels manually</a></li>
|
|
29
|
-
</ul>
|
|
30
|
-
</ul>
|
|
31
|
-
<hr>
|
|
32
|
-
|
|
33
|
-
<h2>Zebra Printer JSON Config</h2>
|
|
34
|
-
<ul>
|
|
35
|
-
<p>This JSON file defines the zebra printers available to the package.</p>
|
|
36
|
-
<ul>
|
|
37
|
-
<li><a href="/view_pstation_json">View and edit JSON</a></li>
|
|
38
|
-
<li><a href="/list_prior_printer_config_files">View backed up config files</a></li>
|
|
39
|
-
<li><a href="/build_new_printers_config_json">Build a new printers config JSON</a></li>
|
|
40
|
-
</ul>
|
|
41
|
-
</ul>
|
|
42
|
-
<hr>
|
|
43
|
-
|
|
44
|
-
<h2>Send Print Requests</h2>
|
|
45
|
-
<ul>
|
|
46
|
-
<p>To accessible zebra printers:</p>
|
|
47
|
-
<ul>
|
|
48
|
-
<li><a href="/bpr">Select lab + printer + label style</a></li>
|
|
49
|
-
<li><a href="/send_print_request">Same as above, but only stable label templates</a></li>
|
|
50
|
-
</ul>
|
|
51
|
-
</ul>
|
|
52
|
-
<hr>
|
|
53
|
-
|
|
54
|
-
<h2>Edit Label Templates</h2>
|
|
55
|
-
<ul>
|
|
56
|
-
<p>Modify existing templates, create new templates, preview changes & test print new designs.</p>
|
|
57
|
-
<ul>
|
|
58
|
-
<li><a href="/edit_zpl">Edit ZPL files</a></li>
|
|
59
|
-
</ul>
|
|
60
|
-
</ul>
|
|
61
|
-
<hr>
|
|
62
|
-
|
|
63
|
-
<h2>API Documentation</h2>
|
|
64
|
-
<ul>
|
|
65
|
-
<ul>
|
|
66
|
-
<li><a href="/docs">OpenAPI Documentation (Swagger UI)</a></li>
|
|
67
|
-
<li><a href="/redoc">ReDoc Documentation</a></li>
|
|
68
|
-
</ul>
|
|
69
|
-
</ul>
|
|
70
|
-
<hr>
|
|
71
|
-
|
|
72
|
-
<h2>GitHub Docs</h2>
|
|
73
|
-
<ul>
|
|
74
|
-
<small>
|
|
75
|
-
<li><a href="https://github.com/Daylily-Informatics/zebra_day">zebra_day</a></li>
|
|
76
|
-
<li><a href="https://github.com/Daylily-Informatics/fedex_tracking_day">fedex_tracking_day</a></li>
|
|
77
|
-
<li><a href="https://github.com/Daylily-Informatics/yaml_config_day">yaml_config_day</a></li>
|
|
78
|
-
</small>
|
|
79
|
-
</ul>
|
|
80
|
-
</ul>
|
|
81
|
-
{% endblock %}
|
|
82
|
-
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>{% block title %}Zebra Day{% endblock %}</title>
|
|
7
|
-
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
|
|
8
|
-
<link rel="stylesheet" href="/static/general.css">
|
|
9
|
-
<link rel="stylesheet" href="/{{ css_theme }}">
|
|
10
|
-
{% block extra_head %}{% endblock %}
|
|
11
|
-
</head>
|
|
12
|
-
<body>
|
|
13
|
-
<div id="spinner" class="spinner-hidden">
|
|
14
|
-
<div class="loader"></div>
|
|
15
|
-
</div>
|
|
16
|
-
|
|
17
|
-
<main>
|
|
18
|
-
{% block content %}{% endblock %}
|
|
19
|
-
</main>
|
|
20
|
-
|
|
21
|
-
<div style="position: fixed; bottom: 0; right: 0; padding: 8px; display: flex; gap: 16px;">
|
|
22
|
-
<a href="/" style="font-size: 14px; color: #6366f1;">Switch to Modern UI</a>
|
|
23
|
-
<a href="/legacy/chg_ui_style" style="font-size: 14px;" id="bottomRightLink">change ui style</a>
|
|
24
|
-
</div>
|
|
25
|
-
|
|
26
|
-
<script>
|
|
27
|
-
// Spinner logic for forms
|
|
28
|
-
document.querySelectorAll('form[id="myForm"]').forEach(function(form) {
|
|
29
|
-
form.addEventListener('submit', function(event) {
|
|
30
|
-
document.getElementById('spinner').classList.remove('spinner-hidden');
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
</script>
|
|
34
|
-
{% block extra_scripts %}{% endblock %}
|
|
35
|
-
</body>
|
|
36
|
-
</html>
|
|
37
|
-
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
{% extends "legacy/base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Formulate Print Request, Step 1</h1>
|
|
7
|
-
<small><a href="/legacy">home</a></small>
|
|
8
|
-
|
|
9
|
-
<h2>Select Lab + Printer + ZPL Template</h2>
|
|
10
|
-
<hr>
|
|
11
|
-
<p align="center">You will be prompted for the data to print on the next page</p>
|
|
12
|
-
|
|
13
|
-
<form name="bpr_form" action="/legacy/build_print_request" align="center">
|
|
14
|
-
<ul>
|
|
15
|
-
<li>
|
|
16
|
-
<label>Select a lab:</label>
|
|
17
|
-
<select id="labsDropdown" name="lab" onchange="populatePrinters()">
|
|
18
|
-
<option value="">Select Lab</option>
|
|
19
|
-
{% for lab in labs %}
|
|
20
|
-
<option value="{{ lab }}">{{ lab }}</option>
|
|
21
|
-
{% endfor %}
|
|
22
|
-
</select>
|
|
23
|
-
</li>
|
|
24
|
-
<li>
|
|
25
|
-
<label>Select a printer:</label>
|
|
26
|
-
<select id="printersDropdown" name="printer">
|
|
27
|
-
<option value="">Select Printer</option>
|
|
28
|
-
</select>
|
|
29
|
-
</li>
|
|
30
|
-
<li>
|
|
31
|
-
<label>Select a template:</label>
|
|
32
|
-
<select name="label_zpl_style">
|
|
33
|
-
<option value="">Select one</option>
|
|
34
|
-
<optgroup label="Stable Templates">
|
|
35
|
-
{% for template in stable_templates %}
|
|
36
|
-
<option value="{{ template }}">{{ template }}</option>
|
|
37
|
-
{% endfor %}
|
|
38
|
-
</optgroup>
|
|
39
|
-
<optgroup label="Draft Templates">
|
|
40
|
-
{% for template in draft_templates %}
|
|
41
|
-
<option value="{{ template }}">{{ template }}</option>
|
|
42
|
-
{% endfor %}
|
|
43
|
-
</optgroup>
|
|
44
|
-
</select>
|
|
45
|
-
</li>
|
|
46
|
-
</ul>
|
|
47
|
-
<br>
|
|
48
|
-
<input type="submit" value="Continue">
|
|
49
|
-
</form>
|
|
50
|
-
{% endblock %}
|
|
51
|
-
|
|
52
|
-
{% block extra_scripts %}
|
|
53
|
-
<script>
|
|
54
|
-
var labs = {{ labs_dict | safe }};
|
|
55
|
-
|
|
56
|
-
function populatePrinters() {
|
|
57
|
-
var lab = document.getElementById("labsDropdown").value;
|
|
58
|
-
var printersDropdown = document.getElementById("printersDropdown");
|
|
59
|
-
printersDropdown.innerHTML = '<option value="">Select Printer</option>';
|
|
60
|
-
|
|
61
|
-
if (lab && labs[lab]) {
|
|
62
|
-
for (var printer in labs[lab]) {
|
|
63
|
-
var option = document.createElement("option");
|
|
64
|
-
option.text = printer;
|
|
65
|
-
option.value = printer;
|
|
66
|
-
printersDropdown.add(option);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
</script>
|
|
71
|
-
{% endblock %}
|
|
72
|
-
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
{% extends "legacy/base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Scan Network For Zebra Printers</h1>
|
|
7
|
-
<small><a href="/legacy">home</a></small>
|
|
8
|
-
<hr>
|
|
9
|
-
|
|
10
|
-
<p>This will probe for printers, and with all discovered printers will create a new printers JSON
|
|
11
|
-
and over-write the current fleet data for this lab.</p>
|
|
12
|
-
|
|
13
|
-
<form id="myForm" action="/legacy/probe_zebra_printers_add_to_printers_json">
|
|
14
|
-
<ul>
|
|
15
|
-
<li>
|
|
16
|
-
<label>Choose Existing, Or Enter New Lab Code:</label><br>
|
|
17
|
-
<input type="text" name="lab" list="lab_names" value="scan-results">
|
|
18
|
-
<datalist id="lab_names">
|
|
19
|
-
{% for lab in labs %}
|
|
20
|
-
<option value="{{ lab }}">{{ lab }}</option>
|
|
21
|
-
{% endfor %}
|
|
22
|
-
</datalist>
|
|
23
|
-
</li>
|
|
24
|
-
<li>
|
|
25
|
-
<label>Enter IP Root To Scan:</label><br>
|
|
26
|
-
<input type="text" value="{{ ip_root }}" name="ip_stub">
|
|
27
|
-
</li>
|
|
28
|
-
</ul>
|
|
29
|
-
<br>
|
|
30
|
-
<input type="submit" value="Scan Network">
|
|
31
|
-
</form>
|
|
32
|
-
|
|
33
|
-
<br>
|
|
34
|
-
<small><a href="/legacy/list_prior_printer_config_files">The current printers JSON will be backed up and can be found here.</a></small>
|
|
35
|
-
{% endblock %}
|
|
36
|
-
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{% extends "legacy/base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Send Label Print Request</h1>
|
|
7
|
-
<small><a href="/legacy">home</a></small>
|
|
8
|
-
<hr>
|
|
9
|
-
|
|
10
|
-
<h3>{{ lab }} .. {{ printer }} .. {{ printer_ip }} .. {{ label_zpl_style }}</h3>
|
|
11
|
-
<hr>
|
|
12
|
-
|
|
13
|
-
<form id="myForm" action="/legacy/_print_label">
|
|
14
|
-
<ul>
|
|
15
|
-
<li><label>UID for Barcode:</label> <input type="text" name="uid_barcode"></li>
|
|
16
|
-
<li><label>ALT-A:</label> <input type="text" name="alt_a"></li>
|
|
17
|
-
<li><label>ALT-B:</label> <input type="text" name="alt_b"></li>
|
|
18
|
-
<li><label>ALT-C:</label> <input type="text" name="alt_c"></li>
|
|
19
|
-
<li><label>ALT-D:</label> <input type="text" name="alt_d"></li>
|
|
20
|
-
<li><label>ALT-E:</label> <input type="text" name="alt_e"></li>
|
|
21
|
-
<li><label>ALT-F:</label> <input type="text" name="alt_f"></li>
|
|
22
|
-
</ul>
|
|
23
|
-
<br>
|
|
24
|
-
<label>Override Lab:</label> <input type="text" name="lab" value="{{ lab }}"><br>
|
|
25
|
-
<label>Override Printer:</label> <input type="text" name="printer" value="{{ printer }}"><br>
|
|
26
|
-
<label>Override IP:</label> <input type="text" name="printer_ip" value="{{ printer_ip }}"><br>
|
|
27
|
-
<label>Override label_style_zpl:</label> <input type="text" name="label_zpl_style" value="{{ label_zpl_style }}"><br>
|
|
28
|
-
<br>
|
|
29
|
-
<input type="submit" value="Print Label">
|
|
30
|
-
</form>
|
|
31
|
-
{% endblock %}
|
|
32
|
-
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
{% extends "legacy/base.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}{{ title }}{% endblock %}
|
|
4
|
-
|
|
5
|
-
{% block content %}
|
|
6
|
-
<h1>Change The Zebra Day UI Style</h1>
|
|
7
|
-
<ul>
|
|
8
|
-
<small><a href="/legacy">home</a></small>
|
|
9
|
-
<hr>
|
|
10
|
-
|
|
11
|
-
<h2>Available Style CSS Files:</h2>
|
|
12
|
-
<ul>
|
|
13
|
-
{% for css_file in css_files %}
|
|
14
|
-
<li><a href="/legacy/chg_ui_style?css_file={{ css_file }}">{{ css_file }}</a></li>
|
|
15
|
-
{% endfor %}
|
|
16
|
-
</ul>
|
|
17
|
-
</ul>
|
|
18
|
-
{% endblock %}
|
|
19
|
-
|