Sha256: f4f0dbd995bfdd168c7e5ffd1f935d1bea83c35713fa361b77733b90ed933ec5
Contents?: true
Size: 1.08 KB
Versions: 2
Compression:
Stored size: 1.08 KB
Contents
module ActiveAdmin module Views class Columns < ActiveAdmin::Component builder_method :columns def column(*args, &block) insert_tag Column, *args, &block end # Override add child to set widths def add_child(*) super calculate_columns! end def to_s super.to_s + "<div style=\"clear:both;\"></div>".html_safe end protected def margin_size 2 end def calculate_columns! # Calculate our columns sizes and margins count = children.size margins_width = margin_size * (count - 1) column_width = (100.00 - margins_width) / count # Convert to an integer if its not a float column_width = column_width.to_i == column_width ? column_width.to_i : column_width children.each_with_index do |col, i| col.set_attribute :style, "width: #{column_width}%;" col.attr(:style) << " margin-right: #{margin_size}%;" unless i == (count - 1) end end end class Column < ActiveAdmin::Component end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
activeadmin-0.4.0 | lib/active_admin/views/components/columns.rb |
andrewroth_activeadmin-0.3.4.4 | lib/active_admin/views/components/columns.rb |