Exemple #1
0
function ARRAYverDatosTermino($tema_id)
{
    global $DBCFG;
    $tema_id = secure_data($tema_id, "sql");
    $sql = SQL("select", "tema.tema_id as idTema,\r\n\t    tema.code,\r\n\t\ttema.tema,\r\n\t\tif(relaciones.id is null,'TT','PT') as tipo_termino,\r\n\t\ttema.cuando,\r\n\t\ttema.uid,\r\n\t\ttema.cuando_final,\r\n\t\tuid_final,\r\n\t\trelaciones.id_mayor,\r\n\t\ttema.estado_id,\r\n\t\tv.value_code as estado_code,\r\n\t\ttema.cuando_estado\r\n\t\tfrom {$DBCFG['DBprefix']}values v,{$DBCFG['DBprefix']}tema as tema\r\n\t\tleft join {$DBCFG['DBprefix']}tabla_rel as relaciones on tema.tema_id=relaciones.id_menor\r\n\t\tand relaciones.t_relacion='3'\r\n\t\twhere\r\n\t\ttema.tema_id='{$tema_id}'\r\n\t\tand v.value_type='t_estado'\r\n\t\tand v.value_id=tema.estado_id");
    while ($array = mysqli_fetch_array($sql[datos])) {
        $i = ++$i;
        $arrayDatos["idTema"] = $array[idTema];
        $arrayDatos["tema_id"] = $array[idTema];
        $arrayDatos["code"] = $array[code];
        $arrayDatos["titTema"] = $array[tema];
        $arrayDatos["descTema"] = $array[desc_tema];
        $arrayDatos["tipoTema"] = $array[tipo_termino];
        $arrayDatos["supraTema"] = $array[id_mayor];
        $arrayDatos["estado_id"] = $array[estado_id];
        $arrayDatos["estado_code"] = $array[estado_code];
        $arrayDatos["cuando_estado"] = $array[cuando_estado];
        $arrayDatos["cuando"] = $array[cuando];
        $arrayDatos["uid"] = $array[uid];
        $arrayDatos["cuando_final"] = $array[cuando_final];
        $arrayDatos["uid_final"] = $array[uid_final];
        $arrayDatos["last"] = $array[last];
    }
    $arrayNotas = array();
    $sqlNotas = SQLdatosTerminoNotas($tema_id);
    while ($array = mysqli_fetch_array($sqlNotas[datos])) {
        if ($array[nota_id]) {
            array_push($arrayNotas, array("id" => $array[nota_id], "tipoNota" => $array[tipo_nota], "lang_nota" => $array[lang_nota], "nota" => $array[nota]));
        }
    }
    $arrayDatos["notas"] = $arrayNotas;
    return $arrayDatos;
}
 function fetchTermNotes($tema_id)
 {
     $sql = SQLdatosTerminoNotas($tema_id);
     while ($array = $sql->FetchRow()) {
         $i = ++$i;
         $result["result"][$array[nota_id]] = array("term_id" => $array[tema_id], "string" => $array[tema], "note_id" => $array[nota_id], "note_type" => $array[ntype_code] ? $array[ntype_code] : $array[tipo_nota], "note_lang" => $array[lang_nota], "note_text" => $array[nota]);
     }
     return $result;
 }
function doTerminosXTM($tema_id = "")
{
    global $CFG;
    $_URI_BASE_ID = $CFG["_URI_BASE_ID"] ? $CFG["_URI_BASE_ID"] : $_SESSION["CFGURL"];
    $_URI_SEPARATOR_ID = $CFG["_URI_SEPARATOR_ID"] ? $CFG["_URI_SEPARATOR_ID"] : '?tema=';
    /*
    $sql=SQLTerminosValidos($tema_id);
    */
    $sql = SQLTerminosPreferidos($tema_id);
    while ($array = $sql->FetchRow()) {
        $row .= '<topic id="' . $_URI_BASE_ID . $_URI_SEPARATOR_ID . $array[id] . '">';
        $row .= '<instanceOf>';
        $row .= '<topicRef xlink:href="#term"/>';
        $row .= '</instanceOf>';
        $row .= '<baseName>';
        $row .= '<baseNameString>' . xmlentities($array[tema]) . '</baseNameString>';
        $row .= '</baseName>';
        $sqlNotas = SQLdatosTerminoNotas($array[id], array("NA"));
        while ($arrayNotas = $sqlNotas->FetchRow()) {
            $row .= '  <occurrence>';
            $row .= '    <instanceOf>';
            $row .= '      <topicRef xlink:href="#scope-note"/>';
            $row .= '    </instanceOf>';
            $row .= '<baseName>';
            $row .= '<baseNameString>' . xmlentities($arrayNotas[nota], true) . '</baseNameString>';
            $row .= '</baseName>';
            $row .= '  </occurrence>';
        }
        $row .= '</topic>';
    }
    //Esta pidiendo el vocabulario completo -> incluir topic de términos no preferidos.
    if (!isset($tema_id)) {
        //Sql de términos no prereridos (UF)
        $sql = SQLterminosValidosUF();
        while ($array = $sql->FetchRow()) {
            $row .= '<topic id="' . $_URI_BASE_ID . $_URI_SEPARATOR_ID . $array[tema_id] . '">';
            $row .= '<instanceOf>';
            $row .= '<topicRef xlink:href="#term"/>';
            $row .= '</instanceOf>';
            $row .= '<baseName>';
            $row .= '<baseNameString>' . xmlentities($array[tema]) . '</baseNameString>';
            $row .= '</baseName>';
            $row .= '</topic>';
        }
    }
    return $row;
}
function ARRAYverDatosTermino($tema_id)
{
    global $DBCFG;
    $tema_id = secure_data($tema_id, "int");
    $sql = SQL("select", "tema.tema_id as idTema,\r\n\ttema.code,\r\n\ttema.tema,\r\n\tif(relaciones.id is null,'TT','PT') as tipo_termino,\r\n\ttema.cuando,\r\n\ttema.uid,\r\n\ttema.cuando_final,\r\n\ttema.uid_final,\r\n\ttema.isMetaTerm,\r\n\trelaciones.id_mayor,\r\n\ttema.estado_id,\r\n\tv.value_code as estado_code,\r\n\ttema.cuando_estado,\r\n\tc.idioma\r\n\tfrom {$DBCFG['DBprefix']}values v,{$DBCFG['DBprefix']}config c, {$DBCFG['DBprefix']}tema as tema\r\n\tleft join {$DBCFG['DBprefix']}tabla_rel as relaciones on tema.tema_id=relaciones.id_menor\r\n\tand relaciones.t_relacion='3'\r\n\twhere\r\n\ttema.tema_id='{$tema_id}'\r\n\tand v.value_type='t_estado'\r\n\tand tema.tesauro_id=c.id\r\n\tand v.value_id=tema.estado_id");
    while ($array = $sql->FetchRow()) {
        $i = ++$i;
        $arrayDatos["idTema"] = $array["idTema"];
        $arrayDatos["tema_id"] = $array["idTema"];
        $arrayDatos["code"] = $array["code"];
        $arrayDatos["titTema"] = $array["tema"];
        $arrayDatos["descTema"] = $array["desc_tema"];
        $arrayDatos["tipoTema"] = $array["tipo_termino"];
        $arrayDatos["supraTema"] = $array["id_mayor"];
        $arrayDatos["estado_id"] = $array["estado_id"];
        $arrayDatos["estado_code"] = $array["estado_code"];
        $arrayDatos["cuando_estado"] = $array["cuando_estado"];
        $arrayDatos["cuando"] = $array["cuando"];
        $arrayDatos["idioma"] = $array["idioma"];
        $arrayDatos["uid"] = $array["uid"];
        $arrayDatos["cuando_final"] = $array["cuando_final"];
        $arrayDatos["uid_final"] = $array["uid_final"];
        $arrayDatos["last"] = $array["last"];
        $arrayDatos["isMetaTerm"] = $array["isMetaTerm"];
    }
    $arrayNotas = array();
    $sqlNotas = SQLdatosTerminoNotas($tema_id);
    while ($array = $sqlNotas->FetchRow()) {
        if ($array[nota_id]) {
            array_push($arrayNotas, array("id" => $array[nota_id], "tipoNota" => $array[ntype_code], "tipoNotaLabel" => $array[ntype], "tipoNota_id" => $array[ntype_id], "lang_nota" => $array[lang_nota], "cuando_nota" => $array[cuando], "nota" => $array[nota]));
        }
    }
    $arrayDatos["notas"] = $arrayNotas;
    return $arrayDatos;
}
Exemple #5
0
function txtAlfabetico()
{
    $txt = ucfirst(LABEL_Titulo) . ': ' . $_SESSION["CFGTitulo"] . "\r\n";
    $txt .= ucfirst(LABEL_Autor) . ': ' . $_SESSION["CFGAutor"] . "\r\n";
    $txt .= ucfirst(LABEL_Keywords) . ': ' . $_SESSION["CFGKeywords"] . "\r\n";
    $txt .= ucfirst(LABEL_Cobertura) . ': ' . $_SESSION["CFGCobertura"] . "\r\n";
    $txt .= LABEL_URI . ': ' . $_SESSION["CFGURL"] . "\r\n";
    $txt .= ucfirst(LABEL_Version) . ': ' . $_SESSION["CFGVersion"] . "\r\n";
    $txt .= "__________________________________________________________________________\r\n";
    //Lista de todos los términos
    $sql = SQLlistaTemas();
    while ($arrayTema = mysqli_fetch_array($sql[datos])) {
        #Mantener vivo el navegador
        $time_now = time();
        if ($time_start >= $time_now + 10) {
            $time_start = $time_now;
            header('X-pmaPing: Pong');
        }
        // Diferenciar entre términos preferidos y términos no preferidos o referencias
        if ($arrayTema[t_relacion]) {
            //Remisiones de equivalencias y no preferidos
            $sqlNoPreferidos = SQLterminosValidosUF($arrayTema[id]);
            while ($arrayNoPreferidos = mysqli_fetch_array($sqlNoPreferidos[datos])) {
                $acronimo = arrayReplace(array("4", "5", "7", "8"), array(USE_termino, EQ_acronimo, EQP_acronimo, NEQ_acronimo), $arrayNoPreferidos[t_relacion]);
                $referencia_mapeo = $arrayNoPreferidos[vocabulario_id] !== '1' ? ' (' . $arrayNoPreferidos[titulo] . ' / ' . $arrayNoPreferidos[idioma] . ')' : '' . "\r\n";
                $txt .= "\n" . $arrayTema[tema] . $referencia_mapeo;
                $txt .= '	' . $acronimo . ': ' . $arrayNoPreferidos[tema_pref] . "\r\n";
            }
        } else {
            // Si es preferido: mostar notas y relaciones
            $txt .= "\n" . $arrayTema[tema] . "\r\n";
            $txt .= LABEL_fecha_creacion . ': ' . $arrayTema[cuando] . "\r\n";
            if ($arrayTema[cuando_final] > $arrayTema[cuando]) {
                $txt .= LABEL_fecha_modificacion . ': ' . $arrayTema[cuando_final] . "\r\n";
            }
            //Notas
            $sqlNotas = SQLdatosTerminoNotas($arrayTema[id], array("NB", "NH", "NA", "NC"));
            while ($arrayNotas = mysqli_fetch_array($sqlNotas[datos])) {
                $acronimo = arrayReplace(array("NB", "NH", "NA", "NC"), array(NB_acronimo, NH_acronimo, NA_acronimo, NC_acronimo), $arrayNotas[tipo_nota]);
                $txt .= '	' . $acronimo . ': ' . html2txt($arrayNotas[nota]) . "\r\n";
            }
            //Relaciones
            $sqlRelaciones = SQLverTerminoRelaciones($arrayTema[id]);
            $arrayRelacionesVisibles = array("2", "3", "4");
            // TG/TE/UP /TR
            while ($arrayRelaciones = mysqli_fetch_array($sqlRelaciones[datos])) {
                if (in_array($arrayRelaciones[t_relacion], $arrayRelacionesVisibles)) {
                    $acronimo = arrayReplace($arrayRelacionesVisibles, array(TR_acronimo, TG_acronimo, UP_acronimo), $arrayRelaciones[t_relacion]);
                    $txt .= '	' . $acronimo . ': ' . $arrayRelaciones[tema] . "\r\n";
                }
            }
            //Terminos especificos
            $SQLTerminosE = SQLverTerminosE($arrayTema[id]);
            while ($arrayTE = mysqli_fetch_array($SQLTerminosE[datos])) {
                $txt .= '	' . TE_acronimo . ': ' . $arrayTE[tema] . "\r\n";
            }
        }
    }
    $filname = string2url($_SESSION[CFGTitulo] . ' ' . MENU_ListaAbc) . '.txt';
    return sendFile("{$txt}", "{$filname}");
}
function txt4term($tema_id, $params = array())
{
    $arrayTema = ARRAYverTerminoBasico($tema_id);
    $txt .= "\n" . $arrayTema[tema] . "\r\n";
    $label_target_vocabulary = '';
    $txt .= $params["includeCreatedDate"] == 1 ? LABEL_fecha_creacion . ': ' . $arrayTema[cuando] . "\r\n" : '';
    if ($arrayTema[cuando_final] > $arrayTema[cuando] && $params["includeModDate"] == 1) {
        $txt .= LABEL_fecha_modificacion . ': ' . $arrayTema[cuando_final] . "\r\n";
    }
    //Notas
    $sqlNotas = SQLdatosTerminoNotas($arrayTema[tema_id]);
    while ($arrayNotas = $sqlNotas->FetchRow()) {
        $arrayNotas[label_tipo_nota] = in_array($arrayNotas[ntype_id], array(8, 9, 10, 11, 15)) ? arrayReplace(array(8, 9, 10, 11, 15), array(LABEL_NA, LABEL_NH, LABEL_NB, LABEL_NP, LABEL_NC), $arrayNotas[ntype_id]) : $arrayNotas[ntype_code];
        if ($arrayNotas[tipo_nota] !== 'NP' && in_array($arrayNotas[tipo_nota], $params["includeNote"])) {
            $txt .= '	' . $arrayNotas[label_tipo_nota] . ': ' . html2txt($arrayNotas[nota]) . "\r\n";
        }
    }
    //Relaciones
    $sqlRelaciones = SQLverTerminoRelaciones($arrayTema[tema_id]);
    $arrayRelacionesVisibles = array(2, 3, 4, 5, 6, 7);
    // TG/TE/UP/TR
    while ($arrayRelaciones = $sqlRelaciones->FetchRow()) {
        if (in_array($arrayRelaciones[t_relacion], $arrayRelacionesVisibles)) {
            $acronimo = arrayReplace($arrayRelacionesVisibles, array(TR_acronimo, TG_acronimo, UP_acronimo, EQP_acronimo, EQ_acronimo, NEQ_acronimo), $arrayRelaciones[t_relacion]);
            if (in_array($arrayRelaciones[t_relacion], array(5, 6, 7))) {
                //términos equivalentes .. se concatenan después de los TE/NT
                $label_target_vocabulary .= '	' . $acronimo . ': ' . $arrayRelaciones[tema] . ' (' . $arrayRelaciones[titulo] . ')' . "\r\n";
            } else {
                $txt .= '	' . $acronimo . $arrayRelaciones[rr_code] . ': ' . $arrayRelaciones[tema] . "\r\n";
            }
        }
    }
    //Terminos especificos
    $SQLTerminosE = SQLverTerminosE($arrayTema[tema_id]);
    while ($arrayTE = $SQLTerminosE->FetchRow()) {
        $txt .= '	' . TE_acronimo . $arrayTE[rr_code] . ': ' . $arrayTE[tema] . "\r\n";
    }
    $txt .= $label_target_vocabulary;
    //Terminos equivalentes web services
    $SQLtargetTerms = SQLtargetTerms($arrayTema[tema_id]);
    while ($arrayTT = $SQLtargetTerms->FetchRow()) {
        $txt .= '	' . FixEncoding(ucfirst($arrayTT[tvocab_label])) . ': ' . FixEncoding($arrayTT[tterm_string]) . "\r\n";
    }
    return $txt;
}
Exemple #7
0
 function fetchTermNotes($tema_id)
 {
     $sql = SQLdatosTerminoNotas($tema_id);
     while ($array = mysqli_fetch_array($sql[datos])) {
         $i = ++$i;
         $result["result"][$array[nota_id]] = array("term_id" => $array[tema_id], "string" => $array[tema], "note_id" => $array[nota_id], "note_type" => $array[tipo_nota], "note_lang" => $array[lang_nota], "note_text" => $array[nota]);
     }
     return $result;
 }