ohif-viewer/Packages/lesiontracker/client/components/confirmDeleteDialog/confirmDeleteDialog.js
2015-12-21 09:29:19 -05:00

66 lines
1.7 KiB
JavaScript

function closeHandler() {
// Hide the lesion dialog
$("#confirmDeleteDialog").css('display', 'none');
// Remove the backdrop
$(".removableBackdrop").remove();
// Remove the callback from the template data
delete Template.confirmDeleteDialog.doneCallback;
}
showConfirmDialog = function(doneCallback, options) {
// Show the backdrop
options = options || {};
UI.renderWithData(Template.removableBackdrop, options, document.body);
// Make sure the context menu is closed when the user clicks away
$(".removableBackdrop").one('mousedown touchstart', function() {
closeHandler();
});
$("#confirmDeleteDialog").css('display', 'block');
if (doneCallback && typeof doneCallback === 'function') {
Template.confirmDeleteDialog.doneCallback = doneCallback;
}
};
var keys = {
ESC: 27,
ENTER: 13
};
Template.confirmDeleteDialog.events({
'click #cancel, click #close': function() {
closeHandler();
},
'click #confirm': function() {
var doneCallback = Template.confirmDeleteDialog.doneCallback;
if (doneCallback && typeof doneCallback === 'function') {
doneCallback();
}
closeHandler();
},
'keypress #confirmDeleteDialog': function(e) {
if (e.which === keys.ESC) {
closeHandler();
}
if (this.keyPressAllowed === false) {
return;
}
var doneCallback = Template.confirmDeleteDialog.doneCallback;
// If Enter is pressed, close the dialog
if (e.which === keys.ENTER) {
if (doneCallback && typeof doneCallback === 'function') {
doneCallback();
}
closeHandler();
}
}
});