Arvados-DCO-1.1-Signed-off-by: Radhika Chippada <radhika@curoverse.com>
[arvados.git] / apps / workbench / app / models / user.rb
index 87ea5faefa85976b8d11350b291dffc28b2514d7..10da22db69e4540f8d7027df94b3fd7d43d98279 100644 (file)
@@ -1,3 +1,7 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 class User < ArvadosBase
   def initialize(*args)
     super(*args)
@@ -35,11 +39,12 @@ class User < ArvadosBase
     super.reject { |k,v| %w(owner_uuid default_owner_uuid identity_url prefs).index k }
   end
 
-  def attribute_editable? attr, *args
-    (not (self.uuid.andand.match(/000000000000000$/) and self.is_admin)) and super
+  def attribute_editable?(attr, ever=nil)
+    (ever or not (self.uuid.andand.match(/000000000000000$/) and
+                  self.is_admin)) and super
   end
 
-  def friendly_link_name
+  def friendly_link_name lookup=nil
     [self.first_name, self.last_name].compact.join ' '
   end
 
@@ -59,4 +64,11 @@ class User < ArvadosBase
                                                params))
   end
 
+  def deletable?
+    false
+  end
+
+   def self.creatable?
+    current_user and current_user.is_admin
+   end
 end