<?php
require ("progressbar.php");
date_default_timezone_set('America/Bogota');
function mysqli_result($res, $row, $field=0) {
    $res->data_seek($row);
    $datarow = $res->fetch_array();
    return $datarow[$field];
}

function isXML($xml){
   libxml_use_internal_errors(true);

   $doc = new DOMDocument('1.0', 'utf-8');
   $doc->loadXML($xml);

   $errors = libxml_get_errors();

   if(empty($errors)){
       return true;
   }

   $error = $errors[0];
   if($error->level < 3){
       return true;
   }

   $explodedxml = explode("r", $xml);
   $badxml = $explodedxml[($error->line)-1];

   $message = $error->message . ' at line ' . $error->line . '. Bad XML: ' . htmlentities($badxml);
   return $message;
}



/*
$mysql_hostname = "localhost"; // Example : localhost
$mysql_user     = "root";
$mysql_password = "";
$mysql_database = "sistemageneral";
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Oops some thing went wrong");

mysql_select_db($mysql_database, $bd) or die("Oops some thing went wrong");
*/
error_reporting(0);

$bd=$mysql = new mysqli("localhost","root","","sistemageneral");

mysqli_query($bd,"SET NAMES 'utf8'");



/*
//Inicio Precios Especificos
mysqli_query($bd,'delete from temporalespecificosboton where 1;');
mysqli_query($bd,'ALTER TABLE temporalespecificosboton AUTO_INCREMENT=1');

$xml1=new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/specific_prices"));

// get product line with xpath for example
$specificprices1=$xml1->xpath("/prestashop/specific_prices/specific_price");
$totalregistros2 = count($specificprices1);

echo "Precios Especificos Boton Promo //";
$HoraInicio = date('h:i:s') . " - ";
echo $HoraInicio;
$i2=0;
if ($specificprices1) {
 // loop over each product node
 foreach ($specificprices1 as $specificprice1) {
	 $i2=$i2+1;
$porcentaje1 = $i2 * 100 /$totalregistros2;
echo "<script>callprogress(".round($porcentaje1).")</script>";
flush();
ob_flush();
	  
 
	 $idspecificprice1=$specificprice1["id"];
     //$xmlprecio=new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/specific_prices/18"));
$xmlprecio=new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/specific_prices/".$idspecificprice1));
 		$id=$xmlprecio->specific_price->id;
		$id_product=$xmlprecio->specific_price->id_product;
	 	$id_product_attribute=$xmlprecio->specific_price->id_product_attribute;
	 	$price=$xmlprecio->specific_price->price;
	 	$from_quantity=$xmlprecio->specific_price->from_quantity;
	 	$reduction=$xmlprecio->specific_price->reduction;
	 	$reduction_type=$xmlprecio->specific_price->reduction_type;
	 	$from_date=$xmlprecio->specific_price->from;
	 	$to_date=$xmlprecio->specific_price->to;
	 
 $sql = "INSERT INTO `temporalespecificosboton` (id, id_product,id_product_attribute, price,from_quantity, reduction,reduction_type, from_date, to_date) VALUES ('$id','$id_product','$id_product_attribute','$price','$from_quantity','$reduction','$reduction_type','$from_date','$$to_date')";
mysqli_query($bd,$sql);
 
 
 }
}
$HoraFin = date('h:i:s') . "\n";
echo $HoraFin;

//Fin Precios Especificos
*/



mysqli_query($bd,'delete from tempinvprebotonpromo where 1;');
mysqli_query($bd,'ALTER TABLE tempinvprebotonpromo AUTO_INCREMENT=1');

$xml=new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/products"));
// get product line with xpath for example
$idlistaproductos=$xml->xpath("/prestashop/products/product");

$totalregistros = count($idlistaproductos);
echo "Codificacion Boton Promo //";
$HoraInicio = date('h:i:s') . " - ";
echo $HoraInicio;
$i=0;

if ($idlistaproductos) {
 // loop over each product node
 foreach ($idlistaproductos as $idlistaproducto) {
	 
$i=$i+1;
$porcentaje = $i * 100 /$totalregistros;
echo "<script>callprogress(".round($porcentaje).")</script>";
flush();
ob_flush();
	 
$idlista=$idlistaproducto["id"];
//echo $idlista."//";
libxml_use_internal_errors(TRUE);
	 //if( isXML(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/products/".$idlista) ))
//{	 
		 //$linkxml=file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/products/".$idlista);
		 //$xmlproducto = simplexml_load_file($linkxml, 'SimpleXMLElement', LIBXML_NOWARNING);
	 try {
	 
	 
		 $xmlproducto = new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/products/".$idlista));
	 
		 
		 //$xmlproducto = simplexml_load_file(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/products/".$idlista), 'SimpleXMLElement', LIBXML_NOWARNING);
		  
	 
		 
	
//$medida="";
//$Materiales="";
//$marca="";
//$areaimp="";
$haycombinaciones="No";
$codigo="";
$raiz=""; 
//$titulo="";
//$descripcion="";
//$medidas="";
//$material="";
//$empaque="";
//$tipoimpresion="";
//$areaimpresion="";
$variacion="";
$stock="";
$precio="";
$preciounitario="";
$descuento="";
//$linkfoto1="";
//$linkfoto2="";
//$linkfoto3="";
//$linkfoto4="";
//$linkfoto5="";
//$fotoprincipal="";
$transitos="";
//$url="";	
	 
	 /*
foreach ($xmlproducto->product->associations->product_features->product_feature as $caracteristica)
			
			{
			$xmlcaracteristica = new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/product_feature_values/".$caracteristica->id_feature_value));
				
				$idnombrecaracteristica= $xmlcaracteristica->product_feature_value->id_feature;
				$valorcaracteristica= $xmlcaracteristica->product_feature_value->value->language;
	
			if ($idnombrecaracteristica==1) {$medida=$medida." Alto:".$valorcaracteristica;}
	else	if ($idnombrecaracteristica==2)	{$medida=$medida." Ancho:".$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==3)	{$medida=$medida." Profundidad:".$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==4)	{$medida=$medida." Peso:".$valorcaracteristica;}		
	else 	if ($idnombrecaracteristica==5)	{$Materiales=$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==8)	{$marca=$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==10){$areaimp=$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==11){$medida=$medida." Diametro:".$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==12){$medida=$medida." Largo:".$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==13){$medida=$medida." Capacidad:".$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==14){$medida=$medida." Deposito:".$valorcaracteristica;}
	else 	if ($idnombrecaracteristica==15){$medida=$medida." Base:".$valorcaracteristica;}
			}
	*/
		
		
		$raiz=$xmlproducto->product->id;
		$codigo=$raiz.'-'.$xmlproducto->product->reference;
		//$titulo=$xmlproducto->product->name->language;
		 
	 
	 	//$descripcion1=$xmlproducto->product->description_short->language;
		//$reemplazo1= str_replace("<p>","",$descripcion1);	
	 	//$descripcion= str_replace("</p>","",$reemplazo1);	
	 	 
	 $sqlprecioespecifico = mysqli_result(mysqli_query($bd,"SELECT price FROM temporalespecificosboton WHERE id_product='$raiz' AND id=(SELECT MAX(id) FROM temporalespecificosboton WHERE id_product='$raiz')"),0);
			
			$sqltipoespecifico = mysqli_result(mysqli_query($bd,"SELECT reduction FROM temporalespecificosboton WHERE id_product='$raiz' AND id=(SELECT MAX(id) FROM temporalespecificosboton WHERE id_product='$raiz')"),0);
		
			$sqltextoespecifico = mysqli_result(mysqli_query($bd,"SELECT reduction_type FROM temporalespecificosboton WHERE id_product='$raiz' AND id=(SELECT MAX(id) FROM temporalespecificosboton WHERE id_product='$raiz')"),0);
		
			$preciolista=$xmlproducto->product->price;
		
		if ($sqltextoespecifico=='amount')
			
		{
			$precio=$preciolista-$sqltipoespecifico;
			$descuento=0;
			$preciounitario=$preciolista-$sqltipoespecifico;
			
		} else if ($sqltextoespecifico=='percentage')
		
		{
			$precio=$preciolista;
			$descuento=$sqltipoespecifico;
			$preciounitario=$preciolista;
		}
		
		else {
			
			$precio=$preciolista;
			$descuento=0;
			$preciounitario=$preciolista;
			
		}
		$precio;
		$preciounitario;
		$descuento;
	 	//$medidas=$medida;
		//$material=$Materiales;
		//$empaque='';
		//$tipoimpresion=$marca;
		//$areaimpresion=$areaimp;
		//$fotoprincipal="https://esferos.com/site/api/images/products/".$raiz."/".$xmlproducto->product->id_default_image;
		$proveedor='BotonPromo';


// Abre codigo si existe combinaciones
	foreach($xmlproducto->product->associations->combinations->combination as $combinacion)
			
	
		{
    	$haycombinaciones="Si";
		$idcombinacion=$combinacion->id;
		$xmlcombinacion = new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/combinations/".$combinacion->id));
	
		
		$raiz=$xmlproducto->product->id;
		$codigo=$raiz.'-'.$xmlcombinacion->combination->reference;
		$titulo=$xmlproducto->product->name->language;
		
		//$descripcion1=$xmlproducto->product->description_short->language;
		//$reemplazo1= str_replace("<p>","",$descripcion1);	
	 	//$descripcion= str_replace("</p>","",$reemplazo1);	
		//$medidas=$medida;
		//$material=$Materiales;
		//$empaque='';
		//$tipoimpresion=$marca;
		//$areaimpresion=$areaimp;
			
		$valoropcion =$xmlcombinacion->combination->associations->product_option_values->product_option_value->id;
	 	$xmlopcion = new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/product_option_values/".$valoropcion));
		$variacion=$xmlopcion->product_option_value->name->language;
		
		
		foreach ($xmlproducto->product->associations->stock_availables->stock_available as $tablastocks)
			
			{
			$atributostock=$tablastocks->id_product_attribute;
			
		 if((string)$idcombinacion==(string)$atributostock)
			 
		 		{
		$stockavailable=0;			
		$xmlstock = new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/stock_availables/".$tablastocks->id));
		 
		$stockavailable=$xmlstock->stock_available->quantity;		 
			 
		 		}
			
			}
		$stock=$stockavailable;
		
		
			
			
		
		//$idfoto1=$xmlcombinacion->combination->associations->images->image[0]->id;
		//$idfoto2=$xmlcombinacion->combination->associations->images->image[1]->id;
		//$idfoto3=$xmlcombinacion->combination->associations->images->image[2]->id;
		//$idfoto4=$xmlcombinacion->combination->associations->images->image[3]->id;
		//$idfoto5=$xmlcombinacion->combination->associations->images->image[4]->id;
		
		//if ($idfoto1 > 0){$linkfoto1="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto1;}
		//if ($idfoto2 > 0){$linkfoto2="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto2;}
		//if ($idfoto3 > 0){$linkfoto3="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto3;}
		//if ($idfoto4 > 0){$linkfoto4="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto4;}
		//if ($idfoto5 > 0){$linkfoto5="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto5;}
		
		
		
		
		//$htmltransito='';
		//$url="https://esferos.com/site/busqueda?controller=search&page=1&s=".$codigo;
	$transitos="";
		$idraiz=$raiz."_01";
	$idatributo=$codigo."_01";
		$sql = "INSERT INTO `tempinvprebotonpromo` (codigo, raiz, variacion, proveedor, stock, precio, preciounitario,descuento, idraiz, idatributo, fechatransito) VALUES ('$codigo', '$raiz', '$variacion', '$proveedor', '$stock', '$precio','$preciounitario','$descuento','$idraiz','$idatributo','$transitos')";
 mysqli_query($bd,$sql);
	
}

if ($haycombinaciones="No")
{
	
	$variacion="N/R";
	
	$idstock=$xmlproducto->product->associations->stock_availables->stock_available->id;
	$stockavailable=0;			
	$xmlstock = new SimpleXMLElement(file_get_contents("https://6QW5T3HTWPMREMYZQ8TW8FH3JY45YGGZ@esferos.com/site/api/stock_availables/".$idstock));
	$stock=$xmlstock->stock_available->quantity;
	
	
	
		//$idfoto1=$xmlproducto->product->associations->images->image[0]->id;
		//$idfoto2=$xmlproducto->product->associations->images->image[1]->id;
		//$idfoto3=$xmlproducto->product->associations->images->image[2]->id;
		//$idfoto4=$xmlproducto->product->associations->images->image[3]->id;
		//$idfoto5=$xmlproducto->product->associations->images->image[4]->id;
		
		//if ($idfoto1 > 0){$linkfoto1="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto1;}
		//if ($idfoto2 > 0){$linkfoto2="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto2;}
		//if ($idfoto3 > 0){$linkfoto3="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto3;}
		//if ($idfoto4 > 0){$linkfoto4="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto4;}
		//if ($idfoto5 > 0){$linkfoto5="https://esferos.com/site/api/images/products/".$raiz."/".$idfoto5;}
	
	
	//$url="https://esferos.com/site/busqueda?controller=search&page=1&s=".$codigo;
	$transitos="";
	
	$idraiz=$raiz."_01";
	$idatributo=$codigo."_01";
	
	
	$sql = "INSERT INTO `tempinvprebotonpromo` (codigo, raiz, variacion, proveedor, stock, precio, preciounitario,descuento, idraiz, idatributo, fechatransito) VALUES ('$codigo', '$raiz', '$variacion', '$proveedor', '$stock', '$precio','$preciounitario','$descuento','$idraiz','$idatributo','$transitos')";
 mysqli_query($bd,$sql);	
	 }

	 }
	 
	 catch (Exception $e) {
    
}
	 
	 
	 
}
}

mysqli_query($bd,'delete from invprebotonpromo where 1;');
mysqli_query($bd,'ALTER TABLE invprebotonpromo AUTO_INCREMENT=1');
$sql = "INSERT INTO `invprebotonpromo` (codigo, raiz, variacion, proveedor, stock, precio, preciounitario,descuento, idraiz, idatributo, fechatransito) SELECT codigo, raiz, variacion, proveedor, stock, precio, preciounitario,descuento, idraiz, idatributo, fechatransito FROM tempinvprebotonpromo WHERE 1";
 mysqli_query($bd,$sql);


$HoraFin = date('h:i:s') . "\n";
echo $HoraFin;


	