/**
 * $kodigo - aux 'x-metodo' aux 'utf-8'.
 */
function kreu_unuan_konfirmilan_tekston($partoprenanto, $partopreno, $renkontigxo, $kodigo = 'utf-8')
{
    // TODO: ebligu nacilingvan varianton
    $speciala = array();
    $speciala['landonomo'] = eltrovu_landon($partoprenanto->datoj['lando']);
    $speciala['tejojaro'] = TEJO_MEMBRO_JARO;
    $speciala['tejorabato'] = TEJO_RABATO;
    $speciala['asekuro'] = $partopreno->datoj['havas_asekuron'] == 'J' ? "Vi havas asekuron pri malsano kaj kunportos la necesajn paperojn." : "Vi ne havas tauxgan asekuron pri malsano.";
    $speciala['partopreno'] = $partopreno->datoj['partoprentipo'] == 't' ? "tuttempe" : "parttempe";
    switch ($partopreno->datoj['vegetare']) {
        case 'J':
            $speciala['mangxmaniero'] = "vegetarano";
            break;
        case 'N':
            $speciala['mangxmaniero'] = "viandmang^anto";
            break;
        case 'A':
            $speciala['mangxmaniero'] = "vegano";
            break;
        default:
            $speciala['mangxmaniero'] = "nekonata mang^anto";
    }
    if ($partopreno->datoj['domotipo'] == 'M') {
        $speciala['domotipo'] = "log^os en la amaslog^ejo kaj mang^os memzorge";
        $speciala['cxambro'] = "";
    } else {
        $speciala['domotipo'] = "log^os kaj mang^os en la junulargastejo";
        switch ($partopreno->datoj['cxambrotipo']) {
            case 'u':
                $cxambrosekso = "unuseksan c^ambron";
            case 'g':
                $cxambrosekso = "gean c^ambron";
            default:
                $cxambrosekso = "(strang-seksan: '{$partopreno->datoj['cxambrotipo']}')" . " c^ambron";
        }
        $speciala['cxambro'] = "\n Vi mendis " . ($partopreno->datoj['dulita'] == "J" ? "dulitan " : "") . $cxambrosekso . ($partopreno->datoj['kunkiu'] ? " kun (eble) " . $partopreno->datoj['kunkiu'] : "");
    }
    // TODO: kunmangxas
    $kotizo = new Kotizo($partopreno, $partoprenanto, $renkontigxo);
    $speciala['antauxpago'] = $kotizo->minimuma_antauxpago();
    $speciala['pageblecoj'] = pageblecoj_retpagxo;
    $invitpeto = $partopreno->sercxu_invitpeton();
    if ($invitpeto) {
        $speciala['invitpeto'] = "\n Detaloj por la Invitilo" . "\n-------------------------" . "\n" . $invitpeto->konfirmilaj_detaloj() . "\n\n" . donu_tekston('konf1-invitilo', $renkontigxo);
    } else {
        // ne petis invitleteron, do ne necesas ion pri tio skribi
        $speciala['invitpeto'] = "";
    }
    // TODO - aldonu kiel teksto, cxu ne?
    $speciala['dissendolisto'] = "";
    $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 = file_get_contents($GLOBALS['prafix'] . '/sxablonoj/unua_konfirmilo_eo.txt');
    return eotransformado(transformu_tekston($sxablono, $datumoj), $kodigo);
}
/**
 * Sendas retpoŝte adresaron al unu persono.
 *
 * @param array $row pliaj informoj uzebla de la ŝablono.
 * @param string $to_name la kompleta nomo de la ricevonto.
 * @param string $to_adres la retpoŝtadreso de la ricevonto.
 */
function sendu_adresaron($row, $to_name, $to_address)
{
    $sxablono = file_get_contents($GLOBALS['prafix'] . "/sxablonoj/adresaro_retposxto.txt");
    $datumoj = array('db' => $row, 'renk' => $_SESSION['renkontigxo']->datoj, 'tekstoj' => trovu_necesajn_tekstojn($sxablono, "tekstoj.", "adr-msgx-"));
    //TODO: elpensu ion pli bonan sistemon
    if ($row['retposxta_varbado'] != 'u') {
        $kodigo = 'x-metodo';
    } else {
        $kodigo = 'utf-8';
    }
    $teksto = transformu_tekston($sxablono, $datumoj);
    $retmesagxo = kreu_auxtomatan_mesagxon();
    $retmesagxo->auxtomata_teksto_estu($teksto, $kodigo, $_SESSION['kkren']['entajpantonomo']);
    $retmesagxo->aldonu_dosieron_el_disko($GLOBALS['prafix'] . '/dosieroj_generitaj/adresaro.pdf');
    $retmesagxo->ricevanto_estu($to_address, $to_name);
    $retmesagxo->temo_estu("Adresaro kaj pliaj informoj pri pasinta " . $_SESSION['renkontigxo']->datoj['mallongigo']);
    $retmesagxo->eksendu();
    erareldono(" Messag^o sendita! ");
}
    tabela_kasxilo("Sendanto-adreso", '', $_POST["de_adreso"]);
    tabela_kasxilo("ppanto-ID", '', $_POST['ID']);
    tabela_kasxilo("Nomo", '', $_POST['alkiu']);
    tabela_kasxilo("Retadreso", '', $_POST['retadreso']);
    tabela_kasxilo("Temo", '', $_POST['temo']);
    tabela_kasxilo("Enhavo", '', $_POST['teksto']);
    tabela_kasxilo("Prilaborita", '', $_POST['prilaborata']);
    echo "</table>";
}
switch ($_REQUEST['sendu']) {
    case 'elektu':
        // "select ID,nomo,subjekto,korpo from retposxto where ID=$elektata");
        $result = sql_faru(datumbazdemando(array("subjekto", "korpo"), "retposxto", "ID = '{$_POST['sxablonoID']}'"));
        $row = mysql_fetch_array($result, MYSQL_ASSOC);
        $alkiu = $_SESSION["partoprenanto"]->tuta_nomo();
        $teksto = transformu_tekston($row['korpo'], array('anto' => $_SESSION['partoprenanto']->datoj, 'eno' => $_SESSION['partopreno']->datoj, 'igxo' => $_SESSION['renkontigxo']->datoj, 'ktp' => array('entajpantonomo' => $_SESSION["kkren"]["entajpantonomo"])));
        echo '<form name="notoj" method="post" action="sendumesagxon.php">';
        eoecho("<p>Kiun mesag^on vi volas sendi al {$alkiu}?</p>");
        if ($_SESSION['partoprenanto']->datoj['retposxta_varbado'] == 'u') {
            $kodigo = "utf-8";
        } else {
            $kodigo = "x-metodo";
        }
        $teksto = eotransformado($teksto, $kodigo);
        $temo = eotransformado($row['subjekto'], $kodigo);
        $alkiu = eotransformado($alkiu, $kodigo);
        // TODO: eble aldonu pliajn retadresojn cxi tie.
        $sendantolisto = array($_SESSION['renkontigxo']->datoj['mallongigo'] . " - Administranto");
        $adresolisto = array($_SESSION['renkontigxo']->datoj['adminretadreso']);
        if ($miaPPID = $_SESSION['kkren']['partoprenanto_id'] and $miaPP = new Partoprenanto($miaPPID)) {
            if (trim($miaPP->tuta_nomo())) {
function kreu_duan_konfirmilan_tekston_unulingve($lingvo, $partoprenanto, $partopreno, $renkontigxo, $kodigo = 'utf-8')
{
    // TODO: meti en datumbazon aux konfiguron
    $speciala = array('informiloadreso' => 'http://ijk.esperanto.cz/dokumentoj/antaukongresilo_ijk2009.pdf', 'informilograndeco' => "809 KB", 'subskribo' => donu_tekston_lauxlingve('konf1-subskribo', $lingvo, $renkontigxo));
    if ($partopreno->datoj['agxoj'] < 18) {
        $speciala['sub18'] = true;
    }
    // ne dum IJK
    $speciala['sub18'] = false;
    $sxablono = file_get_contents($GLOBALS['prafix'] . '/sxablonoj/dua_konfirmilo_retposxto_' . $lingvo . '.txt');
    $datumoj = array('anto' => $partoprenanto->datoj, 'eno' => $partopreno->datoj, 'igxo' => $renkontigxo->datoj, 'speciala' => $speciala);
    if (DEBUG) {
        echo "<!-- " . var_export($datumoj, true) . "-->";
    }
    eliru_dosieron();
    return eotransformado(transformu_tekston($sxablono, $datumoj), $kodigo);
}
 /**
  * Aldonas unuopan akceptofolion por la menciita partoprenanto/partopreno
  * al la dosiero.
  * @param int $partoprenantoID identigilo de {@link Partoprenanto} (aŭ 0
  *                             por malplena folio)
  * @param int $partoprenoID identigilo de {@link Partopreno} (aŭ 0
  *                             por malplena folio)
  */
 function kreu_kvitancon($partoprenantoID, $partoprenoID)
 {
     $partopreno = new Partopreno($partoprenoID);
     $partoprenanto = new Partoprenanto($partoprenantoID);
     $ko = new Kotizokalkulilo($partoprenanto, $partopreno, $_SESSION["renkontigxo"], new Kotizosistemo($_SESSION["renkontigxo"]->datoj['kotizosistemo']));
     echo "<!-- ";
     var_export($partopreno);
     var_export($partoprenanto);
     echo "-->";
     $this->pdf->setFontSize(10);
     $this->pdf->text(27, 20, 'Persona nomo:');
     $this->pdf->text(27, 25, 'Familia nomo:');
     $this->pdf->text(130, 20, "Kvitanconumero:");
     $this->pdf->setFontSize(15);
     if ($partoprenanto->datoj['sxildnomo'] != '') {
         $kajo = " (" . $partoprenanto->datoj['sxildnomo'] . ")";
     } else {
         $kajo = "";
     }
     $this->pdf->text(53, 20, uni($partoprenanto->datoj['personanomo'] . $kajo));
     $this->pdf->text(53, 25, uni($partoprenanto->datoj['nomo']));
     $prefikso = implode("", explode(" ", $_SESSION['renkontigxo']->datoj['mallongigo']));
     $this->pdf->text(160, 20, $prefikso . "#" . $partoprenoID);
     $this->pdf->SetFont('', 'B', 20);
     $this->pdf->setY(38);
     $this->pdf->Cell(0, 10, "Kvitanco", 0, 1, 'C');
     $this->pdf->ln();
     $this->pdf->setFont('', '', 10);
     $datumoj = array("igxo" => $_SESSION['renkontigxo'], "anto" => $partoprenanto, "eno" => $partopreno, "pagoj" => array("sumo" => $ko->donu_informon('pagoSumo'), "valuto" => CXEFA_VALUTO));
     $sxablono = donu_tekston("kvitanco-enkonduko");
     $teksto = transformu_tekston($sxablono, $datumoj);
     $this->pdf->write(5, uni($teksto));
     $this->pdf->ln();
     $this->pdf->ln();
     // $this->metu_titolon("Kotizokalkulo");
     $ko->tabelu_kotizon(new PDFKotizoFormatilo($this->pdf, $this->lingvo, true, true));
     // TODO: stampo
     $this->pdf->setFontSize(10);
     $teksto2 = donu_tekston("kvitanco-elkonduko");
     $this->pdf->ln(8);
     $this->pdf->ln();
     $this->pdf->write(4.5, uni($teksto2));
     // TODO: eble tamen enmetu la informon, ke ni fajfis pri la resto?
     /*
     
     $this->pdf->setFontSize(12);
     $this->pdf->setY(257);
     // TODO: metu tuj antaŭ la kestojn
     
     $informoj = $ko->restas_pagenda_en_valutoj();
     
     if ($informoj['traktenda']) {
     	 if ($informoj['repagenda']) {
     	   $this->pdf->write(5, uni("Ni repagas al vi"));
     	 }
     	 else {
     	   $this->pdf->write(5, uni("Vi devos ankorau^ pagi al ni"));
     	 }
     	 foreach($informoj['listo'] AS $listero) {
     	   $this->pdf->write(5, uni(" au^ "));
     	   $this->pdf->setFont('', 'B');
     	   $this->pdf->write(5, uni(number_format($listero['vere_pagenda'], 2, ".", "") . " " . $listero['valuto']));
     	   $this->pdf->setFont('', '');
     	 }
     	 $this->pdf->write(5, ".");
     } else if ($informoj['ni_fajfas']) {
     	 $this->pdf->write(5, uni("La restanta mono estas tiom malmulte, ke ni " .
     							  "fajfas pri tio. Vi neniom plu devos pagi."));
     } else {
     	 $this->pdf->write(5, uni("Vi neniom plu devos pagi."));
     }
     */
 }