LT-354: Converting to the new dialog/form structure

This commit is contained in:
Bruno Alves de Faria committed 2016-11-17 13:45:51 -02:00
1 parent b3b6f91bfe
commit 6e2bef5317
8 files changed
+52 -85

No files matched your search

@@ -16,12 +16,12 @@
{{>UI.contentBlock}}
</div>
<div class="modal-footer">
{{#button class='btn btn-default'
action='cancel'
{{#button action='cancel'
class=(concat 'btn ' (choose this.cancelClass 'btn-default'))
tagAttributes=(extend this.tagAttributes data-dismiss='modal')
}}{{choose this.cancelLabel 'Cancel'}}{{/button}}
{{#button class='btn btn-primary'
action='confirm'
{{#button action='confirm'
class=(concat 'btn ' (choose this.confirmClass 'btn-primary'))
}}{{choose this.confirmLabel 'Confirm'}}{{/button}}
</div>
{{/form}}
@@ -1,23 +0,0 @@
<template name="confirmRemoveTimepointAssociation">
<div class="modal" id="confirmRemoveTimepointAssociation" tabindex="-1" role="dialog" data-backdrop="static" data-keyboard="false" aria-labelledby="removeAssociationModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="removeAssociationModalLabel">Remove Association</h4>
</div>
<div class="modal-body">
Measurements related to this Study and Timepoint will be erased. Do you really want to delete this association?
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal" id='btnRemoveAssociationModalCancel'>
Cancel
</button>
<a id="removeTimepointAssociations" type="button" class="btn btn-danger" data-dismiss="modal"
title="Remove Timepoint Association"> Remove
</a>
</div>
</div>
</div>
</div>
</template>
@@ -1,6 +0,0 @@
Template.confirmRemoveTimepointAssociation.events({
'click #removeTimepointAssociations': function() {
// Remove association
StudyList.functions['removeTimepointAssociations']();
}
});
@@ -5,6 +5,3 @@ import './associationModal/associationModal.js';
import './associationModal/studyAssociationTable/studyAssociationTable.html';
import './associationModal/studyAssociationTable/studyAssociationTable.styl';
import './associationModal/studyAssociationTable/studyAssociationTable.js';
import './confirmRemoveTimepointAssociation/confirmRemoveTimepointAssociation.html';
import './confirmRemoveTimepointAssociation/confirmRemoveTimepointAssociation.js';
@@ -4,28 +4,23 @@
<li class="divider" role="separator"></li>
{{#let classes=getAssociationClasses}}
<li class="{{classes}}">
<a id="launchStudyAssociation" class="{{classes}}" title="Launch Study Association">Associate</a>
</li>
<li class="{{classes}}">
<a id="launchStudyAssociation" class="{{classes}}"
title="Launch Study Association">Associate</a>
</li>
{{/let}}
{{#let classes=getRemoveAssociationClasses}}
<li class="{{classes}}">
<a id="launchRemoveAssociation"
type="button"
class="{{classes}}"
data-toggle="modal"
data-target="#confirmRemoveTimepointAssociation"
title="Remove Timepoint Association">
Remove Association
</a>
</li>
<li class="{{classes}}">
<a id="removeTimepointAssociations" type="button" class="{{classes}}"
title="Remove Timepoint Association">Remove Association</a>
</li>
{{/let}}
<li class="divider" role="separator"></li>
<li>
<a id="viewSeriesDetails" type="button"
title="View Series Details">View Series Details</a>
title="View Series Details">View Series Details</a>
</li>
<li class="disabled"><a class="disabled">Anonymize</a></li>
<li class="disabled"><a class="disabled">Send</a></li>
@@ -1,5 +1,4 @@
import { Template } from 'meteor/templating';
import { Meteor } from 'meteor/meteor';
import { Random } from 'meteor/random';
import { OHIF } from 'meteor/ohif:core';
@@ -31,6 +30,7 @@ function getAssociationAssessment() {
}
}
}
return assessment;
}
@@ -73,22 +73,30 @@ StudyList.functions.viewStudies = viewStudies;
* Removes all present study / timepoint associations from the Clinical Trial
*/
function removeTimepointAssociations() {
// Get a Cursor pointing to the selected Studies from the StudyList
const selectedStudies = OHIF.studylist.getSelectedStudies();
const dialogSettings = {
title: 'Remove Association',
message: 'Measurements related to this Study and Timepoint will be erased. Do you really want to delete this association?',
confirmClass: 'btn-danger'
};
// Find the Timepoint that was previously referenced
const timepointApi = StudyList.timepointApi;
if (!timepointApi) {
OHIF.log.error('Remove Study/Timepoint Association: No Timepoint API found.')
return;
}
OHIF.ui.showFormDialog('dialogConfirm', dialogSettings).then(() => {
// Get a Cursor pointing to the selected Studies from the StudyList
const selectedStudies = OHIF.studylist.getSelectedStudies();
// Loop through the Cursor of Selected Studies
selectedStudies.forEach(study => {
const studyInstanceUid = study.studyInstanceUid;
const timepoints = timepointApi.study(studyInstanceUid);
const timepointIds = timepoints.map(t => t.timepointId);
timepointApi.disassociateStudy(timepointIds, studyInstanceUid);
// Find the Timepoint that was previously referenced
const timepointApi = StudyList.timepointApi;
if (!timepointApi) {
OHIF.log.error('Remove Study/Timepoint Association: No Timepoint API found.');
return;
}
// Loop through the Cursor of Selected Studies
selectedStudies.forEach(study => {
const studyInstanceUid = study.studyInstanceUid;
const timepoints = timepointApi.study(studyInstanceUid);
const timepointIds = timepoints.map(t => t.timepointId);
timepointApi.disassociateStudy(timepointIds, studyInstanceUid);
});
});
}