aboutsummaryrefslogtreecommitdiffstats
path: root/app/views/admin_general/timeline.html.erb
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/admin_general/timeline.html.erb')
-rw-r--r--app/views/admin_general/timeline.html.erb99
1 files changed, 99 insertions, 0 deletions
diff --git a/app/views/admin_general/timeline.html.erb b/app/views/admin_general/timeline.html.erb
new file mode 100644
index 000000000..e84539970
--- /dev/null
+++ b/app/views/admin_general/timeline.html.erb
@@ -0,0 +1,99 @@
+<% @title = "Timeline" %>
+
+<h1><%=h @events_title%></h1>
+
+<p>
+<a href="?hour=1">Hour</a>
+| <a href="?day=1">Day</a>
+| <a href="?">2 days</a>
+| <a href="?week=1">Week</a>
+| <a href="?month=1">Month</a>
+| <a href="?all=1">All time</a></p>
+
+<% last_date = nil %>
+<% for event, event_at in @events %>
+ <% if last_date != event_at.to_date %>
+ <% if last_date.nil? %>
+ <p>
+ <% end %>
+ <h3><%= simple_date(event_at) %></h3>
+ <p>
+ <% else %>
+ <br>
+ <% end %>
+ <% last_date = event_at.to_date %>
+
+ <%= simple_time(event_at) %>
+
+ <% if event.is_a? InfoRequestEvent %>
+ <%= request_both_links(event.info_request) %>
+ <% if event.event_type == 'edit' %>
+ was edited by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% for p in ['title', 'prominence', 'described_state', 'awaiting_description']
+ if event.params[p.to_sym] != event.params[('old_'+p).to_sym]
+ %> Changed <%=p%> from '<%=h event.params[('old_'+p).to_sym]%>' to '<%=h event.params[p.to_sym] %>'. <%
+ end
+ end
+ %>
+ <% elsif event.event_type == 'edit_outgoing' %>
+ <% outgoing_message = OutgoingMessage.find(event.params[:outgoing_message_id].to_i) %>
+ had outgoing message edited by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% if outgoing_message %>
+ <% for p in ['body']
+ if event.params[p.to_sym] != event.params[('old_'+p).to_sym]
+ %> Changed <%=p%> from '<%=h event.params[('old_'+p).to_sym]%>' to '<%=h event.params[p.to_sym] %>'. <%
+ end
+ end
+ %>
+ <% else %>
+ Missing outgoing message, internal error.
+ <% end %>
+ <% elsif event.event_type == 'edit_comment' %>
+ <% comment = Comment.find(event.params[:comment_id].to_i) %>
+ had annotation edited by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% if comment %>
+ <% for p in ['body']
+ if event.params[p.to_sym] != event.params[('old_'+p).to_sym]
+ %> Changed <%=p%> from '<%=h event.params[('old_'+p).to_sym]%>' to '<%=h event.params[p.to_sym] %>'. <%
+ end
+ end
+ %>
+ <% else %>
+ Missing annotation, internal error.
+ <% end %>
+ <% elsif event.event_type == 'destroy_incoming' %>
+ had incoming message deleted by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% elsif event.event_type == 'destroy_outgoing' %>
+ had outgoing message deleted by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% elsif event.event_type == 'hide' %>
+ was hidden by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% elsif event.event_type == 'redeliver_outgoing' %>
+ had incoming message redelivered to another request by administrator <strong><%=h event.params[:editor] %></strong>.
+ <% elsif event.event_type == 'response' %>
+ <% incoming_message = event.incoming_message %>
+ received
+ <%= link_to 'a response', main_url(incoming_message_url(incoming_message)) %>
+ from <%=h event.info_request.public_body.name %>.
+ <% elsif event.event_type == 'sent' %>
+ was initially sent to <%=h event.params[:email]%> at <%=h event.info_request.public_body.name %>.
+ <% elsif event.event_type == 'resent' %>
+ had the request resent to <%=h event.params[:email]%> at <%=h event.info_request.public_body.name %>.
+ <% elsif event.event_type == 'followup_sent' %>
+ had a follow up message sent to <%=h event.info_request.public_body.name %>.
+ <% elsif event.event_type == 'comment' %>
+ had an annotation posted by <%=h event.comment.user.name %>.
+ <% elsif event.event_type == 'status_update' %>
+ had its status updated by <%=h User.find(event.params[:user_id]).name %> from '<%= h event.params[:old_described_state] %>' to '<%= h event.params[:described_state] %>'.
+ <% else %>
+ had '<%=event.event_type%>' done to it, parameters <%=h event.params_yaml%>.
+ <% end %>
+ <% else %>
+ <%= public_body_both_links(event.public_body) %>
+ was created/updated by administrator <strong><%=h event.last_edit_editor %></strong>
+ <% end %>
+<% end %>
+<% if not @events.empty? %>
+</p>
+<% end %>
+<%= will_paginate(@events) %>
+