2760: Make editable? follow permissions obtained via groups/folders.
[arvados.git] / apps / workbench / app / models / virtual_machine.rb
index a6b845c4e7405016927ef0f0130fc8e5ae12a5b4..5ff7798a959162eb27d27cf9c35fd41748bd35ac 100644 (file)
@@ -1,2 +1,21 @@
 class VirtualMachine < ArvadosBase
+  attr_accessor :current_user_logins
+  def self.creatable?
+    current_user.andand.is_admin
+  end
+  def attributes_for_display
+    super.append ['current_user_logins', @current_user_logins]
+  end
+  def attribute_editable?(attr)
+    attr != 'current_user_logins' and super
+  end
+  def self.attribute_info
+    merger = ->(k,a,b) { a.merge(b, &merger) }
+    merger [nil,
+            {current_user_logins: {column_heading: "logins", type: 'array'}},
+            super]
+  end
+  def friendly_link_name
+    (hostname && !hostname.empty?) ? hostname : uuid
+  end
 end