Skip to content

Commit ee55cff

Browse files
committed
Factor failed jobs into their own partial
1 parent 44eb889 commit ee55cff

File tree

2 files changed

+51
-50
lines changed

2 files changed

+51
-50
lines changed

lib/resque/server/views/failed.erb

Lines changed: 1 addition & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -20,56 +20,7 @@
2020

2121
<ul class='failed'>
2222
<% Resque::Failure.each(failed_start_at, failed_per_page, params[:queue], params[:class]) do |id, job| %>
23-
<li>
24-
<dl>
25-
<% if job.nil? %>
26-
<dt>Error</dt>
27-
<dd>Job <%= id %> could not be parsed; perhaps it contains invalid JSON?</dd>
28-
<% else %>
29-
<dt>Worker</dt>
30-
<dd>
31-
<a href="<%= u(:workers, job['worker']) %>"><%= job['worker'].split(':')[0...2].join(':') %></a> on <b class='queue-tag'><%= job['queue'] %></b > at <b><span class="time"><%= Time.parse(job['failed_at']).strftime(failed_date_format) %></span></b>
32-
<% if job['retried_at'] %>
33-
<div class='retried'>
34-
Retried <b><span class="time"><%= Time.parse(job['retried_at']).strftime(failed_date_format) %></span></b>
35-
<a href="<%= u "failed/remove/#{id}" %>" class="remove" rel="remove">Remove</a>
36-
</div>
37-
<% else %>
38-
<div class='controls'>
39-
<a href="<%= u "failed/requeue/#{id}" %>" rel="retry">Retry</a>
40-
or
41-
<a href="<%= u "failed/remove/#{id}" %>" rel="remove">Remove</a>
42-
</div>
43-
<% end %>
44-
</dd>
45-
<dt>Class</dt>
46-
<dd>
47-
<% if job['payload'] && job['payload']['class'] %>
48-
<a href="<%= u "failed/#{params[:queue]}?class=#{job['payload']['class']}" %>">
49-
<code><%= job['payload']['class'] %></code>
50-
</a>
51-
<% else %>
52-
<code>nil</code>
53-
<% end %>
54-
</dd>
55-
<dt>Arguments</dt>
56-
<dd><pre><%=h job['payload'] ? show_args(job['payload']['args']) : 'nil' %></pre></dd>
57-
<dt>Exception</dt>
58-
<dd><code><%= job['exception'] %></code></dd>
59-
<dt>Error</dt>
60-
<dd class='error'>
61-
<% if job['backtrace'] %>
62-
<a href="#" class="backtrace"><%= h(job['error']) %></a>
63-
<pre style='display:none'><%=h job['backtrace'].join("\n") %></pre>
64-
<% else %>
65-
<%=h job['error'] %>
66-
<% end %>
67-
</dd>
68-
<% end %>
69-
</dl>
70-
<div class='r'>
71-
</div>
72-
</li>
23+
<%= partial :failed_job, :id => id, :job => job %>
7324
<% end %>
7425
</ul>
7526

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<li>
2+
<dl>
3+
<% if job.nil? %>
4+
<dt>Error</dt>
5+
<dd>Job <%= id %> could not be parsed; perhaps it contains invalid JSON?</dd>
6+
<% else %>
7+
<dt>Worker</dt>
8+
<dd>
9+
<a href="<%= u(:workers, job['worker']) %>"><%= job['worker'].split(':')[0...2].join(':') %></a> on <b class='queue-tag'><%= job['queue'] %></b > at <b><span class="time"><%= Time.parse(job['failed_at']).strftime(failed_date_format) %></span></b>
10+
<% if job['retried_at'] %>
11+
<div class='retried'>
12+
Retried <b><span class="time"><%= Time.parse(job['retried_at']).strftime(failed_date_format) %></span></b>
13+
<a href="<%= u "failed/remove/#{id}" %>" class="remove" rel="remove">Remove</a>
14+
</div>
15+
<% else %>
16+
<div class='controls'>
17+
<a href="<%= u "failed/requeue/#{id}" %>" rel="retry">Retry</a>
18+
or
19+
<a href="<%= u "failed/remove/#{id}" %>" rel="remove">Remove</a>
20+
</div>
21+
<% end %>
22+
</dd>
23+
<dt>Class</dt>
24+
<dd>
25+
<% if job['payload'] && job['payload']['class'] %>
26+
<a href="<%= u "failed/#{params[:queue]}?class=#{job['payload']['class']}" %>">
27+
<code><%= job['payload']['class'] %></code>
28+
</a>
29+
<% else %>
30+
<code>nil</code>
31+
<% end %>
32+
</dd>
33+
<dt>Arguments</dt>
34+
<dd><pre><%=h job['payload'] ? show_args(job['payload']['args']) : 'nil' %></pre></dd>
35+
<dt>Exception</dt>
36+
<dd><code><%= job['exception'] %></code></dd>
37+
<dt>Error</dt>
38+
<dd class='error'>
39+
<% if job['backtrace'] %>
40+
<a href="#" class="backtrace"><%= h(job['error']) %></a>
41+
<pre style='display:none'><%=h job['backtrace'].join("\n") %></pre>
42+
<% else %>
43+
<%=h job['error'] %>
44+
<% end %>
45+
</dd>
46+
<% end %>
47+
</dl>
48+
<div class='r'>
49+
</div>
50+
</li>

0 commit comments

Comments
 (0)