Fix mode menu 'approve' option.

* Fix routing error in respond_with (didn't use /moderator namespace).

* Fix /moderator/posts/approvals.json response to return full
  PostApproval object, not just a success/failure message.

* Simplify the javascript a bit (use $.post instead of $.ajax).
This commit is contained in:
evazion
2017-06-04 12:14:35 -05:00
parent 4fe97a8218
commit fdf8e7d5d7
3 changed files with 13 additions and 19 deletions

View File

@@ -512,23 +512,18 @@
}
Danbooru.Post.approve = function(post_id) {
$.ajax({
type: "POST",
url: "/moderator/post/approval.json",
data: {"post_id": post_id},
dataType: "json",
success: function(data) {
if (!data.success) {
Danbooru.error("Error: " + data.reason);
} else {
var $post = $("#post_" + post_id);
if ($post.length) {
$post.data("flags", $post.data("flags").replace(/pending/, ""));
$post.removeClass("post-status-pending");
}
Danbooru.notice("Approved post #" + post_id);
$("#pending-approval-notice").hide();
}
$.post(
"/moderator/post/approval.json",
{"post_id": post_id}
).fail(function(data) {
var message = $.map(data.responseJSON.errors, function(msg, attr) { return msg; }).join("; ");
Danbooru.error("Error: " + message);
}).done(function(data) {
var $post = $("#post_" + post_id);
if ($post.length) {
$post.data("flags", $post.data("flags").replace(/pending/, ""));
$post.removeClass("post-status-pending");
Danbooru.notice("Approved post #" + post_id);
}
});
}

View File

@@ -9,7 +9,7 @@ module Moderator
cookies.permanent[:moderated] = Time.now.to_i
post = ::Post.find(params[:post_id])
@approval = post.approve!
respond_with(@approval)
respond_with(:moderator, @approval)
end
end
end

View File

@@ -1 +0,0 @@
{"success": <%= @post.errors.empty? %>, "reason": <%= raw @post.errors.full_messages.join("; ").to_json %>}