From 3037e9adf64c42dd9b3dd1475a5f3c1388115e44 Mon Sep 17 00:00:00 2001 From: Robin Ward Date: Fri, 24 May 2013 16:03:20 -0400 Subject: [PATCH] FIX: Clearing flags wasn't making topics visible again. --- .../admin/controllers/admin_flags_controller.js | 16 ++++++---------- .../admin/templates/flags.js.handlebars | 14 +++++++------- app/controllers/admin/flags_controller.rb | 5 ++--- 3 files changed, 15 insertions(+), 20 deletions(-) diff --git a/app/assets/javascripts/admin/controllers/admin_flags_controller.js b/app/assets/javascripts/admin/controllers/admin_flags_controller.js index 60a88bd38b2..6b1bfcc84ce 100644 --- a/app/assets/javascripts/admin/controllers/admin_flags_controller.js +++ b/app/assets/javascripts/admin/controllers/admin_flags_controller.js @@ -15,9 +15,9 @@ Discourse.AdminFlagsController = Ember.ArrayController.extend({ @param {Discourse.FlaggedPost} item The post whose flags we want to clear **/ clearFlags: function(item) { - var _this = this; + var adminFlagsController = this; item.clearFlags().then((function() { - _this.removeObject(item); + adminFlagsController.removeObject(item); }), function() { bootbox.alert(Em.String.i18n("admin.flags.error")); }); @@ -30,9 +30,9 @@ Discourse.AdminFlagsController = Ember.ArrayController.extend({ @param {Discourse.FlaggedPost} item The post to delete **/ deletePost: function(item) { - var _this = this; + var adminFlagsController = this; item.deletePost().then((function() { - _this.removeObject(item); + adminFlagsController.removeObject(item); }), function() { bootbox.alert(Em.String.i18n("admin.flags.error")); }); @@ -43,17 +43,13 @@ Discourse.AdminFlagsController = Ember.ArrayController.extend({ @property adminOldFlagsView **/ - adminOldFlagsView: (function() { - return this.query === 'old'; - }).property('query'), + adminOldFlagsView: Em.computed.equal('query', 'old'), /** Are we viewing the 'active' view? @property adminActiveFlagsView **/ - adminActiveFlagsView: (function() { - return this.query === 'active'; - }).property('query') + adminActiveFlagsView: Em.computed.equal('query', 'active') }); diff --git a/app/assets/javascripts/admin/templates/flags.js.handlebars b/app/assets/javascripts/admin/templates/flags.js.handlebars index 4e8f84e21ec..f74060f8dfa 100644 --- a/app/assets/javascripts/admin/templates/flags.js.handlebars +++ b/app/assets/javascripts/admin/templates/flags.js.handlebars @@ -18,17 +18,17 @@ - {{#each content}} + {{#each flag in content}} - {{#linkTo 'adminUser' user}}{{avatar user imageSize="small"}}{{/linkTo}} - {{#if topicHidden}} {{/if}}

{{title}}


{{{excerpt}}} + {{#linkTo 'adminUser' flag.user}}{{avatar flag.user imageSize="small"}}{{/linkTo}} + {{#if flag.topicHidden}} {{/if}}

{{flag.title}}


{{{flag.excerpt}}} - {{#each flaggers}}{{#linkTo 'adminUser' this}}{{avatar this imageSize="small"}} {{/linkTo}}{{/each}} - {{date lastFlagged}} + {{#each flag.flaggers}}{{#linkTo 'adminUser' this}}{{avatar this imageSize="small"}} {{/linkTo}}{{/each}} + {{date flag.lastFlagged}} {{#if adminActiveFlagsView}} - - + + {{/if}} diff --git a/app/controllers/admin/flags_controller.rb b/app/controllers/admin/flags_controller.rb index bfeb607c316..45b0c0b5be3 100644 --- a/app/controllers/admin/flags_controller.rb +++ b/app/controllers/admin/flags_controller.rb @@ -100,9 +100,8 @@ where id in (?)" def clear p = Post.find(params[:id]) PostAction.clear_flags!(p, current_user.id) - p.hidden = false - p.hidden_reason_id = nil - p.save + p.reload + p.unhide! render nothing: true end end