app/models/effective/log.rb in effective_logging-1.7.1 vs app/models/effective/log.rb in effective_logging-1.8.0

- old
+ new

@@ -25,39 +25,26 @@ # status :string, :validates => [:presence, :inclusion => {:in => EffectiveLogging.statuses }] # timestamps # end validates :message, presence: true - validates :status, presence: true, inclusion: { in: (EffectiveLogging.statuses + [EffectiveLogging.log_changes_status, EffectiveLogging.trashable_status]) } + validates :status, presence: true, inclusion: { in: (EffectiveLogging.statuses + [EffectiveLogging.log_changes_status]) } default_scope -> { order(updated_at: :desc) } scope :logged_changes, -> { where(status: EffectiveLogging.log_changes_status)} scope :changes, -> { where(status: EffectiveLogging.log_changes_status)} - scope :trash, -> { where(status: EffectiveLogging.trashable_status)} def to_s - case status - when EffectiveLogging.trashable_status - [associated_type, associated_id].join(' ').presence || 'New Trash item' - else - "Log #{id}" - end + "Log #{id}" end def log(message, status = EffectiveLogging.statuses.first, options = {}) EffectiveLogger.log(message, status, (options || {}).merge({:parent => self})) end def details self[:details] || {} - end - - # So this is a Trash item - # When we delete ourselves, we restore this trash item first - def restore_trashable! - raise 'no attributes to restore from' unless details.kind_of?(Hash) && details[:attributes].present? - associated_type.constantize.new(details[:attributes]).save! end # def next_log # @next_log ||= Log.unscoped.order(:id).where(:parent_id => self.parent_id).where('id > ?', self.id).first # end