discourse/app/assets/javascripts/admin/controllers/admin_flags_controller.js

59 lines
1.3 KiB
JavaScript

/**
This controller supports the interface for dealing with flags in the admin section.
@class AdminFlagsController
@extends Ember.Controller
@namespace Discourse
@module Discourse
**/
Discourse.AdminFlagsController = Ember.ArrayController.extend({
/**
Clear all flags on a post
@method clearFlags
@param {Discourse.FlaggedPost} item The post whose flags we want to clear
**/
clearFlags: function(item) {
var _this = this;
item.clearFlags().then((function() {
_this.removeObject(item);
}), function() {
bootbox.alert(Em.String.i18n("admin.flags.error"));
});
},
/**
Deletes a post
@method deletePost
@param {Discourse.FlaggedPost} item The post to delete
**/
deletePost: function(item) {
var _this = this;
item.deletePost().then((function() {
_this.removeObject(item);
}), function() {
bootbox.alert(Em.String.i18n("admin.flags.error"));
});
},
/**
Are we viewing the 'old' view?
@property adminOldFlagsView
**/
adminOldFlagsView: (function() {
return this.query === 'old';
}).property('query'),
/**
Are we viewing the 'active' view?
@property adminActiveFlagsView
**/
adminActiveFlagsView: (function() {
return this.query === 'active';
}).property('query')
});