Merge branch '2800-python-global-state' into 2800-pgs
[arvados.git] / services / api / app / controllers / arvados / v1 / groups_controller.rb
index 4dc5c9be13c1d897cf981ad56eaaefe480954ab3..17be40a57ee449a6a0902409ed1aa9ae7853be8a 100644 (file)
@@ -13,9 +13,20 @@ class Arvados::V1::GroupsController < ApplicationController
   end
 
   def render_404_if_no_object
-    if params[:action] == 'contents' and !params[:uuid]
-      # OK!
-      @object = nil
+    if params[:action] == 'contents'
+      if !params[:uuid]
+        # OK!
+        @object = nil
+        true
+      elsif @object
+        # Project group
+        true
+      elsif (@object = User.where(uuid: params[:uuid]).first)
+        # "Home" pseudo-project
+        true
+      else
+        super
+      end
     else
       super
     end
@@ -64,7 +75,7 @@ class Arvados::V1::GroupsController < ApplicationController
      Human, Specimen, Trait].each do |klass|
       @objects = klass.readable_by(*@read_users)
       if klass == Group
-        @objects = @objects.where('group_class = ?', 'project')
+        @objects = @objects.where(group_class: 'project')
       end
       if opts[:owner_uuid]
         conds = []