function montru_elekto_liston($teksto_id, $pago_tipo, $butono_nomo, $kutima_teksto = '') { $antauxpaguloj = donu_tekston($teksto_id); $antauxpaguloj = explode("\r\n", $antauxpaguloj); echo "<BR><BLOCKQUOTE><p>"; $uloj = array(); foreach ($antauxpaguloj as $linio) { // echo "hallo:".$ulo."||"; if ($linio[0] == '#') { continue; } if ($linio[0] == '-') { echo "</p>\n<p>"; continue; } list($ulo, $teksto) = explode("|", $linio); $uloj[] = $ulo; if (!isset($teksto)) { $teksto = $kutima_teksto . $ulo; } entajpbutono("", $butono_nomo, $pago_tipo, $ulo, $ulo, $teksto . "<br />\n"); } if ($pago_tipo and !in_array($pago_tipo, $uloj)) { entajpbutono("<br/>", tipo, $pago_tipo, $pago_tipo, $pago_tipo, "<b>malnova:</b> " . $pago_tipo . "<br />\n"); } echo "</p></BLOCKQUOTE>"; }
/** * $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); }
/** * serĉas informojn uzatajn en ŝablona teksto el la tekstoj-tabelo * de la datumbazo. * * @param string $sxablono ĉi tie ni serĉas. * @param string $sxablona_prefikso * @param string $teksto_prefikso * * @return array de la formo $id => valoro, kun ĉiuj aperantaj * tekstoj. */ function trovu_necesajn_tekstojn($sxablono, $sxablona_prefikso, $teksto_prefikso) { $sxablono = "_" . $sxablono; $listo = array(); $pos = 0; $sercxprefikso = "{{" . $sxablona_prefikso; $preflen = strlen($sercxprefikso); while ($pos = strpos($sxablono, $sercxprefikso, $pos)) { $finpos = strpos($sxablono, "}}", $pos); $id = substr($sxablono, $pos + $preflen, $finpos - $pos - $preflen); if (!isset($listo[$id])) { $listo[$id] = donu_tekston($teksto_prefikso . $id); } $pos = $finpos + 2; } return $listo; }
function kreu_duan_konfirmilan_tekston($partoprenanto, $partopreno, $renkontigxo, $kodigo = 'utf-8') { $eo_teksto = kreu_duan_konfirmilan_tekston_unulingve('eo', $partoprenanto, $partopreno, $renkontigxo, $kodigo); $ambaux_teksto = donu_tekston("konf2_dua-informilo-teksto"); if ($partopreno->datoj['germanakonfirmilo'] == 'J') { $de_teksto = kreu_duan_konfirmilan_tekston_unulingve('de', $partoprenanto, $partopreno, $renkontigxo, $kodigo); return donu_tekston('konf1-germane-sube', $renkontigxo) . "\n" . $eo_teksto . "\n\n" . donu_tekston('konf1-jen-germana-teksto', $renkontigxo) . "\n" . $de_teksto . "\n\n" . $ambaux_teksto; } else { return $eo_teksto . "\n\n" . $ambaux_teksto; } }
/** * 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.")); } */ }
/** * TODO: dokumentado por faru_1ankonfirmilon * * ### uzata de partrezultoj.php, AligxiloDankon.php, * kaj sendu_konfirmilon(). ### */ function faru_1akonfirmilon($partoprenanto, $partopreno, $renkontigxo) { //$partoprenanto = new Partoprenanto($antoID); //$partopreno = new Partopreno($enoID); //$kotizo = new Kotizo($partopreno,$partoprenanto,$renkontigxo); $ek = ""; if ($partopreno->datoj["germanakonfirmilo"] == "J") { $ek .= utf8_encode("[ Deutsche Übersetzung am Ende. ]\n\n"); } $ek .= "Saluton kara " . eotransformado($partoprenanto->datoj[personanomo] . " " . $partoprenanto->datoj[nomo], "x-metodo"); $ek .= "\nni jxus ricevis vian aligxilon por la\n" . eotransformado($renkontigxo->datoj[nomo], "x-metodo") . " en " . eotransformado($renkontigxo->datoj[loko], "x-metodo") . ".\n"; if ($partopreno->datoj[retakonfirmilo] == "J") { $ek .= "\nVi indikis, ke vi deziras retan konfirmilon, do vi\n ricevas la jenan mesagxon kiel 1a konfirmilo. \nLa 2a konfirmilo sekvos en novembro.\n"; } $ek .= "\n"; //$ek .= "De ".$partoprenanto->datoj[retposxto]." venis la sekva aligxilo\n"; $ek .= "Aligxdato: " . $partopreno->datoj[aligxdato] . "\n"; $ek .= "\n"; $ek .= "---- Personaj datoj ----\n"; $ek .= "Personanomo: " . $partoprenanto->datoj[personanomo] . "\n"; $ek .= "Familianomo: " . $partoprenanto->datoj[nomo] . "\n"; $ek .= "Sekso: " . $partoprenanto->datoj[sekso] . "\n"; $ek .= "Naskigxdato: " . $partoprenanto->datoj[naskigxdato] . "\n"; // $ek .= "okupigxo: ".okupigxtipo($partoprenanto->datoj[okupigxo])." ".$partoprenanto->datoj[okupigxteksto]."\n"; if ($partoprenanto->datoj[lando] == '16') { $ek .= "Gejmembro: " . $partopreno->datoj[GEJmembro] . "\n"; } $ek .= "\n"; $ek .= "---- Adreso ----\n"; if ($partoprenanto->datoj[adresaldonajxo]) { $ek .= "adresaldonajxo:" . $partoprenanto->datoj[adresaldonajxo] . "\n"; } $ek .= "strato: " . $partoprenanto->datoj[strato] . "\n"; $ek .= "posxtkodo: " . $partoprenanto->datoj[posxtkodo] . "\n"; $ek .= "urbo: " . $partoprenanto->datoj[urbo] . "\n"; $ek .= "lando: " . eltrovu_landon($partoprenanto->datoj[lando]) . "\n"; $ek .= "\n---- Komunikado ----\n"; $ek .= "telefono: " . $partoprenanto->datoj[telefono] . "\n"; $ek .= "telefakso: " . $partoprenanto->datoj[telefakso] . "\n"; $ek .= "retposxtadreso: " . $partoprenanto->datoj[retposxto] . "\n"; $ek .= "\n---- Partoprendatumoj ----\n"; if ($partoprenanto->datoj['ueakodo']) { $ek .= "Via UEA-kodo estas " . $partoprenanto->datoj['ueakodo'] . ".\n"; } if ($partopreno->datoj['tejo_membro_laudire'] == 'j') { $ek .= "Vi indikis, ke vi en " . substr($renkontigxo->datoj['gxis'], 0, 4) . " estos individua membro de TEJO.\n" . "(Ni kontrolos tion - prefere sendu vian TEJO/UEA-kotizon\n" . " jam antaux la renkontigxo al UEA.)\n"; } if ($partopreno->datoj[komencanto][0] == "J") { $ek .= "Vi estas novulo / komencanto.\n"; } if ($partopreno->datoj[invitletero][0] == "J") { $ek .= "Vi deziras invitlereron por pasportnumero: " . $partopreno->datoj[pasportnumero] . ".\n"; } if ($partopreno->datoj["havas_asekuron"][0] == "J") { $ek .= "Vi havas asekuron pri malsano kaj kunportos la necesajn paperojn.\n"; } else { $ek .= "Vi ne havas tauxgan asekuron pri malsano.\n"; } if ($partopreno->datoj[partoprentipo][0] == "t") { $ek .= "Vi partoprenos tuttempe (de: " . $partopreno->datoj[de] . " gxis: " . $partopreno->datoj[gxis] . ")" . "\n"; } elseif ($partopreno->datoj[partoprentipo][0] == "p") { $ek .= "Vi partoprenos partatempe (de: " . $partopreno->datoj[de] . " gxis: " . $partopreno->datoj[gxis] . ")" . "\n"; } else { $ek .= "mankas partoprentipo?? io eraro okazis - bonvolu kontaktu nin" . "\n"; //TODO: MAcht das skript dann automatisch :)) } if ($partopreno->datoj[vegetare][0] == "J") { $ek .= "Vi aligxis kiel vegetarano kaj "; } else { if ($partopreno->datoj['vegetare'][0] == "N") { $ek .= "Vi aligxis kiel viandmangxanto kaj "; } else { if ($partopreno->datoj['vegetare'][0] == "A") { $ek .= "Vi aligxis kiel vegano kaj "; } else { $ek .= "Vi aligxis (pri mangxado) en nekonata formo\n" . "(" . $partopreno->datoj['vegetare'] . ")"; } } } if ($partopreno->datoj[domotipo][0] == "M") { $vosto .= "memzorgas "; if ($partopreno->datoj[kunmangxas][0] == "J") { $vosto .= "sed kunmangxas "; } } else { if ($partopreno->datoj[domotipo][0] == "J") { $vosto .= "junulargastejumas \n en (eble) "; if ($partopreno->datoj[dulita][0] == "J") { $vosto .= "dulita "; } if ($partopreno->datoj[cxambrotipo][0] == "u") { $vosto .= "unuseksa "; } if ($partopreno->datoj[cxambrotipo][0] == "g") { $vosto .= "gea " . ""; } if ($partopreno->datoj[cxambrotipo][0] == "n") { $vosto .= "negrava " . ""; } $vosto .= "cxambro "; if ($partopreno->datoj[kunkiu] != "") { $vosto .= "(eble) kun " . $partopreno->datoj[kunkiu] . "\n"; } } } $ek .= $vosto; if ($partopreno->datoj[tema]) { $ek .= "\n[X] kontribuos al la tema programo per: " . $partopreno->datoj[tema] . ""; } if ($partopreno->datoj[distra]) { $ek .= "\n[X] kontribuos al la distra programo per: " . $partopreno->datoj[distra] . ""; } if ($partopreno->datoj[vespera]) { $ek .= "\n[X] kontribuos al la vespera programo per: " . $partopreno->datoj[vespera] . ""; } if ($partopreno->datoj[muzika]) { $ek .= "\n[X] kontribuas al la muzika vespero: " . $partopreno->datoj[muzika] . ""; } /* if ($partopreno->datoj[rabato]!=0.00) { $ek .= "\n[X] deziras rabato de: ".$partopreno->datoj[rabato]." Euro, cxar \"".$partopreno->datoj[kialo]." \""; }*/ if ($partopreno->datoj[rimarkoj]) { $ek .= "\nkaj havas la jenajn rimarkojn:\n\n[" . $partopreno->datoj[rimarkoj] . "]\n"; } // Sonderregelung Deutsche Ü 27 if ($renkontigxo->datoj["mallongigo"] == "IS 2005" and $partoprenanto->datoj["lando"] == HEJMLANDO and strcmp($partoprenanto->datoj["naskigxdato"], "1978-12-27") < 0) { $ek .= "\nVi (je la komenco de IS) agxos 27 jarojn aux pli. Tial vi" . "\n nur povos partopreni, se vi kontribuos al la programo." . "\n Bonvolu sendi proponojn al la programrespondeculoj." . "\n Vidu http://www.esperanto.de/is/de/2005/adresoj#programo." . "\n"; } // TODO: generaligu antauxpagon (prenu el datumbazo?) $landkat = eltrovu_landokategorion($partoprenanto->datoj[lando]); switch ($landkat) { case "A": $antauxpago = "30"; break; case "B": $antauxpago = "10"; break; } if ($landkat != "C") { $ek .= "\n\nNe forgesu, ke via aligxo nur ekvalidas post alveno de\n minimuma antauxpago de {$antauxpago} euxroj cxe ni.\n"; $ek .= "Pri pageblecoj rigardu http://www.esperanto.de/is/eo/2006/kontoj\n\n"; } if ($partopreno->datoj[invitletero][0] == 'J') { $ek .= "\n" . donu_tekston("konf1-invitilo", $renkontigxo) . "\n"; } $ek .= "\nPor priparoli la ISon jam antaux la IS, plani kunveturadon, ktp." . "\nnun ekzistas aparta jahugrupo: is-en-germanio." . "\n" . "\nPor aligxi uzu" . "\n http://groups.yahoo.com/group/is-en-germanio/" . "\naux sendu retmesagxon al" . "\n is-en-germanio-subscribe@yahoogroups.com" . "\n"; $ek .= "\nNi atendos vin en la IS.\n\nJulia Noe en la nomo de la organiza teamo de la IS."; //$kotizo->montru_kotizon(1,$partopreno,$partoprenanto,$renkontigxo); //$ek .= $kotizo->mesagxo; if ($partopreno->datoj["germanakonfirmilo"] == "J") { $ek .= utf8_encode("\n\n ------- Deutsche Übersetzung ---------\n\n") . faru_1an_konfirmilon_germane($partoprenanto, $partopreno, $renkontigxo); } return $ek; }