2013-08-19 06:14:26 -05:00
|
|
|
require 'flag_query'
|
|
|
|
|
2013-02-05 13:16:51 -06:00
|
|
|
class Admin::FlagsController < Admin::AdminController
|
2013-02-07 09:45:24 -06:00
|
|
|
def index
|
2013-05-12 20:09:03 -05:00
|
|
|
# we may get out of sync, fix it here
|
|
|
|
PostAction.update_flagged_posts_count
|
2014-02-06 21:11:52 -06:00
|
|
|
posts, users = FlagQuery.flagged_posts_report(current_user, params[:filter], params[:offset].to_i, 10)
|
2013-05-12 20:09:03 -05:00
|
|
|
|
2013-05-29 15:49:34 -05:00
|
|
|
if posts.blank?
|
2013-03-22 13:08:11 -05:00
|
|
|
render json: {users: [], posts: []}
|
2013-02-05 13:16:51 -06:00
|
|
|
else
|
2013-07-26 14:40:08 -05:00
|
|
|
render json: MultiJson.dump({users: serialize_data(users, AdminDetailedUserSerializer), posts: posts})
|
2013-02-05 13:16:51 -06:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2013-06-20 02:42:15 -05:00
|
|
|
def disagree
|
2013-02-05 13:16:51 -06:00
|
|
|
p = Post.find(params[:id])
|
|
|
|
PostAction.clear_flags!(p, current_user.id)
|
2013-05-24 15:03:20 -05:00
|
|
|
p.reload
|
|
|
|
p.unhide!
|
2013-02-07 09:45:24 -06:00
|
|
|
render nothing: true
|
2013-02-05 13:16:51 -06:00
|
|
|
end
|
2013-06-20 02:42:15 -05:00
|
|
|
|
|
|
|
def agree
|
|
|
|
p = Post.find(params[:id])
|
2014-04-30 09:58:01 -05:00
|
|
|
post_action_type = PostAction.post_action_type_for_post(p.id)
|
2013-06-20 02:42:15 -05:00
|
|
|
PostAction.defer_flags!(p, current_user.id)
|
2014-04-30 09:58:01 -05:00
|
|
|
PostAction.hide_post!(p, post_action_type)
|
2013-06-20 02:42:15 -05:00
|
|
|
render nothing: true
|
|
|
|
end
|
|
|
|
|
|
|
|
def defer
|
|
|
|
p = Post.find(params[:id])
|
|
|
|
PostAction.defer_flags!(p, current_user.id)
|
|
|
|
render nothing: true
|
|
|
|
end
|
2014-04-30 09:58:01 -05:00
|
|
|
|
2013-02-05 13:16:51 -06:00
|
|
|
end
|