Sha256: 9d946e33d4ce805f818d81c80346ddd0411164934cf907634ee2b4ab65dd9da6
Contents?: true
Size: 748 Bytes
Versions: 7
Compression:
Stored size: 748 Bytes
Contents
module DragOrder module Models module Page if defined?(Page::NONDRAFT_FIELDS) Page::NONDRAFT_FIELDS << 'position' end def self.included(base) base.class_eval do before_validation_on_create :set_initial_position self.reflections[:children].options[:order] = "position ASC" private def set_initial_position self.position ||= begin if last_sibling = Page.find_by_parent_id(parent_id, :order => [ "position DESC" ]) last_sibling.position + 1 else 0 end end end end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems