attrvalue
end
end
+
+ def render_editable_attribute(object, attr)
+ attrvalue = object.send attr
+ return attrvalue if !object.attribute_editable? attr
+ link_to object.send(attr).to_s, '#', {
+ "data-type" => "text",
+ "data-resource" => object.class.to_s.underscore,
+ "data-name" => attr,
+ "data-url" => url_for(action: "update", id: object.uuid, controller: object.class.to_s.pluralize.underscore),
+ "data-original-title" => "Update #{attr.gsub '_', ' '}",
+ :class => "editable"
+ }
+ end
end
<% if attr == 'uuid' and (uuid = attrvalue.split('-')).size == 3 %>
<td><%= uuid[0..-2].join('-') %>-<b><%= uuid[-1] %></b></td>
<% elsif @object.attribute_editable?(attr) %>
- <td><%= link_to "#{attrvalue}", '#', { "data-type" => "text", "data-resource" => @object.class.to_s.singularize.underscore, "data-name" => attr, "data-url" => url_for(action: "update", id: @object.uuid), "data-original-title" => "Enter #{attr}", :class => "editable" } %></td>
+ <td><%= render_editable_attribute @object, attr %></td>
<% else %>
<td><%= link_to_if_arvados_object attrvalue, {referring_attr: attr, referring_object: @object, with_prefixes: true, with_class_name: true} %></td>
<% end %>
</th><th>
name
</th><th>
- key_type
+ key type
</th><th>
- public_key
+ public key
</th><th>
- expires_at
+ expires
</th>
</tr>
</thead>
<td>
<%= link_to_if_arvados_object ak %>
</td><td>
- <%= ak.owner %>
+ <%= render_editable_attribute ak, 'owner' %>
</td><td>
- <%= ak.name %>
+ <%= render_editable_attribute ak, 'name' %>
</td><td>
- <%= ak.key_type %>
+ <%= render_editable_attribute ak, 'key_type' %>
</td><td>
- <%= ak.public_key %>
+ <%= render_editable_attribute ak, 'public_key' %>
</td><td>
- <%= ak.expires_at %>
+ <%= render_editable_attribute ak, 'expires_at' %>
</td>
</tr>