예제 #1
0
function CH_chiuj($origina_cheno) {
    global $traduko_dosieroj, $db, $agordoj;
    $nur = $_GET["nur"]; // por montri nur unu el la tradukoj

    // $cheno, $dosiero
    extract(analizu_chenon($origina_cheno));

    $db = konektu();
    $tabelo = $agordoj["db_tabelo"];
        
    $query = "SELECT traduko FROM $tabelo WHERE dosiero"
        . " = '$dosiero' AND cheno = '$cheno' AND iso2 = 'eo'";
    $result = mysql_query($query);
    $row = mysql_fetch_array($result);
    $tradukoj = "<b>eo</b>: <i>" . al_utf8($row["traduko"]) . "</i>";
        
    $query = "SELECT iso2, traduko FROM $tabelo WHERE dosiero"
        . " = '$dosiero' AND cheno = '$cheno'";
    if ($nur != "") {
        $query .= " AND iso2 = '$nur'";
    }
    $result = mysql_query($query);
    while ($row = mysql_fetch_array($result)) {
        if ($row["iso2"] == "eo") {
            continue;
        }
        $tradukoj .=  "<br /><b>" .  $row["iso2"] . "</b>: " . $row["traduko"];
    }
    return $tradukoj;
}
예제 #2
0
/**
 * sercxas en dosiero pri cxenoj tradukendaj.
 * @param string $dosiero dosiernomo (sur disko)
 * @param string $interna dosiernomo (en datumbazo)
 */
function traktu_dosieron($abs_dosiero, $interna) {
    //    echo "(traktas " . $dosiero . " ...) <br />\n";
    global $trovitaj, $tabelo, $chefa, $tradukoj;
        
    if (isset($_GET["parta"]) && (filemtime($dosiero) < time() - (60*60*24*7))) {
        return;
    }
        
    $tuto = join("", file($abs_dosiero));
    preg_match_all("/CH([_a-z]*)\s*\(\s*[\"']([^\"']*)[\"']\s*(,|\))/",
                   $tuto, $chenoj);
    $chenoj = $chenoj[2];
    for ($i = 0; $i < count($chenoj); $i++) {
        // $cxeno, $dosiero
        extract(analizu_chenon($chenoj[$i], $interna));
        
        if (!in_array($dosiero . "#" . $cheno, $trovitaj)) {
            $trovitaj[] = $dosiero . "#" . $cheno;
            if (eltrovu_gxenerale("COUNT(*)",
                                  "tradukoj",
                                  array("dosiero = '$dosiero'",
                                        "cheno = '$cheno'",
                                        "iso2 = '$chefa'"))
                < 1)
                {
                    //             $query = "SELECT traduko FROM $tabelo WHERE "
                    //                 . "dosiero = '$dosiero' AND cheno = '$cheno' "
                    //                 . "AND iso2 = '$chefa'";
                    //             $result = mysql_query($query);
                    //             $row = mysql_fetch_array($result);
                    //             if (!$row) {
                    // mankas en la datumbazo
                    skatolo_por_cheno("aldonu",
                                      $tradukoj["stato-aldonenda"],
                                      "aldonenda",
                                      $dosiero, 1, $cheno, $chefa);
                }
        }
    }
}
 /**
  * @return null, se mankas la traduko.
  */
 function donu_tradukon_en_lingvo($cxeno, $lingvo)
 {
     $¢enokaj = analizu_chenon($cxeno, $this->dosierstoko);
     $cxeno = $¢enokaj['cheno'];
     $dosiero = $¢enokaj['dosiero'];
     return $this->donu_tradukon_en($dosiero, $cxeno, $lingvo);
 }