Class: Gluttonberg::AutoSave

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/gluttonberg/auto_save.rb

Class Method Summary collapse

Class Method Details

.load_version(object) ⇒ Object

Load given autosave version for given object. Special cases are handled for Pages and articles



19
20
21
22
23
24
25
26
27
28
29
30
# File 'app/models/gluttonberg/auto_save.rb', line 19

def self.load_version(object)
  auto_save_obj = self.where({:auto_save_able_id => object.id, :auto_save_able_type => object.class.name}).first
  unless auto_save_obj.blank?
    hash = JSON.parse(auto_save_obj.data)
    if object.class.name == "Gluttonberg::PageLocalization"
      hash.delete('page')
    elsif object.class.name == "Gluttonberg::Blog::ArticleLocalization"
      hash.delete('article')
    end
    object.assign_attributes(hash)
  end
end

.param_name_for(class_name) ⇒ Object



13
14
15
# File 'app/models/gluttonberg/auto_save.rb', line 13

def self.param_name_for(class_name)
  ActiveModel::Naming.param_key(class_name.constantize).to_sym
end