From 9e8d730d870dba53fcbc72ae98fea97a904ba172 Mon Sep 17 00:00:00 2001 From: Ross Date: Fri, 20 Aug 2021 09:21:23 +0100 Subject: [PATCH] . --- anatomy/static/js/anatomy.js | 14 +++++++++----- longs/models.py | 11 +++++++++++ longs/templates/longs/long_series_viewer.html | 2 +- rapids/templates/rapids/mark.html | 2 +- static/js/anatomy.js | 14 +++++++++----- 5 files changed, 31 insertions(+), 12 deletions(-) diff --git a/anatomy/static/js/anatomy.js b/anatomy/static/js/anatomy.js index d6dd3226..b0b766d2 100644 --- a/anatomy/static/js/anatomy.js +++ b/anatomy/static/js/anatomy.js @@ -162,7 +162,7 @@ window.addEventListener('loadDicomViewerUrls', function (e) { loadDicomViewer(e.detail); }, false); -function loadDicomViewer(images_to_load) { +function loadDicomViewer(images_to_load, annotations_to_load) { console.log("loadDicomViewer", images_to_load); let single_dicom = document.getElementById("single-dicom-viewer"); if (single_dicom) { @@ -171,17 +171,21 @@ function loadDicomViewer(images_to_load) { if (images_to_load != undefined) { images = images_to_load; - console.log("i1", images) } else if (images.indexOf(",") > 0) { - images = images.split(","); + images = JSON.parse(images); } console.log(images); let annotations = single_dicom.dataset.annotations; - if (annotations != undefined && annotations.indexOf(",") > 0) { - annotations = annotations; + if (annotations != undefined) { + annotations = annotations_to_load; + } else if (annotations && annotations.indexOf(",") > 0) { + annotations = JSON.parse(annotations); + } else { + annotations = undefined; } + let load_as_stack; if (images.length > 5) { load_as_stack = true; diff --git a/longs/models.py b/longs/models.py index c2d8b9ef..0d9a34d6 100644 --- a/longs/models.py +++ b/longs/models.py @@ -171,6 +171,9 @@ class Long(models.Model): ["https://www.penracourses.org.uk{}".format(i.url) for i in self.get_images()] ) + def get_image_url_array(self): + return ["https://www.penracourses.org.uk{}".format(i.url) for i in self.get_images()] + def get_unmarked_answer_count(self): answers = self.cid_user_answers.all() return len([ans for ans in answers if not ans.is_marked()]) @@ -416,6 +419,14 @@ class LongSeries(models.Model): return ",".join(images) + def get_image_url_array(self, feedback=False): + images = [ + "https://www.penracourses.org.uk{}".format(i.image.url) + for i in self.images.all() + ] + + return images + def get_thumbnail(self): images = self.images.all() diff --git a/longs/templates/longs/long_series_viewer.html b/longs/templates/longs/long_series_viewer.html index 546f11ce..fcd62bb5 100755 --- a/longs/templates/longs/long_series_viewer.html +++ b/longs/templates/longs/long_series_viewer.html @@ -9,7 +9,7 @@ Associated case: This series is not associated with any cases. {% endif %} -
+
Author: {{ series.get_author_display }}
diff --git a/rapids/templates/rapids/mark.html b/rapids/templates/rapids/mark.html index 3c633a8d..423d2fee 100644 --- a/rapids/templates/rapids/mark.html +++ b/rapids/templates/rapids/mark.html @@ -13,7 +13,7 @@ Answers will be automatically marked. Answers marked as normal will be automatically marked.
Region: {{ question.get_regions }}, Abnormalities: {{ question.get_abnormalities }} {% endif %} -
diff --git a/static/js/anatomy.js b/static/js/anatomy.js index d6dd3226..b0b766d2 100644 --- a/static/js/anatomy.js +++ b/static/js/anatomy.js @@ -162,7 +162,7 @@ window.addEventListener('loadDicomViewerUrls', function (e) { loadDicomViewer(e.detail); }, false); -function loadDicomViewer(images_to_load) { +function loadDicomViewer(images_to_load, annotations_to_load) { console.log("loadDicomViewer", images_to_load); let single_dicom = document.getElementById("single-dicom-viewer"); if (single_dicom) { @@ -171,17 +171,21 @@ function loadDicomViewer(images_to_load) { if (images_to_load != undefined) { images = images_to_load; - console.log("i1", images) } else if (images.indexOf(",") > 0) { - images = images.split(","); + images = JSON.parse(images); } console.log(images); let annotations = single_dicom.dataset.annotations; - if (annotations != undefined && annotations.indexOf(",") > 0) { - annotations = annotations; + if (annotations != undefined) { + annotations = annotations_to_load; + } else if (annotations && annotations.indexOf(",") > 0) { + annotations = JSON.parse(annotations); + } else { + annotations = undefined; } + let load_as_stack; if (images.length > 5) { load_as_stack = true;