diff --git a/longs/models.py b/longs/models.py index 2d6cc589..301e6406 100644 --- a/longs/models.py +++ b/longs/models.py @@ -35,6 +35,7 @@ from easy_thumbnails.files import get_thumbnailer from easy_thumbnails.exceptions import InvalidImageFormatError import pydicom +import datetime @@ -173,12 +174,22 @@ class Long(models.Model): path= "{0}longs/questions/{1}.json".format(settings.MEDIA_ROOT, question_id) url= "{0}longs/questions/{1}.json".format(settings.MEDIA_URL, question_id) with open(path, "w+") as f: - # Loop through longimage associations - f.write("[") - images = [] + + f.write(""" + "title": {}, + "image_titles": {}, + "type": "long", + "generated": "long", + """.format(q.history, datetime.datetime.now.isoformat()) + ) + + + f.write('"images" : [') + #images = [] image_titles = [] question_series = q.series.all() + # Loop through longimage associations for i, series in enumerate(question_series): #image_array = [] #for i in series.images.all(): @@ -189,25 +200,27 @@ class Long(models.Model): image_array = [image_as_base64(i.image) for i in series.images.all()] #image_array = [i.image.url for i in series.images.all()] f.write(json.dumps(image_array)) - images.append(url) + #images.append(url) if i != len(question_series) - 1: f.write(",") image_titles.append(series.get_examination()) - f.write("]") + f.write("],") + + f.write("'image_titles' : {} }".format(json.dumps(image_titles))) - exam_question = { - "title": q.history, - "images": images, - "image_titles": image_titles, - #"feedback_image": [], - #"annotations": [str(q.image_annotations)], - "type": "long", - "cached": False, - } + #exam_question = { + # "title": q.history, + # "images": images, + # "image_titles": image_titles, + # #"feedback_image": [], + # #"annotations": [str(q.image_annotations)], + # "type": "long", + # "cached": False, + #} - return exam_question + return url @@ -497,6 +510,7 @@ class Exam(ExamBase): #"feedback_image": [], #"annotations": [str(q.image_annotations)], "type": "long", + "images_json": True, } return exam_question