aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/helpers/widget_helper.rb47
-rw-r--r--app/views/widgets/show.html.erb36
2 files changed, 48 insertions, 35 deletions
diff --git a/app/helpers/widget_helper.rb b/app/helpers/widget_helper.rb
new file mode 100644
index 000000000..f188f6b08
--- /dev/null
+++ b/app/helpers/widget_helper.rb
@@ -0,0 +1,47 @@
+module WidgetHelper
+ def status_description(info_request)
+ status = info_request.calculate_status
+ case status
+ when 'waiting_classification'
+ _('Awaiting classification')
+ when 'waiting_response'
+ _('Awaiting response')
+ when 'waiting_response_overdue'
+ _('Delayed')
+ when 'waiting_response_very_overdue'
+ _('Long overdue')
+ when 'not_held'
+ _('Not held')
+ when 'rejected'
+ _('Rejected')
+ when 'successful'
+ _('Successful')
+ when 'partially_successful'
+ _('Partial success')
+ when 'waiting_clarification'
+ _('Awaiting clarification')
+ when 'gone_postal'
+ _('Handled by post')
+ when 'internal_review'
+ _('Internal review')
+ when 'error_message'
+ _('Delivery error')
+ when 'requires_admin'
+ _('Unusual response')
+ when 'user_withdrawn'
+ _('Withdrawn')
+ when 'attention_requested'
+ _('Needs admin attention')
+ when 'vexatious'
+ _('Vexatious')
+ when 'not_foi'
+ _('Not an FOI request')
+ else
+ if info_request.respond_to?(:theme_display_status)
+ info_request.theme_display_status(status)
+ else
+ _('Unknown')
+ end
+ end
+ end
+end \ No newline at end of file
diff --git a/app/views/widgets/show.html.erb b/app/views/widgets/show.html.erb
index 73b875fa7..fd2391035 100644
--- a/app/views/widgets/show.html.erb
+++ b/app/views/widgets/show.html.erb
@@ -10,41 +10,7 @@
</div>
<div class="alaveteli-widget__status <%= @info_request.calculate_status %>">
<p class="alaveteli-widget__status__status-label">Status</p>
- <% if @info_request.awaiting_description %>
- <%= _('Unknown Status') %>
- <% elsif @status == 'waiting_response' %>
- <%= _('Waiting Response') %>
- <% elsif @status == 'waiting_response_overdue' %>
- <%= _('Waiting Response') %>
- <% elsif @status == 'waiting_response_very_overdue' %>
- <%= _('Waiting Response') %>
- <% elsif @status == 'not_held' %>
- <%= _('Not Held') %>
- <% elsif @status == 'rejected' %>
- <%= _('Rejected') %>
- <% elsif @status == 'successful' %>
- <%= _('Successful') %>
- <% elsif @status == 'partially_successful' %>
- <%= _('Partial Success') %>
- <% elsif @status == 'waiting_clarification' %>
- <%= _('Waiting Clarification') %>
- <% elsif @status == 'gone_postal' %>
- <%= _('Gone Postal') %>
- <% elsif @status == 'internal_review' %>
- <%= _('Internal Review') %>
- <% elsif @status == 'error_message' %>
- <%= _('Error Message') %>
- <% elsif @status == 'requires_admin' %>
- <%= _('Requires Admin') %>
- <% elsif @status == 'user_withdrawn' %>
- <%= _('User Withdrawn') %>
- <% elsif @status == 'attention_requested' %>
- <%= _('Attention Requested') %>
- <% elsif @status == 'vexatious' %>
- <%= _('Vexatious') %>
- <% else %>
- <%= render :partial => 'general/custom_state_descriptions', :locals => { :status => @status } %>
- <% end %>
+ <%= status_description(@info_request) %>
</div>
</div>
<div class="alaveteli-widget__people-count">