2760: Exclude system objects like VMs and repos from folder behavior.
[arvados.git] / apps / workbench / app / models / group.rb
index da8fe609d1005b475db7a4878fb784e1c952eb04..638f6e884abf5fca1df9768bbf5eca56184de8d3 100644 (file)
@@ -1,6 +1,24 @@
 class Group < ArvadosBase
-  def self.owned_items
-    res = arvados_api_client.api self, "/#{self.uuid}/owned_items", {}
-    arvados_api_client.unpack_api_response(res)
+  def self.goes_in_folders?
+    true
+  end
+
+  def contents params={}
+    res = arvados_api_client.api self.class, "/#{self.uuid}/contents", {
+      _method: 'GET'
+    }.merge(params)
+    ret = ArvadosResourceList.new
+    ret.results = arvados_api_client.unpack_api_response(res)
+    ret
+  end
+
+  def class_for_display
+    group_class == 'folder' ? 'Folder' : super
+  end
+
+  def editable?
+    respond_to?(:writable_by) and
+      writable_by and
+      writable_by.index(current_user.uuid)
   end
 end