From 5737e8daa925356ea0cc342a833a1576330e0e97 Mon Sep 17 00:00:00 2001 From: Tom Clegg Date: Wed, 31 Jul 2013 11:19:13 -0400 Subject: [PATCH] add links beside editable object uuids --- .../workbench/app/helpers/application_helper.rb | 7 +++++-- .../application/_arvados_object_attr.html.erb | 17 ++++++++++------- .../app/views/application/_index.html.erb | 9 +++++++-- 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/apps/workbench/app/helpers/application_helper.rb b/apps/workbench/app/helpers/application_helper.rb index f630e764f2..c67b314cb8 100644 --- a/apps/workbench/app/helpers/application_helper.rb +++ b/apps/workbench/app/helpers/application_helper.rb @@ -22,8 +22,12 @@ module ApplicationHelper cooked = raw + cooked end + def resource_class_for_uuid(attrvalue, opts={}) + ArvadosBase::resource_class_for_uuid(attrvalue, opts) + end + def link_to_if_arvados_object(attrvalue, opts={}, style_opts={}) - if (resource_class = ArvadosBase::resource_class_for_uuid(attrvalue, opts)) + if (resource_class = resource_class_for_uuid(attrvalue, opts)) link_uuid = attrvalue.is_a?(ArvadosBase) ? attrvalue.uuid : attrvalue link_name = opts[:link_text] if !link_name @@ -31,7 +35,6 @@ module ApplicationHelper if opts[:with_class_name] link_name = "#{resource_class.to_s} #{link_name}" end - style_opts = style_opts.merge(style: 'font-family: monospace') end link_to link_name, { controller: resource_class.to_s.underscore.pluralize, action: 'show', id: link_uuid }, style_opts else diff --git a/apps/workbench/app/views/application/_arvados_object_attr.html.erb b/apps/workbench/app/views/application/_arvados_object_attr.html.erb index ce175cc2f6..7effb1e97d 100644 --- a/apps/workbench/app/views/application/_arvados_object_attr.html.erb +++ b/apps/workbench/app/views/application/_arvados_object_attr.html.erb @@ -17,12 +17,15 @@ <% elsif attrvalue.is_a? String or attrvalue.respond_to? :to_s %> <%= attr %> - <% if attr == 'uuid' and (uuid = attrvalue.split('-')).size == 3 %> - <%= uuid[0..-2].join('-') %>-<%= uuid[-1] %> - <% elsif @object.attribute_editable?(attr) %> - <%= render_editable_attribute @object, attr %> - <% else %> - <%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: @object, with_class_name: true} %> - <% end %> + + <% if attr == 'uuid' and (uuid = attrvalue.split('-')).size == 3 %> + <%= uuid[0..-2].join('-') %>-<%= uuid[-1] %> + <% elsif @object.attribute_editable?(attr) %> + <%= render_editable_attribute @object, attr %> + <% else %> + <%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: @object, with_class_name: true} %> + <% end %> + <%= link_to_if_arvados_object(attrvalue, { referring_object: @object, link_text: raw('') }) if resource_class_for_uuid(attrvalue, {referring_object: @object}) %> + <% end %> diff --git a/apps/workbench/app/views/application/_index.html.erb b/apps/workbench/app/views/application/_index.html.erb index f79555f8bd..f72a68ce3d 100644 --- a/apps/workbench/app/views/application/_index.html.erb +++ b/apps/workbench/app/views/application/_index.html.erb @@ -28,10 +28,15 @@ <% if attr == 'uuid' %> <%= link_to_if_arvados_object object %> - <% elsif object.attribute_editable? attr %> + <%= link_to_if_arvados_object(object, { link_text: raw('') }) %> + <% else %> + <% if object.attribute_editable? attr %> <%= render_editable_attribute object, attr %> <% else %> - <%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: @object, with_class_name: true} %> + <%= resource_class_for_uuid(attrvalue, referring_attr: attr, referring_object: @object).to_s %> + <%= attrvalue %> + <% end %> + <%= link_to_if_arvados_object(attrvalue, { referring_object: @object, link_text: raw('') }) if resource_class_for_uuid(attrvalue, {referring_object: @object}) %> <% end %> <% end %> -- 2.39.5