Module: Gluttonberg::Content::Versioning::OverrideActsAsVersioned
- Defined in:
- lib/gluttonberg/content/versioning.rb
Instance Method Summary collapse
-
#clear_old_versions ⇒ Object
Clears old revisions if a limit is set with the :limit option in
acts_as_versioned
. - #update_from_gb_versioning_settings ⇒ Object
Instance Method Details
#clear_old_versions ⇒ Object
Clears old revisions if a limit is set with the :limit option in acts_as_versioned
. Override this method to set your own criteria for clearing old versions.
41 42 43 44 45 46 47 48 |
# File 'lib/gluttonberg/content/versioning.rb', line 41 def clear_old_versions update_from_gb_versioning_settings return if self.class.max_version_limit == 0 excess_baggage = send(self.class.version_column).to_i - self.class.max_version_limit if excess_baggage > 0 self.class.versioned_class.delete_all ["#{self.class.version_column} <= ? and #{self.class.versioned_foreign_key} = ?", excess_baggage, id] end end |
#update_from_gb_versioning_settings ⇒ Object
50 51 52 53 54 55 |
# File 'lib/gluttonberg/content/versioning.rb', line 50 def update_from_gb_versioning_settings if self.class.max_version_limit == 0 tmp_number_of_revisions = Gluttonberg::Setting.get_setting("number_of_revisions") self.class.max_version_limit = tmp_number_of_revisions.to_i unless tmp_number_of_revisions.blank? end end |