Sha256: 079500cb3cd32d199bf421e02194477cbc4a74cd9423516e75b1fb47b8aa1809
Contents?: true
Size: 1.01 KB
Versions: 1
Compression:
Stored size: 1.01 KB
Contents
require "redcarpet" module BitPlayer class Slide < ActiveRecord::Base belongs_to :slideshow, class_name: "BitPlayer::Slideshow", foreign_key: :bit_player_slideshow_id, inverse_of: :slides validates :title, :body, :position, presence: true validates_numericality_of :position, greater_than_or_equal_to: 1 validates_uniqueness_of :position, scope: :bit_player_slideshow_id def render_body rendered = "" if !body.nil? markdown = Redcarpet::Markdown.new( Redcarpet::Render::HTML.new( filter_html: true, safe_links_only: true ), space_after_headers: true, ) rendered += markdown.render(body) end rendered.html_safe end def self.update_positions(ids) transaction do connection.execute "SET CONSTRAINTS slide_position DEFERRED" ids.each_with_index do |id, index| where(id: id).update_all(position: index + 1) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bit_player-0.1.3 | app/models/bit_player/slide.rb |