Added the ability to print freezer labels.
[htsworkflow.git] / samplebc / samples / views.py
index e8ffb35d9f7105cee0a097f613e9ec03237f3cb4..32a69c05c73554248d623cc2e5e64d5d03017467 100644 (file)
@@ -344,6 +344,29 @@ def freezer_edit(request, freezer_id):
     })
 
 
+def freezer_print(request, freezer_id):
+    """
+    prints a freezer label
+    """
+    
+    try:
+        freezer = models.Freezer.objects.get(uuid=freezer_id)
+    except ObjectDoesNotExist:
+        return HttpResponse('Freezer (%s) does not exist!' % (freezer_id))
+    
+    params = {}
+    params['line1'] = __center_line('', 10)
+    params['line2'] = __center_line('', 14)
+    params['line3'] = __center_line('Temp: %s C' % (freezer.temperature), 15)
+    params['freezer_name'] = __center_line(freezer.name, 16)
+    params['barcode'] = 'frzr|%s' % (freezer.uuid)
+    params['symbol'] = ''
+    
+    c = Context(params)
+    t = get_template('zpl_freezer_label.txt')
+    print_zpl(t.render(c))
+    
+    return HttpResponse('print command for freezer %s sent.' % (freezer.uuid))
 
 ################################################
 # Samples