Class: Maglove::Widgets::Columns
- Defined in:
- lib/maglove/widgets/columns.rb
Instance Attribute Summary collapse
-
#column_count ⇒ Object
readonly
Returns the value of attribute column_count.
-
#columns ⇒ Object
readonly
Returns the value of attribute columns.
-
#total_columns ⇒ Object
readonly
Returns the value of attribute total_columns.
Attributes inherited from Base
Instance Method Summary collapse
- #column(&block) ⇒ Object
- #defaults ⇒ Object
- #identifier ⇒ Object
-
#initialize(options, scope) ⇒ Columns
constructor
A new instance of Columns.
- #next_span ⇒ Object
- #row_options ⇒ Object
- #template(&block) ⇒ Object
Methods inherited from Base
Constructor Details
#initialize(options, scope) ⇒ Columns
Returns a new instance of Columns.
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/maglove/widgets/columns.rb', line 8 def initialize(, scope) super(, scope) @column_count = 0 column_array = @options[:columns].to_s.split("x") if column_array.length == 1 @total_columns = column_array[0].to_i @columns = Array.new(@total_columns) { 12 / @total_columns } else @total_columns = column_array.length @columns = column_array end end |
Instance Attribute Details
#column_count ⇒ Object (readonly)
Returns the value of attribute column_count.
5 6 7 |
# File 'lib/maglove/widgets/columns.rb', line 5 def column_count @column_count end |
#columns ⇒ Object (readonly)
Returns the value of attribute columns.
4 5 6 |
# File 'lib/maglove/widgets/columns.rb', line 4 def columns @columns end |
#total_columns ⇒ Object (readonly)
Returns the value of attribute total_columns.
6 7 8 |
# File 'lib/maglove/widgets/columns.rb', line 6 def total_columns @total_columns end |
Instance Method Details
#column(&block) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/maglove/widgets/columns.rb', line 51 def column(&block) span = next_span if span phone_cols = [:collapse_options] == "xs" ? span : "12" haml_tag :div, class: "column col-#{phone_cols} col-tablet-#{span} col-#{[:collapse_options]}-#{span}" do yield if block drop_container end else haml_tag :pre do haml_concat "ERROR: Row does not allow column at position #{column_count}" end end end |
#defaults ⇒ Object
37 38 39 40 41 42 43 |
# File 'lib/maglove/widgets/columns.rb', line 37 def defaults { columns: "2", style: "default", collapse_options: "sm" } end |
#identifier ⇒ Object
33 34 35 |
# File 'lib/maglove/widgets/columns.rb', line 33 def identifier "columns" end |
#next_span ⇒ Object
21 22 23 24 25 |
# File 'lib/maglove/widgets/columns.rb', line 21 def next_span value = @columns[@column_count] @column_count += 1 value end |
#row_options ⇒ Object
27 28 29 30 31 |
# File 'lib/maglove/widgets/columns.rb', line 27 def { class: "row row-#{@options[:style]}" } end |
#template(&block) ⇒ Object
45 46 47 48 49 |
# File 'lib/maglove/widgets/columns.rb', line 45 def template(&block) haml_tag :div, do yield(self) if block end end |