Merge branch '3720-big-manifest-performance-wip'
[arvados.git] / apps / workbench / app / views / application / 404.html.erb
index c1f48bd851edeece98925cbc549cc6e9d55c807e..8a0482274ad0cd18fcbde0d1cb770991ac4f995f 100644 (file)
@@ -1,12 +1,26 @@
+<%
+   if (controller.andand.action_name == 'show') and params[:uuid]
+     class_name = controller.model_class.to_s.underscore
+     class_name_h = class_name.humanize(capitalize: false)
+     req_item = safe_join([class_name_h, " with UUID ",
+                           raw("<code>"), params[:uuid], raw("</code>")], "")
+     req_item_plain_text = safe_join([class_name_h, " with UUID ", params[:uuid]])
+   else
+     req_item = "page you requested"
+     req_item_plain_text = "page you requested"
+   end
+%>
+
 <h2>Not Found</h2>
 
-<p>The item you requested was not found.
+<p>The <%= req_item %> was not found.
 
-<% if controller.andand.action_name == 'show' %>
+<% if class_name %>
 Perhaps you'd like to
-<%= link_to("browse all #{controller.model_class.to_s.underscore.pluralize.humanize(capitalize: false)}",
-            action: :index) %>?
+<%= link_to("browse all #{class_name_h.pluralize}", action: :index, controller: class_name.tableize) %>?
 <% end %>
 
 </p>
 
+<% error_message = "The #{req_item_plain_text} was not found." %>
+<%= render :partial => "report_error", :locals => {error_message: error_message, error_type: '404'} %>