Sha256: 18abe0aeb4577a6b2cc9a7b865001a14c0ab8f890066308ad4ea2436b40e5c07

Contents?: true

Size: 1.38 KB

Versions: 3

Compression:

Stored size: 1.38 KB

Contents

module LatoView
  # Elemento grafico composto da un insieme di link uniti in orizzontale
  module CellsV1::Buttongroup
    # Cella Buttongroup
    class Cell < Cell

      # Lista di links da mostrare nella Actionbar secondo la
      # struttura [['Nome link', 'url'], ['Nome link', 'url']]
      # * *default*: nil
      attr_accessor :links

      # Dimensione dei pulsanti della button
      # * *default*: nil
      attr_accessor :size

      # Stile da utilizzare per la buttongroup
      # * *default*: nil (normal)
      attr_accessor :style

      def initialize(links: nil, size: nil, style: 'normal')
        # assegno i valori alle variabili di istanza
        @links = links if links && check_links(links)
        @size = size
        @style = style
      end

      def show
        render 'show.html'
      end

      # Funzione che controlla che la lista links sia inviata nel formato
      # corretto
      private def check_links(links)
        # evito il controllo se sono in production
        return true if Rails.env.production?
        raise 'Bottongroup Concept: links must be an array' unless links.is_a? Array
        links.each do |link|
          raise 'Bottongroup Concept: links content must be an array' unless link.is_a? Array
          raise 'Bottongroup Concept: links content must have two value' if link.length != 2
        end
      end

    end
    # Fine cella
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
lato_view-1.1.5 app/cells/lato_view/cells_v1/buttongroup/cell.rb
lato_view-1.1.4 app/cells/lato_view/cells_v1/buttongroup/cell.rb
lato_view-1.1.3 app/cells/lato_view/cells_v1/buttongroup/cell.rb