X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/ba917d72d48615cdd0c6da87d41b6bd0f9f26666..303424c3f3ed01f65c9f880ff1ff32bc7a46621b:/apps/workbench/app/views/application/_show_text_with_locators.html.erb
diff --git a/apps/workbench/app/views/application/_show_text_with_locators.html.erb b/apps/workbench/app/views/application/_show_text_with_locators.html.erb
index f25bd2b4c9..4525c44914 100644
--- a/apps/workbench/app/views/application/_show_text_with_locators.html.erb
+++ b/apps/workbench/app/views/application/_show_text_with_locators.html.erb
@@ -5,12 +5,27 @@
<% text_data.each_line do |l| %>
<% text_part = l %>
<% match = keep_locator_in_json l %>
- <% if match %>
- <% text_part = match[1] %>
- <% rindex = match[2].rindex('"'); match2 = match[2][0..rindex-1] %>
- <% pdh_readable = object_readable(match2) %>
- <% quote_char = '"' %>
- <% end %>
- <%= text_part %><% if match %><% if pdh_readable then %><%= link_to_arvados_object_if_readable(match[3], match[3], friendly_name: true) %><%= link_to_arvados_object_if_readable(match2, match2, link_text: match[4]) %><% else %><%= match2%><% end %><%=quote_char+match[5]%>
<% end %>
+
+ <%
+ if match
+ text_part = match[1]
+ rindex = match[2].rindex('"'); match2 = match[2][0..rindex-1]
+ quote_char = '"'
+
+ pdh_readable = object_readable(match2)
+ file_link = ''
+ if pdh_readable and match[4].size > 0
+ link_params = {controller: 'collections', action: 'show_file', uuid: match[3], file: match[4][1..-1]}
+ preview_allowed = preview_allowed_for(match[4])
+ if preview_allowed
+ file_link = link_to(raw(match[4]), link_params.merge(disposition: 'inline'))
+ else
+ file_link = link_to(raw(match[4]), link_params.merge(disposition: 'attachment'))
+ end
+ end
+ end
+ %>
+
+ <%= text_part %><% if match %><% if pdh_readable then %><%= link_to_arvados_object_if_readable(match[3], match[3], friendly_name: true) %><%= file_link%><% else %><%= match2%><% end %><%=quote_char+match[5]%>
<% end %>
<% end %>