add support for banning/unbanning posts
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
class PostsController < ApplicationController
|
class PostsController < ApplicationController
|
||||||
before_filter :member_only, :except => [:show, :show_seq, :index]
|
before_filter :member_only, :except => [:show, :show_seq, :index]
|
||||||
|
before_fitler :janitor_only, :only => [:ban, :unban]
|
||||||
after_filter :save_recent_tags, :only => [:update]
|
after_filter :save_recent_tags, :only => [:update]
|
||||||
respond_to :html, :xml, :json
|
respond_to :html, :xml, :json
|
||||||
rescue_from PostSets::SearchError, :with => :rescue_exception
|
rescue_from PostSets::SearchError, :with => :rescue_exception
|
||||||
@@ -68,6 +69,19 @@ class PostsController < ApplicationController
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def ban
|
||||||
|
@post = Post.find(params[:id])
|
||||||
|
@post.update_attribute(:is_banned, true)
|
||||||
|
redirect_to(post_path(@post), :notice => "Post was banned")
|
||||||
|
end
|
||||||
|
|
||||||
|
def unban
|
||||||
|
@post = Post.find(params[:id])
|
||||||
|
@post.update_attribute(:is_Banned, false)
|
||||||
|
redirect_to(post_path(@post), :notice => "Post was unbanned")
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
private
|
private
|
||||||
def tag_query
|
def tag_query
|
||||||
params[:tags] || (params[:post] && params[:post][:tags])
|
params[:tags] || (params[:post] && params[:post][:tags])
|
||||||
|
|||||||
@@ -34,6 +34,12 @@
|
|||||||
<li><%= link_to "Hide from queue", moderator_post_disapproval_path(:post_id => post.id), :remote => true, :method => :post, :id => "disapprove" %></li>
|
<li><%= link_to "Hide from queue", moderator_post_disapproval_path(:post_id => post.id), :remote => true, :method => :post, :id => "disapprove" %></li>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
|
<% if post.is_banned? %>
|
||||||
|
<li><%= link_to "Unban", unban_post_path(post), :method => :post %></li>
|
||||||
|
<% else %>
|
||||||
|
<li><%= link_to "Ban", ban_post_path(post), :method => :post %></li>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
<% if CurrentUser.is_admin? %>
|
<% if CurrentUser.is_admin? %>
|
||||||
<li><%= link_to "Expunge", expunge_moderator_post_post_path(:post_id => post.id), :remote => true, :method => :post, :id => "expunge", :confirm => "This will permanently delete this post (meaning the file will be deleted). Are you sure you want to delete this post?" %></li>
|
<li><%= link_to "Expunge", expunge_moderator_post_post_path(:post_id => post.id), :remote => true, :method => :post, :id => "expunge", :confirm => "This will permanently delete this post (meaning the file will be deleted). Are you sure you want to delete this post?" %></li>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|||||||
@@ -22,6 +22,8 @@ Danbooru::Application.routes.draw do
|
|||||||
post :expunge
|
post :expunge
|
||||||
post :delete
|
post :delete
|
||||||
post :undelete
|
post :undelete
|
||||||
|
post :ban
|
||||||
|
post :unban
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user