<?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

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

	// valor "1" en desarrollo y "0" en internet
	ini_set("display_errors", "0");

	// Attempt...
	define("IGNX", 1);

	// conex, config, login  global
	require("inc.global.php");

/******* CONFIGURACION  ***********/

$titulo = INGENIO_NOMBRE." ".INGENIO_VERSION;
$archivo_php = $_SERVER['SCRIPT_NAME'];

/******* CONFIGURACION FIN ********/

	$cadena_get_comple = $_SERVER['QUERY_STRING'];
	$cadena_get = strstr($_SERVER['QUERY_STRING'],"msj=1&");
	$no_get = $cadena_get_comple == "" ? 1 : 0 ;
	$tabla_get = "tabla=".ARCHIVOS_HTML;
	$campoid = "fileID";
	$ig = $_GET;
	$arc = $_FILES;
	$in = $_POST;

if (isset($in["guardar"]))
{
	
	
	// asignar el ID
	$qd = myquery("SELECT * FROM ".ARCHIVOS_HTML." ORDER BY ".$campoid." DESC LIMIT 0, 1","[03]");
	$row_inid = myfetch($qd);
	if ($row_inid["fileID"])
	{
		$inid = $row_inid["fileID"]+1;
	} else {
		$inid = 1;
	}

	
	if (isset($arc["archivo"]) && $arc["archivo"]["name"])
	{
		
		// extension + caracteres max 100
		if (preg_match('/\.(jpg|jpeg|png|gif|mov|wmv|swf|mp4|rm|avi|mpg)$/i', $arc["archivo"]["name"]) && strlen($arc["archivo"]["name"]) <= 100 && $arc["archivo"]["size"] > 0)
		{
						
			$arc["archivo"]["name"] = preg_replace ('/[^\.a-zA-Z0-9]/', '', $arc["archivo"]["name"]);			
			$archivo_nom = "A_".$inid."_".$arc["archivo"]["name"];
			$subir = move_uploaded_file($arc["archivo"]["tmp_name"], "../archivos_html/".$archivo_nom);
			if (!$subir) //falla FTP
			{
				
				Redir ($archivo_php."?err_ftp=1");
						
			} else {
					
				$archivo = $archivo_nom;
					
			}
							
		} else { // no extension no cantidad de caracteres
						
			Redir ($archivo_php."?err_ext=1");
						
		}
					
	} else {
	
		if (trim($in["archivo_ftp"]) != "")
		{
			$archivo = $in["archivo_ftp"];
	
		} else {
	
			$archivo = "";
		}
	
	}
	
	$comentario = entrada_gral_html($in["comentario"]); 
	$qs = "INSERT INTO ".ARCHIVOS_HTML." (comentario,archivo) VALUES ('".$comentario."','".$archivo."')";
	myquery($qs,"[01]");
	$inid = myinsertid();
	
	// lista de archivos tinyMCE
	// ("directorio","archivo","ruta")
	generar_lista_archivos("../archivos_html","../ftps/lista_archivos.js","/".$ingenio_conn[5]."/archivos_html/");
	
	Redir ($archivo_php."?".$campoid."=".$inid."&msj=1&".$in["listado_get"]);


}

if (isset($ig["fileID"]) || isset($in["fileID"]))
{
	// asignar ID gral
	$fileID_gral = isset($ig["fileID"]) ? $ig["fileID"] : $in["fileID"];
	
	
	if (isset($in["actualizar"]))
	{

		// asignar el ID
		$inid = $fileID_gral;

	
		if (isset($arc["archivo"]) && $arc["archivo"]["name"])
		{
					
			// extension + caracteres max 100
			if (preg_match('/\.(jpg|jpeg|png|gif|mov|wmv|swf|mp4|rm|avi|mpg)$/i', $arc["archivo"]["name"]) && strlen($arc["archivo"]["name"]) <= 100 && $arc["archivo"]["size"] > 0)
			{
						
				$arc["archivo"]["name"] = preg_replace ('/[^\.a-zA-Z0-9]/', '', $arc["archivo"]["name"]);			
				$archivo_nom = "A_".$inid."_".$arc["archivo"]["name"];
				$subir = move_uploaded_file($arc["archivo"]["tmp_name"], "../archivos_html/".$archivo_nom);
				if (!$subir) //falla FTP
				{
					// '0' no borrar el viejo archivo
					$borrar_arc = 0;
					Redir ($archivo_php."?".$campoid."=".$inid."&err_ftp=1&".$in["listado_get"]);
						
				} else {
										
					// '1' si borrar el viejo archivo
					$borrar_arc = 1;
					// controla el UPDATE
					$archivo = ",archivo='".$archivo_nom."'";
					
					
				}
							
			} else { // no extension no cantidad de caracteres
						
				// '0' no borrar el viejo archivo
				$borrar_arc = 0;				
				Redir ($archivo_php."?".$campoid."=".$inid."&err_ext=1&".$in["listado_get"]);
						
			}
						
			// borrar el archivo viejo y actualizar lista
			if ($borrar_arc == 1)
			{
				$q1 = myquery("SELECT * FROM ".ARCHIVOS_HTML." WHERE fileID='".$fileID_gral."'","[02]");
				$row1 = myfetch($q1);
				// si tiene distinto nombre se borra
				if ($row1["archivo"] != $archivo_nom)
				{
					if ($row1["archivo"] && file_exists_url("../archivos_html/".$row1["archivo"]))
					{
						unlink("../archivos_html/".$row1["archivo"]);
					}
				}
				
				// lista de archivos tinyMCE
				// ("directorio","archivo","ruta")
				generar_lista_archivos("../archivos_html","../ftps/lista_archivos.js","/".$ingenio_conn[5]."/archivos_html/");

			}
			
		} else {
	
			if (trim($in["archivo_ftp"]) != "")
			{
				
				// controla el UPDATE
				$archivo = ",archivo='".$in["archivo_ftp"]."'";
				
				// borrar el archivo viejo y actualizar lista
				$q1 = myquery("SELECT * FROM ".ARCHIVOS_HTML." WHERE fileID='".$fileID_gral."'","[03]");
				$row1 = myfetch($q1);
				if ($row1["archivo"] && file_exists_url("../archivos_html/".$row1["archivo"]))
				{
					unlink("../archivos_html/".$row1["archivo"]);
				}
				
				// lista de archivos tinyMCE
				// ("directorio","archivo","ruta")
				generar_lista_archivos("../archivos_html","../ftps/lista_archivos.js","/".$ingenio_conn[5]."/archivos_html/");
	
			} else {
	
				// controla el UPDATE
				$archivo = "";
			}
	
		}
	
		$comentario = entrada_gral_html($in["comentario"]); 
		$qs = "UPDATE ".ARCHIVOS_HTML." SET comentario='".$comentario."'".$archivo." WHERE fileID='".$fileID_gral."'";
		myquery($qs,"[04]");
				
		Redir ($archivo_php."?".$campoid."=".$inid."&msj=1&".$in["listado_get"]);

	}

	// extraer los datos de la base
	$qt = myquery("SELECT * FROM ".ARCHIVOS_HTML." WHERE fileID='".$fileID_gral."'","[05]");
	$row = myfetch($qt);


} else {


/***** NUEVO ******/

$row = array();
$row["fileID"] = "";
$row["comentario"] = "";

}

?>
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<?php echo '<meta http-equiv="content-type" content="text/html; charset='.CONFIG_2.'" />'; ?>
<title><?php echo $titulo; ?></title>
<?php include("inc.head.php"); ?>

<?php include("inc.formjs.php"); ?>

</head>
<body>

<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr><td valign="top">

<?php include("inc.menu.php"); ?>

</td><td valign="top" width="100%">

<?php include("inc.copy.php"); ?>

<div class="contenido">

<?php
	if (isset($ig[$campoid]) || isset($in["actualizar"]))
	{
?>
<div class="div_rotulo_top_sec">
<img class="img_icon_pag" src="../skins_admin/<?php echo substr($row_comp['skin_admin'],0,-4); ?>/imgs/icon_editar.png" />
&nbsp;&nbsp;&nbsp;
<span class="rotulo_top_sec"><?php  echo LEN_ADMIN_146; ?></span>
</div>
<?php
	} else {
?>
<div class="div_rotulo_top_sec">
<img class="img_icon_pag" src="../skins_admin/<?php echo substr($row_comp['skin_admin'],0,-4); ?>/imgs/icon_publicar.png" />
&nbsp;&nbsp;&nbsp;
<span class="rotulo_top_sec"><?php  echo LEN_ADMIN_13; ?></span>
</div>
<?php
	}
?>

<form enctype="multipart/form-data" action="<?php echo $archivo_php; ?>" onsubmit="return validar_ingreso(this);" method="post" name="principal">
<?php
	if (isset($ig["fileID"]) || isset($in["actualizar"]))
	{

		if ($cadena_get)
		{
			$listado_get = substr($cadena_get,6);
			
		} else {
			
			if (isset($ig["err_ftp"]))
			{				
				$listado_get = str_replace($campoid."=".$fileID_gral."&err_ftp=1&","", $cadena_get_comple);
				
			} else if (isset($ig["err_ext"])) {
			
				$listado_get = str_replace($campoid."=".$fileID_gral."&err_ext=1&","", $cadena_get_comple);
				
			} else {
			
				// si se entra desde la web
				if ($cadena_get_comple == $campoid."=".$fileID_gral)
				{
					$listado_get = str_replace($campoid."=".$fileID_gral, $tabla_get, $cadena_get_comple);
						
				} else {
			
					$listado_get = str_replace($campoid."=".$fileID_gral."&","", $cadena_get_comple);
				}

			}

		}
		
		echo '<div class="rotulo">'.LEN_ADMIN_168.'</div>';

		// nuevo registro
		echo '<a title="'.salida_popups(LEN_ADMIN_167).'"';
		echo ' href="'.$archivo_php.'"';
		echo ' class="conex_tip">';
		echo '<img class="img_icon_ini" src="../skins_admin/'.substr($row_comp['skin_admin'],0,-4).'/imgs/icon_publicar.png" />';
		echo '</a>';
		
		// gestionar
		echo '&nbsp;&nbsp;<a title="'.salida_popups(LEN_ADMIN_12).'"';
		echo ' href="listados.php?'.$listado_get.'"';
		echo ' class="conex_tip">';
		echo '<img class="img_icon_ini" src="../skins_admin/'.substr($row_comp['skin_admin'],0,-4).'/imgs/icon_gestionar.png" />';
		echo '</a>';

		// borrar
		echo '&nbsp;&nbsp;<a title="'.salida_popups(LEN_ADMIN_145).'"';
		echo ' href="javascript:confirmar(\''.LEN_ADMIN_144.'\',\'listados.php?'.$tabla_get.'&res=bo&registro='.$fileID_gral.'\');"';
		echo ' class="conex_tip">';
		echo '<img class="img_icon_ini" src="../skins_admin/'.substr($row_comp['skin_admin'],0,-4).'/imgs/icon_borrar.png" />';
		echo '</a>';
		echo '&nbsp;&nbsp;(#'.$fileID_gral.')';

	} else {
		echo '<div class="rotulo">'.LEN_ADMIN_167.'</div>';	

		// gestionar
		echo '<a title="'.salida_popups(LEN_ADMIN_12).'"';
		echo ' href="listados.php?'.$tabla_get.'"';
		echo ' class="conex_tip">';
		echo '<img class="img_icon_ini" src="../skins_admin/'.substr($row_comp['skin_admin'],0,-4).'/imgs/icon_gestionar.png" />';
		echo '</a>';
	}

	if (isset($ig["msj"]))
	{
		echo '<br /><br /><span class="mensaje">'.LEN_ADMIN_22.'</span>&nbsp;&nbsp;';
	
	}

	if (isset($ig["err_ftp"]))
	{
		echo '<br /><br /><span class="mensaje">'.LEN_ADMIN_23.'</span>';
	
	}

	if (isset($ig["err_ext"]))
	{
		echo '<br /><br /><span class="mensaje">'.LEN_ADMIN_24.' (jpg|jpeg|png|gif|mov|wmv|swf|mp4|rm|avi|mpg)'.LEN_ADMIN_25.' 100</span>';
	}
?>
<br /><br /><br />
<div class="div_destacar_grupos">
<?php
	
	if (isset($ig["fileID"]) || isset($in["actualizar"])) {
		
		echo LEN_ADMIN_65.' ('.ini_get("upload_max_filesize").'b)<br />(jpg|jpeg|png|gif|mov|wmv|swf|mp4|rm|avi|mpg)';
		
	} else {
	
		echo '* '.LEN_ADMIN_66.' ('.ini_get("upload_max_filesize").'b)<br />(jpg|jpeg|png|gif|mov|wmv|swf|mp4|rm|avi|mpg)';
	}

?>
&nbsp;<input type="file" name="archivo" class="input_text">
<?php
	if (isset($ig["fileID"]) || isset($in["actualizar"]))
	{	
		if ($row["archivo"] && file_exists_url("../archivos_html/".$row["archivo"]))
		{
			
			$ext_img = "(jpg|jpeg|png|gif)";
			
			if (preg_match('/\.'.$ext_img.'$/i', $row["archivo"]))
			{
				$size = getimagesize("../archivos_html/".$row["archivo"]);
				$size_ancho = ceil($size[0]/2);
				
				// si el ancho es inferior a 50px
				if ($size_ancho < 50) { $size_ancho = $size[0]; }
				
				echo '<br /><br /><img src="../archivos_html/'.$row["archivo"].'" width="'.$size_ancho.'" />';
				echo '<br /><br />'.LEN_ADMIN_67.' <strong>'.$row["archivo"].'</strong>&nbsp;&nbsp;&nbsp;('.$size[0].' x '.$size[1].')';
			} else {
			 	
			 	$ext_mt = substr($row["archivo"],-3);
			 	if ($ext_mt == "swf")
				{
			 		echo '<br /><br /><embed type="application/x-shockwave-flash" play="false" src="../archivos_html/'.$row["archivo"].'" /></embed>';
		
				} else if ($ext_mt == "mov" || $ext_mt == "mp4")
				{
					// sin previsualizar estas extensiones
					echo '<br /><br /><span class="mensaje">'.LEN_ADMIN_293.'</span>';
				}
				echo '<br /><br />'.LEN_ADMIN_67.' <strong>'.$row["archivo"].'</strong>';
			}
			
		} else {

			echo '<br /><br /><span class="mensaje">'.LEN_ADMIN_26.'</span>';
		
		}
	}
?>
<br /><br />
<?php  echo LEN_ADMIN_191; ?> <b>archivos_html</b> 
<br /><br />
<select name="archivo_ftp">
<option value=""><?php  echo LEN_ADMIN_79; ?></option>
<?php

	$archivos_man = getfilesdir("../archivos_html",ARCHIVOS_HTML,"(jpg|jpeg|png|gif|mov|wmv|swf|mp4|rm|avi|mpg)");
	for ($m=0; $m<count($archivos_man); $m++)
	{		
		echo '<option value="'.basename($archivos_man[$m]).'">'.basename($archivos_man[$m]).'</option>';	
	}

?>
</select>
</div>

<br /><br />
<textarea name="comentario" id="comentario" class="input_editor_otro" rows="10"><?php echo $row["comentario"]; ?></textarea>

<div style="text-align:center;margin:20px 0px 20px 0px;">
<?php
	if (isset($ig["fileID"]) || isset($in["actualizar"]))
	{
?>
<input type="submit" value="<?php echo LEN_ADMIN_17;?>" class="boton">
<input type="hidden" name="<?php echo $campoid; ?>" value="<?php echo $fileID_gral; ?>">
<input type="hidden" name="actualizar" value="1">
<input type="hidden" name="listado_get" value="<?php echo $listado_get; ?>">
<?php
	} else {
?>
<input type="submit" value="<?php echo LEN_ADMIN_16;?>" class="boton">
<input type="hidden" name="guardar" value="1">
<input type="hidden" name="listado_get" value="<?php echo $tabla_get; ?>">
&nbsp;&nbsp;&nbsp;<input type="reset" value="<?php echo LEN_ADMIN_18;?>" class="boton">
<?php
	}
?>
</div>

</form>
</div>

</td></tr></table>

</body>
</html>
<?php
	include("inc.fin.php");
?>