class Nexmo::Markdown::ColumnsFilter

Public Instance Methods

call(input) click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 4
def call(input)
  input.gsub!(%r{{column\:([1-4])\/([1-4])}\n(.+?){end}}m) do
    s = []
    s << row_start if $1 == '1'
    s << column_start($2)
    s << $3
    s << column_end
    s << row_end if $1 == $2
    s.join('')
  end
    
  input
end

Private Instance Methods

close_tag() click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 28
def close_tag
  "FREEZESTART#{Base64.urlsafe_encode64('</div>')}FREEZEEND"
end
column_end() click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 37
def column_end
  "FREEZESTART#{Base64.urlsafe_encode64('</div>')}FREEZEEND\n"
end
column_start(columns) click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 32
def column_start(columns)
  html = "<div class='column small-12 medium-#{part_size(columns)}'>"
  "FREEZESTART#{Base64.urlsafe_encode64(html)}FREEZEEND\n"
end
part_size(columns) click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 41
def part_size(columns)
  12 / Integer(columns)
end
row_end() click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 24
def row_end
  close_tag
end
row_start() click to toggle source
# File lib/nexmo_markdown_renderer/filters/columns_filter.rb, line 20
def row_start
  "FREEZESTART#{Base64.urlsafe_encode64('<div class="row">')}FREEZEEND\n"
end