kalibro_configuration.rb
773 Bytes
class KalibroConfiguration < KalibroClient::Entities::Configurations::KalibroConfiguration
include KalibroRecord
def self.public_or_owned_by_user(user=nil)
query = if user
KalibroConfigurationAttributes.where("user_id == ? OR public", user.id)
else
KalibroConfigurationAttributes.where(public: true)
end
query.map { |cfg_attr|
begin
self.find(cfg_attr.kalibro_configuration_id)
rescue KalibroClient::Errors::RecordNotFound
nil
end
}.compact
end
def self.public
self.public_or_owned_by_user
end
def attributes
KalibroConfigurationAttributes.find_by(kalibro_configuration_id: self.id)
end
def destroy
attrs = attributes
attrs.destroy unless attrs.nil?
super
end
end