if(this.get('confirm')){ this.$('.modal').modal(); } else { this.triggerAction(); } }, answer: false, trueAnswer: function(){ this.set('answer', true); this.$('.modal').modal('hide'); }, falseAnswer: function(){ this.set('answer', false); this.$('.modal').modal('hide'); }, eventManager: { hidden: function (event, view) { if (view.get('answer')) { view.set('answer', false); view.triggerAction(); } } } }); App = Ember.Application.create({ customEvents: { 'hidden': 'hidden' } }); Ember.Handlebars.helper('modal', App.ModalView); Answer is false by default Modal can be dismissed by clicking away Hide the modal, don’t trigger action yet