Sha256: 548703447f2d68e2d862a0ffbd45edc58d893ebf936029e9796e779d6178ae8b

Contents?: true

Size: 817 Bytes

Versions: 6

Compression:

Stored size: 817 Bytes

Contents

class Skyline::VersionStamper < ActiveRecord::Observer
  attr_accessor :controller
  def before(controller)
    self.controller = controller
  end
  def after(controller)
    self.controller = nil
  end  
  
  def after_save(record)
    user,versioner = self.current_user,self.versioner
    return if !user && !versioner
    
    versioner.increase!(record,current_user)
  end

  def after_destroy(record)
    user,versioner = self.current_user,self.versioner
    return if !user && !versioner
  
    versioner.destroy!(record)
  end

  protected

  def current_user
    self.controller.send :current_user
  end
  
  def current_implementation
    self.controller.send :current_implementation
  end

  def versioner
    Skyline::Content::Versioning::Version
  end
  
  def logger
    RAILS_DEFAULT_LOGGER
  end
  
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
skylinecms-3.2.0 app/observers/skyline/version_stamper.rb
skylinecms-3.1.0 app/observers/skyline/version_stamper.rb
westarete-skylinecms-3.0.8.20100329 app/observers/skyline/version_stamper.rb
westarete-skylinecms-3.0.8.20100330 app/observers/skyline/version_stamper.rb
skylinecms-3.0.8 app/observers/skyline/version_stamper.rb
skylinecms-3.0.7 app/observers/skyline/version_stamper.rb