class Udongo::FlexibleContent::ColumnWidthCalculator

Constants

COLUMNS

Attributes

row[R]

Public Class Methods

new(row) click to toggle source
# File lib/udongo/flexible_content/column_width_calculator.rb, line 8
def initialize(row)
  @row = row
end

Public Instance Methods

calculate(field) click to toggle source
# File lib/udongo/flexible_content/column_width_calculator.rb, line 12
def calculate(field)
  field = field.to_sym
  return 12 if field == :width_xs || field == :width_sm

  difference = 12 - total(field)
  difference.zero? ? 12 : difference
end
hashed_values() click to toggle source
# File lib/udongo/flexible_content/column_width_calculator.rb, line 20
def hashed_values
  COLUMNS.inject({}) do |result, column|
    result[column.to_sym] = calculate(column.to_sym)
    result
  end
end
total(field) click to toggle source
# File lib/udongo/flexible_content/column_width_calculator.rb, line 27
def total(field)
  sum = row.columns.sum(field.to_sym).to_i
  return 12 if sum > 12
  sum
end