/**
  * kreas nomŝildon.
  * $x, $y bazaj koordinatoj
  * $partoprenantoID - la identifikilo de la partoprenanto.
  * specialaj nomŝildoj:
  *  partoprenoID == -1: printu specialan nomŝildon,
  *             tiam partoprenantoID nomas la identifikilon
  *             en la nomŝildo-tabelo.
  *  partoprenoID == 0: printu malplenajn nomŝildojn.
  */
 function kreu_nomsxildon($x, $y, $partoprenantoID, $partoprenoID, $savu)
 {
     if ($partoprenoID == -1) {
         $dungito = new Speciala_Nomsxildo($partoprenantoID);
         echo "<!--";
         var_export($dungito);
         echo "-->";
         $this->kreu_nomsxildon_interne($x, $y, $dungito->datoj['titolo_esperante'], $dungito->datoj['nomo'], $dungito->datoj['funkcio_esperante'], 20, 0, 0);
         if ($savu == "J") {
             $dungito->datoj['havasNomsxildon'] = 'P';
             $dungito->skribu();
         }
     } else {
         if ($partoprenoID == 0) {
             $this->kreu_nomsxildon_interne($x, $y, "", "", "", 20, 0, 0);
         } else {
             $partopreno = new Partopreno($partoprenoID);
             $partoprenanto = new Partoprenanto($partoprenantoID);
             if ($savu == "J") {
                 $partopreno->datoj[havasNomsxildon] = 'P';
                 $partopreno->skribu();
             }
             $this->kreu_nomsxildon_interne($x, $y, $partoprenanto->datoj['sxildnomo'] ? $partoprenanto->datoj['sxildnomo'] : $partoprenanto->datoj['personanomo'], $partoprenanto->datoj['nomo'], $partoprenanto->datoj['sxildlando'] ? $partoprenanto->datoj['sxildlando'] : eltrovu_landon($partoprenanto->datoj['lando']), $partopreno->datoj['agxo'], $partopreno->datoj['de'], $partopreno->datoj['gxis']);
         }
     }
 }
/**
 * Montras por unu deziro A->B la detalojn
 * de A kaj B, kaj la statuson.
 */
function montru_kunlogxdezirdetalojn($deziro)
{
    $dezirant_eno = new Partopreno($deziro->datoj['partoprenoID']);
    $deziranto = new Partoprenanto($dezirant_eno->datoj['partoprenantoID']);
    $dezirat_eno = new Partopreno($deziro->datoj['kunKiuID']);
    $dezirato = new Partoprenanto($dezirat_eno->datoj['partoprenantoID']);
    eoecho("<h2>Kunlog^deziraj detaloj</h2>");
    eoecho("<table>\n" . "<tr><th /><th>deziranto</th><th>dezirato</th></tr>\n");
    kampoj("ID", array(donu_ligon("partrezultoj.php?partoprenidento=" . $dezirant_eno->datoj['ID'], $dezirant_eno->datoj['ID']), donu_ligon("partrezultoj.php?partoprenidento=" . $dezirat_eno->datoj['ID'], $dezirat_eno->datoj['ID'])));
    kampoj("nomo", array($deziranto->tuta_nomo(), $dezirato->tuta_nomo()));
    kampoj("domotipo", array($dezirant_eno->domotipo(), $dezirat_eno->domotipo()));
    kampoj("ag^o", array($dezirant_eno->datoj['agxo'], $dezirat_eno->datoj['agxo']));
    // testas, cxu seksoj kaj deziritaj cxambrotipoj harmonias.
    if ($deziranto->sekso != $dezirato->sekso and $dezirant_eno->datoj['cxambrotipo'] == 'u' and $dezirat_eno->datoj['cxambrotipo'] == 'u') {
        kampoj("sekso", array($deziranto->sekso => "averto", $dezirato->sekso => "averto"));
        kampoj("c^ambrotipo:", array($dezirant_eno->cxambrotipo() => "averto", $dezirat_eno->cxambrotipo() => "averto"));
    } else {
        if ($deziranto->sekso != $dezirato->sekso and $dezirant_eno->datoj['cxambrotipo'] == 'u') {
            kampoj("sekso", array($deziranto->sekso, $dezirato->sekso => "averto"));
            kampoj("c^ambrotipo:", array($dezirant_eno->cxambrotipo() => "averto", $dezirat_eno->cxambrotipo()));
        } else {
            if ($deziranto->sekso != $dezirato->sekso and $dezirat_eno->datoj['cxambrotipo'] == 'u') {
                kampoj("sekso", array($deziranto->sekso => "averto", $dezirato->sekso));
                kampoj("c^ambrotipo:", array($dezirant_eno->cxambrotipo(), $dezirat_eno->cxambrotipo() => "averto"));
            } else {
                kampoj("sekso", array($deziranto->sekso, $dezirato->sekso));
                kampoj("c^ambrotipo:", array($dezirant_eno->cxambrotipo(), $dezirat_eno->cxambrotipo()));
            }
        }
    }
    // se unu volas dulitan cxambron, tiam la alia ankaux volu.
    if ($dezirant_eno->datoj['dulita'] != $dezirat_eno->datoj['dulita']) {
        kampoj("dulita", array(jes_ne($dezirant_eno->datoj['dulita']) => "averto", jes_ne($dezirat_eno->datoj['dulita']) => "averto"));
    } else {
        kampoj("dulita c^.?", array(jes_ne($dezirant_eno->datoj['dulita']), jes_ne($dezirat_eno->datoj['dulita'])));
    }
    eoecho("</table>\n");
    $sql = datumbazdemando(array("ID"), "kunlogxdeziroj", array("partoprenoID = '" . $deziro->datoj['kunKiuID'] . "'", "kunKiuID = '" . $deziro->datoj['partoprenoID'] . "'"));
    $rez = sql_faru($sql);
    if ($linio = mysql_fetch_assoc($rez)) {
        $alia_deziro = new Kunlogxdeziro($linio['ID']);
        eoecho("<p>Estas ankau^ ");
        ligu("kunlogxado.php?kunlogxID=" . $linio['ID'], "kunlog^deziro en la inversa direkto");
        eoecho(", kies stato nun estas <em>" . $alia_deziro->stato() . "</em>");
    } else {
        eoecho("<p>Sed " . $dezirato->tuta_nomo() . " ne indikis, ke " . $dezirato->personapronomo . " volas log^i kun " . $deziranto->tuta_nomo() . ".</p>\n");
    }
    eoecho("<p>Aktuala stato de la kunlog^deziro: <em>" . $deziro->stato() . "</em>.</p>\n");
    echo "<form action='kunlogxado.php' method='POST'>\n";
    tenukasxe("kunlogxID", $deziro->datoj['ID']);
    butono("forvisxhu", "Forvis^u", "ago");
    butono("ne_eblas", "Ne eblas", "ago");
    butono("eblas", "Eblas", "ago");
    echo "</form>\n";
    eoecho("<p>C^iuj kunlog^deziroj de " . $deziranto->tuta_nomo() . ":</p>");
    montru_kunlogxdezirojn($dezirant_eno);
}
 function kreu_mangxkuponon($x, $y, $partoprenantoID, $partoprenoID, $savu, $vego)
 {
     $partopreno = new Partopreno($partoprenoID);
     $partoprenanto = new Partoprenanto($partoprenantoID);
     $this->pdf->setFontSize(15);
     $this->pdf->SetLineWidth(0.6);
     for ($i = 0; $i <= 6; $i++) {
         $this->pdf->rect($x + $i * 10, $y, 10, 24);
         $this->pdf->rect($x + $i * 10, $y + 94, 10, 24);
         $this->pdf->rect($x + 70, $y + 24 + $i * 10, 24, 10);
     }
     $this->pdf->rect($x, $y, 94, 118);
     $this->pdf->SetLineWidth(0.2);
     $this->pdf->rect($x, $y + 40, 53, 38);
     $this->pdf->text($x + 18, $y + 31, uni("Matenmang^o"));
     // TODO: eble prenu la germanajn nomojn el
     // TODO:  datumbazo aŭ konfigurdosiero
     $this->pdf->text($x + 22, $y + 38, "Frühstück");
     $this->pdf->text($x + 18, $y + 84, uni("Vespermang^o"));
     $this->pdf->text($x + 22, $y + 91, uni("Abendessen"));
     $this->pdf->image($GLOBALS['prafix'] . "/bildoj/tagmangxo.png", $x + 56, $y + 48, 6);
     $this->pdf->image($GLOBALS['prafix'] . "/bildoj/mittagessen.png", $x + 62, $y + 45, 6);
     // TODO: ne uzu bildojn, sed rekte generu la tekston
     //  (kaj ne de 27.12. ĝis 3.1., sed laŭ la renkontiĝo-datoj)
     $this->pdf->image($GLOBALS['prafix'] . "/bildoj/27.png", $x + 2, $y + 98, 5);
     for ($i = 28; $i <= 31; $i++) {
         $this->pdf->image($GLOBALS['prafix'] . "/bildoj/{$i}.png", $x + 12 + ($i - 28) * 10, $y + 98, 5);
         $this->pdf->image($GLOBALS['prafix'] . "/bildoj/{$i}.png", $x + 2 + ($i - 28) * 10, $y + 4, 5);
         $this->pdf->text($x + 74, $y + 32 + ($i - 28) * 10, "{$i}.12");
     }
     for ($i = 01; $i <= 02; $i++) {
         $this->pdf->image($GLOBALS['prafix'] . "/bildoj/{$i}.png", $x + 12 + ($i + 3) * 10, $y + 98, 5);
         $this->pdf->image($GLOBALS['prafix'] . "/bildoj/{$i}.png", $x + 2 + ($i + 3) * 10, $y + 4, 5);
         $this->pdf->text($x + 74, $y + 32 + ($i + 3) * 10, "0{$i}.01.");
     }
     $this->pdf->image($GLOBALS['prafix'] . "/bildoj/3.png", $x + 62, $y + 4, 5);
     $this->pdf->text($x + 74, $y + 32 + (3 + 3) * 10, "03.01.");
     $this->pdf->setFontSize(20);
     $i = 20;
     if ($partoprenanto->datoj['sxildnomo'] != '') {
         $nomo = uni($partoprenanto->datoj['sxildnomo']);
     } else {
         $nomo = uni($partoprenanto->datoj['personanomo']);
     }
     while ($this->pdf->GetStringWidth($nomo) > 47) {
         $i--;
         $this->pdf->setFontSize($i);
     }
     $this->pdf->text($x + 5, $y + 47, $nomo);
     while ($this->pdf->GetStringWidth($partoprenanto->datoj['nomo']) > 46) {
         $i--;
         $this->pdf->setFontSize($i);
     }
     $this->pdf->text($x + 5, $y + 56, uni($partoprenanto->datoj['nomo']));
     $this->pdf->SetFontSize(15);
     $this->pdf->line($x + 5, $y + 48, $x + 50, $y + 48);
     $this->pdf->line($x + 5, $y + 57, $x + 50, $y + 57);
     $this->pdf->setFontSize(16);
     if ($partopreno->datoj['vegetare'] == 'J' or $vego == 'J') {
         $this->pdf->text($x + 10, $y + 66, uni("Vegetarano"));
         $this->pdf->text($x + 14, $y + 73, uni("Vegetarier"));
     } else {
         if ($partopreno->datoj['vegetare'] == 'A' or $vego == 'A') {
             $this->pdf->text($x + 10, $y + 66, uni("Vegano"));
             $this->pdf->text($x + 14, $y + 73, uni("Veganer"));
         } else {
             $this->pdf->text($x + 10, $y + 66, uni("Viandmang^anto"));
             $this->pdf->text($x + 14, $y + 73, uni("Fleischesser"));
         }
     }
     $this->pdf->image($GLOBALS['prafix'] . "/bildoj/eo-echt.png", $x + 72, $y + 8, 20, 12);
     $this->pdf->image($GLOBALS['prafix'] . "/bildoj/eo-echt.png", $x + 72, $y + 100, 20, 12);
     if ($partopreno->datoj[partoprentipo] != 't' and $partoprenoID != '0') {
         $dauro = $_SESSION["renkontigxo"]->renkontigxonoktoj();
         $tagoj = $partopreno->partoprennoktoj();
         $ekas = kalkulu_tagojn($_SESSION["renkontigxo"]->datoj['de'], $partopreno->datoj['de']);
         for ($i = 0; $i < $ekas; $i++) {
             $this->pdf->SetLineWidth(0.4);
             //matenmanĝo
             $this->pdf->line($x + $i * 10, $y, $x + 10 + $i * 10, $y + 24);
             $this->pdf->line($x + 10 + $i * 10, $y, $x + 1 + $i * 10, $y + 24);
             //vespermanĝo
             $this->pdf->line($x + $i * 10, $y + 94, $x + 10 + $i * 10, $y + 24 + 94);
             $this->pdf->line($x + 10 + $i * 10, $y + 94, $x + 1 + $i * 10, $y + 24 + 94);
             //tagmanĝo
             $this->pdf->line($x + 70, $y + 24 + $i * 10, $x + 94, $y + 34 + $i * 10);
             $this->pdf->line($x + 94, $y + 24 + $i * 10, $x + 70, $y + 34 + $i * 10);
         }
         //la dekstra parto
         for ($i = $tagoj + $ekas; $i < $dauro; $i++) {
             $this->pdf->SetLineWidth(0.4);
             //matenmanĝo
             $this->pdf->line($x + $i * 10, $y, $x + 10 + $i * 10, $y + 24);
             $this->pdf->line($x + 10 + $i * 10, $y, $x + 1 + $i * 10, $y + 24);
             //vespermanĝo
             $this->pdf->line($x + $i * 10, $y + 94, $x + 10 + $i * 10, $y + 24 + 94);
             $this->pdf->line($x + 10 + $i * 10, $y + 94, $x + 1 + $i * 10, $y + 24 + 94);
             //tagmanĝo
             $this->pdf->line($x + 70, $y + 24 + $i * 10, $x + 94, $y + 34 + $i * 10);
             $this->pdf->line($x + 94, $y + 24 + $i * 10, $x + 70, $y + 34 + $i * 10);
         }
     }
     $this->pdf->setFontSize(13);
     $this->pdf->setXY($x + 71, $y + 2);
     $loko = $this->renkontigxo->datoj['loko'];
     // stranga hakaĵo: se la nomo de la loko estas tro longa
     // kaj finiĝas per "burg", enmetu "- ", por ebligi linirompadon.
     $lokolen = strlen($loko);
     if ($lokolen > 7 and substr($loko, $lokolen - 4) == 'burg') {
         $loko = substr($loko, 0, $lokolen - 4) . "- " . substr($loko, $lokolen - 4);
     }
     $this->pdf->multicell(22, 4, uni($this->renkontigxo->datoj['mallongigo'] . ' en ' . $loko), '', 'C');
     $this->pdf->setFontSize(9);
     $this->pdf->setXY($x + 71, $y + 15);
     $this->pdf->multicell(22, 4, uni($this->renkontigxo->datoj['de'] . " g^is\n" . $this->renkontigxo->datoj['gxis']), '', 'C');
     $this->pdf->setXY($x + 72, $y + 96);
     // TODO: prenu el konfiguro
     $this->pdf->multicell(20, 4, uni("Germana\n\nEsperanto-\n\nJunularo"), '', 'C');
     // TODO: text wirklich hochkant drucken (anstatt Bild)
     /*$pdf->text(10,20,uni("Tagmang^o"));
       $pdf->text(10,200,uni("Mittagessen"));
       $pdf->text(10,40,"27.12.");
         $pdf->text(10,60,"28.12.");
           $pdf->text(10,80,"29.12.");
             $pdf->text(10,100,"30.12.");
               $pdf->text(10,120,"31.12.");
                 $pdf->text(10,140,"01.01.");
                   $pdf->text(10,160,"02.01.");
                     $pdf->text(10,180,"03.01.");*/
     if ($savu == "J") {
         $partopreno->datoj['havasMangxkuponon'] = 'P';
         $partopreno->skribu();
     }
 }
/**
 * Sendas informmesaĝon, se la partoprenanto volas kontribui
 * al iu programpunkto.
 *
 * La mesaĝo estos sendota al la respondeculo pri distra programo.
 * Alikaze (se li ne proponis ion) ni faras nenion.
 *
 * @param Partoprenanto $partoprenanto
 * @param Partopreno    $partopreno
 * @param Renkontigxo   $renkontigxo
 */
function sendu_informmesagxon_pri_programero($partoprenanto, $partopreno, $renkontigxo, $sendanto)
{
    $tipoj = array('tema', 'distra', 'vespera', 'muzika', 'nokta');
    $proponoj = array();
    foreach ($tipoj as $tipo) {
        if ($partopreno->datoj[$tipo]) {
            $proponoj[$tipo] = $partopreno->datoj[$tipo];
        }
    }
    if (count($proponoj) == 0) {
        // neniu propono -> ni faras nenion nun.
        return;
    }
    $mesagxo = kreu_auxtomatan_mesagxon();
    $kodigo = 'x-metodo';
    // Rolf havas problemon pri unikodo, mi kredas.
    $mesagxo->ricevanto_estu($renkontigxo->datoj['distraretadreso'], "Programkunordigantoj");
    $mesagxo->kopion_al($renkontigxo->datoj['temaretadreso']);
    $mesagxo->temo_estu("Programproponoj de " . $partoprenanto->tuta_nomo() . " por " . $renkontigxo->datoj['mallongigo']);
    $teksto = "Saluton karaj Programkunordigantoj," . "\n" . "\nalig^is al IS la partoprenanto " . $partoprenanto->tuta_nomo() . "," . "\nkiu havas la jena" . (count($proponoj) == 1 ? 'n' : 'jn') . " programpropono" . (count($proponoj) == 1 ? 'n' : 'jn') . ":" . "\n";
    foreach ($proponoj as $tipo => $propono) {
        $teksto .= "\n --> Por la " . $tipo . " programo: " . "\n" . $propono . "\n";
    }
    $teksto .= "\n------------" . "\nKiel rimarkoj li donis:" . "\n" . $partopreno->datoj['rimarkoj'] . "\n------------" . "\nJen pliaj detaloj pri " . $partoprenanto->personapronomo . ":" . "\n" . $partoprenanto->gravaj_detaloj_tekste() . "\n" . $partopreno->konfirmilaj_detaloj();
    $mesagxo->auxtomata_teksto_estu($teksto, $kodigo, $sendanto, $renkontigxo);
    $mesagxo->eksendu();
}
            break;
        case '?':
            $partopreno->datoj['surloka_membrokotizo'] = '?';
            // TODO: ebligu pluiron
            break;
        case 'j':
        case 'i':
        case 'k':
            $partopreno->datoj['surloka_membrokotizo'] = $_POST['ago'];
            $partopreno->datoj['membrokotizo'] = $_POST['kotizo-' . $_POST['ago']];
            break;
        default:
            darf_nicht_sein("Nekonata ago-tipo: " . $_POST['ago']);
    }
    $partopreno->skribu();
    $partopreno = new Partopreno($partopreno->datoj['ID']);
}
if (necesas_lokaasocio_traktado()) {
    akceptada_instrukcio("Necesas s^ang^i la aktualan staton antau^" . " pluiri al la sekva pas^o. ");
} else {
    ligu_sekvan();
}
akceptado_kesto_fino();
if (!necesas_lokaasocio_traktado()) {
    eoecho("<p>Lau^ la opinio de la programo ne necesas " . deviga_membreco_nomo . "-traktado por tiu ulo. Vi" . " (kiel h**o) kompreneble tamen rajtas fari tion.</p>");
}
eoecho("<form action='akceptado-lokaasocio.php' method='POST' class='elekto-listo'>\n");
eoecho("<ul><li>" . "Foje kelkaj homoj nepre ig^u membroj de iuj organizoj. Je tiu" . " renkontig^o ");
if ($partoprenanto->datoj['GEJmembro'] == 'J') {
    $defauxlto = 'j';
    // jam estas membro kaj rekotizas
/*
 * Akceptado de partoprenantoj
 *
 *  Pasxo 7: Fino
 *
 * TODO!: pretigi, elprovi
 */
require_once 'iloj/iloj.php';
session_start();
malfermu_datumaro();
kontrolu_rajton("akcepti");
require_once 'iloj/iloj_akceptado.php';
$partoprenanto = $_SESSION["partoprenanto"];
// por repreni aktualajn datumojn, kaze ke iu alia intertempe printis
// nomsxildojn aux simile
$partopreno = new Partopreno($_SESSION['partopreno']->datoj['ID']);
// la persona pronomo (li aux sxi)
$ri = $partoprenanto->personapronomo;
$Ri = ucfirst($ri);
if ($_POST['sendu'] == 'akceptu') {
    // datumbazsxangxoj
    $partopreno->datoj['alvenstato'] = 'a';
    if ($partopreno->datoj['domotipo'] == 'J') {
        // cxambro-disdonado
        sxangxu_datumbazon("litonoktoj", array("rezervtipo" => "d"), array(), "partopreno");
        if ($partopreno->datoj['havasMangxkuponon'] == 'N') {
            $mankasKupono = true;
        } else {
            // havasMangxkuponon estas aux 'P' aux 'J', aux en iu nedefinita stato
            $partopreno->datoj['havasMangxkuponon'] = 'J';
        }
         }
     } else {
         eoecho("<p>ne estas notoj por forigi</p>");
     }
     eoecho("<p>Forigo de la partoprenanto #" . $_REQUEST['panto'] . " ...</p>");
     forigu_el_datumbazo("partoprenantoj", $_REQUEST['panto']);
     eoecho("<p>Finita.</p>");
     HtmlFino();
     exit;
 } else {
     if ($_REQUEST['kion'] == 'nenion') {
         break;
     } else {
         if (is_numeric($_REQUEST['kion'])) {
             // forigu unuopan partoprenon
             $ppeno = new Partopreno($_REQUEST['kion']);
             if ($ppeno->datoj['partoprenantoID'] != $_REQUEST['panto']) {
                 eoecho("<h2>Eraro!</h2>\n");
                 eoecho("<p>La partopreno #" . $ppeno->datoj['ID'] . " ne apartenas al la partoprenanto #" . $_REQUEST['panto'] . ", sed al #" . $ppeno->datoj['partoprenantoID'] . "!</p>\n");
                 HtmlFino();
                 exit;
             }
             $ppeno->montru_aligxo("sen bla");
             eoecho("<p>Forigo de Partopreno #" . $ppeno->datoj['ID'] . "...</p>");
             forigu_el_datumbazo("partoprenoj", $ppeno->datoj['ID']);
             eoecho("<p>Finita.</p>");
             ligu("partrezultoj.php?partoprenantoidento=" . $ppeno->datoj['partoprenantoID'], "Reen");
             HtmlFino();
             exit;
         }
     }
HtmlKapo("speciala");
kontrolu_rajton("retumi");
die("Vi ne rajtas uzi tiun dosieron. Se vi ne scias, kial, demandu Pauxlon.");
if ($_POST['sendu'] == 'sendu') {
    $komenco = $_POST['komenco'];
    $nombro = $_POST['nombro'];
    $unikodaj = jesne_al_boolean($_POST['unikodaj']);
    echo "<p>\n";
    $sql = datumbazdemando(array("anto.ID" => "partoprenantoID", "eno.ID" => "partoprenoID"), array("partoprenantoj" => "anto", "partoprenoj" => "eno"), array("anto.ID = eno.partoprenantoID"), "renkontigxoID", array("order" => "eno.ID ASC", "limit" => "{$komenco}, {$nombro}"));
    echo "<p>Demando: <code>" . $sql . "</code></p>";
    eoecho("dato: " . date("Y-m-d H:i:s") . "<br/>\n");
    $rezulto = sql_faru($sql);
    $i = $komenco;
    eoecho("<p> sendante " . ($unikodaj ? "unikodajn" : "neunikodajn") . " konfirmilojn.</p><p>");
    while ($linio = mysql_fetch_assoc($rezulto)) {
        $partopreno = new Partopreno($linio['partoprenoID']);
        $partoprenanto = new Partoprenanto($linio['partoprenantoID']);
        eoecho("<br/>" . $i . ": " . $partoprenanto->tuta_nomo() . " (#" . $partoprenanto->datoj['ID'] . "/" . $partopreno->datoj['ID'] . ")\n");
        $i++;
        if ($partopreno->datoj['alvenstato'] != 'v') {
            eoecho($partopreno->alvenstato());
        } else {
            if ($partopreno->datoj['2akonfirmilosendata'] and $partopreno->datoj['2akonfirmilosendata'] != "0000-00-00") {
                eoecho("(jam sendita antau^e)");
            } else {
                if ($partoprenanto->datoj['retposxto']) {
                    if (bezonas_unikodon($partoprenanto, $partopreno) == $unikodaj) {
                        if ($_POST['vere'] == 'jes') {
                            sendu_duan_informilon($partoprenanto, $partopreno, $_SESSION['renkontigxo'], "J");
                        } else {
                            eoecho("(nur elprovo)");
depend_malsxargxi_kaj_korekti($muzikabokso, $muzika);
// // eble ( ne, ne sencas - foje homoj ne scias sian UEA-kodon)
// depend_malsxargxi_kaj_korekti($tejo_membro_laudire, $ueakodo);
//HTMLsekurigi($rabatkialo);
if ($parto == "korektigi") {
    require "publik.php";
} else {
    protokolu();
    //Enmeti la datumojn en la datumaro
    $partoprenanto = new Partoprenanto();
    $partoprenanto->kreu();
    $partoprenanto->kopiu();
    //	  echo "<!-- partoprenanto: \n";
    //	  var_export($partoprenanto->datoj);
    //	  echo "-->\n";
    $partopreno = new Partopreno();
    $partopreno->kreu();
    $partopreno->kopiu();
    //	  echo "<!-- partopreno: \n";
    //	  var_export($partopreno->datoj);
    //	  echo "-->\n";
    //$partopreno->montru();
    if ($partoprentipo[0] == "t") {
        $partopreno->datoj[de] = $renkontigxo->datoj[de];
        $partopreno->datoj[gxis] = $renkontigxo->datoj[gxis];
    }
    if ($domotipo[0] == "J") {
        $partopreno->datoj[kunmangxas] = "JES";
    } else {
        $partopreno->datoj['kunmangxas'] = "NE";
    }
 * @subpackage aligxilo
 * @author Paul Ebermann
 * @version $Id$
 * @copyright 2006-2008 Paul Ebermann.
 *       Uzebla laŭ kondiĉoj de GNU Ĝenerala Publika Permesilo (GNU GPL)
 */
/**
 */
// define('DEBUG', true);
$skripto = "<script type='text/javascript' src='kotizokalkulo2.js'></script>";
simpla_aliĝilo_komenco(4, CH('aligxilo#titolo'), null, $skripto);
require_once $prafix . '/iloj/iloj.php';
$renkontigxo = new Renkontigxo(DEFAUXLTA_RENKONTIGXO);
$kotizosistemo = $renkontigxo->donu_kotizosistemon();
$partoprenanto = new Partoprenanto();
$partopreno = new Partopreno();
// legu la formular-datojn:
$partoprenanto->kopiu();
$partopreno->kopiu();
function parse_JMTdato_al_tagoj($teksto)
{
    $timestamp = strtotime($teksto);
    // al tagoj
    return $timestamp / (60 * 60 * 24);
}
$tagoj_ren = parse_JMTdato_al_tagoj($renkontigxo->datoj['de']);
$tagoj_nask = parse_JMTdato_al_tagoj($partoprenanto->datoj['naskigxdato']);
$partopreno->datoj['agxo'] = floor(($tagoj_ren - $tagoj_nask) / 365.25);
$partopreno->datoj['alvenstato'] = 'v';
$kotizobj_surloke = new Kotizokalkulilo($partoprenanto, $partopreno, $renkontigxo, $kotizosistemo);
debug_echo("<!-- surloke: " . var_export($kotizobj_surloke, true) . "-->");