<?php
/*
  ===============================================================

  inGenio X
  http://ingenio.area421.com

  Created by 
  Julian Moreno Hidalgo (Software developer)
  Jesus Moreno Hidalgo (Communication's tree)

  inGenio X is a free software licensed under CC-GNU GPL

  ===============================================================
*/

	if (!defined("IGNX")) { die("Attempt..."); }

	if (isset($_POST["add_pedido"]))
	{
		$in = $_POST;

		// cantidad de productos en el carro
		$c = 0;
		if (isset($_SESSION["gids"]))
			for ($j=0; $j<count($_SESSION["gids"]); $j++)
				if ($_SESSION["gids"][$j]) $c += $_SESSION["counts"][$j];

		// hay productos?
		if (isset($_SESSION["gids"]) && $c)
		{

			// comprobar el stock //
			$no_stock = array();
			for ($i=0; $i<count($_SESSION["gids"]); $i++)
			  if ($_SESSION["gids"][$i])
			  {
				$q = myquery("SELECT * FROM ".ITEMS." WHERE itemID='".$_SESSION["gids"][$i]."'","[pro_carro_pedido=2]");
				if ($r = myfetch($q))
				{
					
					$tmp1 = array();
					$tmp1[0] = $_SESSION["counts"][$i]; // cantidad

					// chekear cantidad
					if ($r["td_adstock"] == 1)
					{
						if ($r["td_stock"] < $tmp1[0])
						{
							$no_stock[] = $tmp1;
							$_SESSION["counts"][$i] = $r["td_stock"];
						}
					}
				}
			 
			  }
			 if (count($no_stock) > 0)
			 {
				// salida nuevos datos del carro
				Redir (RUTA_INICIO."len".IGUAL.IDIOMA_ACTUAL.AMPER."sc".IGUAL."1".AMPER."msj".IGUAL."1");
			 }		 
			// FIN comprobar el stock //
			
			// cliente
			$codigo_cliente = ""; 
			$nombre_cliente = isset($in["nombre_cliente"]) ? entrada_sin_tags_html($in["nombre_cliente"]) : ""; 
			$apellido_cliente = isset($in["apellido_cliente"]) ? entrada_sin_tags_html($in["apellido_cliente"]) : ""; 
			$email_cliente = isset($in["email_cliente"]) ? entrada_sin_tags_html($in["email_cliente"]) : ""; 
			$pais_cliente = isset($in["pais_cliente"]) ? entrada_sin_tags_html($in["pais_cliente"]) : ""; 
			$ciudad_cliente = isset($in["ciudad_cliente"]) ? entrada_sin_tags_html($in["ciudad_cliente"]) : ""; 
			$postal_cliente = isset($in["postal_cliente"]) ? entrada_sin_tags_html($in["postal_cliente"]) : ""; 
			$direccion_cliente = isset($in["direccion_cliente"]) ? entrada_sin_tags_html($in["direccion_cliente"]) : ""; 
			$tel_cliente = isset($in["tel_cliente"]) ? entrada_sin_tags_html($in["tel_cliente"]) : ""; 

			// indicaciones del cliente
			$observaciones = isset($in["observaciones"]) ? entrada_sin_tags_html($in["observaciones"]) : ""; 
		
			// envio
			$fecha_envio = isset($in["fecha_envio"]) ? entrada_sin_tags_html($in["fecha_envio"]) : ""; 
			$nombre_envio = isset($in["nombre_envio"]) ? entrada_sin_tags_html($in["nombre_envio"]) : ""; 
			$apellido_envio = isset($in["apellido_envio"]) ? entrada_sin_tags_html($in["apellido_envio"]) : ""; 
			$email_envio = isset($in["email_envio"]) ? entrada_sin_tags_html($in["email_envio"]) : ""; 
			$pais_envio = isset($in["pais_envio"]) ? entrada_sin_tags_html($in["pais_envio"]) : ""; 
			$ciudad_envio = isset($in["ciudad_envio"]) ? entrada_sin_tags_html($in["ciudad_envio"]) : ""; 
			$postal_envio = isset($in["postal_envio"]) ? entrada_sin_tags_html($in["postal_envio"]) : ""; 
			$direccion_envio = isset($in["direccion_envio"]) ? entrada_sin_tags_html($in["direccion_envio"]) : ""; 
			$tel_envio = isset($in["tel_envio"]) ? entrada_sin_tags_html($in["tel_envio"]) : ""; 

			// total
			$pedido_total = ""; 
		
			$fecha = datetime_gmt();
			$dir_ip = $_SERVER["REMOTE_ADDR"];

			$qs = "INSERT INTO ".TD_PEDIDOS." (fecha,codigo_cliente,nombre_cliente,apellido_cliente,email_cliente,pais_cliente,ciudad_cliente,postal_cliente,direccion_cliente,tel_cliente,fecha_envio,nombre_envio,apellido_envio,email_envio,pais_envio,ciudad_envio,postal_envio,direccion_envio,tel_envio,dir_ip,observaciones,pedido_total) VALUES ('".$fecha."','".$codigo_cliente."','".$nombre_cliente."','".$apellido_cliente."','".$email_cliente."','".$pais_cliente."','".$ciudad_cliente."','".$postal_cliente."','".$direccion_cliente."','".$tel_cliente."','".$fecha_envio."','".$nombre_envio."','".$apellido_envio."','".$email_envio."','".$pais_envio."','".$ciudad_envio."','".$postal_envio."','".$direccion_envio."','".$tel_envio."','".$dir_ip."','".$observaciones."','".$pedido_total."')";
			myquery($qs,"[pro_carro_pedido=1]");
			$oid = myinsertid();
			
			$k = 0; // total del carro
			$productos = array();
			
			// email al administrador
			$saladmin = $nombre_cliente."\n".$apellido_cliente."\n\n";
			$saladmin .= LEN_117.": ".$email_cliente." (".$tel_cliente.")\n\n";
			$saladmin .= $direccion_cliente."\n";
			$saladmin .= $ciudad_cliente." - ".$postal_cliente." (".$pais_cliente.")\n\n";
			// email al comprador
			$salcomprador = "";
						
			for ($i=0; $i<count($_SESSION["gids"]); $i++)
			  if ($_SESSION["gids"][$i])
			  {
				$q = myquery("SELECT * FROM ".ITEMS." WHERE itemID='".$_SESSION["gids"][$i]."'","[pro_carro_pedido=2]");
				if ($r = myfetch($q))
				{
					
					$tmp = array();
					$tmp[0] = $_SESSION["gids"][$i];
					$tmp[1] = grabar_titulo_prd ($r["titulo"]);
					$tmp[2] = $_SESSION["counts"][$i];
					$tmp[3] = ($r["td_descuento"] > 0) && ($r["td_descuento"] < $r["td_precio"]) ? ($r["td_descuento"]+$r["td_gastos"]) : ($r["td_precio"]+$r["td_gastos"]);
					$tmp[4] = $r["td_codigo"];

					// salida -> [CODIGO]
					$articul = trim($tmp[4]) ? "[".$tmp[4]."] " : "";
					
					// incluir en la base
					myquery("INSERT INTO ".TD_CARRO." (pedID, itemID, nombre_producto, precio_producto, cantidad_producto) VALUES ('".$oid."', '".$tmp[0]."', '".$articul.$tmp[1]."', '".$tmp[3]."', '".$tmp[2]."')","[pro_carro_pedido=3]");

					// descontar del stock
					if ($r["td_adstock"] == 1)
					{
						if (($r["td_stock"]-$tmp[2]) < 0) { $new_td_stock = 0; } else { $new_td_stock = $r["td_stock"]-$tmp[2]; }
						myquery("UPDATE ".ITEMS." SET td_stock=".$new_td_stock." WHERE itemID='".$r["itemID"]."' AND item_tipo=3","[pro_carro_pedido=5]");
					}
					
					$productos[] = $tmp;

					// cantidad final
					if ($r["td_descuento"] > 0 && $r["td_descuento"] < $r["td_precio"])
					{
						$k += $_SESSION["counts"][$i]*($r["td_descuento"]+$r["td_gastos"]);
					} else {
						$k += $_SESSION["counts"][$i]*($r["td_precio"]+$r["td_gastos"]);
					}
					
					// email al administrador
					// salida -> [CODIGO] TITULO (x CANTIDAD): TOTAL
					$saladmin .= $articul.substr($tmp[1],0,35)."... (x ".$tmp[2]."): ".mostrar_pvp($tmp[3])."\n";
					// email al comprador
					// salida -> TITULO (x CANTIDAD): TOTAL
					$salcomprador .= substr($tmp[1],0,35)."... (x ".$tmp[2]."): ".mostrar_pvp($tmp[3])."\n";

				}
			  }
			
			// el total del pedido
			$qa = "UPDATE ".TD_PEDIDOS." SET pedido_total='".$k."' WHERE pedID='".$oid."'";
			myquery($qa,"[pro_carro_pedido=4]");
			

			// envio de email al administrador
			$cabecera = "Content-Type: text/plain; charset=ISO-8859-15"."\r\n";
			$cabecera .= "Content-Transfer-Encoding: quoted-printable"."\r\n";
			$cabecera .= "Content-Disposition: inline"."\r\n";	
			$cabecera .= "From: ".CONFIG_12.""."\r\n";
			// datos del mensaje
			$mensaje = LEN_206." [".$oid."]"."\n\n";
			$mensaje .= LEN_186.": "."\n\n";
			$mensaje .= $saladmin."\n\n";
			$mensaje .= LEN_178.": ".mostrar_pvp($k)."\n\n";
			
			@mail(CONFIG_12,LEN_206." [".$oid."]",$mensaje,$cabecera);

			// envio de email al comprador
			$cabecera = "Content-Type: text/plain; charset=ISO-8859-15"."\r\n";
			$cabecera .= "Content-Transfer-Encoding: quoted-printable"."\r\n";
			$cabecera .= "Content-Disposition: inline"."\r\n";	
			$cabecera .= "From: ".$email_cliente.""."\r\n";
			//datos del mensaje
			$mensaje = LEN_186." [".$oid."]: "."\n\n";
			$mensaje .= $salcomprador."\n\n";
			$mensaje .= LEN_178.": ".mostrar_pvp($k)."\n\n";
			$mensaje .= LEN_7."\n\n";
			
			@mail($email_cliente,LEN_186." [".$oid."]",$mensaje,$cabecera);

			// compra nueva
			$_SESSION["ses_pedido_id"] = $oid;
			//$_SESSION["ses_pedido_total"] = $k;

			// borrar la sesion del carro
			unset($_SESSION["gids"]);
			unset($_SESSION["counts"]);
						
			// salida del pago
			Redir (RUTA_INICIO."len".IGUAL.IDIOMA_ACTUAL.AMPER."scv".IGUAL."1");

		} else {
			// no hay productos
			Redir (RUTA_INICIO."len".IGUAL.IDIOMA_ACTUAL.AMPER."sc".IGUAL."1");
		}

	}

?>