Merge pull request #3111 from evazion/fix-3099
Fix #3099: NilClass error for approval API request
This commit is contained in:
@@ -174,6 +174,12 @@
|
|||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (Danbooru.meta("current-user-can-approve-posts") === "true") {
|
||||||
|
Danbooru.keydown("shift+o", "approve", function(e) {
|
||||||
|
$("#quick-mod-approve").click();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
Danbooru.keydown("a", "prev_page", Danbooru.Post.nav_prev);
|
Danbooru.keydown("a", "prev_page", Danbooru.Post.nav_prev);
|
||||||
Danbooru.keydown("d", "next_page", Danbooru.Post.nav_next);
|
Danbooru.keydown("d", "next_page", Danbooru.Post.nav_next);
|
||||||
Danbooru.keydown("f", "favorite", Danbooru.Post.favorite);
|
Danbooru.keydown("f", "favorite", Danbooru.Post.favorite);
|
||||||
@@ -506,23 +512,18 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
Danbooru.Post.approve = function(post_id) {
|
Danbooru.Post.approve = function(post_id) {
|
||||||
$.ajax({
|
$.post(
|
||||||
type: "POST",
|
"/moderator/post/approval.json",
|
||||||
url: "/moderator/post/approval.json",
|
{"post_id": post_id}
|
||||||
data: {"post_id": post_id},
|
).fail(function(data) {
|
||||||
dataType: "json",
|
var message = $.map(data.responseJSON.errors, function(msg, attr) { return msg; }).join("; ");
|
||||||
success: function(data) {
|
Danbooru.error("Error: " + message);
|
||||||
if (!data.success) {
|
}).done(function(data) {
|
||||||
Danbooru.error("Error: " + data.reason);
|
var $post = $("#post_" + post_id);
|
||||||
} else {
|
if ($post.length) {
|
||||||
var $post = $("#post_" + post_id);
|
$post.data("flags", $post.data("flags").replace(/pending/, ""));
|
||||||
if ($post.length) {
|
$post.removeClass("post-status-pending");
|
||||||
$post.data("flags", $post.data("flags").replace(/pending/, ""));
|
Danbooru.notice("Approved post #" + post_id);
|
||||||
$post.removeClass("post-status-pending");
|
|
||||||
}
|
|
||||||
Danbooru.notice("Approved post #" + post_id);
|
|
||||||
$("#pending-approval-notice").hide();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,14 +30,6 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($("#c-posts").length && $("#a-show").length) {
|
|
||||||
Danbooru.keydown("shift+o", "approve", function(e) {
|
|
||||||
if (Danbooru.meta("current-user-can-approve-posts") === "true") {
|
|
||||||
Danbooru.Post.approve(Danbooru.meta("post-id"));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($("#c-posts #a-index, #c-posts #a-show, #c-favorites #a-index").length) {
|
if ($("#c-posts #a-index, #c-posts #a-show, #c-favorites #a-index").length) {
|
||||||
Danbooru.keydown("r", "random", function(e) {
|
Danbooru.keydown("r", "random", function(e) {
|
||||||
$("#random-post")[0].click();
|
$("#random-post")[0].click();
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ module Moderator
|
|||||||
cookies.permanent[:moderated] = Time.now.to_i
|
cookies.permanent[:moderated] = Time.now.to_i
|
||||||
post = ::Post.find(params[:post_id])
|
post = ::Post.find(params[:post_id])
|
||||||
@approval = post.approve!
|
@approval = post.approve!
|
||||||
respond_with(@approval)
|
respond_with(:moderator, @approval)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ $("#c-posts #approve").hide();
|
|||||||
$("#c-posts #disapprove").hide();
|
$("#c-posts #disapprove").hide();
|
||||||
$("#c-posts #flag").show();
|
$("#c-posts #flag").show();
|
||||||
|
|
||||||
$("#pending-approval-notice").hide();
|
$("#pending-approval-notice, .notice-flagged, .notice-appealed").hide();
|
||||||
|
|
||||||
$("#c-moderator-post-queues #post-<%= @approval.post.id %>").hide();
|
$("#c-moderator-post-queues #post-<%= @approval.post.id %>").hide();
|
||||||
Danbooru.notice("Post was approved");
|
Danbooru.notice("Post was approved");
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{"success": <%= @post.errors.empty? %>, "reason": <%= raw @post.errors.full_messages.join("; ").to_json %>}
|
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
<% if CurrentUser.can_approve_posts? && !post.disapproved_by?(CurrentUser.user) %>
|
<% if CurrentUser.can_approve_posts? && !post.disapproved_by?(CurrentUser.user) %>
|
||||||
<div class="quick-mod">
|
<div class="quick-mod">
|
||||||
<% unless post.is_status_locked? %>
|
<% unless post.is_status_locked? %>
|
||||||
<%= link_to "Approve", moderator_post_approval_path(:post_id => post.id), :method => :post, :remote => true, :class => "btn" %> |
|
<%= link_to "Approve", moderator_post_approval_path(:post_id => post.id), :id => "quick-mod-approve", :method => :post, :remote => true, :class => "btn" %> |
|
||||||
<% end %>
|
<% end %>
|
||||||
<%= link_to "Breaks Rules", moderator_post_disapproval_path(:post_id => post.id, :reason => "breaks_rules"), :method => :post, :remote => true, :class => "btn" %> |
|
<%= link_to "Breaks Rules", moderator_post_disapproval_path(:post_id => post.id, :reason => "breaks_rules"), :method => :post, :remote => true, :class => "btn" %> |
|
||||||
<%= link_to "Poor Quality", moderator_post_disapproval_path(:post_id => post.id, :reason => "poor_quality"), :method => :post, :remote => true, :class => "btn" %> |
|
<%= link_to "Poor Quality", moderator_post_disapproval_path(:post_id => post.id, :reason => "poor_quality"), :method => :post, :remote => true, :class => "btn" %> |
|
||||||
|
|||||||
Reference in New Issue
Block a user