<?php 
ini_set("display_errors","1");
ini_set("display_startup_errors","1");
set_magic_quotes_runtime(0);

include("include/dbcommon.php");
include("include/pf_camara_variables.php");



$filename="";	
$message="";
$error_happened=false;
$readevalues=false;

//connect database
$conn = db_connect();


$keys=array();
$keys["id_camara"]=postvalue("editid1");

//	prepare data for saving
if(@$_POST["a"]=="edited")
{
	$strWhere=KeyWhere($keys);
	$strSQL = "update ".AddTableWrappers($strOriginalTableName)." set ";
	$evalues=array();
	$efilename_values=array();
	$files_delete=array();
	$files_move=array();
//	processing id_camara - start
	$value = postvalue("value_id_camara");
	$type=postvalue("type_id_camara");
	if (in_assoc_array("type_id_camara",$_POST) || in_assoc_array("value_id_camara",$_POST) || in_assoc_array("value_id_camara",$_FILES))	
	{
		$value=prepare_for_db("id_camara",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["id_camara"]=$value;
	}

//	update key value
	$keys["id_camara"]=$value;

//	processibng id_camara - end

//	processing nombre_camara - start
	$value = postvalue("value_nombre_camara");
	$type=postvalue("type_nombre_camara");
	if (in_assoc_array("type_nombre_camara",$_POST) || in_assoc_array("value_nombre_camara",$_POST) || in_assoc_array("value_nombre_camara",$_FILES))	
	{
		$value=prepare_for_db("nombre_camara",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["nombre_camara"]=$value;
	}


//	processibng nombre_camara - end

//	processing estado_actual - start
	$value = postvalue("value_estado_actual");
	$type=postvalue("type_estado_actual");
	if (in_assoc_array("type_estado_actual",$_POST) || in_assoc_array("value_estado_actual",$_POST) || in_assoc_array("value_estado_actual",$_FILES))	
	{
		$value=prepare_for_db("estado_actual",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["estado_actual"]=$value;
	}


//	processibng estado_actual - end

//	processing tipo_camara - start
	$value = postvalue("value_tipo_camara");
	$type=postvalue("type_tipo_camara");
	if (in_assoc_array("type_tipo_camara",$_POST) || in_assoc_array("value_tipo_camara",$_POST) || in_assoc_array("value_tipo_camara",$_FILES))	
	{
		$value=prepare_for_db("tipo_camara",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["tipo_camara"]=$value;
	}


//	processibng tipo_camara - end

//	processing proceso_actual - start
	$value = postvalue("value_proceso_actual");
	$type=postvalue("type_proceso_actual");
	if (in_assoc_array("type_proceso_actual",$_POST) || in_assoc_array("value_proceso_actual",$_POST) || in_assoc_array("value_proceso_actual",$_FILES))	
	{
		$value=prepare_for_db("proceso_actual",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["proceso_actual"]=$value;
	}


//	processibng proceso_actual - end

//	processing posicion_puerta - start
	$value = postvalue("value_posicion_puerta");
	$type=postvalue("type_posicion_puerta");
	if (in_assoc_array("type_posicion_puerta",$_POST) || in_assoc_array("value_posicion_puerta",$_POST) || in_assoc_array("value_posicion_puerta",$_FILES))	
	{
		$value=prepare_for_db("posicion_puerta",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["posicion_puerta"]=$value;
	}


//	processibng posicion_puerta - end

//	processing x - start
	$value = postvalue("value_x");
	$type=postvalue("type_x");
	if (in_assoc_array("type_x",$_POST) || in_assoc_array("value_x",$_POST) || in_assoc_array("value_x",$_FILES))	
	{
		$value=prepare_for_db("x",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["x"]=$value;
	}


//	processibng x - end

//	processing y - start
	$value = postvalue("value_y");
	$type=postvalue("type_y");
	if (in_assoc_array("type_y",$_POST) || in_assoc_array("value_y",$_POST) || in_assoc_array("value_y",$_FILES))	
	{
		$value=prepare_for_db("y",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["y"]=$value;
	}


//	processibng y - end

//	processing w - start
	$value = postvalue("value_w");
	$type=postvalue("type_w");
	if (in_assoc_array("type_w",$_POST) || in_assoc_array("value_w",$_POST) || in_assoc_array("value_w",$_FILES))	
	{
		$value=prepare_for_db("w",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["w"]=$value;
	}


//	processibng w - end

//	processing h - start
	$value = postvalue("value_h");
	$type=postvalue("type_h");
	if (in_assoc_array("type_h",$_POST) || in_assoc_array("value_h",$_POST) || in_assoc_array("value_h",$_FILES))	
	{
		$value=prepare_for_db("h",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["h"]=$value;
	}


//	processibng h - end

//	processing maxpallet - start
	$value = postvalue("value_maxpallet");
	$type=postvalue("type_maxpallet");
	if (in_assoc_array("type_maxpallet",$_POST) || in_assoc_array("value_maxpallet",$_POST) || in_assoc_array("value_maxpallet",$_FILES))	
	{
		$value=prepare_for_db("maxpallet",$value,$type);
	}
	else
		$value=false;
	if(!($value===false))
	{	
		$evalues["maxpallet"]=$value;
	}


//	processibng maxpallet - end


	foreach($efilename_values as $ekey=>$value)
		$evalues[$ekey]=$value;
//	do event
	$retval=true;
	if(function_exists("BeforeEdit"))
		$retval=BeforeEdit($evalues,$strWhere);
	if($retval)
	{		
//	construct SQL string
		foreach($evalues as $ekey=>$value)
		{
			$strSQL.=AddFieldWrappers($ekey)."=".add_db_quotes($ekey,$value).", ";
		}
		if(substr($strSQL,-2)==", ")
			$strSQL=substr($strSQL,0,strlen($strSQL)-2);
		$strSQL.=" where ".$strWhere;
		set_error_handler("edit_error_handler");
		db_exec($strSQL,$conn);
		set_error_handler("error_handler");
		if(!$error_happened)
		{
//	delete & move files
			foreach ($files_delete as $file)
			{
				if(file_exists($file))
					@unlink($file);
			}
			foreach ($files_move as $file)
			{
				move_uploaded_file($file[0],$file[1]);
				if(strtoupper(substr(PHP_OS,0,3))!="WIN")
					chmod($file[1],0777);
			}
			$message="<div class=message><<< "."Registro actualizado"." >>></div>";
//	after edit event
			if(function_exists("AfterEdit"))
				AfterEdit();
		}
	}
	else
		$readevalues=true;
}

//	get current values and show edit controls

$strSQL = $gstrSQL;

$strWhere=KeyWhere($keys);
$strSQL = AddWhere($strSQL,$strWhere);

LogInfo($strSQL);
$rs=db_query($strSQL,$conn);
$data=db_fetch_array($rs);

if($readevalues)
{
	$data["id_camara"]=$evalues["id_camara"];
	$data["nombre_camara"]=$evalues["nombre_camara"];
	$data["estado_actual"]=$evalues["estado_actual"];
	$data["tipo_camara"]=$evalues["tipo_camara"];
	$data["proceso_actual"]=$evalues["proceso_actual"];
	$data["posicion_puerta"]=$evalues["posicion_puerta"];
	$data["x"]=$evalues["x"];
	$data["y"]=$evalues["y"];
	$data["w"]=$evalues["w"];
	$data["h"]=$evalues["h"];
	$data["maxpallet"]=$evalues["maxpallet"];
}

include('libs/Smarty.class.php');
$smarty = new Smarty();

//	include files

$includes="";

//	validation stuff
$bodyonload="";
$onsubmit="";
$includes.="<script language=\"JavaScript\" src=\"include/validate.js\"></script>\r\n";
$includes.="<script language=\"JavaScript\">\r\n";
$includes.="var TEXT_FIELDS_REQUIRED='".addslashes("Los siguientes campos requirieron")."';\r\n";
$includes.="var TEXT_FIELDS_ZIPCODES='".addslashes("Los siguientes campos deben ser códigos postales válidos")."';\r\n";
$includes.="var TEXT_FIELDS_EMAILS='".addslashes("Los siguientes campos deben ser correos electrónicos válidos")."';\r\n";
$includes.="var TEXT_FIELDS_NUMBERS='".addslashes("Los siguientes campos deben ser numeros")."';\r\n";
$includes.="var TEXT_FIELDS_CURRENCY='".addslashes("Los siguientes campos deben ser moneda corriente")."';\r\n";
$includes.="var TEXT_FIELDS_PHONE='".addslashes("Los siguientes campos deben ser números telefónicos")."';\r\n";
$includes.="var TEXT_FIELDS_PASSWORD1='".addslashes("Los siguientes campos deben ser contraseñas válidas")."';\r\n";
$includes.="var TEXT_FIELDS_PASSWORD2='".addslashes("deben tener por lo menos 4 caracteres")."';\r\n";
$includes.="var TEXT_FIELDS_PASSWORD3='".addslashes("Si no, no puede \"password\"")."';\r\n";
$includes.="var TEXT_FIELDS_STATE='".addslashes("Los siguientes campos deben ser Nombres de Estados")."';\r\n";
$includes.="var TEXT_FIELDS_SSN='".addslashes("Los siguientes campos deben ser Números de Seguridad Social")."';\r\n";
$includes.="var TEXT_FIELDS_DATE='".addslashes("Los siguientes campos deben ser fechas válidas")."';\r\n";
$includes.="var TEXT_FIELDS_TIME='".addslashes("Los campos siguientes deben ser validados en el formato de fecha de 24 horas")."';\r\n";
$includes.="var TEXT_FIELDS_CC='".addslashes("Los siguientes campos deben ser números de tarjetas de crédito")."';\r\n";
$includes.="var TEXT_FIELDS_SSN='".addslashes("Los siguientes campos deben ser Números de Seguridad Social")."';\r\n";
$includes.="</script>\r\n";
  	$validatetype="IsNumeric";
	$validatetype.="IsRequired";
	if($validatetype)
		$bodyonload.="define('value_id_camara','".$validatetype."','Identificador Camara');";
  	$validatetype="IsNumeric";
	if($validatetype)
		$bodyonload.="define('value_proceso_actual','".$validatetype."','Proceso Actual');";
  	$validatetype="IsNumeric";
	if($validatetype)
		$bodyonload.="define('value_x','".$validatetype."','x');";
  	$validatetype="IsNumeric";
	if($validatetype)
		$bodyonload.="define('value_y','".$validatetype."','y');";
  	$validatetype="IsNumeric";
	if($validatetype)
		$bodyonload.="define('value_w','".$validatetype."','w');";
  	$validatetype="IsNumeric";
	if($validatetype)
		$bodyonload.="define('value_h','".$validatetype."','h');";
  	$validatetype="IsNumeric";
	if($validatetype)
		$bodyonload.="define('value_maxpallet','".$validatetype."','Maximo Numero de Pallets');";

if($bodyonload)
{
	$onsubmit="return validate();";
	$bodyonload="onload=\"".$bodyonload."\"";
}

if ($useAJAX) {
$includes.="<script language=\"JavaScript\" src=\"include/jquery.js\"></script>\r\n";
$includes.="<script language=\"JavaScript\" src=\"include/ajaxsuggest.js\"></script>\r\n";
}
$includes.="<script language=\"JavaScript\" src=\"include/jsfunctions.js\"></script>\r\n";
$includes.="<script language=\"JavaScript\">\r\n".
"var locale_dateformat = ".$locale_info["LOCALE_IDATE"].";\r\n".
"var locale_datedelimiter = \"".$locale_info["LOCALE_SDATE"]."\";\r\n".
"var bLoading=false;\r\n".
"var TEXT_PLEASE_SELECT='".addslashes("Por favor seleccione")."';\r\n";
if ($useAJAX) {
$includes.="var AUTOCOMPLETE_TABLE='pf_camara_autocomplete.php';\r\n";
$includes.="var SUGGEST_TABLE='pf_camara_searchsuggest.php';\r\n";
$includes.="var SUGGEST_LOOKUP_TABLE='pf_camara_lookupsuggest.php';\r\n";
}
$includes.="</script>\r\n";
if ($useAJAX) {
$includes.="<div id=\"search_suggest\"></div>\r\n";
}





$smarty->assign("includes",$includes);
$smarty->assign("bodyonload",$bodyonload);
if(strlen($onsubmit))
	$onsubmit="onSubmit=\"".$onsubmit."\"";
$smarty->assign("onsubmit",$onsubmit);

$smarty->assign("key1",htmlspecialchars($keys["id_camara"]));
	$smarty->assign("show_key1", htmlspecialchars(GetData($data,"id_camara", "")));

$smarty->assign("message",$message);


$readonlyfields=array();

$smarty->assign("value_id_camara",@$data["id_camara"]);
$smarty->assign("value_nombre_camara",@$data["nombre_camara"]);
$smarty->assign("value_estado_actual",@$data["estado_actual"]);
$smarty->assign("value_tipo_camara",@$data["tipo_camara"]);
$smarty->assign("value_proceso_actual",@$data["proceso_actual"]);
$smarty->assign("value_posicion_puerta",@$data["posicion_puerta"]);
$smarty->assign("value_x",@$data["x"]);
$smarty->assign("value_y",@$data["y"]);
$smarty->assign("value_w",@$data["w"]);
$smarty->assign("value_h",@$data["h"]);
$smarty->assign("value_maxpallet",@$data["maxpallet"]);


$linkdata="";

if ($useAJAX) {
	$linkdata .= "<script type=\"text/javascript\">\r\n";
	$linkdata .= "$(document).ready(function(){ \r\n";
	$linkdata .= "
function loadSelectContent(txt, selectControl, selectValue) 
{
	$('#'+selectControl).get(0).options[0]=new Option(TEXT_PLEASE_SELECT,'');
	var str = txt.split('\\n');
	var index = 0;
	for(i=0,j=0; i < str.length - 1; i=i+2, j++) {
		$('#'+selectControl).get(0).options[j+1]=new Option(unescape(str[i+1]),unescape(str[i]));
		if ( unescape(str[i]) == selectValue ) {index = j+1;}
	}
	$('#'+selectControl).get(0).selectedIndex = index;
}"."\r\n";
	$linkdata .= "});\r\n";
	$linkdata .= "</script>\r\n";
} else {
}

$smarty->assign("linkdata",$linkdata);

$where=$strWhere;

$templatefile = "pf_camara_edit.htm";
if(function_exists("BeforeShowEdit"))
	BeforeShowEdit($smarty,$templatefile);

$smarty->display($templatefile);

function edit_error_handler($errno, $errstr, $errfile, $errline)
{
	global $readevalues, $message, $error_happened;
	$message="<div class=message><<< "."El registro no ha sido editado"." >>><br><br>".$errstr."</div>";
	$readevalues=true;
	$error_happened=true;
}

?>