$_SESSION['partopreno']->skribu(); $_SESSION['partopreno'] = new Partopreno($_SESSION['partopreno']->datoj['ID']); } HtmlKapo(); $partoprenanto = $_SESSION["partoprenanto"]; // la persona pronomo (li aux sxi) $ri = $partoprenanto->personapronomo; $Ri = ucfirst($ri); eoecho("Ni nun akceptas <b>" . $partoprenanto->datoj[personanomo] . " " . $partoprenanto->datoj[nomo] . " </b>(" . $partoprenanto->datoj[ID] . ") al la <b>" . $_SESSION["renkontigxo"]->datoj[nomo] . "</b>"); // Demandendaxjoj ... eoecho("<h2>Demandendas:</h2>\n<UL>\n"); eoecho("<LI>C^u {$ri} s^ang^is personajn au^ partoprenajn datumojn sur la akceptofolio?"); eoecho("<br />\nSe jes,"); ligu("partrezultoj.php", "s^angu ilin"); eoecho(" en la datumbazo.</li>\n"); if (eltrovu_landokategorion($partoprenanto->datoj[lando]) != 'A') { eoecho("<LI>Eventuale kontrolu la log^landon.</LI>\n"); } if ($partopren->datoj['agxo'] <= 26) { eoecho("<li>Eventuale kontrolu la ag^on / naskig^daton. (" . $partopreno->datoj[agxo] . " / " . $partoprenanto->datoj[naskigxdato] . ")</li>\n"); } if ($partopreno->datoj['agxo'] < 18) { eoecho("<li>Kolektu la gepatran permeson (se g^i mankas donu faksnumeron de" . " la ejo kaj insistu ke {$ri} donos).</li>\n"); } // Krompago por ne-membroj echo "<li>\n"; if (deviga_membreco_tipo == 'landa' and $partoprenanto->datoj["lando"] == HEJMLANDO) { eoecho("{$Ri} log^as en " . renkontigxolando . ". C^u {$ri} jam estas membro de " . deviga_membreco_nomo . "?<br />\n"); $membrokontrolo = true; } else { if (deviga_membreco_tipo == 'monda') {
function Kotizo($partopreno, $partoprenanto, $renkontigxo) { if ($partopreno == null) { return; } //agxo je la komenco de la arangxo $agxo = kalkulu_agxon($partoprenanto->datoj['naskigxdato'], $renkontigxo->datoj['de']); // echo "AGXO: $agxo"; $this->agxkategorio = $this->kalkulu_agx_kategorio($agxo, $renkontigxo); $this->komento .= "agxkategorio = '" . $this->agxkategorio . "', "; //40 Euro mehr für über 40 jährige (nur 2003) if ($agxo >= 40.0 && $renkontigxo->datoj["ID"] == 3) { $this->kromtroagxa = 40; } // TODO: auch aus der DB ziehen. $this->landakategorio = eltrovu_landokategorion($partoprenanto->datoj[lando]); if (!$this->landakategorio) { // TODO: cxu eble pli bone A? $this->landakategorio = "C"; } // TODO: Cxu GROUP BY necesas? // "select sum(kvanto) from pagoj where dato>='".$renkontigxo->datoj[de]."' and partoprenoID='".$partopreno->datoj[ID]."' group by partoprenoID order by dato asc" // sumo de surlokaj pagoj (= pagoj, kiuj ne okazis antauxe) $row = mysql_fetch_row(sql_faru(datumbazdemando("SUM(kvanto)", "pagoj", array("dato >= '" . $renkontigxo->datoj[de] . "'", "partoprenoID = '" . $partopreno->datoj[ID] . "'"), "", array("group" => "partoprenoID", "order" => "dato ASC")))); if ($row) { $this->surlokapago = $row[0]; } //eltrovi la antauxpagon egalas: eltrovi la unuan pagon // TODO: Cxu vere? Cxu ne eblas plurfoje antauxpagi? // TODO: Cxu GROUP BY necesas? // "select sum(kvanto) from pagoj where dato<'".$renkontigxo->datoj[de]."' and partoprenoID='".$partopreno->datoj[ID]."' group by partoprenoID order by dato asc" $row = mysql_fetch_row(sql_faru(datumbazdemando("SUM(kvanto)", "pagoj", array("dato < '" . $renkontigxo->datoj["de"] . "'", "partoprenoID = '" . $partopreno->datoj["ID"] . "'"), "", array("group" => "partoprenoID", "order" => "dato ASC")))); if ($row) { $this->antauxpago = $row[0]; } // "select dato from pagoj where partoprenoID='".$partopreno->datoj[ID]."' order by dato asc limit 0,1" $row = mysql_fetch_row(sql_faru(datumbazdemando("dato", "pagoj", "partoprenoID = '" . $partopreno->datoj['ID'] . "'", "", array("order" => "dato ASC", "limit" => "0,1")))); if ($row) { $this->antauxpagdato = $row[0]; } //eltrovi la rabatsumon // "select sum(kvanto) from rabatoj where partoprenoID='".$partopreno->datoj[ID]."' group by partoprenoID" // TODO: Cxu GROUP BY necesas? $row = mysql_fetch_row(sql_faru(datumbazdemando("SUM(kvanto)", "rabatoj", "partoprenoID='" . $partopreno->datoj[ID] . "'", "", array("group" => "partoprenoID")))); if ($row) { $this->rabato = $row[0]; } if ($partopreno->datoj["KKRen"] == 'J') { $relevantadato = $renkontigxo->datoj["plejfrue"]; } else { if (!$partopreno->datoj["aligxkategoridato"] or $partopreno->datoj["aligxkategoridato"] == "0000-00-00") { if ($this->landakategorio[0] == "C") { $this->relevantadato = $partopreno->datoj["aligxdato"]; } else { if ($this->landakategorio[0] == "B" and $this->antauxpago >= 8) { // TODO: minimuma antauxpago el datumbazo $this->relevantadato = $this->antauxpagdato; } else { if ($this->landakategorio[0] == "A" and $this->antauxpago >= 28) { // TODO: minimuma antauxpago el datumbazo $this->relevantadato = $this->antauxpagdato; } else { // alia kategorio? $this->relevantadato = $renkontigxo->datoj["de"]; } } } } else { $this->relevantadato = $partopreno->datoj["aligxkategoridato"]; } } $this->aligxkategorio = $this->kalkulu_aligx_kategorion($this->relevantadato, $renkontigxo); $this->partoprentagoj = kalkulu_tagojn($partopreno->datoj[de], $partopreno->datoj[gxis]); $renkontigxotempo = kalkulu_tagojn($renkontigxo->datoj[de], $renkontigxo->datoj[gxis]); //$landarabato = kalkulu_landa_rabato($partoprenanto->datoj[lando]); if ($renkontigxo->datoj["ID"] < 4) { $rabato = 0.0; if ($partopreno->datoj[domotipo][0] != "M") { if ($this->landakategorio[0] == "B") { $rabato = 30.0; } else { if ($this->landakategorio[0] == "C") { $rabato = 40.0; } } } else { if ($partopreno->datoj[domotipo][0] == "M") { if ($this->landakategorio[0] == "B") { $rabato = 40.0; } else { if ($this->landakategorio[0] == "C") { $rabato = 50.0; } } } } $this->landarabato = $rabato; } //auch aus der DB!! $baza = $this->kutimaprezo($renkontigxo->datoj[ID], $this->agxkategorio, $this->aligxkategorio, $partopreno->datoj["domotipo"], $this->landakategorio); $this->bazahodiaux = $this->kutimaprezo($renkontigxo->datoj[ID], $this->agxkategorio, $this->kalkulu_aligx_kategorion(date("Y-m-d", time()), $renkontigxo), $partopreno->datoj[domotipo], $this->landakategorio); /* mi rekalkulas, por ke la kromefiko nuligxu. */ $this->kalkulu_aligx_kategorion($this->relevantadato, $renkontigxo); if ($renkontigxo->datoj["ID"] < 4) { $plej_alta = $this->plejaltaprezo($renkontigxo->datoj[ID], $this->agxkategorio, $partopreno->datoj[domotipo]); $parttempa = $plej_alta / $renkontigxo->datoj[parttemppartoprendivido] * $this->partoprentagoj; } else { $parttempa = $baza * $this->partoprentagoj / $renkontigxo->datoj["parttemppartoprendivido"]; } if ($this->partoprentagoj < $renkontigxotempo) { if ($renkontigxo->datoj["ID"] < 4) { //echo "Baza $baza parttempa $parttempa rabato:".$this->landarabato; if ($parttempa < $baza - $this->landarabato) { $baza = $parttempa; $this->landarabato = 0; // $kromsenantauxpago = 0; //parttemppartoprenantoj ne devas antauxpagi } //else $baza=$plej_alta; quasi $baza=$baza; //echo "Baza $baza parttempa $parttempa rabato:".$this->landarabato; } else { $baza = $parttempa; } } // se la parta_prezo estos pli pl la baza, k.e. junaj homoj kun 6 partoprentagoj ni prenos la bazprezon. $this->bazakotizo = $baza; //kalkulu_bazo($agxo,$kato,$domo,$landakategorio,$partoprentagoj,$this->antauxpago); // TODO: jaja, später aus der DB // if ($partopreno->datoj[dulita][0]=="J") $this->kromdulita=(double)20.00; //TODO: certigi, ke vere estas dulita cxambro $row = mysql_fetch_array(eltrovu_cxambrojn($partopreno->datoj[ID]), MYSQL_NUM); if ($row) { // "select litonombro,dulita from cxambroj where ID='".$row[0]."'" $row2 = mysql_fetch_array(sql_faru(datumbazdemando(array("litonombro", "dulita"), "cxambroj", "ID = '" . $row[0] . "'")), MYSQL_BOTH); $this->litoj = $row2[litonombro]; if ($row2[dulita] == 'J') { $this->litoj = 2; } //TODO: traduku: Simulierter Zweierzimmer bei Raumüberschuss. if ($this->litoj == '2') { $this->kromdulita = (double) 20.0; } if ($row2[litonombro] == '1') { $this->kromdulita = (double) 30.0; } //TODO: eventuell andere Zuzahlung für Einzelzimmer } else { // TODO: traduku: noch kein Zimmer zugewiesen - trotzdem dulita-krompago berechnen if ($partopreno->datoj['dulita'] == 'J') { $this->kromdulita = (double) 20.0; } } if ($renkontigxo->datoj['ID'] >= 7) { // ekde Würzburg nova invitilo-sistemo $invitdetaloj = $partopreno->sercxu_invitpeton(); if ($invitdetaloj and $invitdetaloj->datoj['invitletero_sendenda'] == 'j') { $this->krominvitilo = $agxo < 30 ? (double) 5 : (double) 10; } else { $this->krominvitilo = 0; } } else { if ($partopreno->datoj[invitletero][0] == 'J' and $partopreno->datoj[invitilosendata] != "0000-00-00") { if ($renkontigxo->datoj[ID] < 4 || $agxo < 30) { $this->krominvitilo = (double) 5; } else { $this->krominvitilo = (double) 10; } } else { $this->krominvitilo = 0.0; } } if ($partopreno->datoj[ekskursbileto] == 'J') { $this->kromekskurso = 7; } //auch aus der DB ziehen switch ($partopreno->datoj['surloka_membrokotizo']) { case 'j': case 'i': $this->krom_membro = $partopreno->datoj['membrokotizo']; break; case 'k': $this->krom_nemembro = $partopreno->datoj['membrokotizo']; break; } switch ($partopreno->datoj['tejo_membro_kontrolita']) { case 'i': $this->rabato_tejo = TEJO_RABATO; $this->kotizo_tejo = $partopreno->datoj['tejo_membro_kotizo']; break; case 'j': $this->rabato_tejo = TEJO_RABATO; $this->kotizo_tejo = 0.0; break; case '?': case 'n': $this->rabato_tejo = 0.0; $this->kotizo_tejo = 0.0; break; } $this->aliaj_krompagoj = $this->kromdulita + $this->krominvitilo + $this->kromekskurso + $this->kromtroagxa + $this->krom_surloka; $this->krompago = $this->aliaj_krompagoj + $this->kotizo_tejo + $this->krom_membro + $this->krom_nemembro; $this->cxiuj_rabatoj = $this->rabato + $this->rabato_tejo + $this->troagxasedrabato; $this->kotizo = $this->bazakotizo - $this->landarabato + $this->krompago - $this->cxiuj_rabatoj; $this->pagenda = $this->kotizo - $this->antauxpago - $this->surlokapago; // + Beachtung der Landeskategorien // Später auch mal aus der DB zu ziehen //return $baza; }
function landokategorio() { $kategorio = eltrovu_landokategorion($this->datoj['lando']); return $kategorio->datoj['nomo']; }
/** * 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; }
function landokategorio() { return eltrovu_landokategorion($this->datoj['lando']); }