query("SET NAMES 'utf8'"); //include autoloader----------------------------------------------------------------- require('../../recursos/dompdf/autoload.inc.php'); // reference the Dompdf namespace---------------------------------------------------- use Dompdf\Dompdf; //Variables-------------------------------------------------------------------------- //ID DE LA PLANTILLA USADA //$id_plantilla = clavePlantilla($bd); //Codigo del Esquema usado----------------------------------------------------------- $id_esq = (int) $_POST['id']; //Id del vinculo solicitado $id_vinc = "20".$_POST['id_vinc']; //CONSULTO EL ID DEL ESQUEMA A SER UTILIZADO------------------------------------ $id_plantilla = nombreJustificante($bd, $id_vinc); //oBTENGO EL ID DEL DOCUMENTO SOLICITANTE------------------------------------------- $clave_sol = idDocumentoSolicitante($bd, $id_vinc); //NOmbre del documento de origen---------------------------------------------------- $nombre_doc_orig = nombreDelDocumentoSolicitante($bd, $clave_sol); //Nombre del ESQUEMA $nombre_esq = nombreEsquema($bd, $id_esq); //Alias del Esquema $alias_esq = aliasEsquema($bd, $id_esq); $suf_doc = idDocUnico(); //Obtengo el nombre sin extencion del archivo de origen de la solicitud------------- $extension_orginen = pathinfo($nombre_doc_orig, PATHINFO_EXTENSION); $nombre_base = basename($nombre_doc_orig, '.'.$extension_orginen); $nombre_doc = $nombre_base." - Aceptación.pdf"; $nombre_doc = strtoupper($nombre_doc); //Valido desde donde se esta generando 0 = no desde el explorador otros desde el explorador $destino = $_POST['destino']; //Campos del esquema $contenido = $_POST['contenido_genr']; $codigo = $_POST['codigo_genr']; $tipo = $_POST['tipo_genr']; //Verifico la longitud del array $total = count($codigo); //Cuerpo del documento base $body_doc = ""; //contacto $contacto = 0; //====================================================================================== //Padre $padre = "##PUBLICO##"; //AMBITO $ambito = "PUB"; //ACCESO DEL PAGRE $acceso_padre = ""; //ACCESO AUTO DEL PADRE $acceso_auto_padre = ""; //UBICACION $ubicacion = "##PUBLICO##/"; //======================================================================================= //==================================ACCIONES============================================= //======================================================================================= //======================================================================================= //======================================================================================= //======================================================================================= //==============SE UTILIZA EL HTML ASIGNADO========================================== //Descargar el documento html-------------------------------------------------------- //Obtencion Datos del Doc------------------------------------------------------------ $datos = datosDoc($bd, $id_plantilla); //REGRESO EL NOMBRE DEL DOCUMENTO---------------------------------------------------- $nombre = $datos['NOMBRE']; $nombre = strtoupper($nombre); //Obtengo el Sufijo del Fichero------------------------------------------------------ $tabla_sufijo = 'FICHEROS_'.$datos['SUFIJO']; //FICHERO Y DOCUEMNTO A CREAR-------------------------------------------------------- $ruta_doc = '../../recursos/file-upload/server/php/files/'.$nombre; //Elimino el documento si existe----------------------------------------------------- @unlink('../../recursos/file-upload/server/php/files/'.$nombre); //Obtencion de la Primera parte del Fichero------------------------------------------ $archivo = parte1Doc($bd, $id_plantilla, $tabla_sufijo); //CREO EL DOCUMEMTO EN EL DIRECTORIO TEMPORAL---------------------------------------- $create_doc = fopen($ruta_doc, 'a'); //Obtengo LA CANTIDAD DE PARTES DEL DOCUMENTO---------------------------------------- $num_parte = $datos['PARTES']; //LLENO EL DOCUMENTO ---------------------------------------------------------------- if ($num_parte > 0) { for ($i=1; $i<=$num_parte; $i++) { //BUSCO EL CONTENIDO DE LAS PARTES-------------------------------------------- $fichero_partes = parteAdicionalDoc($bd, $id_plantilla, $tabla_sufijo, $i); //VACIO ESE CONTENIDO EN EL DOCUMENTO----------------------------------------- fwrite($create_doc, $fichero_partes); } } //CIERRO EL DOCUMENTO----------------------------------------------------------------- fclose($create_doc); //cargar el documento html------------------------------------------------------------ $html = file_get_contents("../../recursos/file-upload/server/php/files/".$nombre); //=================================Recorro el array y hago reemplazos================= //==================================================================================== for($i=0;$i<$total;$i++){ //Busco en la variable del HTML y hago los reemplazos correspondientes------------ $html = str_replace("[##ET.".$alias_esq.".".$codigo[$i]."##]", $contenido[$i], $html); } //VALIDO SI EL USUARIO INCLUYO EL LOGO PARA HACER EL REEMPLAZO----------------------- //SE INCLUYE CON [##LOGO##] EN EL HTML $html = str_replace("[##LOGO##]", "", $html); //REEMPLAZO EL NOMBRE DEL DOCUMENTO ORIGINAL [##DOCUMENT.NAME##] EN EL HTML $html = str_replace("[##DOCUMENT.NAME##]", $nombre_doc_orig, $html); //Verifico si se desea incluir la fecha actual en el justificante-------------------- $date_today = date("d-m-Y"); $html = str_replace("[##TODAY##]", $date_today, $html); //Verifico si se desea incluir la fecha actual en el justificante-------------------- $date_time = date("G:i:s"); $html = str_replace("[##NOW##]", $date_time, $html); //======================================================================================= //GENERO EL PDF-------------------------------------------------------------------------- //======================================================================================= // instantiate and use the dompdf class-------------------------------------------------- $dompdf = new Dompdf(); //======================================================================================= //Cargo el html al dompdf---------------------------------------------------------------- $dompdf->loadHtml($html); // (Optional) Setup the paper size and orientation--------------------------------------- $dompdf->setPaper('A4', 'portrait'); // Render the HTML as PDF---------------------------------------------------------------- $dompdf->render(); // Output the generated------------------------------------------------------------------ $pdf = $dompdf->output(); file_put_contents("../../recursos/file-upload/server/php/files/".$nombre_doc, $pdf); //======================================================================================= //HAGO EL UPLOAD DEL DOCUMENTO A LA BD--------------------------------------------------- //Variables------------------------------------------------------ //Creo la clave-------------------------------------------------- $clave = get_id_unico(); //Creo la Entrada------------------------------------------------ $entrada = get_id_unico(); //este es el archivo temporal------------------------------------ $imagen_temporal = "../../recursos/file-upload/server/php/files/".$nombre_doc; //Tamaño--------------------------------------------------------- $tamano = filesize($imagen_temporal); //este es el tipo de archivo------------------------------------ $ext = get_extension($nombre_doc); //ambito-------------------------------------------------------- //$ambito = "PUB"; //padre del directorio destino publico-------------------------- //$dir_raiz = "AWA INBOX"; //usuario------------------------------------------------------- $user = "AVANBOX"; //ordenador----------------------------------------------------- $ordenador = strtoupper(gethostname()); //contacto------------------------------------------------------ $contacto = 0; //padre-------------------------------------------------------- //$padre = "US".$contacto.".INBOX"; //permisos----------------------------------------------------- $permiso = permisosDir($bd, $padre); //este es el acesso heredado del directorio padre-------------- $acceso_doc = accesoDoc($bd, $padre); //======================================================================================= //ACCIONES DEL UPLOAD==================================================================== //VALIDAR EL NOMBRE DEL DOCUMENTO-------------------------------------------------------- //--------------------------------------------------------------------------------------- $exist_doc = docExist($bd, $ambito, $nombre_doc, $padre); while ( $exist_doc == 1) { $a = explode( '.', $nombre_doc ); $nombre_doc_up = $a[0]; $ext_doc = end( $a ); //Cuento la cantidad existente al momento $cant_duplicado = numeroDocsDuplicados($bd, $nombre_doc_up, $padre); //Le sumo uno $new_num = $cant_duplicado + 1; //Armo el nuevo nombre $nombre_doc = $nombre_doc_up."(".$new_num.").".$ext_doc; $exist_doc = docExist($bd, $ambito, $nombre_doc, $padre); } //======================================================================================= //leer el archivo temporal en binario---------------------------------------------------- $fp = fopen($imagen_temporal, 'r'); $data = fread($fp, filesize($imagen_temporal)); fclose($fp); //escapar los caracteres----------------------------------------------------------------- $data = mysqli_real_escape_string($bd, $data); //======================================================================================= //SCRIP DEL REGISTRO DEL NUEVO DOCUMENTO------------------------------------------------- //valido tamaño maximo permitido por los ficheros---------------------------------------- $max_fichero = maxTamanoFichero($bd); //verificar si existe tabla con espacio disponible--------------------------------------- $tabla_sufijo = tablaDestDisp($bd, $tamano, $max_fichero); //======================================================================================= //verifico nombre de la tabla o creo una nueva para el registro del doc y cargo el sufijo if ($tabla_sufijo == "") { $sufijo = substr(get_id_unico(),0, 14); $tabla_sufijo = "FICHEROS_" . $sufijo; $sql = "CREATE TABLE ". $tabla_sufijo . " LIKE FICHEROS_PATRON"; $base = $bd->query(strtoupper($sql)); }else{ $sufijo = substr($tabla_sufijo, 9, 14); } //====================================================================================== //Valido la cantidad de partes y realizao el insert en la Tabla de Ficheros------------- $parte = 1; if ( $tamano > 16777216 ) { $array = str_split($data, 16777216); foreach ($array as $key => $value) { $fichero_ok = subirContenido($bd, $clave, $entrada, $parte, $sufijo, $value, $tamano, strlen($value)); $parte++; } }else{ $entrada = get_id_unico(); $fichero_ok = subirContenido($bd, $clave, $entrada, $parte, $sufijo, $data, $tamano, strlen($data)); } //===================================================================================== //Valido la cant de partes a utilizar en la Biblioteca de Elementos-------------------- if ($parte == 1) { $partes = $parte; }else{ $partes = $parte -1; } //==================================================================================== //Valido que se realizo el insert y Realizo el registro en la biblioteca de elementos- if ($fichero_ok){ //CAPTURO LA CLAVE DEL DOCUMENTO GENERADO echo $clave; //hago el registro en la biblioteca de elementos docBibliotecaElementos($bd, $clave, $nombre_doc, $ext, $padre, $tamano, $acceso_doc, $user, $entrada, $ordenador, $partes, $sufijo, $ambito, $permiso, $ubicacion); //hago el registro en el log //historialLog($bd, $clave, $user, $nombre_doc, $ordenador, $ambito, $acceso_doc, $tamano, $user); }else{ echo $fichero_ok; } //============================================================================================================ //===========================================GRAPO LOS DOCUMENTOS============================================= //============================================================================================================ //VALIDAR QUE EL DOCUMENTO ESTE GRAPADO CON ANTERIORIDAD------------------------------------------------------ $result = codigoGrapadoDocumento($bd, $clave_sol); //VARIABLES--------------------------------------------------------------------------- //CODIGO DE GRAPADO DEL DOC RAIZ $cod_grapado = $result['GRAPADO']; //DIRECTORIO PADRE DEL DOC RAIZ $dir_padre = $result['PADRE']; //UBICACION DEL DOCUMENTO PADRE $ubic_padre = $result['UBICACION']; //==================================================================================== //DOCUMENTO GRAPADO ACTUALMENTE======================================================= if ($cod_grapado != "") { //HAGO EL UPDATE SOLO DEL NUEVO DOCUMENTO------------------------------------------- updateGrapadoNewDoc($bd, $clave, $cod_grapado, $dir_padre, $ubic_padre); //hago el registro en el historial de la accion------------------------------------------------------------- //ACCION de GRAPADO $accion = 25; //DOCUMENTO $doc_afectado = $clave_sol; //Hago el registro del historial //historialLog($accion, $doc_afectado); } //==================================================================================== //DOCUMENTO SIN GRAPAR=============================================================== if ($cod_grapado == "") { //GENERO UNA NUEVA CLAVE DE 18 DIG PARA EL CAMPO DE GRAPADO $cvl_grapado = get_id_unico(); //HAGO UPDATE DEL DOCUMENTOS RAIZ updateGrapadoRaiz($bd, $clave_sol, $cvl_grapado); //hago el registro en el historial de la accion------------------------------------------------------------- //ACCION de GRAPADO $accion = 25; //DOCUMENTO $doc_afectado = $clave_sol; //Hago el registro del historial //historialLog($accion, $doc_afectado); //HACER UPDATE DEL NUEVO DOCUMENTO updateGrapadoNewDoc($bd, $clave, $cvl_grapado, $dir_padre, $ubic_padre); //hago el registro en el historial de la accion------------------------------------------------------------- //ACCION de GRAPADO $accion = 25; //DOCUMENTO $doc_afectado = $clave; } //============================================================================================================ //=======================REALIZO LA RELACION DEL DOCUMENTO CON EL CONTACTO==================================== //============================================================================================================ //BUSCO SI EL VINCULO POSEE CONTACTO A RELACIONAR------------------------------------------------------------- $id_contacto = idDelContactoReceptor($bd, $id_vinc); //EVALUO SI HAGO LA RELACION---------------------------------------------------------------------------------- if ($id_contacto > 0 ) { //Posee Relacion------------------------------------------------------------------------------------------ //CLAVE PARA EL CODIGO $clave_codigo = get_id_unico(); //Consuklto el nombre a mostar del contacto--------------------------------------------------------------- $nomb_mostrar = nombreMostrarContacto($bd, $id_contacto); //===============REALIZO EL QUERY========================================================================= $query = " INSERT INTO BIBLIOTECA_ETIQUETAS ( CODIGO, CLAVE, DESCRIPCION, GRUPO, ETIQUETA, GRUPOE, ESQUEMA, PADRE, ORDEN, FECHA, VALOR, REGISTRO, VIMPORTE, VFECHA, CARPETA_SINCRO, PLANTILLAOCR, ZONAOCR ) VALUES ( '$clave_codigo', $clave, '$nomb_mostrar', -5, $id_contacto, 0, 0, '', 0, NOW(), '', 0, 0, NULL, '', 0, 0 )"; mysqli_query($bd, $query); } //======================================================================================= //======================================================================================= //==================================FUNCIONES============================================ //======================================================================================= //======================================================================================= //Funcion obtener el nombre mostrar del contacto usado----------------------------------- function nombreMostrarContacto($bd, $id_contacto) { $sql = " SELECT C.MOSTRAR FROM CONTACTOS C WHERE C.CODIGO = $id_contacto LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $result = $row['MOSTRAR']; return $result; $base->close(); } //Funcion obtener el id del contacto usado-------------------------------------------- function idDelContactoReceptor($bd, $id_vinc) { $sql = " SELECT V.CONTACTO FROM BIBLIOTECA_VINCULOS V WHERE V.VINCULO = '$id_vinc' LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $result = $row['CONTACTO']; return $result; $base->close(); } //Funcion para obtener el random number del sufijo del documento------------------------- function idDocUnico() { return date( "Ymd" ) . sprintf( "%04d", rand( 0, 9999 ) ); } //Funcion para obtener la clave unica del registro--------------------------------------- function get_id_unico() { return date( "YmdHis" ) . sprintf( "%04d", rand( 0, 9999 ) ); } //FUNCION PARA OBTENER DETALLE DEL ESQUEMA DEL DOCUMENTO-------------------------------- function nombreEsquema($bd, $id_esq){ $sql = "SELECT E.DESCRIPCION FROM ESQUEMAS E WHERE E.CODIGO = '$id_esq'"; $base = $bd->query($sql); $result = mysqli_fetch_array($base); return $result['DESCRIPCION']; $base->close(); } //FUNCION PARA OBTENER DETALLE DEL ESQUEMA DEL DOCUMENTO-------------------------------- function aliasEsquema($bd, $id_esq){ $sql = "SELECT E.ALIAS FROM ESQUEMAS E WHERE E.CODIGO = '$id_esq'"; $base = $bd->query($sql); $result = mysqli_fetch_array($base); return $result['ALIAS']; $base->close(); } //fUNCION PARA OBTENER LA DESCRIPCION DEL CAMPO DEL ESQUEMA A PARTIR DE CODIGO----------- function descCampoEsquema($bd, $id_esq, $cod_camp) { $sql = "SELECT E.DESCRIPCION FROM ESQUEMAS_ESTRUCTURA E WHERE E.ESQUEMA = '$id_esq' AND E.CODIGO = '$cod_camp'"; $base = $bd->query($sql); $result = mysqli_fetch_array($base); return $result['DESCRIPCION']; $base->close(); } //busco la clave del directorio AWA dentro de plantillas--------------------------------- function claveDirAWA($bd) { $sql = "SELECT E.CLAVE FROM BIBLIOTECA_ELEMENTOS E WHERE E.NOMBRE = 'AWA' AND E.PADRE = '##PLAN_PUB##' AND E.PAPELERA = 0"; $base = $bd->query($sql); $result = mysqli_fetch_array($base); return $result['CLAVE']; $base->close(); } //busco LA EXISTENCIA DE UN DOCUMENTO DE IGUAL NOMBRE DEL ESQUEMA Y TOMO SU CLAVE------ function plantillaHTMLesquema($bd, $nombre_plant) { $sql = "SELECT E.CLAVE FROM BIBLIOTECA_ELEMENTOS E WHERE E.EXTENSION IN ('HTML') AND E.UBICACION LIKE '##PUBLICO##/##PLAN_PUB##/%' AND E.NOMBRE = '$nombre_plant' AND E.PAPELERA = 0"; $base = $bd->query($sql); $result = mysqli_fetch_array($base); return $result['CLAVE']; $base->close(); } //FUNCION PARA OBTENER LOS DATOS DEL DOCUMENTO HTML---------------------------------- function datosDoc($bd, $id_doc){ $sql = " SELECT e.CLAVE, e.NOMBRE, e.EXTENSION, e.TAMANO, e.SUFIJO, e.PARTES, e.PADRE, e.AMBITO, e.ACCESO, e.ACCESO_AUTO FROM BIBLIOTECA_ELEMENTOS e WHERE e.CLAVE = '$id_doc'"; $base = $bd->query($sql); $datos = mysqli_fetch_assoc($base); $base->close(); return $datos; } //FUNCION PARA OBTENER LA PRIMERA PARTE DEL FICHERO------------------------------------------------ function parte1Doc($bd, $id_doc, $tabla_sufijo){ global $bd; $sql = " SELECT FICHERO FROM $tabla_sufijo WHERE CLAVE = '$id_doc' AND PARTE = 1 AND VERSION = 0 LIMIT 1"; $base = $bd->query($sql); $archivo = mysqli_fetch_assoc($base); $base->close(); return $archivo; } //FUNCION PARA OBTENER LA PRIMERA PARTE DEL FICHERO------------------------------------------------ function parteAdicionalDoc($bd, $id_doc, $tabla_sufijo, $parte){ $sql_partes = " SELECT FICHERO FROM $tabla_sufijo WHERE PARTE = $parte AND CLAVE = '$id_doc' AND VERSION = 0 LIMIT 1"; //$qry = sprintf($sql_partes, $parte , $id_doc); $parte = $bd->query($sql_partes); $fichero = mysqli_fetch_assoc($parte); $fichero_partes = $fichero['FICHERO']; $parte->close(); return $fichero_partes; } //Funcion obtener la extension del archivo -------------------------------------------------------- function get_extension($nombre) { // Convierto la cadena en un arreglo $a = explode( '.', $nombre ); $ext = end( $a ); $ext = strtoupper( $ext ); return $ext; } //Funcion PARA VERIFICAR LA EXISTENCIA DEL PERMISOS DIRECTORIO ------------------------------------- function permisosDir($bd, $padre) { $sql = " SELECT ACCESO FROM BIBLIOTECA_ELEMENTOS WHERE CLAVE = '$padre'"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $acceso = $row['ACCESO']; return $acceso; $base->close(); } //Funcion PARA OBTENER LOS PERMISOS DE ACCESO HEREDABLES DEL DIRECTORIO PADRE--------------------- function accesoDoc($bd, $padre) { $sql = " SELECT ACCESO FROM BIBLIOTECA_ELEMENTOS WHERE CLAVE = '$padre' AND TIPO = 'C' AND PAPELERA = 0"; $base = $bd->query($sql); @$row = mysqli_fetch_array($base); $acceso_doc = $row['ACCESO']; return $acceso_doc; $base->close(); } //Funcion obtener la extension del archivo ------------------------------------------------------- function docExist($bd, $ambito, $nombre, $padre) { $sql = " SELECT COUNT(NOMBRE) AS CUANTOS FROM BIBLIOTECA_ELEMENTOS WHERE NOMBRE = '$nombre' AND PADRE = '$padre' AND PAPELERA = 0 AND AMBITO = '$ambito'"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $doc_exist = $row['CUANTOS']; return $doc_exist; $base->close(); } //Funcion obtener el tamaño maximo d elos ficheros en GB ---------------------------------------- function maxTamanoFichero($bd) { $sql = " SELECT VALOR FROM PARAMETROS WHERE CODIGO = 'TAM_TABLABLOB' AND GRUPO = 'PRG'"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $max_fich = $row['VALOR']; return $max_fich; $base->close(); } //Funcion obtener verificar tabla destino disponible-------------------------------------------------------------- function tablaDestDisp($bd, $tamano, $max_fichero) { $sql = " SELECT TABLE_NAME,ROUND(DATA_LENGTH/(1024*1024*1024),1) AS GB FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '".NAME."' AND TABLE_NAME LIKE 'FICHEROS_2%%' AND (ROUND(DATA_LENGTH/(1024*1024*1024),1) + ROUND($tamano/(1024*1024*1024),1)) < (ROUND($max_fichero,1)) ORDER BY DATA_LENGTH LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $tabla_sufijo = $row['TABLE_NAME']; return $tabla_sufijo; $base->close(); } //Funcion PARA SUBIR CONTENIDO--------------------------------------------------------------------------------------------------- function subirContenido($bd, $clave, $entrada, $parte, $sufijo, $data, $tamano, $size) { $fichero_ok = mysqli_query($bd, "INSERT INTO FICHEROS_".$sufijo." (CLAVE, PARTE, VERSION, FICHERO, TAMANO, ENTRADA, COMPRIMIDO, TAMANOREAL, ENCRIPTADO) VALUES ('$clave', $parte, 0, '$data', $tamano, '$entrada', 0, $size, 0)"); return $fichero_ok; } //Funcion PARA CREAR EL DOCUMENTO EN LA BIBLIOTECA DE ELEMENTOS-------------------------------------------------------------- function docBibliotecaElementos($bd, $clave, $nombre_doc, $ext, $padre, $tamano, $acceso_doc, $user, $entrada, $ordenador, $partes, $sufijo, $ambito, $permiso, $ubicacion) { mysqli_query($bd, "INSERT INTO BIBLIOTECA_ELEMENTOS (CLAVE, NOMBRE, EXTENSION, PADRE, TIPO, FECHA, TAMANO, AMBITO, ACCESO, CREADOR, ENTRADA, ORDENADOR, MODIFICACION, PARTES, VERMIN, SUFIJO, UBICACION, ORIGEN) VALUES ('$clave', '$nombre_doc', '$ext', '$padre', 'D', now(), $tamano, '$ambito', '$permiso', '$user', '$entrada', '$ordenador', now(), $partes, '1.0', '$sufijo', '$ubicacion', 'AWA')") ; } //Funcion PARA CREAR EL REGISTRO EN EL LOG DEL HISTORIAL------------------------------------------------------------------------- function historialLog($bd, $clave, $user, $nombre_doc, $ordenador, $ambito, $acceso_doc, $tamano, $user) { mysqli_query($bd, "INSERT INTO BIBLIOTECA_HISTORIAL (CLAVE, USUARIO, FECHA, ACCION, DOCUMENTO, CARPETA, ORDENADOR, AMBITO, ACCESO, TIPO, TAMANO, CREADOR, CONTROL, AWA) VALUES ('$clave', '$user', now(), '1', '$nombre_doc', '$user', '$ordenador', '$ambito', '$acceso_doc', 'D', $tamano, '$user', 0, 1)") ; } //Funcion para obtener los datos del directorio padre----------------------------------------------------- function datosDirPadre($bd, $padre) { $sql = " SELECT E.AMBITO, E.ACCESO, E.UBICACION, E.ACCESO_AUTO FROM BIBLIOTECA_ELEMENTOS E WHERE E.CLAVE = '$padre'"; $result = $bd->query($sql); $datos_padre = mysqli_fetch_array($result); return $datos_padre; } //Funcion obtener el id del esquema a utilizar con el justificante----------------------------------------- function clavePlantilla($bd) { $sql = " SELECT EL.CLAVE FROM ESQUEMAS E INNER JOIN BIBLIOTECA_ETIQUETAS BE ON E.CODIGO = BE.ESQUEMA INNER JOIN BIBLIOTECA_ELEMENTOS EL ON BE.CLAVE = EL.CLAVE WHERE E.ACTIVO = 1 AND ( EL.EXTENSION = 'HTML' OR EL.EXTENSION = 'HTM' ) AND EL.UBICACION LIKE '##PUBLICO##/##PLAN_PUB##/%' AND EL.PAPELERA = 0 AND E.JUSTIFICANTE = 1 LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $id = $row['CLAVE']; return $id; $base->close(); } //OBTENGO LOS DATOS DEL DOCUMENTO------------------------------------------------------------------------------------ function codigoGrapadoDocumento($bd, $doc) { $sql = " SELECT E.GRAPADO, E.PADRE, E.UBICACION FROM BIBLIOTECA_ELEMENTOS E WHERE E.CLAVE = '$doc'"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); return $row; $base->close(); } //Funcion obtener el id del esquema a utilizar con el justificante----------------------------------------- function idDocumentoSolicitante($bd, $id_vinc) { $sql = " SELECT V.CLAVE FROM BIBLIOTECA_VINCULOS V WHERE V.VINCULO = '$id_vinc' LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $id = $row['CLAVE']; return $id; $base->close(); } //Funcion obtener el id del esquema a utilizar con el justificante----------------------------------------- function nombreDelDocumentoSolicitante($bd, $id_doc) { $sql = " SELECT E.NOMBRE FROM BIBLIOTECA_ELEMENTOS E WHERE E.CLAVE = '$id_doc' LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $id = $row['NOMBRE']; return $id; $base->close(); } //HAGO EL UPDATE DEL CAMPO GRAPADO, PADRE Y UBICACION DEL DOCUMENTO NUEVO-------------------------------------------- function updateGrapadoNewDoc($bd, $doc, $cod_grapado, $dir_padre, $ubic_padre) { $query = "UPDATE BIBLIOTECA_ELEMENTOS SET GRAPADO = '$cod_grapado', PADRE = '$dir_padre', UBICACION = '$ubic_padre' WHERE CLAVE = '$doc'"; mysqli_query($bd, $query); } //HAGO EL UPDATE DEL CAMPO GRAPADO DEL DOCUMENTO RAIZ---------------------------------------------------------------- function updateGrapadoRaiz($bd, $doc, $cod_grapado) { $query = "UPDATE BIBLIOTECA_ELEMENTOS SET GRAPADO = '$cod_grapado' WHERE CLAVE = '$doc'"; mysqli_query($bd, $query); } function numeroDocsDuplicados($bd, $nombre_doc, $padre_Del_doc){ $sql = " SELECT COUNT(E.CLAVE) AS TOTAL FROM BIBLIOTECA_ELEMENTOS E WHERE E.NOMBRE LIKE '$nombre_doc(%%' AND E.PADRE = '$padre_Del_doc'"; $base = $bd->query($sql); $result = mysqli_fetch_array($base); $total = $result['TOTAL']; $base->close(); return $total; } //obtengo el NOMBRE DLE JUSTIFICANTE A UTILIZAR--------------------------------------------------------------------- function nombreJustificante($bd, $id_esq) { $sql = " SELECT V.JUSTIF_DOC FROM BIBLIOTECA_VINCULOS V WHERE V.VINCULO = '$id_esq' LIMIT 1"; $base = $bd->query($sql); $row = mysqli_fetch_array($base); $result = $row['JUSTIF_DOC']; return $result; $base->close(); } ?>