This commit is contained in:
kleper 2018-07-05 08:54:07 -05:00
commit 3a235616c3

View File

@ -1,7 +1,181 @@
<?php <?php
date_default_timezone_set('America/Bogota'); date_default_timezone_set('America/Bogota');
/*
* Formulario validar
*
*
* */
function formulario_validar($formulario,$accion,$tipo) {
$formulario_original = $formulario;
$error ='0';
if($accion == "api"){
$respuesta = new xajaxResponse('utf-8');
$Formulario_original = $formulario;
$formulario = json_decode($formulario,true);
//$formulario = print_r($formulario,true);
//$respuesta->addAssign("resultado_triage","innerHTML","hOLA $formulario_original" );
//return $respuesta;
}
$debug="";
$respuesta = new xajaxResponse('utf-8');
$datos="";
$envio="";
$consulta_grabada ='0';
$control = $formulario['control']; //
$form_id = $formulario['form_id']; //
$tipo_formulario = $formulario['tipo']; //
//if($tipo=='validar'){return $error;}
$metadatos = json_decode($formulario['metadatos']);
$consulta_form = "SELECT * FROM form_contenido_campos,form_campos
WHERE form_contenido_campos.id_campo = form_campos.id
AND id_form = '$form_id' ";
$link=Conectarse();
mysqli_set_charset($link, "utf8");
if(isset ( $_SESSION['id_empresa'])){$id_empresa = $_SESSION['id_empresa']; }else{
$id_empresa = remplacetas('form_id','id',$formulario['form_id'],'id_empresa',"") ;
$id_empresa = $id_empresa[0];
}
if(isset ( $_SESSION['equipo'])){$equipo = $_SESSION['equipo']; }else { $equipo = NULL;}
foreach($formulario as $c=>$v){
if (is_array($v) ){
foreach($v as $C=>$V){
$campo_tipo = remplacetas("form_campos","id",$c,"campo_tipo","");
$campo_nombre = remplacetas("form_campos","id",$c,"campo_nombre","");
if(@$campo_tipo[0] =="30" OR @$campo_tipo[0] =="24") {
$V=array();
$V[$c]=$v;
$V = json_encode($V);
}
if($V != '') {
if($campo_tipo[0] =='12' OR $campo_tipo[0] =='13') {
$validar = validar_email($V);
if($validar == '0') {
$error ='email';
$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
$respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
$respuesta->addAlert("Se necesita un email válido");
if($tipo=='validar'){return $error;}else{return $respuesta;}
}else {
//$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-success ");
}
}
if($campo_tipo[0] =='3' ) {
$validar = is_numeric($V);
if(is_numeric($V) ) {
$rango = remplacetas('form_campos_valores','id_form_campo',$c,'campo_valor',"") ;
$campos = explode(":",$rango[0]);
if($campos[0] =='rango') {
$valores_rango = explode(";",$campos[1]);
$min= $valores_rango[0];
$max= $valores_rango[1];
if($V < $min OR $V > $max) {
$error ='rango';
$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
$respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
$respuesta->addAlert("El campo $campo_nombre[0] debe estar entre $min y $max");
if($tipo=='validar'){return $error;}else{return $respuesta;}
}
}
//$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-success ");
}else{
$error ='numerico';
$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
$respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
$respuesta->addAlert("El campo $campo_nombre[0] solo acepta valores numéricos");
if($tipo=='validar'){return $error;}else{return $respuesta;}
}
}
if($campo_tipo[0] =='11' ) {
$rango = remplacetas('form_campos_valores','id_form_campo',$c,'campo_valor',"") ;
$campos = explode(":",$rango[0]);
if($campos[0] =='rango') {
$valores_rango = explode(";",$campos[1]);
$min= strtotime("$valores_rango[0]");
$ano = date("Y", strtotime($valores_rango[0]));
$mes = date("m", strtotime($valores_rango[0]));
$dia = date("d", strtotime($valores_rango[0]));
if($valores_rango[1] =='0') { $max = time(); $valores_rango[1]= $max; $max_fecha = date("Y-m-d");}
else{$max= strtotime("$valores_rango[1]"); $max_fecha= $valores_rango[1];}
$fecha = strtotime("$V");
if($fecha < $min OR $fecha > $max) {
$error ='rango';
$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
$respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
$respuesta->addAlert("El campo $campo_nombre[0] debe estar entre $valores_rango[0] y $max_fecha");
if($tipo=='validar'){return $error;}else{return $respuesta;}
}
}
// $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-success ");
}
if($campo_tipo[0]=='17') {
$limite = limite("$c",'','limite');
$size= strlen($V);
$restante = ($limite - $size);
if( $restante < 0) {
$error ='limite';
$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
$respuesta->addAlert("ATENCION: El campo $campo_nombre[0] no debe tener mas de $limite caractéres, sobran $restante");
$respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
if($tipo=='validar'){return $error;}else{return $respuesta;}
}
}
}
else{ //busca campos vacios
$campo_obligatorio = remplacetas("form_contenido_campos","id_campo",$c,"obligatorio","id_form = '$formulario[form_id]'");
if($campo_obligatorio[0] =='1'){
$error ='obligatorio';
$respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
$respuesta->addAlert("ATENCION: El campo $campo_nombre[0] es obligatorio");
$respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
if($tipo=='validar'){return $error;}else{return $respuesta;}
}
}
}
}
}
if($tipo=='validar'){return $error;}
}
$xajax->registerFunction("formulario_validar");
/*
* Formulario validar
*
*
* */
function banner_empresa($id_empresa,$form){ function banner_empresa($id_empresa,$form){
if($form !=""){ if($form !=""){