function Pedido() {
  this.promocion = 0;
  this.lunch = 0;
  this.productos = new Array();
  this.costo = 0;
  this.saladitos = 0;
  this.bocaditosFrios = 0;
  this.bocaditosCalientes = 0;
  
  this.agregarPromocion = function(promocion, costo) {
    if (this.promocion == 0) {
      this.promocion = promocion;
      this.costo += costo;
    }
  }
  
  this.agregarLunch = function(lunch, costo) {
    if (this.lunch == 0) {
      this.lunch = lunch;
      this.costo += parseFloat(costo);
    }
  }  
  
  this.agregarProducto = function (producto, cantidad, costo) {
    for (var i = 0; i < this.productos.length; i++)
      if (this.productos[i].indexOf(producto) != -1)
        return;
    this.productos[this.productos.length] = producto+"|"+cantidad;    
    this.costo += costo;
  }
  
  this.agregarSaladitos = function (cantidad, costo) {
    if (this.saladitos == 0) {
      this.saladitos = cantidad;
      this.costo += costo;    
    }
  }

  this.agregarBocaditosFrios = function (cantidad, costo) {
    if (this.bocaditosFrios == 0) {      
      this.bocaditosFrios = cantidad;
      this.costo += costo;    
    }
  }

  this.agregarBocaditosCalientes = function (cantidad, costo) {
    if (this.bocaditosCalientes == 0) {
      this.bocaditosCalientes = cantidad;
      this.costo += costo;    
    }
  }
  
  this.json = function() {
    return JSON.stringify(this);
  }
}

var pedidoAux = $.parseJSON(readCookie('infoPedido'));
var pedido = new Pedido();
if (pedidoAux != undefined) {
  pedido.costo = pedidoAux.costo;
  pedido.lunch = pedidoAux.lunch;
  pedido.promocion = pedidoAux.promocion;
  pedido.productos = pedidoAux.productos;
  pedido.saladitos = pedidoAux.saladitos;
  pedido.bocaditosFrios = pedidoAux.bocaditosFrios;
  pedido.bocaditosCalientes = pedidoAux.bocaditosCalientes;
  $('#costoPedido').text('Total: $U ' + pedido.costo);
}

function agregarPromocion(promocion, costo) {
  pedido.agregarPromocion(promocion, costo);  
  $('#costoPedido').text('Total: $U ' + pedido.costo);  
  createCookie('infoPedido', pedido.json(), 0);
}

function agregarLunch() {
  
  var lunch = $('#lunchs').val();
  var costo = datosLunchs[lunch]['costo'];
  if (lunch != 0) {
    pedido.agregarLunch(lunch, costo);
    $('#costoPedido').text('Total: $U ' + pedido.costo);
    createCookie('infoPedido', pedido.json(), 0);
  }
}

function agregarSandwiches() {
  var cantidad = 0;
  $('#sandwiches select').each(function(){
    cantidad += parseInt($(this).val());
  });
  
  if (cantidad < categorias['Sandwiches']) {
    alert('La cantidad seleccionada es menor que el m\xednimo permitido');
    return;
  }
  
  var sandwiches = new Array();
  $('#sandwiches select').each(function(){
    if ($(this).val() != 0) {
      var id = '#precio-' + $(this).attr('name');
      var costo = $(id).val();
      var precio = parseFloat(costo) * parseInt($(this).val());
      precio = parseFloat(precio.toFixed(2));	
      pedido.agregarProducto($(this).attr('name'), parseInt($(this).val()), precio);
    }
  });  
  
  $('#costoPedido').text('Total: $U ' + pedido.costo);
  createCookie('infoPedido', pedido.json(), 0);      
}

function agregarMasas() {
  var cantidad = 0;
  $('#masas select').each(function(){
    cantidad += parseFloat($(this).val());
  });
  
  if (cantidad < categorias['Masas']) {
    alert('La cantidad seleccionada es menor que el m\xednimo permitido');
    return;
  }
  
  $('#masas select').each(function(){
    if ($(this).val() != 0) {
      var id = '#precio-' + $(this).attr('name');
      var costo = $(id).val();
      var precio = parseFloat(costo) * parseFloat($(this).val());
      precio = parseFloat(precio.toFixed(2));
      pedido.agregarProducto($(this).attr('name'), parseFloat($(this).val()), precio);
    }
  });  
  
  $('#costoPedido').text('Total: $U ' + pedido.costo);
  createCookie('infoPedido', pedido.json(), 0);      
}

function agregarSaladitos() {
  var cantidad = $('#saladitos-surtios').val();
  
  if (cantidad != 0) {
    var precio = parseFloat($('#precio-saladitos-surtidos').val()) * parseInt(cantidad);
    pedido.agregarSaladitos(cantidad, precio);
    $('#costoPedido').text('Total: $U ' + pedido.costo);
    createCookie('infoPedido', pedido.json(), 0);     
  }
}

function agregarBocaditosFrios() {
  var cantidad = $('#bocaditos-frios').val();  
  if (cantidad != 0) {
    var precio = parseFloat($('#precio-bocaditos-frios').val()) * parseInt(cantidad);
    precio = parseFloat(precio.toFixed(2));
    pedido.agregarBocaditosFrios(cantidad, precio);
    $('#costoPedido').text('Total: $U ' + pedido.costo);
    createCookie('infoPedido', pedido.json(), 0);     
  }
}

function agregarBocaditosCalientes() {
  var cantidad = $('#bocaditos-calientes').val();

  if (cantidad != 0) {
    var precio = parseFloat($('#precio-bocaditos-calientes').val()) * parseInt(cantidad);
    precio = parseFloat(precio.toFixed(2));
    pedido.agregarBocaditosCalientes(cantidad, precio);
    $('#costoPedido').text('Total: $U ' + pedido.costo);
    createCookie('infoPedido', pedido.json(), 0);     
  }
}

function comprobarPedido() {
  if (readCookie('infoPedido') == null)
    limpiarPedido();
}

function limpiarPedido() {
	deleteCookie();
        $('#costoPedido').text('');
	$('#lunchDetalle').css('display', 'none');
	$('.selectDark > ul').each( function() {
		$(this).children().first().click();
	}
	);
	$('#top').click();
	pedido = new Pedido();
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else var expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

function deleteCookie() {
	var d = new Date();
	document.cookie = "infoPedido='';expires=" + d.toGMTString() + "; path=/;";
}

