Still working on link naming
authorPeter Amstutz <tetron@cosmos>
Sat, 11 Jan 2014 02:16:11 +0000 (21:16 -0500)
committerPeter Amstutz <tetron@cosmos>
Sat, 11 Jan 2014 02:16:11 +0000 (21:16 -0500)
apps/workbench/app/helpers/application_helper.rb
apps/workbench/app/views/application/_arvados_attr_value.html.erb
apps/workbench/app/views/application/_arvados_object.html.erb
apps/workbench/app/views/application/_arvados_object_attr.html.erb

index fe35bfe99e8b37833a9da12b8c0780a189736e07..0c552dfa4f57aa31f4f1c502db4bfdb9d2ef37ca 100644 (file)
@@ -32,11 +32,13 @@ module ApplicationHelper
       link_name = opts[:link_text]
       if !link_name
         link_name = link_uuid
-        opts[:friendly_name]
-        if opts[:friendly_name] and resource_class.column_names.include? "name"
-          link_name = resource_class.find(link_uuid).name
+
+        if opts[:friendly_name] and resource_class.column_names.include? "name" and resource_class.find(link_uuid).name != nil and not resource_class.find(link_uuid).name.empty?
+          link_name = "#{resource_class.to_s} #{resource_class.find(link_uuid).name}"
+        elsif opts[:friendly_name] and resource_class.column_names.include? "hostname" and resource_class.find(link_uuid).hostname != nil and not resource_class.find(link_uuid).hostname.empty?
+          link_name = "#{resource_class.to_s} #{resource_class.find(link_uuid).hostname}"
         elsif opts[:friendly_name] and resource_class.column_names.include? "first_name"
-          link_name = "#{resource_class.find(link_uuid).first_name} #{resource_class.find(link_uuid).last_name}"
+          link_name = "#{resource_class.to_s} #{resource_class.find(link_uuid).first_name} #{resource_class.find(link_uuid).last_name}"
         else
           if opts[:with_class_name]
             link_name = "#{resource_class.to_s} #{link_name}"
index 0fb0181c860101417714f584939475379cbc9301..55f8d085edd6aba1e97c3c9029af80dec4a65dea 100644 (file)
@@ -3,14 +3,16 @@
     <%= message %><br />
   <% end %>
 <% else %>
-    <% if attr == 'uuid' and (uuid = attrvalue.split('-')).size == 3 %>
-      <%= uuid[0..-2].join('-') %>-<b><%= uuid[-1] %></b>
-    <% elsif allow_edit && obj.attribute_editable?(attr) %>
-      <%= render_editable_attribute obj, attr %>
-    <% else %>
-      <%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: obj, with_class_name: true, friendly_name: true} %>
-    <% end %>
-    <% if resource_class_for_uuid(attrvalue, {referring_object: obj, referring_attr: attr}) %>
-      <%= link_to_if_arvados_object(attrvalue, { referring_object: obj, link_text: raw('<span class="icon-hand-right"></span>'), referring_attr: attr })  %>
-    <% end %>
+      <% if obj.attribute_editable?(attr) %>
+        <%= render_editable_attribute obj, attr %>
+        <% if resource_class_for_uuid(attrvalue, {referring_object: obj, referring_attr: attr}) %>
+       (<%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: obj, with_class_name: true, friendly_name: true} %>
+        <%= link_to_if_arvados_object(attrvalue, { referring_object: obj, link_text: raw('<span class="icon-hand-right"></span>'), referring_attr: attr })  %>)
+        <% end %>
+      <% else %>
+        <%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: obj, with_class_name: true, friendly_name: true} %>
+        <% if resource_class_for_uuid(attrvalue, {referring_object: obj, referring_attr: attr}) %>
+          <%= link_to_if_arvados_object(attrvalue, { referring_object: obj, link_text: raw('<span class="icon-hand-right"></span>'), referring_attr: attr })  %>
+        <% end %>
+      <% end %>
 <% end %>
index 8e0350ab8326b9c97ecbfbaaeb6403b01c8babca..95894d1222749632143f8d33cb53a910b613334e 100644 (file)
   <tbody>
     <% incoming.each do |link| %>
       <tr>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "uuid", attrvalue: link.uuid, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "link_class", attrvalue: link.link_class, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "name", attrvalue: link.name, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "head_uuid", attrvalue: link.head_uuid, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "properties", attrvalue: link.properties, allow_edit: false } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "uuid", attrvalue: link.uuid } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "link_class", attrvalue: link.link_class } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "head_uuid", attrvalue: link.head_uuid } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "properties", attrvalue: link.properties } %></td>
       </tr>
     <% end %>
   </tbody>
   <tbody>
     <% outgoing.each do |link| %>
       <tr>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "uuid", attrvalue: link.uuid, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "link_class", attrvalue: link.link_class, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "name", attrvalue: link.name, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "tail_uuid", attrvalue: link.tail_uuid, allow_edit: false } %></td>
-        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "properties", attrvalue: link.properties, allow_edit: false } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "uuid", attrvalue: link.uuid } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "link_class", attrvalue: link.link_class } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "tail_uuid", attrvalue: link.tail_uuid } %></td>
+        <td><%= render partial: 'application/arvados_attr_value', locals: { obj: link, attr: "properties", attrvalue: link.properties } %></td>
       </tr>
     <% end %>
   </tbody>
index 90c8a61e46c896cb3cd5dee4bf1bc5621566e515..ec2ac365e09003dd0f0d361e2ecf555da569eb84 100644 (file)
@@ -2,7 +2,7 @@
 <tr class="info">
   <td><%= attr %>[<%= infokey %>]</td>
   <td>
-    <%= render partial: 'application/arvados_attr_value', locals: { obj: @object, attr: nil, attrvalue: infocontent, allow_edit: false } %>
+    <%= render partial: 'application/arvados_attr_value', locals: { obj: @object, attr: nil, attrvalue: infocontent } %>
   </td>
 </tr>
 <% end %>
@@ -10,7 +10,7 @@
 <tr class="<%= 'info' if %w(uuid owner_uuid created_at modified_at modified_by_user_uuid modified_by_client_uuid updated_at).index(attr.to_s).nil? %>">
   <td><%= attr %></td>
   <td>
-    <%= render partial: 'application/arvados_attr_value', locals: { obj: @object, attr: attr, attrvalue: attrvalue, allow_edit: true } %>
+    <%= render partial: 'application/arvados_attr_value', locals: { obj: @object, attr: attr, attrvalue: attrvalue } %>
   </td>
 </tr>
 <% end %>