<?php 
include('../../../../configuracion.php');
include('../config.php');
	 	 
///////////////////////////////////////////////////////
 
$categoria = isset($_POST['categoria']) ? $_POST['categoria'] : NULL;
$marca = isset($_POST['marca']) ? $_POST['marca'] : NULL;

if($categoria){ $categoria = implode(",",$categoria);}

$nombre = isset($_POST['nombre']) ? $_POST['nombre'] : NULL;
$resumen = isset($_POST['resumen']) ? $_POST['resumen'] : NULL;
$texto = isset($_POST['texto']) ? $_POST['texto'] : NULL;
$tags = isset($_POST['tags']) ? $_POST['tags'] : NULL;
$codigo = isset($_POST['codigo']) ? $_POST['codigo'] : NULL;

$precio = isset($_POST['precio']) ? $_POST['precio'] : NULL;
$precio_oferta = isset($_POST['precio_oferta']) ? $_POST['precio_oferta'] : NULL;
$stock = isset($_POST['stock']) ? $_POST['stock'] : NULL;

$peso = isset($_POST['peso']) ? $_POST['peso'] : NULL;
$destacado = isset($_POST['destacado']) ? $_POST['destacado'] : NULL;
$promocion = isset($_POST['promocion']) ? $_POST['promocion'] : NULL;
$nuevo = isset($_POST['nuevo']) ? $_POST['nuevo'] : NULL;
$pronto = isset($_POST['pronto']) ? $_POST['pronto'] : NULL;
$relacionados = isset($_POST['relacionados']) ? $_POST['relacionados'] : NULL;
$metatitle = isset($_POST['metatitle']) ? $_POST['metatitle'] : NULL;
$metadescription = isset($_POST['metadescription']) ? $_POST['metadescription'] : NULL;
$keywords = isset($_POST['keywords']) ? $_POST['keywords'] : NULL;
$estado = isset($_POST['estado']) ? $_POST['estado'] : NULL;

if($relacionados){ $relacionados = implode(",",$relacionados);}

$peso = funcion::LimpiaComillaSimple($peso);
$codigo = funcion::LimpiaComillaSimple($codigo);
$resumen = funcion::LimpiaComillaSimple($resumen);
$nombre = funcion::LimpiaComillaSimple($nombre);
$texto = funcion::LimpiaComillaSimple($texto);




$autor = $_SESSION['administrador_mago_id'];
$fecha_ingreso = date('Y-m-d H:i:s');

		$datos = array(
			'categoria'			=> $db->string($categoria),
			'marca'				=> @$marca+0,
			'codigo'			=> $db->string($codigo),
			'nombre'			=> $db->string($nombre),
			'resumen'			=> $db->string($resumen),
			'texto'				=> $db->string($texto),
			'precio'			=> @$precio+0,
			'precio_oferta'		=> @$precio_oferta+0,
			'stock'				=> @$stock+0,
			'peso'				=> $db->string($peso),
			'destacado'			=> @$destacado+0,
			'promocion'			=> @$promocion+0,
			'nuevo'				=> @$nuevo+0,
			'pronto'				=> @$pronto+0,
			'relacionados'		=> $db->string($relacionados),
			'metatitle'			=> $db->string($metatitle),
			'metadescription'	=> $db->string($metadescription),
			'keywords'			=> $db->string($keywords),
			'editor'			=> @$autor+0,
			'fecha_edicion'		=> $db->string($fecha_ingreso)
		);

		$db->insert(TABLA,$datos);
		$id = $db->UltimoId(TABLA);

		if (!empty($id)) {
			$mensaje_respuesta = 'Datos agregados.';
			$url_respuesta = MAGO."c/".MODULO;
		} else {
			$mensaje_respuesta = 'ERROR: No se pudo agregar.';
			$url_respuesta = MAGO."c/".MODULO.'/agregar';
		}


		// Creamos el Slug
		$slug = funcion::slug($nombre);
		$busqueda = funcion::slug($nombre).'-'.$db->getVar('subcategorias','slug',"id='{$subcategoria}'").'-'.$db->getVar('areas','slug',"id='{$area}'");

		$br = str_replace("á","a",$resumen);
		$br = str_replace("é","e",$br);
		$br = str_replace("í","i",$br);
		$br = str_replace("ó","o",$br);
		$br = str_replace("ú","u",$br);
		$br = str_replace("Á","A",$br);
		$br = str_replace("É","E",$br);
		$br = str_replace("Í","I",$br);
		$br = str_replace("Ó","O",$br);
		$br = str_replace("Ú","U",$br);
		
		
		$busqueda_resumen = funcion::slug($br);	

		// Verificamos que no se repita el slug
		$validar_slug = $db->results(TABLA,'id',"slug='{$slug}'");
		if(count($validar_slug)){
			$slug = $slug.'-'.$id;
		}

		// Subimos a la base de datos
		$datos_orden = array(
			'orden'		=> @$id+0,
			'slug'		=> $db->string($slug),
			'busqueda'	=> $db->string($busqueda),
			'busqueda_resumen' => $db->string($busqueda_resumen),
		);		
		$db->update(TABLA,$datos_orden,"id='$id'");




		$ruta = "../../../../imagenes/".FOLDER;

		include_once 'class.upload.php';
		$imagen = new upload($_FILES['imagen_nueva']);
		// Comprobamos si se subió la imagen
		if ($imagen->uploaded) {
// ===================================================================================
		// CREAMOS LA IMAGEN ORIGINAL
			  
					$imagen->image_convert			= 'jpg';
					$imagen->jpeg_quality				= 92;
					$imagen->allowed					= array('image/*');
					$imagen->file_new_name_body		= $id;
					$imagen->file_new_name_ext		= 'jpg';
					$imagen->image_resize				= true;
					$imagen->image_ratio_crop			= true;
					$imagen->image_background_color	= '#000000';
					$imagen->image_x					= 900; /* Ancho */
					$imagen->image_y					= 900; /* Alto */
			  
			  $imagen->process($ruta);
			  if ($imagen->processed) {
				  
				// Subimos a la base de datos
				$datos = array(
					'imagen'	=> $db->string($imagen->file_dst_name),
				);		
				$db->update(TABLA,$datos,"id='$id'");	
				
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$imagen->error;
				}
		// FIN DE LA CREACIÓN DE LA IMAGEN ORIGINAL
		// ===================================================================================
		
		
		// ===================================================================================
		// CREAMOS LA MINIATURA
		   
				$imagen->image_convert			= 'jpg';
				$imagen->jpeg_quality				= 92;
				$imagen->allowed					= array('image/*');
				$imagen->file_new_name_body		= $id.'-min';
				$imagen->file_new_name_ext		= 'jpg';
				$imagen->image_resize				= true;
				$imagen->image_ratio_crop			= true;
				$imagen->image_background_color	= '#000000';
				$imagen->image_x					= 300; /* Ancho */
				$imagen->image_y					= 300; /* Alto */
			  
			  $imagen->process($ruta);
			  if ($imagen->processed) {
				  
				// Subimos a la base de datos
				$datos = array(
					'miniatura'	=> $db->string($imagen->file_dst_name),
				);		
				$db->update(TABLA,$datos,"id='$id'");	
				
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$imagen->error;
				}
		// FIN DE LA CREACIÓN DE LA MINIATURA
		// ===================================================================================
		
		// ===================================================================================
		// CREAMOS EL RECORTE
		   
			  $imagen->image_convert			= 'jpg';
			  $imagen->jpeg_quality				= 92;
			  $imagen->allowed					= array('image/*');
			  $imagen->file_new_name_body		= $id.'-rec';
			  $imagen->file_new_name_ext		= 'jpg';
			  $imagen->image_resize				= true;
			  $imagen->image_ratio_crop			= true;
			  $imagen->image_background_color	= '#000000';
			  $imagen->image_x					= 100; /* Ancho */
			  $imagen->image_y					= 100; /* Alto */
			  
			  $imagen->process($ruta);
			  if ($imagen->processed) {
				  
				// Subimos a la base de datos
				$datos = array(
					'recorte'	=> $db->string($imagen->file_dst_name),
				);		
				$db->update(TABLA,$datos,"id='$id'");	
				
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$imagen->error;
				}
		// FIN DE LA CREACIÓN DEL RECORTE
		// ===================================================================================
				
		}
		
		//======FIN DEL PROCESO DE LA IMAGEN 1=======












        // ==================================================
		// ======PROCESAMOS LAS IMÁGENES DE LA GALERÍA=======
		// ==================================================
		
		// Extraemos la cantidad de imágenes que se van a subir
		$nro=count($_FILES[TABLA.'_galerias']['name']);
		
		// Empezamos el array con las imágenes
		for ($i=0; $i<$nro; $i++) {
		
		// Verificamos si existe la imagen
		if ($_FILES[TABLA.'_galerias']['name'][$i]!=''){
		
		$imagen = new upload($_FILES[TABLA.'_galerias']['tmp_name'][$i]);
		
		// Comprobamos si se subió la imagen
			if ($imagen->uploaded) {
			 
		// ===================================================================================
		// CREAMOS LA IMAGEN ORIGINAL
			  
                
                $nombre = funcion::Aleatorio(5,TRUE,TRUE,FALSE);
				$imagen->image_convert				= 'jpg';
				$imagen->jpeg_quality				= 92;
				$imagen->allowed					= array('image/*');
				$imagen->file_new_name_body			= "img_".$slug."_".$titulo;
				$imagen->file_new_name_ext			= 'jpg';
				$imagen->image_resize				= true;
				$imagen->image_ratio_crop			= true;
				$imagen->image_background_color		= '#000000';
				$imagen->image_x					= 900; /* Ancho */
				$imagen->image_y					= 900; /* Alto */
				
				$imagen->process($ruta.'_galerias');

				if ($imagen->processed) {
					// Agregamos a la base de datos
					$datos_imagenes = array(
						'producto'			=> @$id+0,
						'imagen'			=> $db->string($imagen->file_dst_name)
					);
					
					$db->insert(TABLA.'_galerias',$datos_imagenes);
                    
                    // Extraemos el ID
					$id_galeria = $db->UltimoId(TABLA.'_galerias');
					
					
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$imagen->error;
				}
		// FIN DE LA CREACIÓN DE LA IMAGEN ORIGINAL
		// ===================================================================================
		
		// ===================================================================================
		// CREAMOS LA MINIATURA
		   
				$nombre = funcion::Aleatorio(15,TRUE,TRUE,FALSE);
				$imagen->image_convert				= 'jpg';
				$imagen->jpeg_quality				= 92;
				$imagen->allowed					= array('image/*');
				$imagen->file_new_name_body			= "min_".$slug."_".$titulo;
				$imagen->file_new_name_ext			= 'jpg';
				$imagen->image_resize				= true;
				$imagen->image_ratio_crop			= true;
				$imagen->image_background_color		= '#000000';
				$imagen->image_x					= 300; /* Ancho */
				$imagen->image_y					= 300; /* Alto */
				
				$imagen->process($ruta.'_galerias');
				if ($imagen->processed) {
				  
					// Subimos a la base de datos
					$datos_recorte = array(
							'miniatura'		=> $db->string($imagen->file_dst_name)
					);		
					$db->update(TABLA.'_galerias',$datos_recorte,"id='$id_galeria'");
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$imagen->error;
				}
		// FIN DE LA CREACIÓN DE LA MINIATURA
		// ===================================================================================
		
		// ===================================================================================
		// CREAMOS EL RECORTE
		   
				$nombre = funcion::Aleatorio(15,TRUE,TRUE,FALSE);
				$imagen->image_convert				= 'jpg';
				$imagen->jpeg_quality				= 92;
				$imagen->allowed					= array('image/*');
				$imagen->file_new_name_body			= "rec_".$slug."_".$titulo;
				$imagen->file_new_name_ext			= 'jpg';
				$imagen->image_resize				= true;
				$imagen->image_ratio_crop			= true;
				$imagen->image_background_color		= '#000000';
				$imagen->image_x					= 100; /* Ancho */
				$imagen->image_y					= 100; /* Alto */
				
				$imagen->process($ruta.'_galerias');
				
				if ($imagen->processed) {
				  
					// Subimos a la base de datos
					$datos_recorte = array(
							'recorte'		=> $db->string($imagen->file_dst_name)
					);		
					$db->update(TABLA.'_galerias',$datos_recorte,"id='$id_galeria'");
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$imagen->error;
				}
		// FIN DE LA CREACIÓN DEL RECORTE
		// ===================================================================================
		
		  }
		
		}
		}
		// ============================
		
		//======FIN DEL PROCESO DE LAS IMÁGENES DE LA GALERÍA=======
		//==========================================================







        // ==================================================
		// ======PROCESAMOS LAS IMÁGENES DE LA GALERÍA=======
		// ==================================================
		
		// Extraemos la cantidad de imágenes que se van a subir
		$nro=count($_FILES[TABLA.'_fichas']['name']);
		

		// Empezamos el array con las imágenes
		for ($i=0; $i<$nro; $i++) {
		
		// Verificamos si existe la imagen
		if ($_FILES[TABLA.'_fichas']['name'][$i]!=''){
		
		$ficha = new upload($_FILES[TABLA.'_fichas']['tmp_name'][$i]);
		
            // Comprobamos si se subió la ficha
		if ($ficha->uploaded) {
			 
		// ===================================================================================
		// CREAMOS LA FICHA ORIGINAL
			  
              $titulo_ficha = funcion::LimpiaComillaSimple($_POST['titulo_ficha'][$i]);
            
              $nombre = funcion::Aleatorio(5,TRUE,TRUE,FALSE);
			  $ficha->file_new_name_body	=	$slug.'_'.$nombre;
			  
			  $ficha->process($ruta.'_fichas/');
            
			  if ($ficha->processed) {
					// Agregamos a la base de datos
					$datos_fichas = array(
						'producto'			=> @$id+0,
                        'titulo'            => $db->string($titulo_ficha),
						'ficha'			    => $db->string($ficha->file_dst_name)
					);
					
					$db->insert(TABLA.'_fichas',$datos_fichas);
                    
                   
					
				} else {
					$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$ficha->error;
				}
		// FIN DE LA CREACIÓN DE LA FICHA 1
		// ===================================================================================
		}
		
		  
		
		}
		}
		// ============================
		
		//======FIN DEL PROCESO DE LAS IMÁGENES DE LA GALERÍA=======
		//==========================================================


	



					// Comprobamos si se subió la imagen
					$archivo = new upload($_FILES['fileload']);
					if ($archivo->uploaded) {
					// ===================================================================================
					// CREAMOS EL ARCHIVO

						
						
					$archivo->file_new_name_body = 'cargar-precio';
					$archivo->file_overwrite = true;
					$archivo->process($ruta);

						
						
					if ($archivo->processed) {		
						// Subimos a la base de datos
						
						
					$db->delete(TABLA."_precios","producto='{$id}'");
						
						
						

						
						set_include_path(get_include_path() . PATH_SEPARATOR . 'mago/lib/');
						include '../../../lib/PHPExcel/IOFactory.php';

						$inputFileName = $ruta.'/'.$archivo->file_dst_name;

							try {
								$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
							} catch(Exception $e) {
								die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
							}

							$allDataInSheet = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
							$arrayCount = count($allDataInSheet);

							for($i=1;$i<=$arrayCount;$i++){

								$producto = @$id+0;
								$codigo	  = trim($allDataInSheet[$i]["A"]);
								$descripcion = trim($allDataInSheet[$i]["B"]);
								$unidad = trim($allDataInSheet[$i]["C"]);
								$precio = trim($allDataInSheet[$i]["D"]);
								$oferta = trim($allDataInSheet[$i]["E"]);

										$datos_base = array(
											'producto'			=> @$id+0,
											'codigo'			=> $db->string($codigo),
											'descripcion'		=> $db->string($descripcion),
											'unidad'		=> $db->string($unidad),
											'precio'		=> $db->string($precio),
											'oferta'		=> $db->string($oferta),
										);


								$db->insert(TABLA.'_precios',$datos_base);
							}

						} else {
							$mensaje_respuesta = $mensaje_respuesta.'<br>ERROR: '.$ficha->error;
						}
						// FIN DE LA CREACIÓN DEL ARCHIVO
						// ===================================================================================
						}
						/////////////////////////////////////////////////////////




						$nro=count($_POST["idlist"]);
		
						// Empezamos el array con las imágenes
						for ($i=0; $i<$nro; $i++) {
									$datos_precio = array(
											'producto'			=> @$id+0,
											'codigo'			=> $db->string($_POST["codigo"][$i]),
											'descripcion'		=> $db->string($_POST["descripcion"][$i]),
											'unidad'		=> $db->string($_POST["unidad"][$i]),
											'precio'		=> $db->string($_POST["preciolista"][$i]),
											'oferta'		=> $db->string($_POST["ofertalista"][$i]),
									);
									
									$db->insert(TABLA.'_precios',$datos_precio);
						}
								






echo $mensaje_respuesta.'|'.$url_respuesta;
exit;
?>