class Menu_dsl

Attributes

etiqueta[RW]
ingesta[RW]
plato[RW]
porcentaje[RW]
titulo[RW]

Public Class Methods

new(etiqueta) { |self| ... } click to toggle source
# File lib/prct11/menu_dsl.rb, line 4
def initialize(etiqueta, &block)
  self.etiqueta = etiqueta
  
  self.titulo     = ""
  self.ingesta    = []
  self.plato      = []
  self.porcentaje = []
  
  if block_given?  
    if block.arity == 1
      yield self
    else
     instance_eval(&block) 
    end
  end
end

Public Instance Methods

ingestas(options = {}) click to toggle source
# File lib/prct11/menu_dsl.rb, line 26
def ingestas(options = {})
  ingesta << "#{options[:max]}" if options[:max]
  ingesta << "#{options[:min]}" if options[:min]
end
platos(options = {}) click to toggle source
# File lib/prct11/menu_dsl.rb, line 31
def platos(options = {})
  pl = []
  pl << "#{options[:descPlato]}"      if options[:descPlato]
  pl << "#{options[:descPorcion]}"    if options[:descPorcion]
  pl << "#{options[:ingestaGramos]}"  if options[:ingestaGramos]
  
  plato << pl
end
porcentajes(options = {}) click to toggle source
# File lib/prct11/menu_dsl.rb, line 40
def porcentajes(options = {})
  pc = []
  pc << "#{options[:vct]}"            if options[:vct]
  pc << "#{options[:proteinas]}"      if options[:proteinas]
  pc << "#{options[:grasas]}"         if options[:grasas]
  pc << "#{options[:hidratos]}"       if options[:hidratos]
  
  porcentaje << pc
end
titulos(options = {}) click to toggle source
# File lib/prct11/menu_dsl.rb, line 22
def titulos(options = {})
  titulo << "#{options[:titulo]}"
end
to_s() click to toggle source
# File lib/prct11/menu_dsl.rb, line 50
def to_s
  output = etiqueta
  output << "\n#{'=' * etiqueta.size}\n\n"
  
  output << "#{titulo}"
  output << "(#{ingesta[0]} - #{ingesta[1]}%) \n"

  plato.each_with_index do |plato, index|
    output << "- #{plato[0]}, #{plato[1]}, #{plato[2]}g\n"
  end

  porcentaje.each_with_index do |porcentaje, index|
    output << "V.C.T. | % #{porcentaje[0]}Kcal | #{porcentaje[1]}% - #{porcentaje[2]}% - #{porcentaje[3]}%\n"
  end

  output
end