post votes: fix error handling.

* Clean up javascript.
* Return HTTP 422 instead of HTTP 500 on "you have already voted for
  this post" errors.
* In json/xml error responses, return the error message in the `message`
  field, not `reason`.
* In json/xml success responses, return the post itself instead of a
  plain `{ success: true }` object.
This commit is contained in:
evazion
2019-08-13 21:30:20 -05:00
parent 00239c4901
commit f6b737103a
7 changed files with 11 additions and 40 deletions

View File

@@ -1,9 +1,5 @@
<% if @error %>
$(window).trigger("danbooru:notice", "<%= j @error.to_s %>");
<% else %>
$(window).trigger("danbooru:notice", "Vote saved");
$("#score-for-post-<%= @post.id %>").html(<%= @post.score %>);
<% end %>
Danbooru.Utility.notice("Vote saved");
$("#score-for-post-<%= @post.id %>").html(<%= @post.score %>);
$("#vote-links-for-post-<%= @post.id %>").hide();
$("#unvote-link-for-post-<%= @post.id %>").show();