Sha256: 8ace979547fcabac6ea0bc69ddf56cdb0ba1dbca21eab3675e399fb01fd09ac3

Contents?: true

Size: 1.52 KB

Versions: 1

Compression:

Stored size: 1.52 KB

Contents

#Kapil Ashok Melwani
#alu0100883473@ull.edu.es
#Lenguajes y Paradigmas de la Programacion
#Universidad de La Laguna

#Clase MenuDS
# ==== Funciones
#
# * +initialize+ - Inicializamos los elementos del menu dietetico (Titulo, ingesta,plato,porcentaje)
# * +titulo_+ - Funcion donde se inserta el titulo del menu
# * +ingesta_+ - Funcion que recibe los elementos del bloque para rellenar la ingesta
# * +plato_+ - Funcion que recibe los elementos del bloque para rellenar el plato
# * +porcentaje_+ - Funcion que recibe los elementos del bloque para rellenar el porcentaje
# * +to_s+ - Funcion to_s que muestra el menu dietetico semanal - diario


class MenuDS
	attr_accessor :titulo,:ingesta,:plato,:porcentaje

	def initialize(&block)
		@titulos
		@ingesta = []
		@plato = []
		@porcentaje = []

		instance_eval(&block)
	end

	def titulos(titulo)
		@titulo = titulo
	end

	def ingestas(options = {})
		@ingesta << " (#{options[:max]} - #{options[:min]}) " if options[:max] && options[:min]
	end

	def platos(options = {})
		@plato << " (#{options[:descripcion]} #{options[:porcion]} #{options[:gramos]} " if options[:descripcion] && options[:porcion] && options[:gramos]
	end

	def porcentajes(options = {})
		@porcentaje << " (#{options[:vct]} #{options[:proteinas]} #{options[:grasas]} #{options[:hidratos]} " if options[:vct] && options[:proteinas] && options[:grasas] && options[:hidratos]
	end

	def to_s
		s = ""
		s << "#{titulo} #{ingesta})\n"
		@plato.each do |plato|
			s << "- #{plato}\n"
		end
		s << "V.C.T. | % \t#{porcentaje}\n"
	end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
Gema_Kapil_Melwani-0.1.0 lib/dieta/menu.rb