/** * formatas la nomon de tiu regulo. * * depende tio, cxu la uzanto havas la rajton 'teknikumi', * ni metas ligon por redakti tiun objekton, aux simple nur * la nomon. * @return eostring */ function formatu_nomon() { if (rajtas("teknikumi")) { return donu_ligon("regulo.php?tipo=" . $this->tipo . "&id=" . $this->datoj['ID'], $this->datoj['nomo']); } else { return $this->datoj['nomo']; } }
/** * 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 listu_kondicxojn() { echo "<p>"; ligu('kondicxo.php', "Nova kondic^o"); echo "</p>\n"; eoecho("<table class='kondicxotabelo'>\n" . "<tr><th>ID</th><th>nomo</th><th>priskribo</th></tr>\n"); $kondlisto = listu_cxiujn_kondicxojn(); foreach ($kondlisto as $kondicxo) { eoecho("<tr><td>" . $kondicxo->datoj['ID'] . "</td><td>" . donu_ligon("kondicxo.php?id=" . $kondicxo->datoj['ID'], $kondicxo->datoj['nomo']) . "</td><td>" . $kondicxo->datoj['priskribo'] . "</td></tr>\n"); } echo "</table>"; }
/** * metas liston kun ligoj al alilingvaj versioj de la pagxo. * @param array $lingvoj listo de lingvoj. */ function aliĝilo_metu_simplan_lingvoliston($lingvoj) { if ($lingvoj) { echo " <ul id='lingvolisto-simpla'>\n"; if (count($lingvoj) < 2) { echo " <li><!-- dummy--></li>\n"; } foreach ($lingvoj as $li) { if ($li == $GLOBALS['lingvo']) { // echo "<li> " . $GLOBALS['lingvonomoj'][$li] . " </li>\n"; } else { echo " <li>" . donu_ligon($GLOBALS['pagxo_prefikso'] . $li . "/" . $GLOBALS['pagxo'], $GLOBALS['lingvonomoj'][$li]) . "</li>\n"; } } echo "</ul>\n"; } }
/** * Montras formularon por krei/ŝanĝi noton. * * @param Partoprenanto $partoprenanto la Partoprenanto, al kiu rilatas * la noto. * @param Noto $noto la noto-objekto ŝanĝenda. */ function montru_notoformularon($partoprenanto, $noto) { if ($noto->datoj['ID']) { eoecho("<h2>S^ang^o de noto</h2>\n"); } else { eoecho("<h2>Nova noto</h2>\n"); } echo "<form method='post' action='notoj.php'>\n"; echo "<table>\n"; tabela_kasxilo("Noto-ID", 'ID', $noto->datoj['ID']); tabela_kasxilo("Ppanto-ID", 'partoprenantoID', $partoprenanto->datoj['ID'], $partoprenanto->tuta_nomo() . " (" . donu_ligon("partrezultoj.php?partoprenantoidento=" . $partoprenanto->datoj['ID'], "#" . $partoprenanto->datoj['ID']) . ")"); tabel_entajpbutono("Tipo", 'tipo', $noto->datoj['tipo'], 'telefon', "telefona kontakto", '', true); tabel_entajpbutono("", 'tipo', $noto->datoj['tipo'], 'persone', "persona kontakto", '', true); tabel_entajpbutono("", 'tipo', $noto->datoj['tipo'], 'letere', "letera kontakto", '', true); tabel_entajpbutono("", 'tipo', $noto->datoj['tipo'], 'rete', "ret(pos^t)a kontakto", '', true); tabel_entajpbutono("", 'tipo', $noto->datoj['tipo'], 'rimarko', "alia rimarko", '', true); tabelentajpejo("dato/tempo", 'dato', $noto->datoj['dato'], 20); tabelentajpejo("noto de ...", 'kiu', $noto->datoj['kiu'], 45); tabelentajpejo("pri komunikado kun ...", 'kunKiu', $noto->datoj['kunKiu'], 45); eoecho("<tr><th>noto por:</th><td>"); $entajpantoj = $noto->listu_entajpantojn(); foreach ($entajpantoj as $id => $inf) { echo "<span style='display: inline-block;'>"; jes_ne_bokso('noto_por[' . $id . ']', $inf[1]); eoecho($inf[0] . "</span>\n "); } eoecho("</td></tr>"); tabelentajpejo("temo", 'subjekto', $noto->datoj['subjekto'], 45); granda_tabelentajpejo("teksto", 'enhavo', $noto->datoj['enhavo'], 57, 20); tabela_elektilo("prilaborita", 'prilaborata', array("j" => 'jes', '' => 'ne'), $noto->datoj['prilaborata'], " (se ne, remontru je ..."); tabelentajpejo("", 'revidu', $noto->datoj['revidu'], 20, ")"); echo "</table>\n<p>"; if ($noto->datoj['ID']) { butono("notu", "S^ang^u la noton!"); } else { butono("notu", "Nova noto!"); } ligu("sercxrezultoj.php?elekto=notojn&partoprenantoidento=" . $partoprenanto->datoj['ID'], "C^iuj notoj de " . $partoprenanto->tuta_nomo()); ligu("partrezultoj.php?partoprenantoidento=" . $partoprenanto->datoj['ID'], "Partoprenanto-detaloj"); echo "</p>\n</form>\n"; }
function montru_reguloformularon($regulo) { if ($regulo->datoj['ID']) { eoecho("<h1>Redakto de " . $regulo->regulovorto . " <em>" . $regulo->datoj['nomo'] . "</em></h1>"); } else { eoecho("<h1>Kreado de nova " . $regulo->regulovorto . "</h1>"); } echo "<form action='regulo.php?tipo=" . $regulo->tipo . "' method='POST'>\n"; echo "<table>\n"; tabela_kasxilo("ID", "ID", $regulo->datoj['ID']); tabelentajpejo("nomo", "nomo", $regulo->datoj['nomo'], 20); tabelentajpejo("Mallongigo", "mallongigo", $regulo->datoj['mallongigo'], 10); granda_tabelentajpejo("Priskribo", "priskribo", $regulo->datoj['priskribo'], 40, 4); tabela_kondicxoelektilo("Elektu c^i tie la g^ustan kondic^on por tiu " . "krompagotipo. (Se vi bezonas aliajn, aldonu per " . donu_ligon("kondicxo.php", "la kondic^oredaktilo") . ".)", $regulo->datoj['kondicxo']); tabela_elektilo("uzebla", "uzebla", array('j' => 'jes', 'n' => 'ne'), $regulo->datoj['uzebla'], "C^u montri en la g^enerala listo?"); tabela_elektilo("lau^nokte", 'lauxnokte', array('j' => 'lau^ nokto', 'n' => 'nur unufoje'), $regulo->datoj['lauxnokte'], "C^u lau^nokta krompago, c^u unufoja?"); echo "</table>\n<p>"; if ($regulo->datoj['ID']) { butono('sxangxu', "S^ang^u"); } else { butono('kreu', "Kreu"); } echo "</p>\n</form>"; }
/** * Montras la aliĝdatojn en HTML-tabelo */ function montru_aligxo($sen_bla = false) { // TODO: tiu funkcio ankaŭ ŝajnas multe tro longa kaj // nesuperrigardebla por mi ... $renkontigxo = new renkontigxo($this->datoj['renkontigxoID']); $partoprenanto = new partoprenanto($this->datoj['partoprenantoID']); if (!$sen_bla) { eoecho("partoprendatumoj por la <strong>" . $renkontigxo->datoj['nomo'] . "</strong> en " . $renkontigxo->datoj['loko'] . ":"); } echo "<table valign='top'>\n"; kampo("ID:", $this->datoj['ID']); if ($this->datoj['ordigoID'] != '0.000') { kampo("ordigo-ID:", $this->datoj['ordigoID']); } kampo("Lingva nivelo:", $this->nivelo()); $this->simpla_kampo("studento", array(array('j', '[X]', "estas studento"), array('n', '[_]', "ne estas studento"), array('?', '?', "ne klaras, c^u studento."))); $this->simpla_kampo1('havas_asekuron', "N", "[X]", "bezonas asekuron pri malsano"); /* TODO: indiko pri invitpeto-datoj */ $this->simpla_kampo1('retakonfirmilo', 'J', "[X]", "deziras retan konfirmilon"); $this->simpla_kampo1("germanakonfirmilo", "J", "[X]", "deziras germanlingvan konfirmilon"); $this->simpla_kampo1("litolajxo", "J", "[X]", "mendas litolaj^on"); $this->simpla_kampo("partoprentipo", array(array("t", "t", "partoprenos tuttempe (de: " . $this->datoj['de'] . " g^is: " . $this->datoj['gxis'] . ")"), array("p", "", "partoprenos partatempe (de: " . $this->datoj['de'] . " g^is: " . $this->datoj['gxis'] . ")")), array('?', "", "partoprenos tute ne?? io eraro okazis - bonvolu kontaktu nin")); $this->simpla_kampo("listo", array(array('J', "[X]", "volas aperi en la interreta listo."), array('N', "[_]", "ne volas aperi en la interreta listo.")), array('?', "?", 'interreta listo: "' . $this->datoj['listo'] . '"')); $this->simpla_kampo("intolisto", array(array('J', "[X]", "volas aperi en la adresaro."), array('N', "[_]", "ne volas aperi en la adresaro.")), array("?", "?", 'adresaro: "' . $this->datoj['listo'] . '"')); $this->simpla_kampo("vegetare", array(array("J", "[X]", "estas <em>vegetarano</em>"), array("A", "[X]", "estas <em>vegano</em>"), array("N", "[X]", "estas <em>viandmang^anto</em>")), array("", "?", "<em>nekonata mang^otipo</em>!")); if (deviga_membreco_tipo != 'nenia') { $this->simpla_kampo("GEJmembro", array(array('J', "[X]", "estas membro de " . deviga_membreco_nomo)), array('N', "[_]", "ne estas membro de " . deviga_membreco_nomo)); kampo($this->datoj['surloka_membrokotizo'], $this->membrokotizo()); } // TODO: pripensi, ĉu ankaŭ eblas fari simile kiel la antaŭaj. switch ($this->datoj['tejo_membro_laudire'] . $this->datoj['tejo_membro_kontrolita']) { case 'jj': case 'nj': kampo("[X]", "estas membro de TEJO (kontrolita)"); break; case 'jn': kampo("-", "ne estas membro de TEJO (kvankam " . $partoprenanto->personapronomo . " asertis, ke jes)"); break; case 'j?': kampo("[?]", "asertis esti membro de TEJO (ankorau^ ne kontrolita)"); break; case 'nn': case 'n?': kampo("-", "ne estas membro de TEJO"); break; case 'np': case 'jp': kampo("-", "ne estas membro de TEJO, sed tamen pagas ioman monon al TEJO/UEA"); break; case 'ni': case 'ji': kampo("[I]", "ig^as nova membro de TEJO surloke"); break; default: kampo("?", "eraro okazis pri la TEJO-membreco: " . "laudire=" . $this->datoj['tejo_membro_laudire'] . ", kontrolita=" . $this->datoj['tejo_membro_kontrolita']); } $this->simpla_kampo1("KKRen", "J", "[X]", "estas " . organizantoj_nomo . "-ano"); if (mangxotraktado == 'ligita') { $vosto = ""; $vosto .= "kaj "; $komenco = ""; if ($this->datoj['domotipo'] == "M") { $komenco .= "M"; $vosto .= "memzorgas"; if ($this->datoj['kunmangxas'] == "J") { $vosto .= ", sed kunmang^as (senpage)"; $komenco .= "J"; } else { if ($this->datoj['kunmangxas'] == 'K') { $vosto .= ", sed krompagas por kunmang^i"; $komenco .= "K"; } } } else { if ($this->datoj['domotipo'] == "J") { $vosto .= "junulargastejumas en "; $komenco .= "J"; if ($this->datoj['dulita'] == "J") { $komenco .= "2"; $vosto .= "(eble) dulita "; } else { if ($this->datoj['dulita'] == 'U') { $vosto .= "(eble) unulita "; $komenco .= "1"; } } if ($this->datoj['cxambrotipo'] == "u") { $vosto .= "unuseksa "; $komenco .= "u"; } if ($this->datoj['cxambrotipo'] == "g") { $vosto .= "gea "; $komenco .= "g"; } if ($this->datoj['cxambrotipo'] == "n") { $vosto .= "negrava "; } $vosto .= "c^ambro "; if (valoro($this->datoj['kunkiuID'])) { //$vosto .= "(".$this->datoj[kunkiuID].")";// Verlinken mit anderem Teilnehmer $kunlogxanto = new Partoprenanto($this->datoj['kunkiuID']); $komenco .= "+"; $vosto .= " (eble) kun <A href=partrezultoj.php?partoprenantoidento=" . $this->datoj['kunkiuID'] . " onClick=\"doSelect(" . $kunlogxanto->datoj['ID'] . ");\">" . $kunlogxanto->datoj['personanomo'] . " " . $kunlogxanto->datoj['nomo'] . "</A>"; } if (valoro($this->datoj['kunkiu'])) { $vosto .= " (" . $this->datoj['kunkiu'] . ")"; } if ($this->datoj['kunmangxas'] == "N") { $vosto .= ", sed ne kunmang^as"; $komenco .= "N"; } else { if ($this->datoj['kunmangxas'] == 'K') { $vosto .= ", sed ial tamen krompagas por kunmang^i"; $komenco .= "K"; } } } } kampo($komenco, $vosto); } else { if (mangxotraktado == 'libera') { $this->simpla_kampo("domotipo", array(array('J', "J", "log^as en junulargastejo"), array('M', 'M', "log^as memzorge (ekster niaj ejoj)"), array('A', "A", "log^as en amaslog^ejo"), array('T', "T", "log^as tendo")), array($this->datoj['domotipo'], "<em>nekonata domotipo</em>")); if ($this->datoj['kunKiuID'] != 0) { $kunlogxanto = new Partoprenanto($this->datoj['kunkiuID']); kampo("+", "volas log^i kun " . donu_ligon("partrezultoj.php?partoprenantoidento=" . $this->datoj['kunKiuID'], $kunlogxanto->tuta_nomo()) . " (" . $this->datoj['kunKiu'] . ')'); } else { if ($this->datoj['kunKiu']) { kampo("+", "volas log^i kun " . " (" . $this->datoj['kunKiu'] . ")"); } } $this->simpla_kampo("cxambrotipo", array(array('g', "g", "en ajna c^ambro"), array('u', "u", "en unuseksa c^ambro")), array($this->datoj['cxambrotipo'], "<em>nekonata cxambrotipo</em>")); // TODO: manĝo-mendo-listo // TODO: dulita $this->simpla_kampo('dulita', array(array('N', '3+', "en plurlita c^ambro"), array('J', '2', "en dulita c^ambro"), array('U', "1", "en unulita c^ambro")), array($this->datoj['dulita'], "<em>nekonata 'dulita'-tipo</em>")); } else { kampo("????", "nekonata mangxotraktado-konfiguro: " . mangxotraktado); } } $this->simpla_kampo1("ekskursbileto", "J", "[X]", "mendis bileton por la tutaga ekskurso"); foreach (array('tema', 'distra', 'vespera', 'muzika', 'nokta') as $tipo) { if ($this->datoj[$tipo]) { kampo("[X]", "kontribuos al la " . $tipo . " programo per: " . $this->datoj[$tipo]); } } if ($this->datoj['rimarkoj']) { kampo("rimarkoj:", $this->datoj['rimarkoj']); } if ($this->datoj['aligxdato']) { kampo("alveno de la alig^o:", $this->datoj['aligxdato']); } if ($this->datoj['malaligxdato'] != "0000-00-00") { kampo("alveno de la malalig^o:", $this->datoj['malaligxdato']); } kampo("1a konf.:", $this->datoj['1akonfirmilosendata']); kampo("2a konf.:", $this->datoj['2akonfirmilosendata']); echo "</table>\n"; }
/** * Metos HTML-ligilon. * * @param urlstring $kien la URI de la paĝo (povas esti relativa). * @param eostring $nomo la teksto de la ligilo (en eo-kodigo) * @param string $celo (nenecesa) se en alia ol la defaŭlta * kadro, donu ties nomon. * @param string|array $aldona_skripto aldonaj atributoj por * la '<a>'-Elemento. * @uses donu_ligon() */ function ligu($kien, $nomo, $celo = "", $aldona_skripto = "") { echo ' ' . donu_ligon($kien, $nomo, $celo, $aldona_skripto); }
/** * Kreas unu tabellinion. * @param array $datoj unu datumbaz-respondo-linio. */ function metu_tejomembro_tabellinion($datoj) { echo " <tr>\n"; $id = $datoj['ID']; $antoID = $datoj['partoprenantoID']; echo "<td>" . donu_ligon("partrezultoj.php?partoprenidento=" . $id, $id) . "</td><td>"; if ($GLOBALS['rajtas_sxangxi']) { tenukasxe('malnovaUEAkodo[' . $antoID . ']', $datoj['ueakodo']); simpla_entajpejo("", 'novaUEAkodo[' . $antoID . ']', $datoj['ueakodo'], 7); } else { echo $datoj['ueakodo']; } eoecho("</td><td>" . $datoj['personanomo'] . "</td><td>" . $datoj['nomo'] . "</td><td>" . $datoj['urbo'] . "</td><td>" . $datoj['landonomo'] . "</td><td>"); // TODO: formatado diversa, alikaze nur jes_ne(...). if (jesne_al_boolean($datoj['tejo_membro_laudire'])) { echo "jes"; } else { echo "ne"; } echo "</td><td>"; if ($GLOBALS['rajtas_sxangxi']) { tenukasxe("malnovaKontrolita[" . $id . "]", $datoj['tejo_membro_kontrolita']); simpla_entajpbutono('novaKontrolita[' . $id . ']', $datoj['tejo_membro_kontrolita'], 'j'); eoecho("<abbr title='estas membro'>jes</abbr>"); echo "</td><td>"; simpla_entajpbutono('novaKontrolita[' . $id . ']', $datoj['tejo_membro_kontrolita'], '?'); eoecho("<abbr title='ne kontrolita'>?</abbr>"); echo "</td><td>"; simpla_entajpbutono('novaKontrolita[' . $id . ']', $datoj['tejo_membro_kontrolita'], 'n'); eoecho("<abbr title='ne estas membro'>ne</abbr>"); echo "</td><td>"; simpla_entajpbutono('novaKontrolita[' . $id . ']', $datoj['tejo_membro_kontrolita'], 'i'); eoecho("<abbr title='ig^as surloke (nur metu tion dum akceptado!'>ig^as</abbr>"); } else { switch ($datoj['tejo_membro_kontrolita']) { case 'j': echo "jam antau^e"; break; case 'n': echo "ne membras"; break; case 'i': echo "ig^as surloke"; break; case '?': echo "ne kontrolita"; break; } } echo "</td>\n"; echo " </tr>\n"; }
eoecho("<p>Finita.</p>"); ligu("partrezultoj.php?partoprenantoidento=" . $ppeno->datoj['partoprenantoID'], "Reen"); HtmlFino(); exit; } } } break; default: // faru nenion. } sesio_aktualigu_laux_get(); $panto = $_SESSION['partoprenanto']; $panto->montru_aligxinto("sen bla"); eoecho("<p>Kion vi volas forigi?</p>"); echo "<form action='partoprenforigo.php?panto=" . $panto->datoj['ID'] . "' method='POST'>\n"; entajpbutono("<ul>\n<li>", 'kion', "", "partoprenanto", "partoprenanto", "La partoprenanton #" . $panto->datoj['ID'] . " (" . $panto->tuta_nomo() . ") kun c^iuj " . $panto->personapronomo . "aj partoprenoj kaj la sekvaj notoj:"); listu_notojn($panto->datoj['ID']); echo "</li>\n"; $sql = datumbazdemando(array("pp.ID" => "enoID", "r.ID" => "rID", "r.mallongigo", "pp.de", "pp.gxis"), array("partoprenoj" => "pp", "renkontigxo" => "r"), array("pp.renkontigxoID = r.ID", "pp.partoprenantoID = '" . $panto->datoj['ID'] . "'"), "", array("order" => "pp.ID")); $rez = sql_faru($sql); while ($linio = mysql_fetch_assoc($rez)) { entajpbutono("<li>", 'kion', "", $linio['enoID'], $linio['enoID'], "La partoprenon " . donu_ligon("partrezultoj.php?partoprenidento=" . $linio['enoID'], "#" . $linio['enoID'] . " en " . $linio['mallongigo']) . " (" . $linio['de'] . "—" . $linio['gxis'] . ") </li>\n"); } entajpbutono("<li>", 'kion', "", "nenion", "nenion", "Mi nenion volas forigi nun.</li>\n</ul>\n", "kutima"); eoecho("<p>Atentu, ne eblos restarigi iam forigitajn datumojn!</p>\n<p>"); butono('forigu', "Forigu!"); // TODO: eble uzu $_SESSION['sekvontapagxo'] ? ligu("partrezultoj.php?partoprenantoidento=" . $anto->datoj['ID'], "Reen"); echo "</p>\n</form>\n"; HtmlFino();
eoecho(" farita.</p>"); } function formatu_litonokton($linio) { return "c^. " . $linio['cxambronomo'] . "/" . $linio['nokto_de'] . "–" . $linio['nokto_gxis'] . "/" . $linio['rezervtipo']; } eoecho("<h2>Inters^ang^o de la c^ambroj de du partoprenantoj</h2>"); echo "<form action='cxambro_sxangxo.php' method='post'>"; echo "<table>"; $sql = datumbazdemando(array('nokto_de', 'nokto_gxis', 'rezervtipo', 'cx.nomo' => 'cxambronomo'), array('litonoktoj', 'cxambroj' => 'cx'), array("cxambro = cx.id"), array('partopreno'), array('order' => 'nokto_de, nokto_gxis')); $rez = sql_faru($sql); $mialisto = array(); while ($linio = mysql_fetch_assoc($rez)) { $mialisto[] = formatu_litonokton($linio); } tabela_kasxilo("Unua partopreno:", 'ppID', $_SESSION['partopreno']->datoj['ID'], donu_ligon("partrezultoj.php?partoprenidento=" . $_SESSION['partopreno']->datoj['ID'], "#" . $_SESSION['partopreno']->datoj['ID']) . " (" . $_SESSION['partoprenanto']->tuta_nomo() . ", " . implode(", ", $mialisto) . ") "); $cxam_sql = datumbazdemando(array("pn.ID" => 'partoprenoID', "p.nomo", "personanomo", "nokto_de", "nokto_gxis", "rezervtipo", 'cx.nomo' => 'cxambronomo'), array("litonoktoj" => "l", "partoprenoj" => "pn", "partoprenantoj" => "p", 'cxambroj' => 'cx'), array("l.partopreno = pn.ID", "pn.partoprenantoID = p.ID", "l.cxambro = cx.ID"), "renkontigxoID", array("order" => "personanomo, nomo")); $rez = sql_faru($cxam_sql); $templisto = array(); while ($linio = mysql_fetch_assoc($rez)) { // ni devas uzi iun prefikson por la sxlosiloj // por ke tabela_elektilo ne pensu, ke ili estas // nur simplaj array-indeksoj (= forjxetendaj). $sx = '#' . $linio['partoprenoID']; if (isset($templisto[$sx])) { $templisto[$sx]['cxambroj'][] = formatu_litonokton($linio); } else { $templisto[$sx] = array('bazaj' => $sx . " – " . $linio['personanomo'] . " " . $linio['nomo'], 'cxambroj' => array(formatu_litonokton($linio))); } } $listo = array();
function formatu_personkostotipon($tipo) { return donu_ligon("personkostotipo.php?id=" . $tipo->datoj['ID'], $tipo->datoj['nomo']); }
$rez = sql_faru($sql); HtmlKapo(); eoecho("<table>\n" . "<tr><th>p-enoID</th><th>nomo</th><th>nova kotizo</th>" . "<th>malnova kotizo</th><th>diferenco</th></tr>\n"); while ($linio = mysql_fetch_assoc($rez)) { $pprenanto = new Partoprenanto($linio['anto']); $ppreno = new Partopreno($linio['eno']); // malnova kotizosistemo $kot = new Kotizo($ppreno, $pprenanto, $_SESSION['renkontigxo']); // nova kotizosistemo $kotkal = new Kotizokalkulilo($pprenanto, $ppreno, $_SESSION['renkontigxo'], $kotizosistemo); $malnova = $kot->restas_pagenda(); $nova = $kotkal->restas_pagenda(); if (abs($nova - $malnova) < 1) { echo "<!-- " . $pprenanto->tuta_nomo() . "(" . $nova . "/" . $malnova . ") -->"; } else { eoecho("<tr><td>" . donu_ligon("partrezultoj.php?partoprenidento=" . $ppreno->datoj['ID'], $ppreno->datoj['ID']) . "</td><td>" . $pprenanto->tuta_nomo() . "</td><td>" . $nova . "</td><td>" . $malnova . "</td><td>" . ($nova - $malnova) . "</td></tr>"); } } echo "</table>"; HtmlFino(); } else { if ("lasta_sercxo" == $elekto) { // nova varianto de memligo (por la nova sercxilo-objekto) $sercxilo = $_SESSION['lasta_sercxo'][$_REQUEST['id']]; if ($_REQUEST['ordigo']) { $sercxilo->metu_ordigon($_REQUEST['ordigo'], $_REQUEST['direkto']); } $sercxilo->montru_rezulton_en_tipo($_REQUEST['tipo']); exit; } else { if ("memligo" == $elekto) {
/** * kreas listeron (<li>) pri tiu paŝo por la paŝo-navigilo. * * @param array $pasxo_dato array() kun informoj pri unu paŝo, kiel kreita * de necesaj_kaj_eblaj_pasxoj. * 'id' => identifigilo * 'nomo' => nomo * 'ebla' => ĉu eblas atingi tiun paŝon nun * 'necesa' => ĉu necesas trairi tiun paŝon * 'aktuala' => ĉu tiu estas la aktuala paŝo * 'sekva' => ĉu tiu estas la sekva paŝo * 'onta' => ĉu tiu estas unu el la ontaj paŝoj */ function formatu_pasxon($pasxo_datoj) { if (DEBUG) { echo "<!-- pasxo-datoj: " . var_export($pasxo_datoj, true) . "-->"; } extract($pasxo_datoj); if ($ebla) { $ligoteksto = donu_ligon("akceptado-" . $id . ".php", $nomo); } else { $ligoteksto = eotransform($nomo); } if ($aktuala) { $stilo = 'aktuala'; } else { if ($onta) { $stilo = 'onta'; } else { $stilo = 'inta'; } } if (!$necesa) { $ligoteksto = "(" . $ligoteksto . ")"; } return "<li class='akceptado-pasxo-" . $stilo . "'>" . $ligoteksto . "</li>"; }