diff --git a/app/assets/javascripts/discourse/controllers/flag_controller.js b/app/assets/javascripts/discourse/controllers/flag_controller.js index 3aa99cf7a..af353a229 100644 --- a/app/assets/javascripts/discourse/controllers/flag_controller.js +++ b/app/assets/javascripts/discourse/controllers/flag_controller.js @@ -9,6 +9,10 @@ **/ Discourse.FlagController = Discourse.ObjectController.extend(Discourse.ModalFunctionality, { + onShow: function() { + this.set('selected', null); + }, + changePostActionType: function(action) { this.set('selected', action); }, diff --git a/app/assets/javascripts/discourse/views/modal/flag_view.js b/app/assets/javascripts/discourse/views/modal/flag_view.js index 4345b9ca4..5ec713e9a 100644 --- a/app/assets/javascripts/discourse/views/modal/flag_view.js +++ b/app/assets/javascripts/discourse/views/modal/flag_view.js @@ -11,18 +11,15 @@ Discourse.FlagView = Discourse.ModalBodyView.extend({ title: I18n.t('flagging.title'), selectedChanged: function() { - var nameKey = this.get('controller.selected.name_key'); - if (!nameKey) return; + var flagView = this; Em.run.next(function() { - $('#radio_' + nameKey).prop('checked', 'true'); + flagView.$("input[type='radio']").prop('checked', false); + + var nameKey = flagView.get('controller.selected.name_key'); + if (!nameKey) return; + + flagView.$('#radio_' + nameKey).prop('checked', 'true'); }); - }.observes('controller.selected.name_key'), + }.observes('controller.selected.name_key') - didInsertElement: function() { - this._super(); - - // Would be nice if there were an EmberJs radio button to do this for us. Oh well, one should be coming - // in an upcoming release. - this.$("input[type='radio']").prop('checked', false); - } });