FEATURE: agree all the flags

This commit is contained in:
Régis Hanol
2014-08-04 22:48:04 +02:00
parent 17debbdcda
commit ec30086dea
12 changed files with 122 additions and 42 deletions

View File

@@ -0,0 +1,44 @@
/**
The modal for agreeing with a flag.
@class AdminAgreeFlagController
@extends Discourse.Controller
@namespace Discourse
@uses Discourse.ModalFunctionality
@module Discourse
**/
export default Discourse.ObjectController.extend(Discourse.ModalFunctionality, {
needs: ["adminFlags"],
actions: {
agreeFlagHidePost: function () {
var adminFlagController = this.get("controllers.adminFlags");
var post = this.get("content");
var self = this;
return post.agreeFlags("hide").then(function () {
adminFlagController.removeObject(post);
self.send("closeModal");
}, function () {
bootbox.alert(I18n.t("admin.flags.error"));
});
},
agreeFlagKeepPost: function () {
var adminFlagController = this.get("controllers.adminFlags");
var post = this.get("content");
var self = this;
return post.agreeFlags("keep").then(function () {
adminFlagController.removeObject(post);
self.send("closeModal");
}, function () {
bootbox.alert(I18n.t("admin.flags.error"));
});
}
}
});

View File

@@ -7,7 +7,7 @@
@uses Discourse.ModalFunctionality
@module Discourse
**/
Discourse.AdminDeleteFlagController = Discourse.ObjectController.extend(Discourse.ModalFunctionality, {
export default Discourse.ObjectController.extend(Discourse.ModalFunctionality, {
needs: ["adminFlags"],
@@ -31,22 +31,14 @@ Discourse.AdminDeleteFlagController = Discourse.ObjectController.extend(Discours
var post = this.get("content");
var self = this;
return post.agreeFlags(true).then(function () {
return post.agreeFlags("delete").then(function () {
adminFlagController.removeObject(post);
self.send("closeModal");
}, function () {
bootbox.alert(I18n.t("admin.flags.error"));
});
},
/**
Deletes a user and all posts and topics created by that user.
@method deleteSpammer
**/
deleteSpammer: function () {
this.get("content.user").deleteAsSpammer(function() { window.location.reload(); });
}
}
});

View File

@@ -8,20 +8,11 @@
**/
export default Ember.ArrayController.extend({
adminOldFlagsView: Em.computed.equal('query', 'old'),
adminActiveFlagsView: Em.computed.equal('query', 'active'),
adminOldFlagsView: Em.computed.equal("query", "old"),
adminActiveFlagsView: Em.computed.equal("query", "active"),
actions: {
agreeFlags: function (flaggedPost) {
var self = this;
flaggedPost.agreeFlags().then(function () {
self.removeObject(flaggedPost);
}, function () {
bootbox.alert(I18n.t("admin.flags.error"));
});
},
disagreeFlags: function (flaggedPost) {
var self = this;
flaggedPost.disagreeFlags().then(function () {
@@ -41,15 +32,15 @@ export default Ember.ArrayController.extend({
},
doneTopicFlags: function(item) {
this.send('disagreeFlags', item);
this.send("disagreeFlags", item);
},
},
loadMore: function(){
var flags = this.get('model');
return Discourse.FlaggedPost.findAll(this.get('query'),flags.length+1).then(function(data){
var flags = this.get("model");
return Discourse.FlaggedPost.findAll(this.get("query"),flags.length+1).then(function(data){
if(data.length===0){
flags.set('allLoaded',true);
flags.set("allLoaded",true);
}
flags.addObjects(data);
});