sesion_admon(); if(!$_SESSION["login"] || !$_SESSION["name_session"] || !$_SESSION["id_session"] || !$_SESSION["usuario"]){ /*print("");*/ }else{ if($_SESSION["login"]){ $order=($campo && $orden ? "order by $campo $orden" : ""); $plantilla="adminform.html"; switch ($accion){ case "":{ //Construir el nombre verdadero de la tabla $smarty->assign('idpagina2',$idpagina2); $smarty->assign('txtbuscar',$txtbuscar); if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } unset($nombrecampo); // PROCEDIMIENTO QUE OBTIENE LOS CAMPOS A LISTAR EN EL PRIMER PANTALLAZO $sqlcam="SELECT sys_funcional.* FROM sys_funcional INNER JOIN sys_form ON sys_funcional.idform = sys_form.id WHERE sys_form.tabla = '".$nomtabla."' AND sys_funcional.activo = 'SI' AND sys_form.activo = 'SI' AND sys_funcional.listado = 'SI' ORDER BY orden"; $qryCampos=$ln->query($sqlcam); if($ln->num_rows($qryCampos)){ $contador=0; while($row=$ln->fetch($qryCampos)){ $contador=$contador+1; $nombrecampo[$contador]=$row["descripcion"]; $labelcampo[$contador]=$row["label"]; if(substr($row["tabla_consulta"],0,4)=="sys_")$tabla_consulta[$contador]=$row["tabla_consulta"]; else $tabla_consulta[$contador]=$prefijo.$row["tabla_consulta"]; $tabla_consulta[$contador]=$row["tabla_consulta"]; $campo_consulta[$contador]=$row["campo_consulta"]; $andwhere[$contador]=$row["andwhere"]; } } //print_r($nombrecampo); //CONSTRUIR LA CADENA QUE CONTIENE LOS NOMBRES DE LOS CAMPOS A MOSTRAR $str_campos=""; $str_titulo_campos=""; $i=1; unset($str_where); for($i=1;$i<=$contador;$i++){ $str_campos=$str_campos.$nombrecampo[$i]; if($campo==$nombrecampo[$i] && $orden=="desc"){ $titulo_campo="".$labelcampo[$i].""; }else{ $titulo_campo="".$labelcampo[$i].""; } $str_titulo_campos=$str_titulo_campos.$titulo_campo; if($i<$contador){ $str_campos=$str_campos.","; } if(!$str_where){ if($tabla=="reci_cliente") { $str_where="WHERE (".$tabla.".".$nombrecampo[$i]." like '%".$txtbuscar."%'"; } else { $str_where="WHERE (".$prefijo.$tabla.".".$nombrecampo[$i]." like '%".$txtbuscar."%'"; } }else { if($tabla=="reci_cliente") { $str_where=$str_where." OR ".$tabla.".".$nombrecampo[$i]." like '%".$txtbuscar."%'"; } else { $str_where=$str_where." OR ".$prefijo.$tabla.".".$nombrecampo[$i]." like '%".$txtbuscar."%'"; } } } if($str_where)$str_where=$str_where.")"; unset($myfiltro); if($nomtabla==$prefijo."personal") { if($_SESSION["pais_actual"])$mostrar_datos=true; else $mostrar_datos=false; if($str_where)$str_where=$str_where." and pais ='".$_SESSION["pais_actual"]."'"; else $myfiltro=" WHERE pais ='".$_SESSION["pais_actual"]."'"; }else { $mostrar_datos=true; } if($mostrar_datos) { if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } $sqlcount = "SELECT count(*) FROM $nomtabla $str_where "; $sql="SELECT $str_campos,id FROM $nomtabla $str_where"; $valores=$pg->calculapaginacion($sqlcount, $Paginas, $pag); $valores=explode(";",$valores); $smarty->assign('paginacion',$pg->paginar($pag, $valores[0], $Paginas, "$PHP_SELF?tabla=$tabla&idpagina=$idpagina&campo=$campo&orden=$orden&accion=&pag=")); $Consulta=$ln->query("$sql $order limit $valores[1], $Paginas;"); if($ln->num_rows($Consulta)) { while ($row=$ln->fetch($Consulta)) { $str_valores_campos=""; for($i=1;$i<=$contador;$i++) { unset($desc,$str_tabla_consulta); if($campo_consulta[$i]=="id") { if(substr($tabla_consulta[$i],0,4)=="sys_")$str_tabla_consulta=$tabla_consulta[$i]; else $str_tabla_consulta=$prefijo.$tabla_consulta[$i]; $buscando=" - ".get_descripcion($str_tabla_consulta,$row[$nombrecampo[$i]]); if($buscando!=" - ")$desc=$buscando; } $str_valores_campos=$str_valores_campos."".$row[$nombrecampo[$i]].$desc.""; } $smarty->append('Data',array('valores'=> $str_valores_campos,'id' => $row["id"],'class'=>$class)); if($class=="")$class = "class=\"odd\""; else $class = ""; } } $ln->free_result($Consulta); }else{ $ln->addlog($idusuario,"EL USUARIO NO HA CONFIGURADO SU SESION"); $mensaje=$mensaje."CONFIGURE PRIMERO SU SESION"; $plantilla="resultado.html"; $accion="error"; } //MUESTRA LA FORMA DE ORDENAR $smarty->assign('titulos_campos',$str_titulo_campos); $smarty->assign('tabla',$tabla); $smarty->assign('contarcampos',$contador + 2); $smarty->assign('campo',$campo); $smarty->assign('orden',$orden); $js->confirmar(); }break; case "add":{ //Construir el nombre verdadero de la tabla if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } $smarty->assign('tabla',$tabla); unset($nombrecampo); // PROCEDIMIENTO QUE OBTIENE LOS CAMPOS A CAPTURAR POR EL FORMULARIO $sqlcam="SELECT sys_funcional.* FROM sys_funcional INNER JOIN sys_form ON sys_funcional.idform = sys_form.id WHERE sys_form.tabla = '".$nomtabla."' AND sys_funcional.activo = 'SI' AND sys_form.activo = 'SI' ORDER BY sys_funcional.orden"; $qryCampos=$ln->query($sqlcam); if($ln->num_rows($qryCampos)){ $contador=0; $str_validaciones=""; while($row=$ln->fetch($qryCampos)){ $contador=$contador+1; unset($namecampo,$labelcampo,$tooltip,$elementid,$obligatorio,$tabla_consulta,$campo_consulta,$opciones_enum,$leer_con,$andwhere,$oculto); $namecampo=$row["descripcion"]; $labelcampo=$row["label"]; $labelcampoval=$row["label"]; if($row["obligatorio"]=="SI"){ $labelcampo="*".$labelcampo; } $tooltip=$row["tooltip"]; $elementid=$row["idelement"]; $obligatorio=$row["obligatorio"]; $tabla_consulta=$row["tabla_consulta"]; $campo_consulta=$row["campo_consulta"]; $opciones_enum=$row["opciones_enum"]; $leer_con=$row["leer_con"]; $andwhere=$row["andwhere"]; $oculto=$row["oculto"]; $longitud=$row["longitud"]; if($longitud > 100)$longitud=100; $maxsize=$row["longitud"]; switch ($leer_con){ case "TEXTBOX":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "PASSWORD":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "MAIL":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="validamail(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && validamail(this.form.$namecampo,'$labelcampoval')"; } } }break; case "COMBO":{ unset($str_opciones_combo,$opciones_combo); if($namecampo=="idusuario_cargo")$str_opciones_combo=""; else $str_opciones_combo=""; if($opciones_enum==""){ if($tabla_consulta!="" && $campo_consulta!=""){ try{ if(substr($tabla_consulta,0,4)=="sys_")$str_tabla_consulta=$tabla_consulta; else $str_tabla_consulta=$prefijo.$tabla_consulta; if($campo_consulta!="id"){ $QryOpciones=$ln->query("SELECT DISTINCT $campo_consulta FROM ".$str_tabla_consulta." WHERE activo='SI' $andwhere ORDER BY 1"); }else{ $QryOpciones=$ln->query("SELECT id,descripcion FROM ".$str_tabla_consulta." WHERE activo='SI' $andwhere ORDER BY descripcion"); } }catch(exception $e){ $str_opciones_combo=$str_opciones_combo.""; } if($QryOpciones){ unset($descripcion_opcion,$descripcion_renglon); while($row_opciones=$ln->fetch($QryOpciones)){ if($campo_consulta=="id"){ $descripcion_renglon=get_descripcion($str_tabla_consulta,$row_opciones["id"]); $descripcion_opcion=$descripcion_renglon; }else{ $descripcion_opcion=$row_opciones[$campo_consulta]; } $str_opciones_combo=$str_opciones_combo.""; } unset($QryOpciones); } }else{ $str_opciones_combo=$str_opciones_combo.""; } }else{ $opciones_combo=explode(',',$opciones_enum); for($i=0;$i".$opciones_combo[$i].""; } } $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "CHEKBOX":{ unset($str_opciones_combo,$opciones_combo); $str_opciones_combo=""; if($opciones_enum==""){ if($tabla_consulta!="" && $campo_consulta!=""){ try{ if(substr($tabla_consulta,0,4)=="sys_")$str_tabla_consulta=$tabla_consulta; else $str_tabla_consulta=$prefijo.$tabla_consulta; $QryOpciones=$ln->query("SELECT DISTINCT $campo_consulta FROM ".$str_tabla_consulta." $andwhere ORDER BY 1"); }catch(exception $e){ $str_opciones_combo=$str_opciones_combo."ERROR : ".$e->getMessage; } if($QryOpciones){ $num_opciones=0; while($row_opciones=$ln->fetch($QryOpciones)){ $str_opciones_combo=$str_opciones_combo."".$row_opciones[$campo_consulta]."  "; $num_opciones++; } unset($QryOpciones); } }else{ $str_opciones_combo=$str_opciones_combo."ERROR : NO HAY OPCIONES CONFIGURADAS"; } }else{ $opciones_combo=explode(',',$opciones_enum); $num_opciones=0; for($i=0;$i".$opciones_combo[$i]."  "; $num_opciones++; } } $str_leccampo="$str_opciones_combo"; if($row["obligatorio"]=="SI"){ $str_val_chk=""; //echo "Opciones Combo : ".$num_opciones.""; for($i=0;$i<$num_opciones;$i++){ if($str_val_chk==""){ $str_val_chk="(this.form.".$namecampo."_$i.checked==true"; }else{ $str_val_chk=$str_val_chk." || this.form.".$namecampo."_$i.checked==true"; } } if($str_val_chk!="")$str_val_chk=$str_val_chk.")"; if($str_validaciones==""){ $str_validaciones=$str_val_chk; }else{ if($str_val_chk)$str_validaciones=$str_validaciones." && ".$str_val_chk; } } }break; case "RADIO":{ unset($str_opciones_combo,$opciones_combo); $str_opciones_combo=""; if($opciones_enum==""){ if($tabla_consulta!="" && $campo_consulta!=""){ try{ if(substr($tabla_consulta,0,4)=="sys_")$str_tabla_consulta=$tabla_consulta; else $str_tabla_consulta=$prefijo.$tabla_consulta; $QryOpciones=$ln->query("SELECT DISTINCT $campo_consulta FROM ".$str_tabla_consulta." WHERE activo='SI' $andwhere ORDER BY 1"); }catch(exception $e){ $str_opciones_combo=$str_opciones_combo."ERROR : ".$e->getMessage; } if($QryOpciones){ $num_opciones=0; while($row_opciones=$ln->fetch($QryOpciones)){ $str_opciones_combo=$str_opciones_combo."".$row_opciones[$campo_consulta]."  "; $num_opciones++; } unset($QryOpciones); } }else{ $str_opciones_combo=$str_opciones_combo."ERROR : NO HAY OPCIONES CONFIGURADAS"; } }else{ $opciones_combo=explode(',',$opciones_enum); $num_opciones=0; for($i=0;$i".$opciones_combo[$i]."  "; $num_opciones++; } } $str_leccampo="$str_opciones_combo"; if($row["obligatorio"]=="SI"){ $str_val_chk=""; //echo "Opciones Combo : ".$num_opciones.""; for($i=0;$i<$num_opciones;$i++){ if($str_val_chk==""){ $str_val_chk="(this.form.".$namecampo."[$i].checked==true"; }else{ $str_val_chk=$str_val_chk." || this.form.".$namecampo."[$i].checked==true"; } } if($str_val_chk!="")$str_val_chk=$str_val_chk.")"; if($str_validaciones==""){ $str_validaciones=$str_val_chk; }else{ $str_validaciones=$str_validaciones." && ".$str_val_chk; } } }break; case "TEXTAREA":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novaciotextarea(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novaciotextarea(this.form.$namecampo,'$labelcampoval')"; } } }break; case "LLAVE":{ if($nomtabla==$prefijo."paises" || $nomtabla==$prefijo."tiposclientes" || $nomtabla==$prefijo."tiposperiodos"){ $str_leccampo=""; if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } }else{ $str_leccampo="SE ADICIONARÁ UN CONSECUTIVO AUTOMATICO
Proximo Disponible:".consecutivo_admon($nomtabla); } }break; case "FILE":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "FECHA":{ $hoy=date('Y-m-d',time()); $str_leccampo= " "; }break; case "IMAGEN":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval') && comprueba_extension(this.form,this.form.".$namecampo.".value)"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval') && comprueba_extension(this.form,this.form.".$namecampo.".value)"; } } }break; } $smarty->append('Data',array('tooltip'=>$tooltip,'label_campo'=> $labelcampo,'lectura_campo'=> $str_leccampo,'class'=>$class)); if($class=="")$class = "class=\"odd\""; else $class = ""; } if($str_validaciones){ $validaciones="if($str_validaciones){Enviar(this.form);}else{alert('Faltan datos obligatorios');}"; $smarty->assign("validaciones",$validaciones); } } $js->novacio(); $js->lista(); $js->enviar(); $js->validamail(); $js->novaciotextarea(); //print_r($nombrecampo); }break; case "grabar":{ //Construir el nombre verdadero de la tabla if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } $smarty->assign('tabla',$tabla); unset($nombrecampo); // PROCEDIMIENTO QUE OBTIENE LOS CAMPOS A CAPTURAR POR EL FORMULARIO $sqlcam="SELECT sys_funcional.* FROM sys_funcional INNER JOIN sys_form ON sys_funcional.idform = sys_form.id WHERE sys_form.tabla = '".$nomtabla."' AND sys_funcional.activo = 'SI' AND sys_form.activo = 'SI' ORDER BY sys_funcional.orden"; $qryCampos=$ln->query($sqlcam); if($ln->num_rows($qryCampos)){ $contador=0; $str_campos="("; $str_values="("; unset($leerid); while($row=$ln->fetch($qryCampos)){ $contador=$contador+1; unset($namecampo,$labelcampo,$tooltip,$elementid,$obligatorio,$tabla_consulta,$campo_consulta,$opciones_enum,$leer_con,$oculto); $namecampo=$row["descripcion"]; $labelcampo=$row["label"]; $labelcampoval=$row["label"]; if($row["obligatorio"]=="SI"){ $labelcampo="*".$labelcampo; } $tooltip=$row["tooltip"]; $elementid=$row["idelement"]; $obligatorio=$row["obligatorio"]; $tabla_consulta=$row["tabla_consulta"]; $campo_consulta=$row["campo_consulta"]; $opciones_enum=$row["opciones_enum"]; $leer_con=$row["leer_con"]; unset($valor_campo); if($namecampo=="id"){ $leerid=$leer_con; //$valorid=$$namecampo; } switch ($leer_con){ case "TEXTBOX":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$valor_campo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$valor_campo."'"; } }break; case "PASSWORD":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); $password = $ln->safe(trim($valor_campo)); if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$pw->ecript($password)."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$pw->ecript($password)."'"; } }break; case "MAIL":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$valor_campo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$valor_campo."'"; } }break; case "COMBO":{ if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$$namecampo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$$namecampo."'"; } }break; case "CHEKBOX":{ $contador=0; $nomvar=$namecampo."_".$contador; while($contador < 30){ if($$nomvar)$valoreschk[]=$$nomvar; $contador++; $nomvar=$namecampo."_".$contador; } $str_valores=implode(',',$valoreschk); if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$str_valores."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$str_valores."'"; } }break; case "RADIO":{ if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$$namecampo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$$namecampo."'"; } }break; case "TEXTAREA":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$valor_campo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$valor_campo."'"; } }break; case "LLAVE":{ /*if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$$namecampo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$$namecampo."'"; }*/ if($nomtabla==$prefijo."paises" || $nomtabla==$prefijo."tiposclientes" || $nomtabla==$prefijo."tiposperiodos"){ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); }else{ $valor_campo=consecutivo_admon($nomtabla); } if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$valor_campo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$valor_campo."'"; } $valorid=$valor_campo; }break; case "FILE":{ $hay_file=true; //Adjuntar Archivo unset($documento_adjunto_name,$documento_adjunto_size,$archivo); $documento_adjunto_name=$namecampo."_name"; $documento_adjunto_size=$namecampo."_size"; $fecha_ahora=date('Y-m-d-H-i-s',time()); if($$documento_adjunto_name){ $archivo = $fecha_ahora."_".$tabla."_".$namecampo."_".$id."_".$$documento_adjunto_name; //echo "
Como queda grabado :".$archivo.""; $archivo_copiado=false; try{ if(copy($$namecampo,$rootdir."/files/docs/".$archivo)){ $mensaje="
NUEVO ARCHIVO PARA ".$labelcampoval."
"; $ln->addlog($idusuario,"ha transferido el archivo ".$archivo." desde la pagina ".$idpagina); $archivo_copiado=true; } }catch (Exception $e){ $ln->addlog($idusuario,"ERROR al intentar transferir el archivo ".$archivo); $mensaje="Error al intentar transferir el archivo : ".$e->getMessage; $archivo_copiado=false; } }else{ $mensaje="
NO SE ADJUNTA ARCHIVO PARA $labelcampoval"; $archivo_copiado=false; } if($archivo_copiado){ if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$archivo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$archivo."'"; } } }break; case "FECHA":{ if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$$namecampo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$$namecampo."'"; } }break; case "IMAGEN":{ $hay_file=true; //Adjuntar Archivo unset($documento_adjunto_name,$documento_adjunto_size,$archivo); $documento_adjunto_name=$namecampo."_name"; $documento_adjunto_size=$namecampo."_size"; $fecha_ahora=date('Y-m-d-H-i-s',time()); if($$documento_adjunto_name){ $archivo = $fecha_ahora."_".$tabla."_".$namecampo."_".$id."_".$$documento_adjunto_name; //echo "
Como queda grabado :".$archivo.""; $archivo_copiado=false; try{ if(copy($$namecampo,$rootdir."/files/images/".$archivo)){ $mensaje="
NUEVA IMAGEN PARA ".$labelcampoval."
"; $ln->addlog($idusuario,"ha transferido la imagen ".$archivo." desde la pagina ".$idpagina); $archivo_copiado=true; } }catch (Exception $e){ $ln->addlog($idusuario,"ERROR al intentar transferir la imagen ".$archivo); $mensaje="Error al intentar transferir la imagen : ".$e->getMessage; $archivo_copiado=false; } }else{ $mensaje="
NO SE ADJUNTA IMAGEN PARA $labelcampoval"; $archivo_copiado=false; } if($archivo_copiado){ if($str_campos=="("){ $str_campos=$str_campos."$namecampo"; $str_values=$str_values."'".$archivo."'"; }else{ $str_campos=$str_campos.",$namecampo"; $str_values=$str_values.",'".$archivo."'"; } } }break; } } if($str_campos!="("){ $str_campos=$str_campos.")"; $str_values=$str_values.")"; $duplicado=false; if($leerid=="LLAVE"){ $QryExis=$ln->query("SELECT * FROM $nomtabla WHERE id='".$valorid."'"); if($ln->fetch($QryExis))$duplicado=true; } if(!$duplicado){ $QryInsertar=$ln->query("INSERT INTO $nomtabla $str_campos values $str_values"); }else{ $mensaje=$mensaje."
ID DUPLICADO ".$valorid."
"; } $str_values=str_replace("'","\'",$str_values); if($QryInsertar){ $ln->addlog($idusuario,"SE INSERTO EN $nomtabla : INSERT INTO $nomtabla $str_campos values $str_values"); $mensaje=$mensaje."

SE HA INSERTADO UN REGISTRO"; $plantilla="resultado.html"; $accion="exito"; }else{ $ln->addlog($idusuario,"ERROR EN : INSERT INTO $nomtabla $str_campos values $str_values"); $mensaje=$mensaje."

ERROR AL INSERTAR REGISTRO"; $plantilla="resultado.html"; $accion="error"; } } //echo "
Campos:".$str_campos; //echo "
Values:".$str_values."
"; } }break; case "edit":{ //Construir el nombre verdadero de la tabla if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } $smarty->assign('tabla',$tabla); $smarty->assign('id',$id); unset($nombrecampo); // PROCEDIMIENTO QUE OBTIENE LOS CAMPOS A LISTAR EN EL PRIMER PANTALLAZO $sqlcam="SELECT sys_funcional.* FROM sys_funcional INNER JOIN sys_form ON sys_funcional.idform = sys_form.id WHERE sys_form.tabla = '".$nomtabla."' AND sys_funcional.activo = 'SI' AND sys_form.activo = 'SI' ORDER BY sys_funcional.orden"; $qryCampos=$ln->query($sqlcam); if($ln->num_rows($qryCampos)){ $contador=0; $str_validaciones=""; while($row=$ln->fetch($qryCampos)){ $contador=$contador+1; unset($namecampo,$labelcampo,$tooltip,$elementid,$obligatorio,$tabla_consulta,$campo_consulta,$opciones_enum,$leer_con,$oculto,$value); $namecampo=$row["descripcion"]; $labelcampo=$row["label"]; $labelcampoval=$row["label"]; if($row["obligatorio"]=="SI"){ $labelcampo="*".$labelcampo; } $tooltip=$row["tooltip"]; $elementid=$row["idelement"]; $obligatorio=$row["obligatorio"]; $tabla_consulta=$row["tabla_consulta"]; $campo_consulta=$row["campo_consulta"]; $opciones_enum=$row["opciones_enum"]; $leer_con=$row["leer_con"]; $andwhere=$row["andwhere"]; $oculto=$row["oculto"]; $longitud=$row["longitud"]; if($longitud > 100)$longitud=100; $maxsize=$row["longitud"]; $QryValor=$ln->query("select $namecampo from $nomtabla where id='$id'"); if($rowValue=$ln->fetch($QryValor)){ $value=$rowValue["$namecampo"]; } switch ($leer_con){ case "TEXTBOX":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "PASSWORD":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "MAIL":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="validamail(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && validamail(this.form.$namecampo,'$labelcampoval')"; } } }break; case "COMBO":{ unset($str_opciones_combo,$opciones_combo,$desc_sel,$desc_selec); if(substr($tabla_consulta,0,4)=="sys_")$str_tabla_consulta=$tabla_consulta; else $str_tabla_consulta=$prefijo.$tabla_consulta; if($campo_consulta=="id"){ $desc_sel=get_descripcion($str_tabla_consulta,$value); $desc_selec=$desc_sel; }else{ $desc_selec=$value; } $str_opciones_combo=""; if($namecampo=="idusuario_cargo")$str_opciones_combo=$str_opciones_combo.""; if($namecampo=="cargo")$str_opciones_combo=$str_opciones_combo.""; if($opciones_enum==""){ if($tabla_consulta!="" && $campo_consulta!=""){ try{ if($campo_consulta!="id"){ $QryOpciones=$ln->query("SELECT DISTINCT $campo_consulta FROM ".$str_tabla_consulta." WHERE activo='SI' $andwhere ORDER BY 1"); }else{ $QryOpciones=$ln->query("SELECT id,$campo_consulta FROM ".$str_tabla_consulta." WHERE activo='SI'$andwhere ORDER BY 2"); } }catch(exception $e){ $str_opciones_combo=$str_opciones_combo.""; } if($QryOpciones){ unset($descripcion_opcion,$descripcion_renglon); while($row_opciones=$ln->fetch($QryOpciones)){ if($campo_consulta=="id"){ $descripcion_renglon=get_descripcion($str_tabla_consulta,$row_opciones["id"]); $descripcion_opcion=$descripcion_renglon; }else{ $descripcion_opcion=$row_opciones[$campo_consulta]; } $str_opciones_combo=$str_opciones_combo.""; } unset($QryOpciones); } }else{ $str_opciones_combo=$str_opciones_combo.""; } }else{ $opciones_combo=explode(',',$opciones_enum); for($i=0;$i".$opciones_combo[$i].""; } } $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novacio(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novacio(this.form.$namecampo,'$labelcampoval')"; } } }break; case "CHEKBOX":{ unset($str_opciones_combo,$opciones_combo); $str_opciones_combo=""; if($opciones_enum==""){ if($tabla_consulta!="" && $campo_consulta!=""){ try{ if(substr($tabla_consulta,0,4)=="sys_")$str_tabla_consulta=$tabla_consulta; else $str_tabla_consulta=$prefijo.$tabla_consulta; $QryOpciones=$ln->query("SELECT DISTINCT $campo_consulta FROM ".$str_tabla_consulta." $andwhere ORDER BY 1"); }catch(exception $e){ $str_opciones_combo=$str_opciones_combo."ERROR : ".$e->getMessage; } if($QryOpciones){ while($row_opciones=$ln->fetch($QryOpciones)){ $str_opciones_combo=$str_opciones_combo."".$row_opciones[$campo_consulta]."  "; } unset($QryOpciones); } }else{ $str_opciones_combo=$str_opciones_combo."ERROR : NO HAY OPCIONES CONFIGURADAS"; } }else{ $opciones_combo=explode(',',$opciones_enum); for($i=0;$i".$opciones_combo[$i]."  "; } } $str_leccampo="$str_opciones_combo"; if($row["obligatorio"]=="SI"){ $str_val_chk=""; for($i=0;$iquery("SELECT DISTINCT $campo_consulta FROM ".$str_tabla_consulta." $andwhere ORDER BY 1"); }catch(exception $e){ $str_opciones_combo=$str_opciones_combo."ERROR : ".$e->getMessage; } if($QryOpciones){ while($row_opciones=$ln->fetch($QryOpciones)){ $str_chek=""; if($row_opciones[$campo_consulta]==$value)$str_chek="checked"; $str_opciones_combo=$str_opciones_combo."".$row_opciones[$campo_consulta]."  "; } unset($QryOpciones); } }else{ $str_opciones_combo=$str_opciones_combo."ERROR : NO HAY OPCIONES CONFIGURADAS"; } }else{ $opciones_combo=explode(',',$opciones_enum); for($i=0;$i".$opciones_combo[$i]."  "; } } $str_leccampo="$str_opciones_combo"; }break; case "TEXTAREA":{ $str_leccampo=""; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="novaciotextarea(this.form.$namecampo,'$labelcampoval')"; }else{ $str_validaciones=$str_validaciones." && novaciotextarea(this.form.$namecampo,'$labelcampoval')"; } } }break; case "LLAVE":{ $str_leccampo=""; $id_tabla=$value; }break; case "FILE":{ $str_leccampo="$value
"; }break; case "FECHA":{ if($value=="0000-00-00")$value="2000-01-01"; $str_leccampo= " "; }break; case "IMAGEN":{ $str_leccampo="
"; if($row["obligatorio"]=="SI"){ if($str_validaciones==""){ $str_validaciones="comprueba_extension(this.form,this.form.".$namecampo.".value)"; }else{ $str_validaciones=$str_validaciones." && comprueba_extension(this.form,this.form.".$namecampo.".value,'$labelcampoval')"; } } }break; } $smarty->append('Data',array('tooltip'=>$tooltip,'label_campo'=> $labelcampo,'lectura_campo'=> $str_leccampo,'class'=>$class)); if($class=="")$class = "class=\"odd\""; else $class = ""; } if($nomtabla=="dbo_clientes"){ $link_adjuntos="SOPORTESAdministrar archivos de Soporte..."; $smarty->assign("link_adjuntos",$link_adjuntos); } if($str_validaciones){ $validaciones="if($str_validaciones){Enviar(this.form);}"; $smarty->assign("validaciones",$validaciones); } } $js->novacio(); $js->lista(); $js->enviar(); $js->validamail(); $js->novaciotextarea(); //print_r($nombrecampo); }break; case "actualizar":{ //Construir el nombre verdadero de la tabla if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } $smarty->assign('tabla',$tabla); unset($nombrecampo); // PROCEDIMIENTO QUE OBTIENE LOS CAMPOS A CAPTURAR POR EL FORMULARIO $sqlcam="SELECT sys_funcional.* FROM sys_funcional INNER JOIN sys_form ON sys_funcional.idform = sys_form.id WHERE sys_form.tabla = '".$nomtabla."' AND sys_funcional.activo = 'SI' AND sys_form.activo = 'SI' ORDER BY sys_funcional.orden"; $qryCampos=$ln->query($sqlcam); if($ln->num_rows($qryCampos)){ $contador=0; $str_campos=""; while($row=$ln->fetch($qryCampos)){ $contador=$contador+1; unset($namecampo,$labelcampo,$tooltip,$elementid,$obligatorio,$tabla_consulta,$campo_consulta,$opciones_enum,$leer_con,$oculto); $namecampo=$row["descripcion"]; $labelcampo=$row["label"]; $labelcampoval=$row["label"]; if($row["obligatorio"]=="SI"){ $labelcampo="*".$labelcampo; } $tooltip=$row["tooltip"]; $elementid=$row["idelement"]; $obligatorio=$row["obligatorio"]; $tabla_consulta=$row["tabla_consulta"]; $campo_consulta=$row["campo_consulta"]; $opciones_enum=$row["opciones_enum"]; $leer_con=$row["leer_con"]; unset($valor_campo); switch ($leer_con){ case "TEXTBOX":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$$namecampo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$$namecampo."'"; } }break; case "PASSWORD":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); $password = $ln->safe(trim($valor_campo)); if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$pw->ecript($password)."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$pw->ecript($password)."'"; } }break; case "MAIL":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$$namecampo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$$namecampo."'"; } }break; case "COMBO":{ if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$$namecampo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$$namecampo."'"; } }break; case "CHEKBOX":{ $contador=0; $nomvar=$namecampo."_".$contador; while($contador < 30){ if($$nomvar)$valoreschk[]=$$nomvar; $contador++; $nomvar=$namecampo."_".$contador; } $str_valores=implode(',',$valoreschk); if($str_campos=="("){ $str_campos=$str_campos.$namecampo."='".$str_valores."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$str_valores."'"; } }break; case "RADIO":{ if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$$namecampo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$$namecampo."'"; } }break; case "TEXTAREA":{ $valor_campo=str_replace('\'',' ',$$namecampo); $valor_campo=str_replace('"',' ',$valor_campo); $valor_campo=str_replace('\\',' ',$valor_campo); if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$valor_campo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$valor_campo."'"; } }break; case "FILE":{ $hay_file=true; //Adjuntar Archivo unset($documento_adjunto_name,$documento_adjunto_size,$archivo); $documento_adjunto_name=$namecampo."_name"; $documento_adjunto_size=$namecampo."_size"; $fecha_ahora=date('Y-m-d-H-i-s',time()); if($$documento_adjunto_name){ $archivo = $fecha_ahora."_".$tabla."_".$namecampo."_".$id."_".$$documento_adjunto_name; //echo "
Como queda grabado :".$archivo.""; $archivo_copiado=false; try{ if(copy($$namecampo,$rootdir."/files/docs/".$archivo)){ $mensaje="
...REEMPLAZANDO ARCHIVO PARA ".$labelcampoval."
"; $ln->addlog($idusuario,"ha transferido el archivo ".$archivo." desde la pagina ".$idpagina); $archivo_copiado=true; } //else{ }catch (Exception $e){ $ln->addlog($idusuario,"ERROR al intentar transferir el archivo ".$archivo); $mensaje="Error al intentar transferir el archivo : ".$e->getMessage; $archivo_copiado=false; } }else{ $mensaje="
NO SE REEMPLAZA ARCHIVO PARA $labelcampoval"; $archivo_copiado=false; } if($archivo_copiado){ if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$archivo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$archivo."'"; } } }break; case "FECHA":{ if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$$namecampo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$$namecampo."'"; } }break; case "IMAGEN":{ $hay_file=true; //Adjuntar Archivo unset($documento_adjunto_name,$documento_adjunto_size,$archivo); $documento_adjunto_name=$namecampo."_name"; $documento_adjunto_size=$namecampo."_size"; $fecha_ahora=date('Y-m-d-H-i-s',time()); if($$documento_adjunto_name){ $archivo = $fecha_ahora."_".$tabla."_".$namecampo."_".$id."_".$$documento_adjunto_name; //echo "
Como queda grabado :".$archivo.""; $archivo_copiado=false; try{ if(copy($$namecampo,$rootdir."/files/images/".$archivo)){ $mensaje="
...REEMPLAZANDO IMAGEN PARA ".$labelcampoval."
"; $ln->addlog($idusuario,"ha transferido la imagen ".$archivo." desde la pagina ".$idpagina); $archivo_copiado=true; } //else{ }catch (Exception $e){ $ln->addlog($idusuario,"ERROR al intentar transferir la imagen ".$archivo); $mensaje="Error al intentar transferir la imagen : ".$e->getMessage; $archivo_copiado=false; } }else{ $mensaje="
NO SE REEMPLAZA IMAGEN PARA $labelcampoval"; $archivo_copiado=false; } if($archivo_copiado){ if($str_campos==""){ $str_campos=$str_campos.$namecampo."='".$archivo."'"; }else{ $str_campos=$str_campos.",".$namecampo."='".$archivo."'"; } } }break; } } if($str_campos!=""){ $QryInsertar=$ln->query("UPDATE $nomtabla SET $str_campos WHERE id='".$id."'"); $str_campos=str_replace("'","\'",$str_campos); if($QryInsertar){ $ln->addlog($idusuario,"SE ACTUALIZO $nomtabla CON LA CONSULTA : UPDATE $nomtabla SET $str_campos WHERE id=\'".$id."\'"); $mensaje=$mensaje."

REGISTRO ACTUALIZADO"; $plantilla="resultado.html"; $accion="exito"; }else{ $ln->addlog($idusuario,"ERROR EN : UPDATE $nomtabla SET $str_campos WHERE id=\'".$id."\'"); $mensaje=$mensaje."

ERROR AL ACTUALIZAR"; $plantilla="resultado.html"; $accion="error"; } } //echo "
Campos:".$str_campos; //echo "
Values:".$str_values."
"; } }break; case "eliminar":{ if($tabla=="reci_cliente") { $nomtabla=$tabla; } else { $nomtabla=$prefijo.$tabla; } $smarty->assign('tabla',$tabla); $QryEliminar=$ln->query("UPDATE $nomtabla SET activo='NO' where id='".$id."'"); if($QryEliminar){ $ln->addlog($idusuario,"REGISTRO ELIMINADO : delete from $nomtabla where id=\'".$id."\'"); $mensaje=$mensaje."

REGISTRO $id ELIMINADO DE $tabla"; $plantilla="resultado.html"; $accion="exito"; }else{ $ln->addlog($idusuario,"ERROR AL ELIMINAR EN : delete from $nomtabla where id=\'".$id."\'"); $mensaje=$mensaje."

ERROR AL ELIMINAR"; $plantilla="resultado.html"; $accion="error"; } }break; } $smarty->assign('titulo',$title); $smarty->assign('accion',$accion); $smarty->assign('idpagina',$idpagina); $smarty->assign('permiso_pagina',$permisos[$idpagina]); $smarty->assign('pagina',strtoupper($titulos[$idpagina])); $smarty->assign('mensaje',$mensaje); $smarty->display($plantilla); $ln->desconectar(); }else{ echo "Debe loguearse primero..."; print(""); } } ?>