oSystem=&$oSystem;
$this->msTPLPath=CURRDIR."apps/veranstaltung/anmeldungen/tpl/";
}
function gsRender($asParams)
{
if(is_array($asParams))
$sAction=strtolower(array_shift($asParams));
switch($sAction)
{
default:
return $this->msView();
case "bearbeiten":
return $this->msEdit($asParams);
}
}
function msEdit($asParams)
{
if($lAnmeldungsPK=$this->oSystem->oClientData->gvGetVariable("AnmeldungsPK",false))
{
$_SESSION["anmeldungen"]["edit"]["AnmeldungsPK"]=$lAnmeldungsPK;
}
$lAnmeldungsPK=$_SESSION["anmeldungen"]["edit"]["AnmeldungsPK"];
if($lAnmeldungsPK!="")
{
$this->mlAnmeldungsPK=$lAnmeldungsPK;
$oTPL=$this->oSystem->goGetTPLParser($this->msTPLPath."main.tpl");
$oAnmeldung=$this->oSystem->oDB->goGetRecord("tdAnmeldungen","AnmeldungPK=".$lAnmeldungsPK,"*,IF(Anrede='Herr','Herrn',Anrede) as Anrede,CONCAT(IF(Titel='','',Concat(Titel,' ')),IF(Vorname='','',Concat(Vorname,' ')),Nachname) as Nachname");
$oTPL->gbSetValArray($oAnmeldung);
$oTPL->gbSetValue("STATUS","");
if($oAnmeldung->DeleteDate!="")
$oTPL->gbSetValue("STATUS","Gelöscht");
$oTPL->gbSetValue("NEXT",$this->gsGetNextLink($oAnmeldung));
$oTPL->gbSetValue("PREV",$this->gsGetPrevLink($oAnmeldung));
$oTPL->gbSetValue("LIST",$this->gsGetListLink());
$oTPL->gbSetValue("menu",$this->gsGetMenu($asParams[0]==""?"AnmeldeDaten":$asParams[0]));
$oTPL->gbSetValue("content",$this->msGetContent($asParams));
return $oTPL->gsParse();
}
}
function msGetContent($asParams)
{
if(is_array($asParams))
$sAction=strtolower(array_shift($asParams));
switch($sAction)
{
default:
case "anmeldedaten":
return $this->msAnmeldeDaten($asParams);
case "aenderungen":
return $this->msAenderungen($asParams);
case "zahlungen":
return $this->msZahlungen($asParams);
case "historie":
return $this->msHist($asParams);
case "kommentare":
return $this->msComments($asParams);
case "delete":
return $this->msDelete($asParams);
}
}
function msDelete($asParams)
{
if($_SESSION["anmeldung.addsub.allowed"]==$_SESSION["loaded.randomkey"])
{
if($l=$this->oSystem->oClientData->gvGetVariable("AnmeldungPK",false))
{
$asUpdate["DeleteDate"]="NOW()";
$asUpdate["DeletedBy"]=$this->oSystem->oUser->oUserData->UserPK;
$this->oSystem->oDB->goUpdateArray("tdAnmeldungen",$asUpdate,"AnmeldungPK=".$this->oSystem->oDB->gsEscapeString($l));
return $this->oSystem->oDB->msQuery;
}
}
return "Nix Geschsen";
}
function addPGMPKT($lProgrammPK,$lAnmeldungPK,$lAnzahlNormal,$lAnzahlRabattiert)
{
if($oPGM=$this->goGetProgrammPriceInfo($lProgrammPK))
{
$asInsert["AnmeldungPK"]=$this->mlAnmeldungsPK;
$asInsert["VeranstaltungsPK"]=$oPGM->VeranstaltungsPK;
$asInsert["ProgrammPK"]=$lProgrammPK;
$asInsert["PreisNormal"]=$oPGM->PreisNormal;
$asInsert["KartenNormal"]=$lAnzahlNormal;
$asInsert["PreisRabattiert"]=$oPGM->PreisRabattiert;
$asInsert["KartenRabattiert"]=$lAnzahlRabattiert;
if($this->oSystem->oDB->goInsertArray("tdAnmeldungenProgrammPunkte",$asInsert))
{
return true;
}
}
return false;
}
function goGetProgrammPriceInfo($lProgrammPK)
{
$asPerson=$this->oSystem->oDB->gasGetRecord("tdAnmeldungen LEFT JOIN tdCountryList ON tdCountryList.StaatPK=tdAnmeldungen.StaatPK","AnmeldungPK=".$this->mlAnmeldungsPK);
$bACV=$asPerson["IsACV"]=="-1"?"-1":"0";
$o=$this->oSystem->oDB->goGetRecord("tdProgrammPunkte","ProgrammPK=".$lProgrammPK,"ProgrammPK,VeranstaltungsPK,
IF(GratisForACV=-1&&".$bACV."=-1,0,IFNULL(tdProgrammPunkte.PreisNormal,0)) as PreisNormal,
IF(GratisForACV=-1&&".$bACV."=-1,0,IFNULL(tdProgrammPunkte.PreisRabattiert,0)) as PreisRabattiert");
return $o;
}
function addTo()
{
$lAnmPGPK=$this->oSystem->oClientData->gvGetVariable("AnmPGPK",false);
if($_SESSION["anmeldung.addsub.allowed"]==$_SESSION["loaded.randomkey"])
{
if($oInfo=$this->oSystem->oDB->goGetRecord("tdAnmeldungenProgrammPunkte","AnmPGPK=".$lAnmPGPK." AND AnmeldungPK=".$this->mlAnmeldungsPK))
{
if($sType=$this->oSystem->oClientData->gvGetVariable("Type",false))
{
// jetzt programmPunkt laden
if($oPGM=$this->goGetProgrammPriceInfo($oInfo->ProgrammPK))
{
if(strtolower($sType=="normal"))
{
if($oPGM->PreisNormal==$oInfo->PreisNormal)
{
// einfach karten hochsetzen!
$asUpdate["KartenNormal"]="KartenNormal+1";
if($this->oSystem->oDB->goUpdateArray("tdAnmeldungenProgrammPunkte",$asUpdate,"AnmPGPK=".$oInfo->AnmPGPK))
{
$this->gbSetSumme($this->mlAnmeldungsPK);
$this->setHistory("Es wurde eine (normale) Karte hinzugefügt",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
else
{
// einfach Komplett hinzufügen hinzufügen
$this->addPGMPKT($oPGM->ProgrammPK,$this->mlAnmeldungsPK,1,0);
$this->gbSetSumme($this->mlAnmeldungsPK);
$this->oSystem->oDB->goUpdate("tdAnmeldungenProgrammPunkte","PriceChange=now()","AnmPGPK=".$lAnmPGPK);
echo mysql_error();
$this->setHistory("Es wurde eine (normale) Karte hinzugefügt (Preis!)",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
else
{
if($oPGM->PreisRabattiert==$oInfo->PreisRabattiert)
{
// einfach karten hochsetzen!
$asUpdate["KartenRabattiert"]="KartenRabattiert+1";
if($this->oSystem->oDB->goUpdateArray("tdAnmeldungenProgrammPunkte",$asUpdate,"AnmPGPK=".$oInfo->AnmPGPK))
{
$this->gbSetSumme($this->mlAnmeldungsPK);
$this->setHistory("Es wurde eine (normale) Karte hinzugefügt",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
else
{
$this->addPGMPKT($oPGM->ProgrammPK,$this->mlAnmeldungsPK,0,1);
$this->oSystem->oDB->goUpdate("tdAnmeldungenProgrammPunkte","PriceChange=now()","AnmPGPK=".$lAnmPGPK);
$this->gbSetSumme($this->mlAnmeldungsPK);
$this->setHistory("Es wurde eine (normale) Karte hinzugefügt (Preis!)",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
}
}
}
}
}
function dropAnmInfo()
{
$lAnmPGPK=$this->oSystem->oClientData->gvGetVariable("AnmPGPK",false);
if($_SESSION["anmeldung.addsub.allowed"]==$_SESSION["loaded.randomkey"])
{
if($oInfo=$this->oSystem->oDB->goGetRecord("tdAnmeldungenProgrammPunkte","AnmPGPK=".$this->oSystem->oDB->gsEscapeString($lAnmPGPK)." AND AnmeldungPK=".$this->mlAnmeldungsPK))
{
$asUpdate["DeleteDate"]="Now()";
$asUpdate["DeletedBy"]=$this->oSystem->oUser->oUserData->UserPK;
$this->oSystem->oDB->goUpdateArray("tdAnmeldungenProgrammPunkte",$asUpdate,"AnmPGPK=".$this->oSystem->oDB->gsEscapeString($lAnmPGPK));
$this->setHistory("Es wurden ".$oInfo->KartenNormal." zu ".$oInfo->PreisNormal."€ / ".$oInfo->KartenRabattiert." zu ".$oInfo->PreisRabattiert." € entfernt",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
}
function subFrom()
{
$lAnmPGPK=$this->oSystem->oClientData->gvGetVariable("AnmPGPK",false);
if($_SESSION["anmeldung.addsub.allowed"]==$_SESSION["loaded.randomkey"])
{
if($oInfo=$this->oSystem->oDB->goGetRecord("tdAnmeldungenProgrammPunkte","AnmPGPK=".$lAnmPGPK." AND AnmeldungPK=".$this->mlAnmeldungsPK))
{
if($sType=$this->oSystem->oClientData->gvGetVariable("Type",false))
{
// jetzt programmPunkt laden
if($oPGM=$this->goGetProgrammPriceInfo($oInfo->ProgrammPK))
{
if(strtolower($sType=="normal"))
{
// einfach karten hochsetzen!
$asUpdate["KartenNormal"]="KartenNormal-1";
if($this->oSystem->oDB->goUpdateArray("tdAnmeldungenProgrammPunkte",$asUpdate,"AnmPGPK=".$oInfo->AnmPGPK))
{
$this->gbSetSumme($this->mlAnmeldungsPK);
$this->setHistory("Es wurde eine (normale) Karte entfernt",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
else
{
$asUpdate["KartenRabattiert"]="KartenRabattiert-1";
if($this->oSystem->oDB->goUpdateArray("tdAnmeldungenProgrammPunkte",$asUpdate,"AnmPGPK=".$oInfo->AnmPGPK))
{
$this->gbSetSumme($this->mlAnmeldungsPK);
$this->setHistory("Es wurde eine (rabattierte) Karte entfernt",$lAnmPGPK,$oInfo->ProgrammPK);
}
}
}
}
}
}
}
function gbSetSumme($lAnmeldungPK)
{
$asPerson=$this->oSystem->oDB->gasGetRecord("tdAnmeldungen LEFT JOIN tdCountryList ON tdCountryList.StaatPK=tdAnmeldungen.StaatPK","AnmeldungPK=".$lAnmeldungPK);
$bACV=$asPerson["IsACV"]=="-1"?"-1":"0";
$sQuery="SELECT
tdProgrammPunkte.Name as PGMName,
IF(GratisForACV=-1&&".$bACV."=-1,0,IFNULL(tdProgrammPunkte.PreisNormal,0)) as XPreisNormal,
IF(GratisForACV=-1&&".$bACV."=-1,0,IFNULL(tdProgrammPunkte.PreisRabattiert,0)) as XPreisRabattiert,
IF(IFNULL(tdProgrammPunkte.PreisRabattiert,-1)=-1,'".WORT_FUER_GRATIS."',IF(GratisForACV=-1&&".$bACV."=-1,'".WORT_FUER_GRATIS_OECV."',CONCAT(REPLACE(tdProgrammPunkte.PreisRabattiert,'.',','),' €'))) as PreisRabattiertView,
IF(IFNULL(tdProgrammPunkte.PreisNormal,-1)=-1,'".WORT_FUER_GRATIS."', IF(GratisForACV=-1&&".$bACV."=-1,'".WORT_FUER_GRATIS_OECV."',CONCAT(REPLACE(tdProgrammPunkte.PreisNormal,'.',','),' €'))) as PreisNormalView,
tdAnmeldungenProgrammPunkte.KartenNormal,
tdAnmeldungenProgrammPunkte.KartenRabattiert,
tdAnmeldungenProgrammPunkte.PreisNormal,
tdAnmeldungenProgrammPunkte.PreisRabattiert,
DATE_FORMAT(tdProgrammPunkte.BeginnDatum,'%d.%m.%y') as BDate,
TIME_FORMAT(tdProgrammPunkte.BeginnUhrzeit,'%H:%i') as BTime,
tdProgrammPunktTypen.Name
FROM
tdAnmeldungenProgrammPunkte
LEFT JOIN
tdProgrammPunkte ON tdProgrammPunkte.ProgrammPK=tdAnmeldungenProgrammPunkte.ProgrammPK
LEFT JOIN
tdProgrammPunktTypen ON tdProgrammPunkte.TypePK=tdProgrammPunktTypen.TypePK
WHERE
AnmeldungPK=".$lAnmeldungPK." AND IFNULL(tdAnmeldungenProgrammPunkte.DeleteDate,-1)=-1";
if($oRes=$this->oSystem->oDB->goQuery($sQuery))
{
$asP=$oRes->gaaGetAllRecords();
foreach($asP as $asPGM)
{
$asPGM["Summe"]=$asPGM["KartenNormal"]*$asPGM["PreisNormal"]+$asPGM["KartenRabattiert"]*$asPGM["PreisRabattiert"];
$lSumme+=$asPGM["Summe"];
}
$this->oSystem->oDB->goUpdate("tdAnmeldungen","GesamtBetrag=".$this->oSystem->oDB->gsEscapeString($lSumme),"AnmeldungPK=".$lAnmeldungPK);
// unschön, aber bei 1 Ausführung/minute OK!
require_once(CURRDIR."fwreplace/anmeldung.pdf.php");
$oPDF=new CAPDF($this->oSystem);
$oPDF->msGetPDF($lAnmeldungPK);
}
else
echo mysql_error();
}
function setHistory($sText,$lAnmPGPK,$lProgrammPK)
{
$asInsert["HistText"]=$this->oSystem->oDB->gsEscapeString($sText);
$asInsert["AnmeldungPK"]=$this->mlAnmeldungsPK;
$asInsert["ChangedPK"]=$lAnmPGPK;
$asInsert["ProgrammPK"]=$lProgrammPK;
$asInsert["CreateDate"]="Now()";
$asInsert["Creator"]=$this->oSystem->oUser->oUserData->UserPK;
$this->oSystem->oDB->goInsertArray("tdAnmeldungenHistory",$asInsert);
}
function msAenderungen($asParams)
{
$asPerson=$this->oSystem->oDB->gasGetRecord("tdAnmeldungen LEFT JOIN tdCountryList ON tdCountryList.StaatPK=tdAnmeldungen.StaatPK","AnmeldungPK=".$this->mlAnmeldungsPK);
$bACV=$asPerson["IsACV"]=="-1"?"-1":"0";
$oTPL=$this->oSystem->goGetTPLParser($this->msTPLPath."aenderungen.tpl");
$oTPL->gbSetValue("ANPK",$this->mlAnmeldungsPK);
$oTPL->gbSetValue("DELETEURL",$this->oSystem->oSiteNavi->gsGetURL ($this->msClass,$this->__addAction(array("Bearbeiten","Delete"))));
$oTPL->gbSetValue("DOCURL",$this->oSystem->oSiteNavi->gsGetDOCURL("PDF",array("Anmeldung"),"document")."Anmeldung_".$this->mlAnmeldungsPK.".pdf");
$oTPL->gbSetValue("DROPURL",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction(array("Bearbeiten","Aenderungen","Drop"))));
$oTPL->gbSetValue("ADDURL",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction(array("Bearbeiten","Aenderungen","Add"))));
$oTPL->gbSetValue("SUBURL",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction(array("Bearbeiten","Aenderungen","Sub"))));
if(is_array($asParams)) $sAction=strtolower(array_shift($asParams));
switch($sAction)
{
case "add":
$this->addTo();
break;
case "sub":
$this->subFrom();
break;
case "drop":
$this->dropAnmInfo();
break;
}
$asData=$this->gasGetAnmeldeDaten($bACV);
$oTPL->gbSetBlock("programm",$asData["DATEN"]);
$oTPL->gbSetValue("GesamtBetragCalc",number_format($asData["SUMME"],2,",","."));
$_SESSION["anmeldung.addsub.allowed"]=$_SESSION["app.randomkey.loaded"];
return $oTPL->gsParse();
}
function msComments($asParams)
{
if(is_array($asParams)) $sAction=strtolower(array_shift($asParams));
if($sAction=="speichern")
{
if($this->oSystem->oClientData->gvGetVariable("FORMKEY",false)==$_SESSION["KommentarForm"]["KEY"]&&isset($_SESSION["KommentarForm"]["KEY"]))
{
unset($_SESSION["KommentarForm"]["KEY"]);
if($sComment=$this->oSystem->oClientData->gvGetVariable("__comment",false))
{
$asInsert["KommentarText"]=$this->oSystem->oDB->gsEscapeString(htmlentities($sComment));
$asInsert["AnmeldungPK"]=$this->mlAnmeldungsPK;
$asInsert["CreateDate"]="now()";
$asInsert["Creator"]=$this->oSystem->oUser->oUserData->UserPK;
$this->oSystem->oDB->goInsertArray("tdAnmeldungenKommentare",$asInsert);
}
}
}
$oTPL=$this->oSystem->goGetTPLParser($this->msTPLPath."comments.tpl");
$_SESSION["KommentarForm"]["KEY"]=md5(mt_rand());
$oTPL->gbSetValue("formKey",$_SESSION["KommentarForm"]["KEY"]);
$sQuery="SELECT CONCAT(tdUser.Anrede,' ',tdUser.Nachname) as Bearbeiter,replace(trim(KommentarText),'\\\n','
') as Kommentar,DATE_FORMAT(tdAnmeldungenKommentare. CreateDate,'%d.%m.%y %H:%i') as Datum FROM tdAnmeldungenKommentare LEFT JOIN tdUser ON tdAnmeldungenKommentare.Creator=tdUser.UserPK WHERE AnmeldungPK=".$this->mlAnmeldungsPK." ORDER BY tdAnmeldungenKommentare.CreateDate DESC";
$oTPL->gbSetValue("save",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction(array("Bearbeiten","Kommentare","Speichern"))));
if($oRes=$this->oSystem->oDB->goQuery($sQuery))
{
if($asC=$oRes->gaaGetAllRecords())
$oTPL->gbSetBlock("comments",$asC);
else
$oTPL->gbSetBlock("comments",array());
}
return $oTPL->gsParse();
}
function msZahlungen($asParams)
{
return "OK";
}
function msHist($asParams)
{
$sQuery="SELECT
tdAnmeldungenHistory.HistText,
DATE_FORMAT(tdAnmeldungenHistory.CreateDate,'%d.%m.%y %H:%i') as Datum,
tdUser.Nachname,
tdProgrammPunkte.Name as Programmpunkt
FROM tdAnmeldungenHistory,tdUser
LEFT JOIN
tdProgrammPunkte ON tdAnmeldungenHistory.ProgrammPK=tdProgrammPunkte.ProgrammPK
WHERE
tdAnmeldungenHistory.AnmeldungPK=".$this->mlAnmeldungsPK." AND
tdUser.UserPK=tdAnmeldungenHistory.Creator
ORDER BY
tdAnmeldungenHistory.CreateDate DESC";
if($oRes=$this->oSystem->oDB->goQuery($sQuery))
{
$asData=$oRes->gaaGetAllRecords();
$oTPL=$this->oSystem->goGetTPLParser($this->msTPLPath."history.tpl");
$oTPL->gbSetBlock("hist",$asData);
return $oTPL->gsParse();
}
return mysql_error();
}
function msAnmeldeDaten($asParams)
{
$oTPL=$this->oSystem->goGetTPLParser($this->msTPLPath."anmeldedaten.tpl");
$sQuery="SELECT
*,
if(tdAnmeldungen.Strasse='','n/a',tdAnmeldungen.Strasse) as Strasse,
if(tdAnmeldungen.PLZ='','n/a',tdAnmeldungen.PLZ) as PLZ,
if(tdAnmeldungen.Ort='','n/a',tdAnmeldungen.Ort) as Ort,
tdCountryList.Name as Staat,
tdVerbindungen.Strasse as VStrasse,
tdVerbindungen.PLZ as VPLZ,
tdVerbindungen.Ort as VOrt,
DATE_FORMAT(AnmeldeDatum,'%d.%m.%y %H:%i') as AnmeldeDatumShow,
CASE SourceType
WHEN 'internet' THEN CONCAT('Internet',', IP: ',FromIP)
WHEN 'fax' THEN 'Fax'
WHEN 'mail' THEN 'Post'
WHEN 'email' THEN 'E-Mail'
END as SourceTypeName,
IF(tdAnmeldungen.IsACV=-1,'true','false') as ACV,
IF(tdAnmeldungen.Fax='','n/a',tdAnmeldungen.Fax) as Fax,
IF(tdAnmeldungen.EMail='','n/a',tdAnmeldungen.EMail) as EMail,
IF(tdAnmeldungen.IsCV=-1,'Ja','Nein') as ShowCV,
IF(tdAnmeldungen.IsACV=-1,'Ja','Nein') as ShowACV,
IF(tdAnmeldungen.IsACV=-1 || IsCV=-1,IF(Anrede='Herr','Cartellbruder','Cartellschwester'),IF(Verbindung!='',IF(Anrede='Herr','Farbenbruder','Farbenschwester'),'FALSE')) as KLASS,
IF(IFNULL(tdAnmeldungen.VerbindungsPK,-1)=-1,Verbindung,tdVerbindungen.OrgName) as Verbindung
FROM
tdAnmeldungen
LEFT JOIN
tdVerbindungen ON tdVerbindungen.VerbindungsPK=tdAnmeldungen.VerbindungsPK
LEFT JOIN
tdCountryList ON tdCountryList.StaatPK=tdAnmeldungen.StaatPK
WHERE
AnmeldungPK=".$this->mlAnmeldungsPK;
$oAnmeldung=$this->oSystem->oDB->goGetRecord($sQuery);
$tACV=$oAnmeldung->ACV=="true"?-1:0;
$asButton["verbindung"]=true;
if($oAnmeldung->KLASS=="FALSE")
$asButton["verbindung"]=false;
$asButton["weitere"]=false;
$sQuery="SELECT tdVerbindungen.OrgName FROM tdAnmeldungenVerbindungen,tdVerbindungen WHERE tdAnmeldungenVerbindungen.AnmeldungPK=".$this->mlAnmeldungsPK." AND tdAnmeldungenVerbindungen.VerbindungsPK=tdVerbindungen.VerbindungsPK";
if($oRes=$this->oSystem->oDB->goQuery($sQuery))
{
if($oRes->glGetNumberOfRecords()>0)
{
$asButton["weitere"]=true;
$asD=$oRes->gaaGetAllRecords();
$oTPL->gbSetBlock("verbindungen",$asD);
}
}
$asData=$this->gasGetAnmeldeDaten($oAnmeldung->IsACV);
$oTPL->gbSetBlock("programm",$asData["DATEN"]);
$oTPL->gbSetValue("GesamtBetragCalc",number_format($asData["SUMME"],2,",","."));
$oTPL->gbSetButtons($asButton);
$oTPL->gbSetValArray($oAnmeldung);
return $oTPL->gsParse();
}
function gasGetAnmeldeDaten($tACV="0")
{
$sQuery="SELECT
tdAnmeldungenProgrammPunkte.AnmPGPK,
tdProgrammPunkte.Name,
date_format(CONCAT(tdProgrammPunkte.BeginnDatum,' ',tdProgrammPunkte.BeginnUhrzeit),'%d.%m.%y %H:%i') as TerminBeginn,
tdAnmeldungenProgrammPunkte.KartenNormal,
IF('".$tACV."'='-1'&& tdProgrammPunkte.GratisForACV=-1,'freeForACV','notfree') as IsFree,
IF(IFNULL(tdProgrammPunkte.PreisRabattiert,-1)=-1||IFNULL(tdAnmeldungenProgrammPunkte.PriceChange,-1)!=-1,' '
,CONCAT('')) as ShowAddRabattiert,
IF(IFNULL(tdProgrammPunkte.PreisRabattiert,-1)=-1 || tdAnmeldungenProgrammPunkte.KartenRabattiert=0 ||IFNULL(tdAnmeldungenProgrammPunkte.PriceChange,-1)!=-1,' '
,CONCAT('')) as ShowSubRabattiert,
IF(tdAnmeldungenProgrammPunkte.KartenNormal=0 ||IFNULL(tdAnmeldungenProgrammPunkte.PriceChange,-1)!=-1,' '
,CONCAT('')) as ShowSubNormal,
IF(IFNULL(tdAnmeldungenProgrammPunkte.PriceChange,-1)!=-1,' '
,CONCAT('')) as ShowAddNormal,
IF('".$tACV."'='-1'&& tdProgrammPunkte.GratisForACV=-1,
'".WORT_FUER_GRATIS_OECV."',
IF(IFNULL(tdProgrammPunkte.PreisNormal,-1)=-1,
'".WORT_FUER_GRATIS."',
CONCAT(tdAnmeldungenProgrammPunkte.PreisNormal,' €')
)
) as PreisNormal,
tdAnmeldungenProgrammPunkte.KartenRabattiert,
IF('".$tACV."'='-1'&& tdProgrammPunkte.GratisForACV=-1,
'".WORT_FUER_GRATIS_OECV."',
IF(IFNULL(tdProgrammPunkte.PreisRabattiert,-1)=-1,
'".WORT_FUER_NICHT_RABATTIERT."',
CONCAT(tdAnmeldungenProgrammPunkte.PreisRabattiert,' €')
)) as PreisRabattiert,
tdProgrammPunkte.PreisRabattiert as STDPreisRabattiert,
tdProgrammPunkte.PreisNormal as STDPreisNormal,
tdAnmeldungenProgrammPunkte.KartenNormal*tdAnmeldungenProgrammPunkte.PreisNormal
+
tdAnmeldungenProgrammPunkte.KartenRabattiert*tdAnmeldungenProgrammPunkte.PreisRabattiert
as Summe
FROM
tdAnmeldungenProgrammPunkte,
tdProgrammPunkte
WHERE
tdProgrammPunkte.ProgrammPK=tdAnmeldungenProgrammPunkte.ProgrammPK AND
tdAnmeldungenProgrammPunkte.AnmeldungPK=".$this->mlAnmeldungsPK." AND
IFNULL(tdAnmeldungenProgrammPunkte.DeleteDate,-1)=-1";
if($oRes=$this->oSystem->oDB->goQuery($sQuery))
{
$asData=$oRes->gaaGetAllRecords();
foreach($asData as $asPGM)
{
$lGesamt+=$asPGM["Summe"];
}
return array("DATEN"=>$asData,"SUMME"=>$lGesamt);
}
return false;
}
function gsGetMenu($sCurrent)
{
$oMenu=new CMiniMenu($this->oSystem,"Veranstaltung",$sCurrent);
$asData["auftraege"] =$oMenu->gsGetButton($this->__addAction(array("Bearbeiten","AnmeldeDaten")),"Anmeldedaten");
$asData["kommentare"] =$oMenu->gsGetButton($this->__addAction(array("Bearbeiten","Kommentare")),"Kommentare");
$asData["dienste"] =$oMenu->gsGetButton($this->__addAction(array("Bearbeiten","Zahlungen")),"Zahlungen");
$asData["aen"] =$oMenu->gsGetButton($this->__addAction(array("Bearbeiten","Aenderungen")),"Änderungen");
$asData["zahlungs"] =$oMenu->gsGetButton($this->__addAction(array("Bearbeiten","Historie")),"Historie");
return $oMenu->gsGetMenu($asData,100);
}
function gsGetNextLink($oAnmeldung)
{
$this->currentOrder="AnmeldeDatum";
$this->currentDir ="ASC";
$sCurrent=$this->currentOrder;
$sQuery="SELECT * FROM tdAnmeldungen WHERE ".$this->currentOrder.">'".$oAnmeldung->$sCurrent."' ORDER BY ".$this->currentOrder." ".$this->currentDir." LIMIT 0,1";
if($o=$this->oSystem->oDB->goGetRecord($sQuery))
{
// return $o->BuchungsKey;
return $this->oSystem->oUI->gsGetAnchor("",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction("Bearbeiten"))."?AnmeldungsPK=".$o->AnmeldungPK,$o->Anrede." ".$o->Titel." ".$o->Nachname." ".$o->BuchungsKey." >>");
}
return " ";
}
function gsGetListLink()
{
return $this->oSystem->oUI->gsGetAnchor("",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction()),"zur Liste");
}
function gsGetPrevLink($oAnmeldung)
{
$this->currentOrder="AnmeldeDatum";
$this->currentDir ="DESC";
$sCurrent=$this->currentOrder;
$sQuery="SELECT * FROM tdAnmeldungen WHERE ".$this->currentOrder."<'".$oAnmeldung->$sCurrent."' ORDER BY ".$this->currentOrder." ".$this->currentDir." LIMIT 0,1";
if($o=$this->oSystem->oDB->goGetRecord($sQuery))
{
//return $o->BuchungsKey;
return $this->oSystem->oUI->gsGetAnchor("",$this->oSystem->oSiteNavi->gsGetURL($this->msClass,$this->__addAction("Bearbeiten"))."?AnmeldungsPK=".$o->AnmeldungPK,"<< ".$o->Anrede." ".$o->Titel." ".$o->Nachname." ".$o->BuchungsKey);
}
return " ";
}
function msView()
{
if(is_array($asParams))
$sAction=strtolower(array_shift($asParams));
$bRefresh=$sAction=="ds"?true:false;
$oViewHandler=$this->oSystem->goGetDBViewSimple("anmeldungen",false,false,array("tdAnmeldungen.Nachname","tdAnmeldungen.Vorname"),4);
$sError="