X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/c005c5ab76492b844e84d1c66f75797bd98d0996..ba46f409f9c572263cb7907eb2f36139a2c0320b:/apps/workbench/app/models/arvados_base.rb diff --git a/apps/workbench/app/models/arvados_base.rb b/apps/workbench/app/models/arvados_base.rb index c0e670dcef..7bc043cc9e 100644 --- a/apps/workbench/app/models/arvados_base.rb +++ b/apps/workbench/app/models/arvados_base.rb @@ -167,7 +167,9 @@ class ArvadosBase < ActiveRecord::Base def save obdata = {} self.class.columns.each do |col| - obdata[col.name.to_sym] = self.send(col.name.to_sym) + unless self.send(col.name.to_sym).nil? and !self.changed.include?(col.name) + obdata[col.name.to_sym] = self.send(col.name.to_sym) + end end obdata.delete :id postdata = { self.class.to_s.underscore => obdata } @@ -303,6 +305,11 @@ class ArvadosBase < ActiveRecord::Base self.to_s.underscore.humanize end + # Array of strings that are names of attributes that should be rendered as textile. + def textile_attributes + [] + end + def self.creatable? current_user end @@ -311,6 +318,12 @@ class ArvadosBase < ActiveRecord::Base false end + # can this class of object be copied into a project? + # override to false on indivudal model classes for which this should not be true + def self.copies_to_projects? + self.goes_in_projects? + end + def editable? (current_user and current_user.is_active and (current_user.is_admin or