aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/controllers/admin_censor_rule_controller.rb55
-rw-r--r--app/views/admin_censor_rule/_form.html.erb2
-rw-r--r--app/views/admin_censor_rule/_show.html.erb14
-rw-r--r--app/views/admin_censor_rule/new.html.erb6
4 files changed, 54 insertions, 23 deletions
diff --git a/app/controllers/admin_censor_rule_controller.rb b/app/controllers/admin_censor_rule_controller.rb
index 6f79b5ba1..68ca57510 100644
--- a/app/controllers/admin_censor_rule_controller.rb
+++ b/app/controllers/admin_censor_rule_controller.rb
@@ -8,23 +8,49 @@ class AdminCensorRuleController < AdminController
def new
if params[:info_request_id]
@info_request = InfoRequest.find(params[:info_request_id])
+ @censor_rule = @info_request.censor_rules.build
+ @form_url = admin_info_request_censor_rules_path(@info_request)
end
+
if params[:user_id]
@censor_user = User.find(params[:user_id])
+ @censor_rule = @censor_user.censor_rules.build
+ @form_url = admin_user_censor_rules_path(@censor_user)
end
+
+ @censor_rule ||= CensorRule.new
+ @form_url ||= admin_rule_create_path
end
def create
- params[:censor_rule][:last_edit_editor] = admin_current_user()
- @censor_rule = CensorRule.new(params[:censor_rule])
+ params[:censor_rule][:last_edit_editor] = admin_current_user
+
+ if params[:info_request_id]
+ @info_request = InfoRequest.find(params[:info_request_id])
+ @censor_rule = @info_request.censor_rules.build(params[:censor_rule])
+ @form_url = admin_info_request_censor_rules_path(@info_request)
+ end
+
+ if params[:user_id]
+ @censor_user = User.find(params[:user_id])
+ @censor_rule = @censor_user.censor_rules.build(params[:censor_rule])
+ @form_url = admin_user_censor_rules_path(@censor_user)
+ end
+
+ @censor_rule ||= CensorRule.new(params[:censor_rule])
+ @form_url ||= admin_rule_create_path
+
if @censor_rule.save
if !@censor_rule.info_request.nil?
expire_for_request(@censor_rule.info_request)
end
+
if !@censor_rule.user.nil?
expire_requests_for_user(@censor_rule.user)
end
+
flash[:notice] = 'CensorRule was successfully created.'
+
if !@censor_rule.info_request.nil?
redirect_to admin_request_show_url(@censor_rule.info_request)
elsif !@censor_rule.user.nil?
@@ -42,16 +68,20 @@ class AdminCensorRuleController < AdminController
end
def update
- params[:censor_rule][:last_edit_editor] = admin_current_user()
+ params[:censor_rule][:last_edit_editor] = admin_current_user
@censor_rule = CensorRule.find(params[:id])
+
if @censor_rule.update_attributes(params[:censor_rule])
- if !@censor_rule.info_request.nil?
+ unless @censor_rule.info_request.nil?
expire_for_request(@censor_rule.info_request)
end
- if !@censor_rule.user.nil?
+
+ unless @censor_rule.user.nil?
expire_requests_for_user(@censor_rule.user)
end
+
flash[:notice] = 'CensorRule was successfully updated.'
+
if !@censor_rule.info_request.nil?
redirect_to admin_request_show_url(@censor_rule.info_request)
elsif !@censor_rule.user.nil?
@@ -65,19 +95,22 @@ class AdminCensorRuleController < AdminController
end
def destroy
- censor_rule = CensorRule.find(params[:censor_rule_id])
- info_request = censor_rule.info_request
- user = censor_rule.user
+ @censor_rule = CensorRule.find(params[:censor_rule_id])
+ info_request = @censor_rule.info_request
+ user = @censor_rule.user
- censor_rule.destroy
- if !info_request.nil?
+ @censor_rule.destroy
+
+ unless info_request.nil?
expire_for_request(info_request)
end
- if !user.nil?
+
+ unless user.nil?
expire_requests_for_user(user)
end
flash[:notice] = "CensorRule was successfully destroyed."
+
if !info_request.nil?
redirect_to admin_request_show_url(info_request)
elsif !user.nil?
diff --git a/app/views/admin_censor_rule/_form.html.erb b/app/views/admin_censor_rule/_form.html.erb
index 5035238d6..3f602d2e4 100644
--- a/app/views/admin_censor_rule/_form.html.erb
+++ b/app/views/admin_censor_rule/_form.html.erb
@@ -4,11 +4,9 @@
<%=_("Applies to")%>
<% unless info_request.nil? %>
<%= request_both_links(info_request) %>
- <%= hidden_field 'censor_rule', 'info_request_id', { :value => info_request.id } %>
<% end %>
<% unless user.nil? %>
<%= user_both_links(user) %>
- <%= hidden_field 'censor_rule', 'user_id', { :value => user.id } %>
<% end %>
</div>
diff --git a/app/views/admin_censor_rule/_show.html.erb b/app/views/admin_censor_rule/_show.html.erb
index 0d4cece93..46904b3b9 100644
--- a/app/views/admin_censor_rule/_show.html.erb
+++ b/app/views/admin_censor_rule/_show.html.erb
@@ -1,18 +1,17 @@
-
<% if censor_rules.size > 0 %>
<table class="table table-condensed">
<tr>
<th>Id</th>
- <% for column in CensorRule.content_columns %>
+ <% CensorRule.content_columns.each do |column| %>
<th><%= column.human_name %></th>
<% end %>
<th>Actions</th>
</tr>
- <% for censor_rule in censor_rules %>
+ <% censor_rules.each do |censor_rule| %>
<tr class="<%= cycle('odd', 'even') %>">
<td><%=h censor_rule.id %></td>
- <% for column in CensorRule.content_columns.map { |c| c.name } %>
+ <% CensorRule.content_columns.map { |c| c.name }.each do |column| %>
<td><%=h censor_rule.send(column) %></td>
<% end %>
<td>
@@ -26,10 +25,11 @@
<% end %>
<% if defined? info_request %>
- <%= link_to "New censor rule (for this request only)", admin_rule_new_path(:info_request_id => info_request.id), :class => "btn btn-info" %>
+ <%= link_to "New censor rule", new_admin_info_request_censor_rule_path(info_request), :class => "btn btn-info" %>
+ <span class="label label-info">for this request only</span>
<% end %>
<% if defined? user %>
- <%= link_to "New censor rule", admin_rule_new_path(:user_id => user.id), :class => "btn btn-info" %> <span class="label label-info">for all requests by this user</span>
+ <%= link_to "New censor rule", new_admin_user_censor_rule_path(user), :class => "btn btn-info" %>
+ <span class="label label-info">for all requests by this user</span>
<% end %>
-
diff --git a/app/views/admin_censor_rule/new.html.erb b/app/views/admin_censor_rule/new.html.erb
index 77d22990c..26b3212be 100644
--- a/app/views/admin_censor_rule/new.html.erb
+++ b/app/views/admin_censor_rule/new.html.erb
@@ -1,11 +1,11 @@
<% @title = _('New censor rule') %>
-<h1><%=@title%></h1>
+<h1><%= @title %></h1>
-<%= form_tag admin_rule_create_path, :class => "form form-horizontal" do %>
+<%= form_for @censor_rule, :url => @form_url, :class => "form form-horizontal" do %>
<%= render :partial => 'form', :locals => { :info_request => @info_request, :user => @censor_user } %>
+
<div class="form-actions">
<%= submit_tag "Create", :class => "btn btn-primary" %>
</div>
<% end %>
-