X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/a7cdd1faaf1de132fa556944bc86831ebdfe8886..002aec2a7db39d269bb3c9123783022c2e32a5cc:/services/api/app/models/arvados_model.rb?ds=inline diff --git a/services/api/app/models/arvados_model.rb b/services/api/app/models/arvados_model.rb index 91c5a1923c..946c4262e3 100644 --- a/services/api/app/models/arvados_model.rb +++ b/services/api/app/models/arvados_model.rb @@ -409,8 +409,20 @@ class ArvadosModel < ApplicationRecord end end + def user_owner_uuid + if self.owner_uuid.nil? + return current_user.uuid + end + owner_class = ArvadosModel.resource_class_for_uuid(self.owner_uuid) + if owner_class == User + self.owner_uuid + else + owner_class.find_by_uuid(self.owner_uuid).user_owner_uuid + end + end + def logged_attributes - attributes.except(*Rails.configuration.AuditLogs.UnloggedAttributes) + attributes.except(*Rails.configuration.AuditLogs.UnloggedAttributes.keys) end def self.full_text_searchable_columns @@ -445,6 +457,9 @@ class ArvadosModel < ApplicationRecord if not ft[:cond_out].any? return query end + ft[:joins].each do |t| + query = query.joins(t) + end query.where('(' + ft[:cond_out].join(') AND (') + ')', *ft[:param_out]) end