function montru_unu($row) { global $dosiero, $lingvo, $montru, $tabelo, $chefa, $tradukoj; $cheno = $row["cheno"]; if ($lingvo != $chefa) { $query2 = "SELECT traduko, stato, tradukinto FROM $tabelo WHERE iso2='$lingvo' " . "AND dosiero='$dosiero' AND cheno='$cheno'"; $result2 = mysql_query($query2); $row2 = mysql_fetch_array($result2); if ($row2) { if ($montru == "chion" or (($montru == "retradukendajn" or $montru == "ambau") and $row2["stato"] == 1)) { skatolo_por_cheno("redaktu", ( $row2["stato"] == 1 ? $tradukoj["stato-retradukenda"] : $tradukoj["stato-ghisdata"]), $row2["stato"] == 1 ? "retradukenda" : "gxisdata", $dosiero, 0, $cheno, $lingvo, $row["traduko"], $row2["traduko"], $row["komento"], $row2["tradukinto"], $row['stato']); } } else { if ($montru == "chion" or $montru == "tradukendajn" or $montru == "ambau") { skatolo_por_cheno("aldonu", $tradukoj["stato-tradukenda"], "tradukenda", $dosiero, 0, $cheno, $lingvo, $row["traduko"], "", $row["komento"], "", $row['stato']); } } } else { // cxefa lingvo skatolo_por_cheno("redaktu", $tradukoj["stato-ghisdata"], "gxisdata", $dosiero, 0, $cheno, $lingvo, "", $row["traduko"], $row["komento"], $row["tradukinto"], $row['stato'], "preredaktilo"); } }
/** * 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); } } } }