<?php
//=============================================================================
//FUNCIONES--------------------------------------------------------------------
function selectEtqEsquema($bd, $alias_esquema)
{
    $sql =  "   SELECT EE.ESQUEMA, EE.CODIGO, EE.DESCRIPCION, EE.ORDEN, EE.TIPO, EE.LISTA
                FROM ESQUEMAS_ESTRUCTURA EE
                INNER JOIN ESQUEMAS E ON E.CODIGO = EE.ESQUEMA AND E.ALIAS = ? ORDER BY EE.CODIGO ASC ";
    $base = $bd->prepare($sql);
    $alias_esquema = mysqli_real_escape_string($bd, $alias_esquema);
    $base->bind_param('s', $alias_esquema);
    $base->execute();
    $result = $base->get_result();
    $base->close();
    return $result;
}
function insertBibliotecaEtiquetas($bd, $cod_etiqueta, $descripcion, $cod_exp, $grupo, $etiqueta, $grupo_e, $esquema, $padre, $valor ) {
	mysqli_query($bd, "INSERT INTO BIBLIOTECA_ETIQUETAS 
						( CODIGO, CLAVE, DESCRIPCION, GRUPO, ETIQUETA, GRUPOE, ESQUEMA, FECHA, VALOR, PADRE ) 
						VALUES 
						('$cod_etiqueta', '$descripcion', '$cod_exp', $grupo, $etiqueta, $grupo_e, $esquema, now(), '$valor', '$padre' )") ;
}
function historialLog($bd, $clave, $user, $nombre, $ordenador, $ambito, $acceso_doc, $tamano, $accion_historial) {
	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(), $accion_historial, '$nombre', '$user', '$ordenador', '$ambito', '$acceso_doc', 'D', $tamano, '$user', 0, 1)") ;
}
function docBibliotecaElementosDocumento($bd, $clave, $nombre, $ext, $padre, $tamano, $acceso_doc, $user, $entrada, $ordenador, $partes, $sufijo, $ambito, $permiso, $ubicacion, $origen, $archivo) {
	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, ARCHIVO, NUMETI)
						VALUES 
						('$clave', '$nombre', '$ext', '$padre', 'D', now(), $tamano, '$ambito', '$permiso', '$user', '$entrada', '$ordenador', now(), $partes, '1.0', '$sufijo', '$ubicacion', '$origen', $archivo, 1)") ;
}
function subirContenido($bd, $parte, $sufijo, $data, $tamano, $clave, $entrada) {
	$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, $tamano, 0)");
	return $fichero_ok;
}
function tablaDestDisp($bd, $tamano, $max_fichero, $name_avanws) {
	$sql =  " 	SELECT TABLE_NAME,ROUND(DATA_LENGTH/(1024*1024*1024),1) AS GB
				FROM INFORMATION_SCHEMA.TABLES
				WHERE TABLE_SCHEMA = '".$name_avanws."'
				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();
}
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();
}
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;
}
function docExist($bd, $nombre, $padre, $ambito) {
	$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();
}
function ubicacionPadreDoc($bd, $id)
{
	$sql =  " 	SELECT E.UBICACION
				FROM BIBLIOTECA_ELEMENTOS E
				WHERE E.CLAVE = '$id'";
  	$base = $bd->query($sql);
  	$result = mysqli_fetch_array($base);
  	$ubic = $result['UBICACION'];
  	$base->close();
  	return $ubic;
}
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();
}
function archivoHeredado($bd,$padre) {
	$sql = "	SELECT E.ARCHIVO
				FROM BIBLIOTECA_ELEMENTOS E
				WHERE E.CLAVE = '$padre'";
	$base = $bd->query($sql);
	$row = mysqli_fetch_array($base);
	$acceso = $row['ARCHIVO'];
	return $acceso;
	$base->close();
}
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();
}
function get_extension($nombre) {
	// Convierto la cadena en un arreglo
	$a = explode( '.', $nombre );
	$ext = end( $a );
	$ext = strtoupper( $ext );
	return $ext;
}
function insertEtiquetasExpediente($bd, $cod_exp, $orden, $descripcion, $grupoe, $cod_tipo_exp, $etiqueta ) {
	mysqli_query(
    $bd,   "INSERT INTO BIBLIOTECA_EXPEDIENTES 
			(CLAVE, ORDEN, DESCRIPCION, GRUPOE, FECHA, TIPOEXP, ETIQUETA)
			VALUES 
			( '$cod_exp', $orden, '$descripcion', $grupoe, now(), $cod_tipo_exp, $etiqueta )"
    );
}
function selectNombreTipoExpediente($bd, $cod_exp){
    $sql = "SELECT T.DESCRIPCION
            FROM EXPEDIENTES_TIPOS T
            WHERE T.CODIGO = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $cod_exp = mysqli_real_escape_string($bd, $cod_exp);
    $base->bind_param('i', $cod_exp);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result['DESCRIPCION'];
}
function selectDatosVehiculo($bd, $cod_vehiculo){
    $sql = "SELECT V.MATRICULA, V.BASTIDOR, V.IDCAR, V.MOSTRAR
            FROM VEHICULOS V
            WHERE V.CODIGO = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $cod_vehiculo = mysqli_real_escape_string($bd, $cod_vehiculo);
    $base->bind_param('i', $cod_vehiculo);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result;
}
function selectEtqExpediente($bd, $tipo_exp)
{
    $sql =  "   SELECT E.CONCEPTO, EE.DESCRIPCION, EE.ORDEN
                FROM EXPEDIENTES_ESTRUCTURA E
                INNER JOIN ESQUEMAS_ESTRUCTURA EE ON EE.CODIGO = E.CONCEPTO AND EE.ESQUEMA = -1
                WHERE E.TIPOEXP = ?";
    $base = $bd->prepare($sql);
    $tipo_exp = mysqli_real_escape_string($bd, $tipo_exp);
    $base->bind_param('i', $tipo_exp);
    $base->execute();
    $result = $base->get_result();
    $base->close();
    return $result;
}
function UpdateContador($bd, $prox_cont, $cod_contador)
{
	$sql =  " UPDATE CONTADORES 
              SET CONTADORSIG = ?
              WHERE CODIGO = ?";
    $base = $bd->prepare($sql);
    $prox_cont = mysqli_real_escape_string($bd, $prox_cont);
    $cod_contador = mysqli_real_escape_string($bd, $cod_contador);
    $base->bind_param('is', $prox_cont, $cod_contador);
    $base->execute();
}
function selectDatosContador($bd, $cod_contador){
    $sql = "SELECT C.PREFIJO, C.CONTADORSIG, C.SUFIJO, C.MASCARA
            FROM CONTADORES C
            WHERE C.CODIGO = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $cod_contador = mysqli_real_escape_string($bd, $cod_contador);
    $base->bind_param('s', $cod_contador);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result;
}
function docBibliotecaElementos($bd, $clave, $nombre, $ext, $padre, $tipo, $tamano, $user, $partes, $sufijo, $vermin, $ambito, $acceso_doc, $ubicacion, $icono, $expte_codigo) {
	mysqli_query(
    $bd,   "INSERT INTO BIBLIOTECA_ELEMENTOS 
			(CLAVE, NOMBRE, EXTENSION, PADRE, TIPO, FECHA, TAMANO, AMBITO, ACCESO, CREADOR, MODIFICACION, PARTES, VERMIN, SUFIJO, UBICACION, ICONO, EXPTE_CODIGO, EXPTE_ORDEN)
			VALUES 
			('$clave', '$nombre', '$ext', '$padre', '$tipo', now(), $tamano, '$ambito', '$acceso_doc', '$user', now(), $partes, '$vermin', '$sufijo', '$ubicacion', '$icono' , '$expte_codigo', '$expte_codigo' )"
    );
}
function selectDatosPadre($bd, $padre){
    $sql = "SELECT E.ACCESO, E.ACCESO_AUTO, E.UBICACION
            FROM BIBLIOTECA_ELEMENTOS E
            WHERE E.CLAVE = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $padre = mysqli_real_escape_string($bd, $padre);
    $base->bind_param('s', $padre);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result;
}
function validaDirAnyoExpediente($bd, $dir_anyo){
    $sql = "SELECT COUNT(E.NOMBRE) AS EXISTE
            FROM BIBLIOTECA_ELEMENTOS E
            WHERE E.CLAVE = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $dir_anyo = mysqli_real_escape_string($bd, $dir_anyo);
    $base->bind_param('s', $dir_anyo);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result['EXISTE'];
}
function selectCodigoExpedienteVehiculo($bd, $cod_etq_vehiculo, $cod_vehiculo, $cod_tipo_exp){
    $sql = "SELECT E.CLAVE
            FROM BIBLIOTECA_EXPEDIENTES E
            WHERE E.GRUPOE = ? AND E.ETIQUETA = ? AND E.TIPOEXP = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $cod_etq_vehiculo = mysqli_real_escape_string($bd, $cod_etq_vehiculo);
    $cod_vehiculo = mysqli_real_escape_string($bd, $cod_vehiculo);
    $cod_tipo_exp = mysqli_real_escape_string($bd, $cod_tipo_exp);
    $base->bind_param('iii', $cod_etq_vehiculo, $cod_vehiculo, $cod_tipo_exp);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result['CLAVE'];
}
function selectCodigoEtiquetaEsquema($bd, $alias_etq){
    $sql = "SELECT EE.CODIGO
            FROM ESQUEMAS_ESTRUCTURA EE
            WHERE EE.ESQUEMA = -1 AND EE.ALIAS = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $alias_etq = mysqli_real_escape_string($bd, $alias_etq);
    $base->bind_param('s', $alias_etq);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result['CODIGO'];
}
function selectClaveExpediente($bd, $cod_exp){
    $sql = "SELECT E.CLAVE
            FROM BIBLIOTECA_ELEMENTOS E
            WHERE E.EXPTE_CODIGO = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $cod_exp = mysqli_real_escape_string($bd, $cod_exp);
    $base->bind_param('s', $cod_exp);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result['CLAVE'];
}
function selectCodigoTipoExpediente($bd, $alias_exp){
    $sql = "SELECT E.CODIGO
            FROM EXPEDIENTES_TIPOS E
            WHERE E.ALIAS = ? LIMIT 1";
    $base = $bd->prepare($sql);
    $alias_exp = mysqli_real_escape_string($bd, $alias_exp);
    $base->bind_param('s', $alias_exp);
    $base->execute();
    $result =mysqli_fetch_array($base->get_result());
    $base->close();
    return $result['CODIGO'];
}

function get_id_unico() {
    return date( "YmdHis" ) . sprintf( "%04d", rand( 0, 9999 ) );
}
?>