/**
 * donas iun renkontigxo- kaj lingvo-specifan tekston
 *
 */
function donu_tekston_lauxlingve($identifikilo, $lingvo, $renkontigxo = "")
{
    $renkontigxo = kreuRenkontigxon($renkontigxo);
    $id = eltrovu_gxenerale("ID", "tekstoj", array("mesagxoID = '" . $identifikilo . "'", "renkontigxoID = '" . $renkontigxo->datoj['ID'] . "'"));
    $teksto = traduku_datumbazeron("tekstoj", "teksto", $id, $lingvo);
    if (isset($teksto)) {
        return $teksto;
    }
    return "[traduko mankas (" . $lingvo . "): [" . donu_tekston($identifikilo, $lingvo, $renkontigxo) . "]]";
}
 function landonomo_en_lingvo($lingvo = "")
 {
     if ($lingvo == "") {
         $trad = kreuTradukilon();
         $lingvo = $trad->aktuala_lingvo();
     }
     return traduku_datumbazeron("landoj", "nomo", $this->datoj['lando'], $lingvo);
 }
function kreu_unuan_konfirmilan_tekston_unulingve($lingvo, $partoprenanto, $partopreno, $renkontigxo, $kodigo)
{
    eniru_dosieron();
    eniru_lingvon($lingvo);
    $speciala = array();
    $speciala['landonomo'] = traduku_datumbazeron('landoj', 'nomo', $partoprenanto->datoj['lando'], $lingvo);
    //        eltrovu_landon($partoprenanto->datoj['lando']);
    $speciala['tejojaro'] = TEJO_MEMBRO_JARO;
    $speciala['tejorabato'] = TEJO_RABATO;
    if (ASEKURO_EBLAS) {
        if ($partopreno->datoj['havas_asekuron'] == 'J') {
            $speciala['asekuro'] = CH("konf1-havas-asekuron");
        } else {
            $speciala['asekuro'] = CH("konf1-ne-havas-asekuron");
        }
    }
    if ($partopreno->datoj['partoprentipo'] == 't') {
        $speciala['partopreno'] = CH("tuttempe");
    } else {
        $speciala['partopreno'] = CH("parttempe");
    }
    switch ($partopreno->datoj['vegetare']) {
        case 'J':
            $speciala['mangxmaniero'] = CH("vegetara");
            break;
        case 'N':
            $speciala['mangxmaniero'] = CH("vianda");
            break;
        case 'A':
            $speciala['mangxmaniero'] = CH("vegana");
            break;
        default:
            $speciala['mangxmaniero'] = CH("mangxmaniero-?", $partopreno->datoj['vegetare']);
    }
    $speciala['domotipo'] = donu_tekston_lauxlingve('domotipo-' . $partopreno->datoj['domotipo'], $lingvo, $renkontigxo);
    if ($partopreno->datoj['domotipo'] == 'M') {
        $speciala['cxambro'] = "";
    } else {
        // TODO!: tradukebligu
        // TODO: unulita
        $speciala['cxambro'] = "\n Vi mendis " . ($partopreno->datoj['dulita'] == "J" ? "dulitan " : "") . $partopreno->cxambrotipo() . "n c^ambron" . ($partopreno->datoj['kunkiu'] ? " kun (eble) " . $partopreno->datoj['kunkiu'] : "");
    }
    // TODO: kunmangxas (laux opcio)
    $kotizo = new Kotizokalkulilo($partoprenanto, $partopreno, $renkontigxo, new Kotizosistemo($renkontigxo->datoj['kotizosistemo']));
    $speciala['antauxpago'] = $kotizo->minimuma_antauxpago();
    $speciala['pageblecoj'] = pageblecoj_retpagxo;
    $kotForm = new TekstaKotizoFormatilo($lingvo, $kodigo);
    $kotizo->tabelu_kotizon($kotForm);
    debug_echo("<!-- kotizotabelo: \n" . $kotForm->preta_tabelo . "\n -->");
    $speciala['kotizotabelo'] = $kotForm->preta_tabelo;
    $invitpeto = $partopreno->sercxu_invitpeton();
    if ($invitpeto) {
        $speciala['invitpeto'] = donu_tekston_lauxlingve('konf1-invitpeto-titolo', $lingvo, $renkontigxo) . $invitpeto->konfirmilaj_detaloj() . "\n\n\n" . donu_tekston_lauxlingve('konf1-invitilo', $lingvo, $renkontigxo) . "\n\n";
    } else {
        // ne petis invitleteron, do ne necesas ion pri tio skribi
        $speciala['invitpeto'] = "";
    }
    $speciala['dissendolisto'] = donu_tekston_lauxlingve('konf1-dissendolisto', $lingvo, $renkontigxo);
    $speciala['subskribo'] = donu_tekston_lauxlingve('konf1-subskribo', $lingvo, $renkontigxo);
    //     $speciala['subskribo'] = $renkontigxo->funkciulo('admin') .
    //         ", en la nomo de " . organizantoj_nomo . ", la organiza teamo.";
    $datumoj = array('anto' => $partoprenanto->datoj, 'eno' => $partopreno->datoj, 'igxo' => $renkontigxo->datoj, 'speciala' => $speciala);
    $sxablono = CH('unua-konfirmilo-sxablono');
    //     $sxablono = file_get_contents($GLOBALS['prafix'].'/sxablonoj/unua_konfirmilo_' . $lingvo . '.txt');
    if (DEBUG) {
        echo "<!-- " . var_export($datumoj, true) . "-->";
    }
    eliru_dosieron();
    eliru_lingvon();
    return eotransformado(transformu_tekston($sxablono, $datumoj), $kodigo);
}
 /**
  * donas tradukitan version de iu kampo de tiu ĉi objekto.
  *
  * @param string $kamponomo 
  * @param string $lingvo la ISO-kodo de la lingvo.
  *
  * @return eostring la traduko (se ĝi mankas, la originala
  *    teksto kun indiko, ke la traduko mankas).
  */
 function tradukita($kamponomo, $lingvo = '')
 {
     if (!$lingvo) {
         $tradukilo =& kreuTradukilon();
         $lingvo = $tradukilo->aktuala_lingvo();
     }
     $nia_traduko =& $this->tradukoj[$lingvo][$kamponomo];
     // ni jam antaŭe serĉis kaj trovis (aŭ ne trovis) tiun
     // tradukon
     if (!isset($nia_traduko)) {
         // TODO: elpensu alian manieron eltrovi, ĉu temas pri flag-kampo.
         if (substr($kamponomo, -1) == '#') {
             // flag-kampo.
             $kamponomo = substr($kamponomo, 0, -1);
             $cxenoID = "flag:" . $this->datoj[$kamponomo];
             $nia_traduko = traduku_datumbazeron($this->tabelnomo, $kamponomo, $cxenoID, $lingvo);
             if (!isset($nia_traduko)) {
                 $nia_traduko = traduku_datumbazeron($this->tabelnomo, $kamponomo, $cxenoID, 'eo');
             }
             if (!isset($nia_traduko)) {
                 $nia_traduko = $this->datoj[$kamponomo];
             }
         } else {
             $nia_traduko = traduku_datumbazeron($this->tabelnomo, $kamponomo, $this->datoj['ID'], $lingvo);
             if (!$nia_traduko) {
                 $nia_traduko = $this->datoj[$kamponomo];
                 $GLOBALS['bezonis-eo-tekston'] = true;
                 if (marku_traduko_eo_anstatauxojn) {
                     $nia_traduko .= "¹";
                 }
             }
         }
         /* $nia_traduko =  "(traduko mankas: [" . $lingvo . "]("
            .                  $this->datoj[$kamponomo] . "))"; */
         debug_echo("<!-- " . $this->tabelnomo . "[" . $this->datoj['ID'] . "]->tradukita(" . $kamponomo . ", " . $lingvo . ") ==> '" . $nia_traduko . "' -->");
     }
     return $nia_traduko;
 }