diff --git a/LesionTracker/.meteor/versions b/LesionTracker/.meteor/versions index 91c298cc5..bd51597af 100644 --- a/LesionTracker/.meteor/versions +++ b/LesionTracker/.meteor/versions @@ -131,6 +131,7 @@ underscore@1.0.9 url@1.0.10 validatejs@0.0.1 viewerbase@0.0.1 +wadoproxy@0.0.1 webapp@1.3.10 webapp-hashing@1.0.9 worklist@0.0.1 diff --git a/LesionTracker/client/routes.js b/LesionTracker/client/routes.js index 04516d6d3..3da643097 100644 --- a/LesionTracker/client/routes.js +++ b/LesionTracker/client/routes.js @@ -16,7 +16,8 @@ var data = { 'optionsModal', 'serverInformationModal', 'confirmRemoveTimepointAssociation', - 'lastLoginModal' + 'lastLoginModal', + 'viewSeriesDetailsModal' ] }; diff --git a/OHIFViewer/.meteor/packages b/OHIFViewer/.meteor/packages index 2cf867dd9..af7747e20 100755 --- a/OHIFViewer/.meteor/packages +++ b/OHIFViewer/.meteor/packages @@ -43,3 +43,4 @@ aldeed:simple-schema johdirr:meteor-git-rev wadoproxy aldeed:template-extension +peppelg:bootstrap-3-modal diff --git a/OHIFViewer/.meteor/versions b/OHIFViewer/.meteor/versions index 56784812e..8a20cef19 100755 --- a/OHIFViewer/.meteor/versions +++ b/OHIFViewer/.meteor/versions @@ -73,6 +73,7 @@ observe-sequence@1.0.12 ohif:core@0.0.1 ordered-dict@1.0.8 orthanc-remote@0.0.1 +peppelg:bootstrap-3-modal@1.0.4 practicalmeteor:chai@2.1.0_1 practicalmeteor:loglevel@1.2.0_2 promise@0.8.3 diff --git a/OHIFViewer/client/components/ohifViewer/ohifViewer.html b/OHIFViewer/client/components/ohifViewer/ohifViewer.html index 1525ea0d7..e0bbad1db 100644 --- a/OHIFViewer/client/components/ohifViewer/ohifViewer.html +++ b/OHIFViewer/client/components/ohifViewer/ohifViewer.html @@ -25,4 +25,5 @@ {{> worklist }} {{> aboutModal }} + {{> viewSeriesDetailsModal }} \ No newline at end of file diff --git a/Packages/lesiontracker/client/components/lesionTracker/lesionTracker.html b/Packages/lesiontracker/client/components/lesionTracker/lesionTracker.html index 48021f2d9..b14819565 100644 --- a/Packages/lesiontracker/client/components/lesionTracker/lesionTracker.html +++ b/Packages/lesiontracker/client/components/lesionTracker/lesionTracker.html @@ -38,4 +38,5 @@ {{ >lastLoginModal }} {{ >studyContextMenu }} {{ >progressDialog}} + {{ >viewSeriesDetailsModal }} diff --git a/Packages/lesiontracker/client/components/lesionTrackerWorklistContextMenu/lesionTrackerWorklistContextMenu.html b/Packages/lesiontracker/client/components/lesionTrackerWorklistContextMenu/lesionTrackerWorklistContextMenu.html index b24e896c8..b09da608b 100644 --- a/Packages/lesiontracker/client/components/lesionTrackerWorklistContextMenu/lesionTrackerWorklistContextMenu.html +++ b/Packages/lesiontracker/client/components/lesionTrackerWorklistContextMenu/lesionTrackerWorklistContextMenu.html @@ -24,7 +24,10 @@ Remove Association
- View Series Details + + View Series Details + Anonymize Send
diff --git a/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.html b/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.html new file mode 100644 index 000000000..537ecb4a7 --- /dev/null +++ b/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.html @@ -0,0 +1,104 @@ + \ No newline at end of file diff --git a/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.js b/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.js new file mode 100644 index 000000000..09b8ea22e --- /dev/null +++ b/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.js @@ -0,0 +1,51 @@ +Template.seriesDetailsTable.onCreated(() => { + const instance = Template.instance(); + + // Create selected studies + instance.selectedStudies = new ReactiveDict(); + + let selectedStudiesData = instance.data.selectedStudies; + + if (!selectedStudiesData) { + return; + } + + // Display loading text while getting series + _.each(selectedStudiesData, selectedStudy => { + + selectedStudy.displaySeriesLoadingText = true; + }); + + // Set reactive selected studies + instance.selectedStudies.set('studies', selectedStudiesData); +}); + +Template.seriesDetailsTable.onRendered(() => { + const instance = Template.instance(); + const studies = instance.selectedStudies.get('studies'); + + if (!studies) { + return; + } + + // Get series list for the study + _.map(studies, (selectedStudy, index) => { + studies[index].seriesList = []; + getStudyMetadata(selectedStudy.studyInstanceUid, study => { + + // Set series list + studies[index].seriesList = study.seriesList; + studies[index].displaySeriesLoadingText = false; + + // Update selected studies + instance.selectedStudies.set('studies', studies); + }); + }); +}); + +Template.seriesDetailsTable.helpers({ + selectedStudies() { + const instance = Template.instance(); + return instance.selectedStudies.get('studies'); + } +}); \ No newline at end of file diff --git a/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.styl b/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.styl new file mode 100644 index 000000000..4fc3a14fe --- /dev/null +++ b/Packages/worklist/client/components/seriesDetailsTable/seriesDetailsTable.styl @@ -0,0 +1,30 @@ +@import "{design}/app" + +.selectedStudyContainer + margin-bottom: 15px; + + .tblStudyDetails + tbody > tr > td > label + color: $textPrimaryColor + + tbody > tr > td > input[type="text"] + height: 28px + background-color: $primaryBackgroundColor + color: $textPrimaryColor + width: calc(100% - 10px) + border-radius: 4px + box-sizing: border-box + + .tblSeriesDetails + thead > tr > th + text-align: center + + tbody > tr + + td + text-align: center + color: $textPrimaryColor + + .loadingTextDiv + font-size: 13px + color: $textSecondaryColor \ No newline at end of file diff --git a/Packages/worklist/client/components/studyContextMenu/studyContextMenu.html b/Packages/worklist/client/components/studyContextMenu/studyContextMenu.html index 0326400b4..cea0fd3e0 100644 --- a/Packages/worklist/client/components/studyContextMenu/studyContextMenu.html +++ b/Packages/worklist/client/components/studyContextMenu/studyContextMenu.html @@ -6,6 +6,10 @@ onselectstart='return false;'>