Sha256: f83a433a9c946020f2e82c164460f0fc675379a8487cbc71ca12daa356cd6ddc

Contents?: true

Size: 1.12 KB

Versions: 32

Compression:

Stored size: 1.12 KB

Contents

class HtmlBlock < ActiveRecord::Base

  acts_as_content_block :taggable => true
  
  validates_presence_of :name
  
  # Override of search scope from searching behavior to deal with include_body 
  named_scope :search, lambda{|search_params|
    term = search_params.is_a?(Hash) ? search_params[:term] : search_params  
    order = search_params.is_a?(Hash) && search_params[:order] ? search_params[:order] : "html_blocks.name"
    include_body = search_params.is_a?(Hash) ? search_params[:include_body] : false
    conditions = []
    columns = ["name"]
    columns << "content" if include_body
    unless term.blank?
      columns.each do |c|
        if conditions.empty?
          conditions = ["lower(#{table_name}.#{c}) like lower(?)"]
        else
          conditions.first << "or lower(#{table_name}.#{c}) like (?)"
        end
        conditions << "%#{term}%"
      end
      conditions[0] = "(#{conditions[0]})"
    end
    scope = {}
    scope[:conditions] = conditions if conditions
    scope[:order] = order if order
    scope
  }
  
  def self.display_name
    "Text"
  end

  def self.display_name_plural
    "Text"
  end
  
end

Version data entries

32 entries across 32 versions & 10 rubygems

Version Path
SFEley-browsercms-3.0.2 app/models/html_block.rb
buzzware-browsercms-3.0.2 app/models/html_block.rb
coredumplings-browsercms-3.0.0 app/models/html_block.rb
nate-browsercms-3.0.210 app/models/html_block.rb
nate-browsercms-3.0.211 app/models/html_block.rb
we5-browsercms-3.0.1.1 app/models/html_block.rb
webficient-browsercms-3.0.1 app/models/html_block.rb
webficient-browsercms-3.0.2 app/models/html_block.rb
webficient-browsercms-3.0.3 app/models/html_block.rb
webficient-browsercms-3.0.4 app/models/html_block.rb
browsercms-3.1.5 app/models/html_block.rb
browsercms-3.1.4 app/models/html_block.rb
browsercms-3.1.3 app/models/html_block.rb
bf4-browsercms-3.1.0 app/models/html_block.rb
drujensen-browsercms-3.2.0 app/models/html_block.rb
browsercms-3.1.2 app/models/html_block.rb
browsercms-3.1.1 app/models/html_block.rb
browsercms-3.1.0 app/models/html_block.rb
we5-browsercms-3.1.0 app/models/html_block.rb
browsercms-3.0.6 app/models/html_block.rb