aboutsummaryrefslogtreecommitdiffstats
path: root/app/views/request
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/request')
-rw-r--r--app/views/request/_act.html.erb9
-rw-r--r--app/views/request/_incoming_correspondence.html.erb2
-rw-r--r--app/views/request/_request_filter_form.html.erb59
-rw-r--r--app/views/request/_request_search_form.html.erb35
-rw-r--r--app/views/request/_search_ahead.html.erb30
-rw-r--r--app/views/request/_sidebar.html.erb1
-rw-r--r--app/views/request/details.html.erb9
-rw-r--r--app/views/request/followup_preview.html.erb4
-rw-r--r--app/views/request/list.html.erb7
-rw-r--r--app/views/request/new.html.erb32
-rw-r--r--app/views/request/preview.html.erb2
-rw-r--r--app/views/request/select_authority.html.erb90
-rw-r--r--app/views/request/show.html.erb23
-rw-r--r--app/views/request/show_response.html.erb2
14 files changed, 171 insertions, 134 deletions
diff --git a/app/views/request/_act.html.erb b/app/views/request/_act.html.erb
index 1199cb4a2..878cdf4ff 100644
--- a/app/views/request/_act.html.erb
+++ b/app/views/request/_act.html.erb
@@ -1,7 +1,14 @@
<h2><%= _("Act on what you've learnt") %></h2>
<div class="act_link">
- <% tweet_link = "https://twitter.com/share?" + {:url => request.url, :via => AlaveteliConfiguration::twitter_username, :text => "'#{@info_request.title}'", :related => _('alaveteli_foi:The software that runs {{site_name}}', :site_name => site_name)}.to_query %>
+ <% tweet_link = "https://twitter.com/share?" << {
+ :url => request.url,
+ :via => AlaveteliConfiguration.twitter_username,
+ :text => "'#{ @info_request.title }'",
+ :related => _('alaveteli_foi:The software that runs {{site_name}}', :site_name => site_name)
+ }.to_query
+ %>
+
<% link_to tweet_link do %>
<%= image_tag "twitter-16.png", :alt => "twitter icon" %>
<% end %>
diff --git a/app/views/request/_incoming_correspondence.html.erb b/app/views/request/_incoming_correspondence.html.erb
index f39d650d8..70bd25c7f 100644
--- a/app/views/request/_incoming_correspondence.html.erb
+++ b/app/views/request/_incoming_correspondence.html.erb
@@ -17,7 +17,7 @@
<p class="event_actions">
<% if !@user.nil? && @user.admin_page_links? %>
- <%= link_to "Admin", admin_incoming_edit_path(incoming_message.id) %> |
+ <%= link_to "Admin", edit_admin_incoming_message_path(incoming_message.id) %> |
<% end %>
<%= link_to _("Link to this"), incoming_message_path(incoming_message), :class => "link_to_this" %>
</p>
diff --git a/app/views/request/_request_filter_form.html.erb b/app/views/request/_request_filter_form.html.erb
index 090db01df..0983c8c57 100644
--- a/app/views/request/_request_filter_form.html.erb
+++ b/app/views/request/_request_filter_form.html.erb
@@ -1,41 +1,14 @@
-<%= render :partial => 'general/localised_datepicker' %>
-
-<div id="list-filter">
- <%= form_tag(request.path, :method => "get", :id=>"filter_requests_form") do %>
- <div class="list-filter-item">
- <%= label_tag(:query, _("Keywords"), :class=>"form_label title") %>
- <%= text_field_tag(:query, params[:query]) %>
- </div>
-<% if false # don't think we want this, but leaving as an example %>
- <div class="list-filter-item">
- <%= _("Search for words in:") %> <br/>
- <% [["sent", _("messages from users")],
- ["response", _("messages from authorities")],
- ["comment", _("comments")]].each_with_index do |item, index|
- variety, title = item %>
-
- <%= check_box_tag "request_variety[]", variety, params[:request_variety].nil? ? true : params[:request_variety].include?(variety), :id => "request_variety_#{index}" %>
- <%= label_tag("request_variety_#{index}", title) %> <br/>
- <% end %>
- </div>
-<% end %>
- <div class="list-filter-item">
- <%= label_tag(:query, _("Made between"), :class=>"form_label title") %>
- <%= text_field_tag(:request_date_after, params[:request_date_after], {:class => "use-datepicker", :size => 10}) %>&nbsp;&nbsp;
- <%= label_tag(:query, _("and"), :class=>"form_label") %>
- <%= text_field_tag(:request_date_before, params[:request_date_before], {:class => "use-datepicker", :size => 10}) %>
- </div>
- <div class="list-filter-item">
- <h3 class="title"><%= _("Showing") %></h3>
- <div class="filter-request-types">
- <% statuses = [["all", _("all requests")],
- ["successful", _("successful requests")],
- ["unsuccessful", _("unsuccessful requests")],
- ["awaiting", _("unresolved requests")]] %>
- <% for status, label in statuses %>
- <% if params[:view] != status %>
- <% if params[:controller] == "public_body" %>
- <%= link_to label, url_for(:controller => "public_body", :action => "show", :view => status, :url_name => @public_body.url_name) + "?" + request.query_string + '#results' %>
+<div class="list-filter-item">
+ <h3 class="title"><%= _("Showing") %></h3>
+ <div class="filter-request-types">
+ <% statuses = [["all", _("all requests")],
+ ["successful", _("successful requests")],
+ ["unsuccessful", _("unsuccessful requests")],
+ ["awaiting", _("unresolved requests")]] %>
+ <% statuses.each do |status, label| %>
+ <% if params[:view] != status %>
+ <% if params[:controller] == "public_body" %>
+ <%= link_to label, url_for(:controller => "public_body", :action => "show", :view => status, :url_name => @public_body.url_name) + "?" + request.query_string + '#results' %>
<% else %>
<%= link_to label, url_for(:controller => "request", :action => "list", :view => status) + "?" + request.query_string + '#results' %>
<% end %>
@@ -43,12 +16,6 @@
<%= label %>
<% end %>
<%= "|" unless statuses.last[0] == status %>
- <% end %>
- </div>
- </div>
-
- <div class="list-filter-item">
- <%= submit_tag(_("Search")) %>
- </div>
-<% end %>
+ <% end %>
+ </div>
</div>
diff --git a/app/views/request/_request_search_form.html.erb b/app/views/request/_request_search_form.html.erb
new file mode 100644
index 000000000..3f2f66950
--- /dev/null
+++ b/app/views/request/_request_search_form.html.erb
@@ -0,0 +1,35 @@
+<%= render :partial => 'general/localised_datepicker' %>
+
+<div id="list-filter">
+ <%= form_tag(request.path, :method => "get", :id=>"filter_requests_form") do %>
+ <div class="list-filter-item">
+ <%= label_tag(:query, _("Keywords"), :class=>"form_label title") %>
+ <%= text_field_tag(:query, params[:query]) %>
+ </div>
+<% if false # don't think we want this, but leaving as an example %>
+ <div class="list-filter-item">
+ <%= _("Search for words in:") %> <br/>
+ <% [["sent", _("messages from users")],
+ ["response", _("messages from authorities")],
+ ["comment", _("comments")]].each_with_index do |item, index|
+ variety, title = item %>
+
+ <%= check_box_tag "request_variety[]", variety, params[:request_variety].nil? ? true : params[:request_variety].include?(variety), :id => "request_variety_#{index}" %>
+ <%= label_tag("request_variety_#{index}", title) %> <br/>
+ <% end %>
+ </div>
+<% end %>
+ <div class="list-filter-item">
+ <%= label_tag(:query, _("Made between"), :class=>"form_label title") %>
+ <%= text_field_tag(:request_date_after, params[:request_date_after], {:class => "use-datepicker", :size => 10}) %>&nbsp;&nbsp;
+ <%= label_tag(:query, _("and"), :class=>"form_label") %>
+ <%= text_field_tag(:request_date_before, params[:request_date_before], {:class => "use-datepicker", :size => 10}) %>
+ </div>
+
+ <%= after_form_fields if defined?(after_form_fields) -%>
+
+ <div class="list-filter-item">
+ <%= submit_tag(_("Search")) %>
+ </div>
+<% end %>
+</div>
diff --git a/app/views/request/_search_ahead.html.erb b/app/views/request/_search_ahead.html.erb
index 1e65a5458..4fbe06ebc 100644
--- a/app/views/request/_search_ahead.html.erb
+++ b/app/views/request/_search_ahead.html.erb
@@ -1,14 +1,20 @@
-<div id="request_search_ahead_results">
- <% if !@xapian_requests.nil? %>
- <% if @xapian_requests.results.size > 0 %>
+<% unless @xapian_requests.nil? %>
+ <div id="request_search_ahead_results">
+ <% if @xapian_requests.results.any? %>
+ <span class="close-button">X</span>
<h3><%= _("Possibly related requests:") %></h3>
- <% end %>
- <% for result in @xapian_requests.results %>
- <%= render :partial => 'request/request_listing_short_via_event', :locals => { :event => result[:model], :info_request => result[:model].info_request } %>
- <% end %>
- <p>
- <a id="body-site-search-link"><%= _("Or search in their website for this information.") %></a>
- </p>
- <% end %>
-</div>
+ <% @xapian_requests.results.each do |result| %>
+ <%= render :partial => 'request/request_listing_short_via_event',
+ :locals => { :event => result[:model],
+ :info_request => result[:model].info_request } %>
+ <% end %>
+
+ <p>
+ <a id="body-site-search-link">
+ <%= _("Search in their website for this information &rarr;") %>
+ </a>
+ </p>
+ <% end %>
+ </div>
+<% end %>
diff --git a/app/views/request/_sidebar.html.erb b/app/views/request/_sidebar.html.erb
index 0f7965ffa..0d81ef111 100644
--- a/app/views/request/_sidebar.html.erb
+++ b/app/views/request/_sidebar.html.erb
@@ -10,6 +10,7 @@
:count => follower_count) %>
</p>
<%= render :partial => 'track/tracking_links', :locals => { :track_thing => @track_thing, :own_request => @info_request.user && @info_request.user == @user, :location => 'sidebar' } %>
+ <%= render :partial => 'track/rss_feed', :locals => { :track_thing => @track_thing, :location => 'sidebar' } %>
</div>
<% if @info_request.described_state != "attention_requested" %>
<h2><%= _('Offensive? Unsuitable?') %></h2>
diff --git a/app/views/request/details.html.erb b/app/views/request/details.html.erb
index 3cb2f5afe..194820da6 100644
--- a/app/views/request/details.html.erb
+++ b/app/views/request/details.html.erb
@@ -1,5 +1,10 @@
-<% @title = _("Details of request '") + h(@info_request.title) + "'" %>
-<h1><%= _("Details of request '") + request_link(@info_request) + "'" %></h1>
+<% @title = _("Details of request &ldquo;{{request_title}}&rdquo;",
+ :request_title => h(@info_request.title)) %>
+
+<h1>
+ <%= _("Details of request &ldquo;{{request_title}}&rdquo;",
+ :request_title => request_link(@info_request)) %>
+</h1>
<h2><%= _('Event history') %></h2>
diff --git a/app/views/request/followup_preview.html.erb b/app/views/request/followup_preview.html.erb
index 55afc0245..83978a2f5 100644
--- a/app/views/request/followup_preview.html.erb
+++ b/app/views/request/followup_preview.html.erb
@@ -3,7 +3,7 @@
<div id="followup">
<%= form_for(@outgoing_message, :html => { :id => 'preview_form' }, :url => (@incoming_message.nil? ? show_response_no_followup_url(:id => @info_request.id) : show_response_url(:id => @info_request.id, :incoming_message_id => @incoming_message.id)) + "#followup" ) do |o| %>
-
+
<% if @internal_review %>
<h1><%= _('Now preview your message asking for an internal review') %></h1>
<% else %>
@@ -20,7 +20,7 @@
<div class="correspondence" id="outgoing-0">
<p class="preview_subject">
<strong><%= _('To:') %></strong> <%=h OutgoingMailer.name_for_followup(@info_request, @incoming_message) %>
- <br><strong><%= _('Subject:') %></strong> <%=h OutgoingMailer.subject_for_followup(@info_request, @outgoing_message) %>
+ <br><strong><%= _('Subject:') %></strong> <%= OutgoingMailer.subject_for_followup(@info_request, @outgoing_message, :html => true) %>
</p>
<div class="correspondence_text">
diff --git a/app/views/request/list.html.erb b/app/views/request/list.html.erb
index a465f03ba..75cb463ef 100644
--- a/app/views/request/list.html.erb
+++ b/app/views/request/list.html.erb
@@ -1,13 +1,14 @@
-
<div id="header_left">
- <h1><%=@title%></h1>
- <%= render :partial => 'request/request_filter_form' %>
+ <h1><%= @title %></h1>
+ <%= render :partial => 'request/request_search_form',
+ :locals => { :after_form_fields => render(:partial => 'request/request_filter_form') } %>
</div>
<div id="header_right">
<h2><%= _("Follow these requests") %></h2>
<% if @track_thing %>
<%= render :partial => 'track/tracking_links', :locals => { :track_thing => @track_thing, :own_request => false, :location => 'main' } %>
+ <%= render :partial => 'track/rss_feed', :locals => { :track_thing => @track_thing, :location => 'main' } %>
<% end %>
</div>
diff --git a/app/views/request/new.html.erb b/app/views/request/new.html.erb
index 7f1332464..51224129e 100644
--- a/app/views/request/new.html.erb
+++ b/app/views/request/new.html.erb
@@ -1,19 +1,33 @@
<% unless @batch %>
<script type="text/javascript">
$(document).ready(function(){
- // Avoid triggering too often (on each keystroke) by using the debounce jQuery plugin:
+ // Avoid triggering too often (on each keystroke) by using the
+ // debounce jQuery plugin:
// http://benalman.com/projects/jquery-throttle-debounce-plugin/
$("#typeahead_search").keypress($.debounce( 300, function() {
- $("#typeahead_response").load("<%=search_ahead_url%>?q="+encodeURI(this.value), function() {
- // When following links in typeahead results, open new tab/window
- $("#typeahead_response a").attr("target","_blank");
-
- // Update the public body site search link
- $("#body-site-search-link").attr("href", "http://www.google.com/#q="+encodeURI($("#typeahead_search").val())+
- "+site:<%= @info_request.public_body.calculated_home_page %>");
+ if ( $('#request_search_ahead_results').text().trim().length > 0) {
+ $('#typeahead_response').slideUp('fast');
+ }
+
+ $("#typeahead_response").load("<%= search_ahead_url %>?q="+encodeURI(this.value)+
+ "&requested_from=<%= @info_request.public_body.url_name %>"+
+ "&per_page=3", function() {
+
+ if ( $('#request_search_ahead_results').text().trim().length > 0) {
+ $('#typeahead_response').hide().slideDown('fast');
+
+ // When following links in typeahead results, open new
+ // tab/window
+ $("#typeahead_response a").attr("target","_blank");
+
+ // Update the public body site search link
+ $("#body-site-search-link").attr("href", "http://www.google.com/#q="+encodeURI($("#typeahead_search").val())+
+ "+site:<%= @info_request.public_body.calculated_home_page %>");
+
+ $('.close-button').click(function() { $(this).parent().hide() });
+ }
});
}));
-
});
</script>
<% end %>
diff --git a/app/views/request/preview.html.erb b/app/views/request/preview.html.erb
index 0265d0328..ddd5ab30c 100644
--- a/app/views/request/preview.html.erb
+++ b/app/views/request/preview.html.erb
@@ -23,7 +23,7 @@
<% else %>
<%=h(@info_request.public_body.name)%>
<% end %>
- <br><strong><%= _('Subject:') %></strong> <%=h @info_request.email_subject_request %>
+ <br><strong><%= _('Subject:') %></strong> <%= @info_request.email_subject_request %>
</p>
<div class="correspondence_text">
diff --git a/app/views/request/select_authority.html.erb b/app/views/request/select_authority.html.erb
index ed072cf64..134648264 100644
--- a/app/views/request/select_authority.html.erb
+++ b/app/views/request/select_authority.html.erb
@@ -1,60 +1,60 @@
<script type="text/javascript">
- $(document).ready(function(){
- $("#authority_preview").hide();
-
- // Avoid triggering too often (on each keystroke) by using the debounce jQuery plugin:
+ $(document).ready(function() {
+ // Avoid triggering too often (on each keystroke) by using the debounce
+ // jQuery plugin:
// http://benalman.com/projects/jquery-throttle-debounce-plugin/
$("#query").keypress($.debounce( 300, function() {
// Do a type ahead search and display results
- $("#typeahead_response").load("<%=search_ahead_bodies_url%>?query="+encodeURI(this.value), function() {
- $("#authority_preview").hide(); // Hide the preview, since results have changed
-
- });
+ $("#typeahead_response").load("<%= search_ahead_bodies_url %>?query="+encodeURI(this.value));
}));
- // We're using the existing body list: we intercept the clicks on the titles to
- // display a preview on the right hand side of the screen
- $("#typeahead_response .head a").live('click', function() {
- $("#authority_preview").load(this.href+" #public_body_show", function() {
- $("#authority_preview").show();
- $(window).scrollTop($("#banner").height());
- $("#authority_preview #header_right").hide();
- location.hash = '#header_left';
- });
- return false;
- });
});
</script>
<% @title = _("Select the authority to write to") %>
- <h1 style="clear: left"><%= _('1. Select an authority') %></h1>
-
- <div id="authority_selection">
- <%= form_tag({:controller => "request", :action => "select_authority"}, {:id => "search_form", :method => "get"}) do %>
- <div>
- <p>
- <%= _('First, type in the <strong>name of the UK public authority</strong> you\'d
- like information from. <strong>By law, they have to respond</strong>
- (<a href="{{url}}">why?</a>).', :url => (help_about_path + "#whybother_them").html_safe) %>
- </p>
- <%= text_field_tag 'query', params[:query], { :size => 30, :title => "type your search term here" } %>
- <%= hidden_field_tag 'bodies', 1 %>
- <%= submit_tag _('Search') %>
- </div>
- <% if AlaveteliConfiguration.allow_batch_requests && @user && @user.can_make_batch_requests? %>
- <div id="batch_request_link">
- <p>
- <%= _('Or make a <a href="{{url}}">batch request</a> to <strong>multiple authorities</strong> at once.', :url => select_authorities_path) %>
- </p>
- </div>
- <% end %>
+<h1 style="clear: left"><%= _('1. Select an authority') %></h1>
+
+<div id="authority_selection">
+ <%= form_tag select_authority_path, { :id => 'search_form', :method => 'get' } do %>
+ <div>
+ <p>
+ <%= _(%Q(First, type in the <strong>name of the UK public authority</strong> you'd
+ like information from. <strong>By law, they have to respond</strong>
+ (<a href="{{url}}">why?</a>).), :url => (help_about_path(:anchor => 'whybother_them')).html_safe) %>
+ </p>
+
+ <%= text_field_tag :query,
+ params[:query],
+ { :size => 30,
+ :title => _('type your search term here'),
+ :placeholder => _('e.g. Ministry of Defence') } %>
+ <%= hidden_field_tag :bodies, 1 %>
+ <%= submit_tag _('Search') %>
+ </div>
+
+ <% if AlaveteliConfiguration.allow_batch_requests && @user && @user.can_make_batch_requests? %>
+ <div id="batch_request_link">
+ <p>
+ <%= _('Or make a <a href="{{url}}">batch request</a> to <strong>multiple authorities</strong> at once.',
+ :url => select_authorities_path) %>
+ </p>
+ </div>
<% end %>
+ <% end %>
- <div id="typeahead_response">
- <%= render :partial => 'public_body/search_ahead' %>
- </div>
+ <div id="typeahead_response">
+ <%= render :partial => 'public_body/search_ahead' %>
</div>
- <div id="authority_preview">
- </div>
+</div>
+
+<div id="select_authority_help">
+ <p class="info"><%= _("Can't find the one you want?") %></p>
+ <p class="actions">
+ <%= raw _('<a href="{{browse_url}}">Browse all</a> or <a href="{{add_url}}">ask us to add one</a>.',
+ :browse_url => list_public_bodies_default_path.html_safe,
+ :add_url => help_requesting_path(:anchor => 'missing_body')
+ ).html_safe %>
+ </p>
+</div>
diff --git a/app/views/request/show.html.erb b/app/views/request/show.html.erb
index 153b0b861..89a4c53b8 100644
--- a/app/views/request/show.html.erb
+++ b/app/views/request/show.html.erb
@@ -37,9 +37,9 @@
:user => request_user_link(@info_request, _('An anonymous user')),
:law_used_full => h(@info_request.law_used_full),
:user_admin_link => user_admin_link_for_request(@info_request, _('external'), _('admin')),
- :request_admin_url => admin_request_show_url(@info_request),
+ :request_admin_url => admin_request_url(@info_request),
:public_body_link => public_body_link(@info_request.public_body),
- :public_body_admin_url => admin_body_show_url(@info_request.public_body)) %>
+ :public_body_admin_url => admin_body_url(@info_request.public_body)) %>
<% else %>
<%= _('{{user}} made this {{law_used_full}} request',
:user=>request_user_link(@info_request, _('An anonymous user')),
@@ -51,19 +51,20 @@
<p id="request_status" class="request_icon_line icon_<%= @info_request.calculate_status %>">
<% if @info_request.awaiting_description %>
<% if @is_owning_user && !@info_request.is_external? && !@render_to_file %>
- <%= _('Please <strong>answer the question above</strong> so we know whether the ')%>
- <%= MySociety::Format.fancy_pluralize(@new_responses_count, 'recent response contains', 'recent responses contain') %> <%= _('useful information.') %>
+ <%= n_('Please <strong>answer the question above</strong> so we know whether the recent response contains useful information.',
+ 'Please <strong>answer the question above</strong> so we know whether the recent responses contain useful information.',
+ @new_responses_count) %>
<% else %>
<%= _('This request has an <strong>unknown status</strong>.') %>
<% if @old_unclassified %>
- <%= _('We\'re waiting for someone to read') %>
- <%= MySociety::Format.fancy_pluralize(@new_responses_count, 'a recent response', 'recent responses') %>
- <%= _('and update the status accordingly. Perhaps <strong>you</strong> might like to help out by doing that?') %>
+ <%= n_("We're waiting for someone to read a recent response and update the status accordingly. Perhaps <strong>you</strong> might like to help out by doing that?",
+ "We're waiting for someone to read recent responses and update the status accordingly. Perhaps <strong>you</strong> might like to help out by doing that?",
+ @new_responses_count) %>
<% else %>
- <%= _('We\'re waiting for') %>
- <%= user_link_for_request(@info_request) %> <%= _('to read') %>
- <%= MySociety::Format.fancy_pluralize(@new_responses_count, 'a recent response', 'recent responses') %>
- <%= _('and update the status.') %>
+ <%= n_("We're waiting for {{user}} to read a recent response and update the status.",
+ "We're waiting for {{user}} to read recent responses and update the status.",
+ @new_responses_count,
+ :user => user_link_for_request(@info_request)) %>
<% end %>
<% end %>
<% elsif @status == 'waiting_response' %>
diff --git a/app/views/request/show_response.html.erb b/app/views/request/show_response.html.erb
index ace86cf4c..7571f147b 100644
--- a/app/views/request/show_response.html.erb
+++ b/app/views/request/show_response.html.erb
@@ -35,7 +35,7 @@
</dt>
<dd>
<%= _('To do that please send a private email to ') %><%=h(@postal_email_name)%>
- &lt;<%=link_to h(@postal_email), "mailto:" + @postal_email%>&gt;
+ &lt;<%=mail_to h(@postal_email) %>&gt;
<%= _('containing your postal address, and asking them to reply to this request.
Or you could phone them.') %>