class Maglove::Widget::LegacyColumns

Attributes

column_count[R]
columns[R]
total_columns[R]

Public Class Methods

new(scope, options = {}) click to toggle source
Calls superclass method Maglove::Widget::Base::new
# File lib/maglove/widget/columns.rb, line 25
def initialize(scope, options = {})
  super
  @column_count = 0
  column_array = @options[:columns].to_s.split("x").map(&:to_i)
  if column_array.length == 1
    @total_columns = column_array[0]
    @columns = Array.new(@total_columns) { 12 / @total_columns }
  else
    @total_columns = column_array.length
    @columns = column_array
  end
end

Public Instance Methods

column() { |self| ... } click to toggle source
# File lib/maglove/widget/columns.rb, line 59
def column(&block)
  span = columns[column_count]
  raise "ERROR: Row does not allow column at position #{column_count}" unless span
  @column_count += 1
  phone_cols = (options[:collapse_options] == "xs") ? span : "12"
  haml_tag :div, class: "column col-#{phone_cols} col-tablet-#{span} col-#{options[:collapse_options]}-#{span}" do
    yield self if block_given?
    drop_container
  end
end
defaults() click to toggle source
# File lib/maglove/widget/columns.rb, line 42
def defaults
  {
    columns: "2",
    style: "default",
    margin_bottom: "",
    collapse_options: "sm"
  }
end
identifier() click to toggle source
# File lib/maglove/widget/columns.rb, line 38
def identifier
  "columns"
end
render() { |self| ... } click to toggle source
Calls superclass method Maglove::Widget::V1#render
# File lib/maglove/widget/columns.rb, line 51
def render(&block)
  super do
    haml_tag :div, row_options do
      yield self if block_given?
    end
  end
end

Private Instance Methods

row_options() click to toggle source
# File lib/maglove/widget/columns.rb, line 72
def row_options
  {
    class: "row row-#{options[:style]}",
    style: style_string(options, :margin_bottom)
  }
end