Merge branch 'master' into 2681-new-inactive-user-notification
[arvados.git] / services / api / app / models / user.rb
index 2e146872d6278da84b8177c96014964c4567a81c..8aec7670c5c92d63326eee09e294bbe5519b9ee8 100644 (file)
@@ -1,7 +1,11 @@
+require 'can_be_an_owner'
+
 class User < ArvadosModel
-  include AssignUuid
+  include HasUuid
   include KindAndEtag
   include CommonApiTemplate
+  include CanBeAnOwner
+
   serialize :prefs, Hash
   has_many :api_client_authorizations
   before_update :prevent_privilege_escalation
@@ -177,6 +181,10 @@ class User < ArvadosModel
 
   protected
 
+  def ensure_ownership_path_leads_to_user
+    true
+  end
+
   def permission_to_update
     # users must be able to update themselves (even if they are
     # inactive) in order to create sessions
@@ -330,7 +338,7 @@ class User < ArvadosModel
 
       perm_exists = false
       login_perms.each do |perm|
-        if perm.properties[:username] == repo_name
+        if perm.properties['username'] == repo_name
           perm_exists = true
           break
         end
@@ -341,7 +349,7 @@ class User < ArvadosModel
                                  head_uuid: vm[:uuid],
                                  link_class: 'permission',
                                  name: 'can_login',
-                                 properties: {username: repo_name})
+                                 properties: {'username' => repo_name})
         logger.info { "login permission: " + login_perm[:uuid] }
       else
         login_perm = login_perms.first