Sha256: fd8e5392722dd9799c556b550103234b171ae952d9ecdad02e66f88280c88ca0
Contents?: true
Size: 1016 Bytes
Versions: 2
Compression:
Stored size: 1016 Bytes
Contents
class Post < ActiveRecord::Base SECTION_DELIMITER = '<!--ej:section-->' has_many :comments, :dependent => true has_many :pings, :dependent => true belongs_to :user has_and_belongs_to_many :tags validates_presence_of :subject, :body, :user_id # The updated_on time stamp is always updated to now. def before_save self.subject = CGI.escapeElement(self.subject, 'script') self.body = CGI.escapeElement(self.body, 'script') @sections = self.body.split(/^----\s*$/).map! do |section| RedCloth.new(section).to_html.gsub(/\t/, '') end self.rendered = @sections.join(SECTION_DELIMITER) self.slug = self.subject.downcase.gsub(/[^a-z0-9 _-]+/, '').gsub(/ +/, '-').gsub(/-+/, '-') end def updated? self.created_at.strftime('%Y%m%d%H%M%S') != self.updated_at.strftime('%Y%m%d%H%M%S') end def sections return @sections.dup if @sections (@sections = self.rendered.split(SECTION_DELIMITER)).dup end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
EliteJournal-1.9.492 | app/models/post.rb |
EliteJournal-1.9.480 | app/models/post.rb |