OHIFVIEWER-15 Visual indicators("<" char) are added to related timepoint header in lesionTable to denote active timepoints in viewports

This commit is contained in:
Evren Ozkan 2015-12-01 14:00:04 -05:00
parent 5c3b1b40f5
commit 8cd054825f
4 changed files with 59 additions and 2 deletions

View File

@ -213,4 +213,56 @@ Template.lesionTable.events({
var measurementId = $(e.currentTarget).data('measurementid');
activateLesion(measurementId,template.data);
}
});
});
// Track ViewerData to get active timepoints
// Put a visual indicator(<) in timepoint header in lesion table for active timepoints
Tracker.autorun(function () {
var allViewerData = Session.get('ViewerData');
var contentId = Session.get('activeContentId');
if(allViewerData && contentId) {
var viewerData = allViewerData[contentId];
if (viewerData) {
// Get study dates of imageViewerViewport elements
var loadedStudyDates = {
patientId: "",
dates: []
};
$("#"+contentId+" .imageViewerViewport").each(function(viewportIndex, element) {
var enabledElement = cornerstone.getEnabledElement(element);
var imageId = enabledElement.image.imageId;
var study = cornerstoneTools.metaData.get('study', imageId);
var studyDate = study.studyDate;
var patientId = study.patientId;
loadedStudyDates.patientId = patientId;
// Check studyDate is added before
if (loadedStudyDates.dates.indexOf(studyDate) < 0) {
loadedStudyDates.dates.push(studyDate);
}
});
// If study date is loaded into viewport, set timepointLoaded property in Timepoints collection as true
// Else set timepointLoaded property as false
if(loadedStudyDates.dates.length) {
var timepoints = Timepoints.find({patientId: loadedStudyDates.patientId}).fetch();
timepoints.forEach(function(timepoint){
var timepointLoaded = false;
if(loadedStudyDates.dates.indexOf(timepoint.timepointName) > -1) {
timepointLoaded = true;
}
Timepoints.update(timepoint._id,{
$set: {
timepointLoaded: timepointLoaded
}
});
});
}
}
}
});

View File

@ -1,3 +1,3 @@
<template name="lesionTableTimepointHeader">
<th class="lesionTableTimepointCell">{{formatDA timepointName "MM/DD/YYYY"}}</th>
<th class="lesionTableTimepointCell">{{formatDA timepointName "MM/DD/YYYY"}} {{ #if timepointLoaded }}<span class="timepointIndicator">&lt;</span> {{ /if }} </th>
</template>

View File

@ -0,0 +1,3 @@
.timepointIndicator
font-size 12px
line-height 12px

View File

@ -37,6 +37,7 @@ Package.onUse(function (api) {
api.addFiles('components/lesionTableTimepointHeader/lesionTableTimepointHeader.html', 'client');
api.addFiles('components/lesionTableTimepointHeader/lesionTableTimepointHeader.js', 'client');
api.addFiles('components/lesionTableTimepointHeader/lesionTableTimepointHeader.styl', 'client');
api.addFiles('components/nonTargetLesionDialog/nonTargetLesionDialog.html', 'client');
api.addFiles('components/nonTargetLesionDialog/nonTargetLesionDialog.css', 'client');
@ -57,6 +58,7 @@ Package.onUse(function (api) {
// Library functions
api.addFiles('lib/uuid.js', 'client');
api.export('Measurements', ['client', 'server']);
api.export('Timepoints', ['client', 'server']);
});