<?php
	//Cargamos las funciones
/*
	include("../comunes/funciones.php");
	cargar_configuracion();
*/
	//print_r($_POST);
	ini_set('include_path', "../.." . PATH_SEPARATOR . get_include_path());
	include_once("comunes/funciones/funciones_generales.php");
    //include_once("comunes/funciones_idioma.php");
	include_once("comunes/funciones/funciones_bases_de_datos.php");
	//include("comunes/funciones/funciones_sesion.php");
	//include("comunes/funciones/funciones_precios.php");
	include_once("comunes/estructuras_de_datos.php");
	include_once("comunes/globals.php");
	//$configuracion = new Configuracion();
	//$empresa = new Empresa();
	
	$id_sesion = dame_valor_variable_global("id_sesion");
	$id_imagen = dame_valor_variable_global("id_imagen");
	$orden = dame_valor_variable_global("orden", 0);
	$imagen = dame_valor_variable_global("data");
	$fin = dame_valor_variable_global("fin");
	$estado_carga = dame_valor_variable_global("estado_carga");
	$conexionBD = dame_valor_variable_global("conexionBD");
	$destino_foto = dame_valor_variable_global("destino_foto", "");
	$retorno = "ERROR";
	$cod_error = "";
	//Si los 3 campos contienen algo, guardamos la imagen
	if (isset($id_sesion, $imagen, $orden, $id_imagen)){
		//Guardamos la imagen
		/*
		$sentencia_sql = "INSERT INTO tmp_imagen (id_imagen, sesion, orden, imagen) 
							VALUES ('$id_imagen', '$id_sesion', $orden, '$imagen')";
		//echo("$sentencia_sql\n");
		if ($conexionBD){
			mysqli_query($conexionBD, $sentencia_sql);
			$cod_error = mysqli_error($conexionBD);
			$retorno = mysqli_insert_id($conexionBD);
			//echo("$cod_error\n");
		}else{
			$cod_error = "No existe conexion a la base de datos\n";
		}
		*/
		//Vamos a grabar el fichero
		if ($fichero = fopen("$destino_foto/$id_imagen.tmp", "ab")){
			$retorno = "Imagen guardada";
			fwrite($fichero, $imagen);
			fclose($fichero);
		}
		
		//Ahora si hemos llegado al fin, vamos a cargar los trozos de esta imagen
		if ($fin == 1){
			/*
			echo("Pasa\n");
			$cadena = "";
			$sentencia_sql = "SELECT imagen FROM tmp_imagen 
							WHERE id_imagen = '$id_imagen' AND sesion = '$id_sesion' ORDER BY orden";
			echo("$sentencia_sql\n");
			if ($conexionBD){
				if($resultado = mysqli_query($conexionBD, $sentencia_sql)){
					while($fila = mysqli_fetch_array($resultado)){
						$cadena .= $fila["imagen"];
					}
				}else{
					$cod_error = "Error al cargar la imagen\n";
				}
			}else{
				$cod_error = "No existe conexion a la base de datos\n";
			}
			*/
			$cadena = file_get_contents("$destino_foto/$id_imagen.tmp");
			echo("$cadena\n");
			if ($cadena != ""){
			/*
				//Borramos la imagen
				//Borramos todoas las imágenes que tengamos con esta id, y esta sesión
				$sentencia_sql = "DELETE FROM tmp_imagen 
							WHERE id_imagen = '$id_imagen'	AND sesion = '$id_sesion' AND orden > 0";
				mysqli_query($conexionBD, $sentencia_sql);
				//Vamos a crear la imagen definitiva
				
				$miniatura = ($estado_carga > 10)? 0 : 1;
				//Necesitamos saber que código de imagen utilizaremos, si la imagen es una miniatura, cargamos la última miniatura y utilizamos el 
				//siguiente valor, si no, cargamos la última imagen con miniatura y cogemos el mismo valor
				$sentencia_sql = "SELECT id_imagen FROM tmp_imagen 
									WHERE sesion = '$id_sesion' AND miniatura = 1
									ORDER BY id_imagen DESC
									LIMIT 0, 1";
				$id_imagen = 0;
				if ($conexionBD){
					if($resultado = mysqli_query($conexionBD, $sentencia_sql)){
						if($fila = mysqli_fetch_array($resultado)){
							$id_imagen = $fila["id_imagen"];
						}
					}
				}
				if ($miniatura){
					$id_imagen++;
				}
				//Hacemos una insert, cogemos su código
				$sentencia_sql = "INSERT INTO tmp_imagen (sesion, imagen, miniatura, orden, id_imagen) 
								VALUES ('$id_sesion', '$cadena', $miniatura, 0, $id_imagen)";
				if ($conexionBD){
					if (!$miniatura){
						//echo("$sentencia_sql\n");	
					}
					mysqli_query($conexionBD, $sentencia_sql);
					$retorno = mysqli_insert_id($conexionBD);
				}*/
				//Vamos a cargar el contenido del fichero en una variable
				if ($cadena != ""){
					$ifp = fopen("$destino_foto/$id_imagen.png", "wb"); 
					$data = explode(',', $cadena);
					fwrite($ifp, base64_decode($data[1])); 
					fclose($ifp);
					chmod("$destino_foto/$id_imagen.png",0777);
					@unlink("$destino_foto/$id_imagen.tmp");
				}
			}else{
				$retorno = "ERROR";
			}
		}
	}else{
		//echo("Datos incorrectos\n");
	}

	echo($retorno);
	//cerrar_conexion_bd();
?>
