diff --git a/include/komune_wettbewerb.class.php b/include/komune_wettbewerb.class.php index c5bac7648..472918826 100644 --- a/include/komune_wettbewerb.class.php +++ b/include/komune_wettbewerb.class.php @@ -34,412 +34,217 @@ * @return - kein Retourn des Konstruktors * */ -require_once(dirname(__FILE__).'/basis_db.class.php'); -class komune_wettbewerb extends basis_db +require_once(dirname(__FILE__).'/basis_db.class.php'); +class komune_wettbewerb extends basis_db { - public $result; - public $new=false; // boolean - - public $wbtyp_kurzbz; - public $wettbewerb_kurzbz; - - public $schemaSQL="kommune"; // string Datenbankschema - + public $new; + + public $wettbewerb; + public $wbtyp_kurzbz; + public $wettbewerb_kurzb; + + public $schemaSQL="kommune."; // string Datenbankschema + //-----Konstruktor - function __construct($wbtyp_kurzbz="",$wettbewerb_kurzbz="",$uid="",$team_kurzbz="") + function __construct($wbtyp_kurzbz="",$wettbewerb_kurzbz="") { - parent::__construct(); + parent::__construct(); $this->InitWettbewerb(); - $this->wbtyp_kurzbz=$wbtyp_kurzbz; - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; + + $this->setWbtyp_kurzbz($wbtyp_kurzbz); + $this->setWettbewerb_kurzbz($wettbewerb_kurzbz); } //-----Initialisierung-------------------------------------------------------------------------------------------- function InitWettbewerb() { - $this->new=false; - $this->errormsg=''; - $this->result=array(); + $this->setError(''); - $this->wbtyp_kurzbz=''; - $this->wettbewerb_kurzbz=''; - + $this->setWettbewerb(''); + $this->setWbtyp_kurzbz(''); + $this->setWettbewerb_kurzbz(''); } - - - -//------------------------------------------------------------------------------------------------- -// ------------------------ Wettbewerbstypen -//------------------------------------------------------------------------------------------------- - -//------------------------------------------------------------------------------------------------- - /** - * Speichert bzw. Aendert eine Veranstaltungskategorie - * @return true wenn ok, false im Fehlerfall - */ - public function saveWettbewerbTyp() - { - // Initialisieren - $this->errormsg=''; - $qry=""; - - $fildsList=''; - $fildsValue=''; - - - if (empty($this->wbtyp_kurzbz) || $this->wbtyp_kurzbz==null ) - { - $this->errormsg='Wettbewerb - Typ fehlt!'; - return false; - } - - if (empty($this->bezeichnung)) - { - $this->errormsg='Wettbewerbstyp - Bezeichnung fehlt!'; - return false; - } - - if($this->new) - { - - $fildsList.='wbtyp_kurzbz,'; - $fildsList.='bezeichnung,'; - $fildsList.='farbe'; - - $fildsValue.="'".addslashes($this->wbtyp_kurzbz)."',"; - $fildsValue.="'".addslashes($this->bezeichnung)."',"; - $fildsValue.="'".addslashes($this->farbe)."'"; - - $qry=" insert into ".$this->schemaSQL.".tbl_wettbewerbtyp (".$fildsList.") values (".$fildsValue."); "; - } - else - { - $fildsValue.=(!empty($fildsValue)?',':'')."bezeichnung='".addslashes($this->bezeichnung)."'"; - $fildsValue.=(!empty($fildsValue)?',':'')."farbe='".addslashes($this->farbe)."'"; - - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbtyp set "; - $qry.=$fildsValue; - $qry.=" where wbtyp_kurzbz='".addslashes($this->wbtyp_kurzbz)."' "; - } - if($resurce=$this->db_query($qry)) - return $resurce; - else - { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim speichern des Datensatzes '; - return false; - } - } - -//------------------------------------------------------------------------------------------------- - /** - * Loescht eine Veranstaltungskategorie - * @return true wenn ok, false im Fehlerfall - */ - public function deleteWettbewerbTyp($wbtyp_kurzbz="") +//-----NewRecord-------------------------------------------------------------------------------------------- + function getNewRecord() { - - // Initialisieren - $qry=""; - $this->errormsg=''; - - // Parameter - if (!empty($wbtyp_kurzbz)) - $this->wbtyp_kurzbz=$wbtyp_kurzbz; - - // Plausib - if (empty($this->wbtyp_kurzbz) || $this->wbtyp_kurzbz==null ) - { - $this->errormsg='Wettbewerb - Typ fehlt!'; - return false; - } - - // Abfrage - $qry.=" BEGIN; "; - $qry.=" delete from ".$this->schemaSQL.".tbl_wettbewerb "; - if (is_array($this->wbtyp_kurzbz)) - $qry.=" where wbtyp_kurzbz in ('".implode("','",$this->wbtyp_kurzbz)."') "; - else - $qry.=" where wbtyp_kurzbz='".addslashes($this->wbtyp_kurzbz)."' "; - $qry.="; "; - - $qry.=" delete from ".$this->schemaSQL.".tbl_wettbewerbtyp "; - if (is_array($this->wbtyp_kurzbz)) - $qry.=" where wbtyp_kurzbz in ('".implode("','",$this->wbtyp_kurzbz)."') "; - else - $qry.=" where wbtyp_kurzbz='".addslashes($this->wbtyp_kurzbz)."' "; - - if($this->db_query($qry)) - { - if($this->db_query('COMMIT;')) - return true; - else - return false; - } - else - { - $this->db_query('ROLLBACK;'); - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim Veranstaltungskategorie löschen'; - return false; - } - } - - function loadWettbewerbTyp($wbtyp_kurzbz=null) + return $this->new; + } + function setNewRecord($switch) { - // Init - $this->result=array(); - $this->errormsg=''; - if (!is_null($wbtyp_kurzbz)) - $this->wbtyp_kurzbz=$wbtyp_kurzbz; + $this->new=$switch; + } +//-----Error-------------------------------------------------------------------------------------------- + function getError() + { + return $this->errormsg; + } + function setError($err) + { + $this->errormsg=$err; + } +//-----schemaSQL-------------------------------------------------------------------------------------------- + function getSchemaSQL() + { + return $this->schemaSQL; + } + function setSchemaSQL($schemaSQL) + { + $this->schemaSQL=$schemaSQL; + } +//-----wbtyp_kurzbz-------------------------------------------------------------------------------------------- + function getWettbewerb() + { + return $this->wettbewerb; + } + function setWettbewerb($wettbewerb) + { + $this->wettbewerb=$wettbewerb; + } +//-----wbtyp_kurzbz-------------------------------------------------------------------------------------------- + function getWbtyp_kurzbz() + { + return $this->wbtyp_kurzbz; + } + function setWbtyp_kurzbz($wbtyp_kurzbz) + { + $this->wbtyp_kurzbz=$wbtyp_kurzbz; + } +//-----wettbewerb_kurzbz-------------------------------------------------------------------------------------------- + function getWettbewerb_kurzbz() + { + return $this->wettbewerb_kurzbz; + } + function setWettbewerb_kurzbz($wettbewerb_kurzbz="") + { + $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; + } +//------------------------------------------------------------------------------------------------- + function loadWettbewerbTyp() + { + + $cSchemaSQL=$this->getSchemaSQL(); + $tmpwbtyp_kurzbz=$this->getWbtyp_kurzbz(); $qry=""; - $qry.="SELECT * FROM ".$this->schemaSQL.".tbl_wettbewerbtyp "; - $qry.=" WHERE ".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz>'' "; + $qry.="SELECT * FROM ".$cSchemaSQL."tbl_wettbewerbtyp "; + $qry.=" WHERE ".$cSchemaSQL."tbl_wettbewerbtyp.wbtyp_kurzbz>'' "; // Suche nach einem einzigen Wetttbewerbstypen wbtyp_kurzbz - if ( !empty($this->wettbewerb_kurzbz) && !is_array($this->wettbewerb_kurzbz) ) - { - $qry.=" AND UPPER(".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz)=UPPER('".addslashes($this->wettbewerb_kurzbz)."') "; + if (!is_array($tmpwbtyp_kurzbz) && !empty($tmpwbtyp_kurzbz) ) + { + $qry.=" AND UPPER(".$cSchemaSQL."tbl_wettbewerbtyp.wbtyp_kurzbz)=UPPER('".$tmpwbtyp_kurzbz."') "; } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) + elseif (is_array($tmpwbtyp_kurzbz) && count($tmpwbtyp_kurzbz)>0 ) { - $qry.=" AND UPPER(".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz) in ('".strtoupper(implode("','",$this->wettbewerb_kurzbz))."') "; - } - $qry.=" order by wbtyp_kurzbz "; + if (isset($tmpwbtyp_kurzbz[0]['wbtyp_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $tmpwbtyp_kurzbzE=array(); + for ($indZEILE=0;$indZEILEdb_query($qry)) { - while($row = $this->db_fetch_object()) + $rows=array(); + while($row = $this->db_fetch_array()) { - $this->result[]=$row; + $rows[]=$row; } - return $this->result; - } + $this->setWettbewerb($rows); + } else { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen der Wettbewerbstypen'; - return false; - } - return false; - } -//------------------------------------------------------------------------------------------------- -// ------------------------ Wettbewerbe -//------------------------------------------------------------------------------------------------- -//------------------------------------------------------------------------------------------------- - /** - * Speichert bzw. Aendert eine Veranstaltungskategorie - * @return true wenn ok, false im Fehlerfall - */ - public function saveWettbewerb() - { - // Initialisieren - $this->errormsg=''; - $qry=""; - - $fildsList=''; - $fildsValue=''; - - - // Plausib - if (empty($this->wbtyp_kurzbz) || $this->wbtyp_kurzbz==null ) - { - $this->errormsg='Wettbewerb - Type fehlt!'; - return false; - } - if (empty($this->wettbewerb_kurzbz) || $this->wettbewerb_kurzbz==null ) - { - $this->errormsg='Wettbewerb - Kurzbz. fehlt!'; + $this->setError($this->db_last_error()); + return false; } + return $this->getWettbewerb(); + } - if (empty($this->regeln)) - { - $this->errormsg='Wettbewerb - Regeln fehlen!'; - return false; - } - - if (empty($this->forderungstage) || is_null($this->forderungstage) ) - $this->forderungstage=7; - - if (!is_numeric($this->forderungstage) ) - { - $this->errormsg='Forderungstage nur Nummerisch'; - return false; - } - - - if (empty($this->teamgroesse) || is_null($this->teamgroesse)) - $this->teamgroesse=1; - - if (!is_numeric($this->teamgroesse) ) - { - $this->errormsg='Forderungstage nur Nummerisch'; - return false; - } - - if($this->new) - { - - $fildsList.='wbtyp_kurzbz,'; - $fildsList.='wettbewerb_kurzbz,'; - $fildsList.='regeln,'; - $fildsList.='forderungstage,'; - - $fildsList.='teamgroesse,'; - $fildsList.='uid,'; - $fildsList.='icon'; - - $fildsValue.="'".addslashes($this->wbtyp_kurzbz)."',"; - $fildsValue.="'".addslashes($this->wettbewerb_kurzbz)."',"; - - $fildsValue.="'".addslashes($this->regeln)."',"; - $fildsValue.="".addslashes($this->forderungstage).","; - - $fildsValue.="".addslashes($this->teamgroesse).","; - $fildsValue.="'".addslashes($this->uid)."',"; - - $fildsValue.="'".addslashes($this->icon)."'"; - - $qry=" insert into ".$this->schemaSQL.".tbl_wettbewerb (".$fildsList.") values (".$fildsValue."); "; - } - else - { - $fildsValue.=(!empty($fildsValue)?',':'')."regeln='".addslashes($this->regeln)."'"; - $fildsValue.=(!empty($fildsValue)?',':'')."forderungstage=".addslashes($this->forderungstage).""; - - - $fildsValue.=(!empty($fildsValue)?',':'')."teamgroesse=".addslashes($this->teamgroesse).""; - - $fildsValue.=(!empty($fildsValue)?',':'')."uid='".addslashes($this->uid)."'"; - - $fildsValue.=(!empty($fildsValue)?',':'')."icon='".addslashes($this->icon)."'"; - - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerb set "; - $qry.=$fildsValue; - $qry.=" where wbtyp_kurzbz='".addslashes($this->wbtyp_kurzbz)."' and wettbewerb_kurzbz='".addslashes($this->wettbewerb_kurzbz)."' "; - } - if($this->db_query($qry)) - return true; - else - { - if (empty($qry)) - $this->errormsg = 'Fehler beim speichern des Datensatzes '; - $this->errormsg .=' '.$qry; - return false; - } - } - -//------------------------------------------------------------------------------------------------- - /** - * Loescht eine Veranstaltungskategorie - * @return true wenn ok, false im Fehlerfall - */ - public function deleteWettbewerb($wbtyp_kurzbz="",$wettbewerb_kurzbz=null) + function loadWettbewerb() { - - // Initialisieren - $qry=""; - - $this->result=array(); - $this->errormsg=''; - - // Parameter - if (!is_null($wbtyp_kurzbz)) - $this->wbtyp_kurzbz=$wbtyp_kurzbz; - if (!is_null($wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - - // Plausib - if (empty($this->wbtyp_kurzbz) || $this->wbtyp_kurzbz==null ) - { - $this->errormsg='Wettbewerb - Typ fehlt!'; - return false; - } - if (empty($this->wettbewerb_kurzbz) || $this->wettbewerb_kurzbz==null ) - { - $this->errormsg='Wettbewerb - Kurzbz. fehlt!'; - return false; - } - - // Abfrage - $qry.=" delete from ".$this->schemaSQL.".tbl_wettbewerb "; - if (is_array($this->wbtyp_kurzbz)) - $qry.=" where wbtyp_kurzbz in ('".implode("','",$this->wbtyp_kurzbz)."') "; - else - $qry.=" where wbtyp_kurzbz='".addslashes($this->wbtyp_kurzbz)."' "; - - if (is_array($this->wettbewerb_kurzbz)) - $qry.=" and wettbewerb_kurzbz in ('".implode("','",$this->wettbewerb_kurzbz)."') "; - else - $qry.=" and wettbewerb_kurzbz='".addslashes($this->wettbewerb_kurzbz)."' "; - - if($this->db_query($qry)) - { - return true; - } - else - { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim Veranstaltungskategorie löschen'; - return false; - } - } - - function loadWettbewerb($wbtyp_kurzbz=null,$wettbewerb_kurzbz=null) - { - // Init - $this->result=array(); - $this->errormsg=''; - - if (!is_null($wbtyp_kurzbz)) - $this->wbtyp_kurzbz=$wbtyp_kurzbz; - if (!is_null($wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - + $cSchemaSQL=$this->getSchemaSQL(); + $tmpwbtyp_kurzbz=$this->getWbtyp_kurzbz(); + $cWettbewerb_kurzbz=$this->getWettbewerb_kurzbz(); $qry=""; - $qry.="SELECT *,tbl_wettbewerbtyp.wbtyp_kurzbz,case WHEN tbl_wettbewerb.teamgroesse >1 then 'Teambewerb' else 'Einzelbewerb' end as wettbewerbart FROM ".$this->schemaSQL.".tbl_wettbewerbtyp "; - $qry.=" LEFT JOIN ".$this->schemaSQL.".tbl_wettbewerb ON UPPER(".$this->schemaSQL.".tbl_wettbewerb.wbtyp_kurzbz)=UPPER(".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz) "; - $qry.=" WHERE ".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz>'' "; + $qry.="SELECT *,tbl_wettbewerbtyp.wbtyp_kurzbz,case WHEN tbl_wettbewerb.teamgroesse >1 then 'Teambewerb' else 'Einzelbewerb' end as wettbewerbart FROM ".$cSchemaSQL."tbl_wettbewerbtyp "; + $qry.=" LEFT JOIN ".$cSchemaSQL."tbl_wettbewerb ON UPPER(".$cSchemaSQL."tbl_wettbewerb.wbtyp_kurzbz)=UPPER(".$cSchemaSQL."tbl_wettbewerbtyp.wbtyp_kurzbz) "; + $qry.=" WHERE ".$cSchemaSQL."tbl_wettbewerbtyp.wbtyp_kurzbz>'' "; // Suche nach einem einzigen Wetttbewerbstypen wbtyp_kurzbz - if (!is_array($this->wbtyp_kurzbz) && !empty($this->wbtyp_kurzbz) ) + if (!is_array($tmpwbtyp_kurzbz) && !empty($tmpwbtyp_kurzbz) ) { - $qry.=" AND UPPER(".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz)=UPPER('".$this->wbtyp_kurzbz."') "; + $qry.=" AND UPPER(".$cSchemaSQL."tbl_wettbewerbtyp.wbtyp_kurzbz)=UPPER('".$tmpwbtyp_kurzbz."') "; } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) + elseif (is_array($tmpwbtyp_kurzbz) && count($tmpwbtyp_kurzbz)>0 ) { - $qry.=" AND UPPER(".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz) in ('".strtoupper(implode("','",$this->wbtyp_kurzbz))."') "; + if (isset($tmpwbtyp_kurzbz[0]['wbtyp_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $tmpwbtyp_kurzbzE=array(); + for ($indZEILE=0;$indZEILEwettbewerb_kurzbz) && !empty($this->wettbewerb_kurzbz) ) - { - $qry.=" AND UPPER(".$this->schemaSQL.".tbl_wettbewerb.wettbewerb_kurzbz)=UPPER('".$this->wettbewerb_kurzbz."') "; - } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) + if (!is_array($cWettbewerb_kurzbz) && !empty($cWettbewerb_kurzbz) ) + { + $qry.=" AND UPPER(".$cSchemaSQL."tbl_wettbewerb.wettbewerb_kurzbz)=UPPER('".$cWettbewerb_kurzbz."') "; + } + elseif (is_array($cWettbewerb_kurzbz) && count($cWettbewerb_kurzbz)>0 ) { - $qry.=" AND UPPER(".$this->schemaSQL.".tbl_wettbewerb.wettbewerb_kurzbz) in ('".strtoupper(implode("','",$this->wettbewerb_kurzbz))."') "; + if (isset($cWettbewerb_kurzbz[0]['wettbewerb_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $tmpwbtyp_kurzbzE=array(); + for ($indZEILE=0;$indZEILEdb_query($qry)) { - while($row = $this->db_fetch_object()) + $rows=array(); + while($row = $this->db_fetch_array()) { - $this->result[]=$row; + $rows[]=$row; } - return $this->result; - } + $this->setWettbewerb($rows); + } else { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen der Wettbewerbstypen'; + $this->setError($this->db_last_error()); + return false; - } - return false; - } + } + return $this->getWettbewerb(); + } } // Class komune_wettbewerb Ende ?> \ No newline at end of file diff --git a/include/komune_wettbewerbeinladungen.class.php b/include/komune_wettbewerbeinladungen.class.php index a27691a88..fac475c12 100644 --- a/include/komune_wettbewerbeinladungen.class.php +++ b/include/komune_wettbewerbeinladungen.class.php @@ -34,92 +34,277 @@ * @return - kein Retourn des Konstruktors * */ - - require_once(dirname(__FILE__).'/basis_db.class.php'); -class komune_wettbewerbeinladungen extends basis_db +class komune_wettbewerbeinladungen extends basis_db { - public $result; - public $new=false; // boolean - - public $wbtyp_kurzbz; - public $wettbewerb_kurzb; - - public $uid; - public $team_kurzbz; - - public $team_forderer=""; - public $team_gefordert=""; - public $match_id=""; - - public $gefordertvon=""; - public $gefordertamum=""; - - public $matchdatumzeit=""; - public $matchort=""; - - public $bestaetigtvon=""; - public $bestaetigtamum=""; - - public $ergebniss=""; - public $team_sieger=""; - - public $matchbestaetigtamum=""; - public $matchbestaetigtvon=""; + public $new; + protected $wettbewerbeinladungen=""; - public $switchGewinner=''; - - public $schemaSQL="kommune"; // string Datenbankschema + protected $uid=""; + + protected $match_id=""; + protected $wettbewerb_kurzbz=""; + + protected $team_kurzbz=""; + protected $team_gefordert=""; + + protected $gefordertvon=""; + protected $gefordertamum=""; + + protected $matchdatumzeit=""; + protected $matchort=""; + + protected $bestaetigtvon=""; + protected $bestaetigtamum=""; + + protected $ergebniss=""; + protected $team_sieger=""; + + protected $matchbestaetigtamum=""; + protected $matchbestaetigtvon=""; + + protected $switchGewinner=''; + + public $schemaSQL="kommune."; // string Datenbankschema //-----Konstruktor - function __construct($match_id="",$team_forderer="",$team_gefordert="",$wettbewerb_kurzbz="",$uid="",$wbtyp_kurzbz="") + function __construct($match_id="",$team_forderer="",$team_gefordert="",$wettbewerb_kurzbz="",$uid="") { - parent::__construct(); - - $this->InitWettbewerbeinladungen(); - - $this->match_id=$match_id; - $this->team_forderer=$team_forderer; - $this->team_gefordert=$team_gefordert; - - $this->wbtyp_kurzbz=$wbtyp_kurzbz; - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - - $this->gefordertvon=$uid; + parent::__construct(); + + $this->InitWettbewerbeinladungen(); + $this->setMatch_id($match_id); + $this->setTeam_forderer($team_forderer); + $this->setTeam_gefordert($team_gefordert); + $this->setWettbewerb_kurzbz($wettbewerb_kurzbz); + $this->setGefordertvon($uid); } //-----Initialisierung-------------------------------------------------------------------------------------------- function InitWettbewerbeinladungen() { - $this->new=false; - $this->errormsg=''; - - $this->result=array(); + $this->setError(''); + // Ergebniss-Liste der Spiele + $this->setWettbewerbeinladung(''); + // Liste der Spiele mit Ergebniss "True" , oder Ohne "False" + $this->setSwitchGewinner(''); + + // Step 1 + $this->setMatch_id(''); + $this->setWettbewerb_kurzbz(''); - $this->wbtyp_kurzbz=''; - $this->wettbewerb_kurzbz=''; - - $this->match_id=""; - $this->team_forderer=""; - $this->team_gefordert=""; - - $this->gefordertvon=""; - $this->gefordertamum=""; - - $this->matchdatumzeit=""; - $this->matchort=""; - - $this->bestaetigtvon=""; - $this->bestaetigtamum=""; - - $this->ergebniss=""; - $this->team_sieger=""; - - $this->matchbestaetigtamum=""; - $this->matchbestaetigtvon=""; - - $this->switchGewinner=''; - + $this->setGefordertvon(''); + $this->setGefordertamum(''); + + $this->setTeam_kurzbz(''); + $this->setTeam_gefordert(''); + + $this->setMatchdatumzeit(''); + $this->setMatchort(''); + // Step 2 + $this->setBestaetigtvon(''); + $this->setBestaetigtamum(0); + // Step 3 + $this->setErgebniss(''); + $this->setTeam_sieger(''); + // Step 4 + $this->setMatchbestaetigtamum(''); + $this->setMatchbestaetigtvon(''); } +//-----NewRecord-------------------------------------------------------------------------------------------- + function getNewRecord() + { + return $this->new; + } + function setNewRecord($switch) + { + $this->new=$switch; + } +//-----Error-------------------------------------------------------------------------------------------- + function getError() + { + return $this->errormsg; + } + function setError($err) + { + $this->errormsg=$err; + } +//-----schemaSQL-------------------------------------------------------------------------------------------- + function getSchemaSQL() + { + return $this->schemaSQL; + } + function setSchemaSQL($schemaSQL) + { + $this->schemaSQL=$schemaSQL; + } +//-----Wettbewerb Matchdaten-------------------------------------------------------------------------------------------- + function getWettbewerbeinladung() + { + return $this->wettbewerbeinladung; + } + function setWettbewerbeinladung($wettbewerbeinladung) + { + $this->wettbewerbeinladung=$wettbewerbeinladung; + } +//-----match_id-------------------------------------------------------------------------------------------- + function getMatch_id() + { + return $this->match_id; + } + function setMatch_id($match_id) + { + $this->match_id=$match_id; + } +//-----gefordertvon-------------------------------------------------------------------------------------------- + function getGefordertvon() + { + return $this->gefordertvon; + } + function setGefordertvon($gefordertvon) + { + $this->gefordertvon=$gefordertvon; + } + +//-----UID-------------------------------------------------------------------------------------------- +// Match - Wettbewerb uid = Moderator + function getUid() + { + return $this->uid; + } + function setUid($uid) + { + $this->uid=$uid; + } + +//-----gefordertam-------------------------------------------------------------------------------------------- + function getGefordertamum() + { + return $this->gefordertamum; + } + function setGefordertamum($gefordertamum) + { + $this->gefordertamum=$gefordertamum; + } +//-----team_forderer-------------------------------------------------------------------------------------------- + function getTeam_forderer() + { + return $this->team_forderer; + } + function setTeam_forderer($team_forderer) + { + $this->team_forderer=$team_forderer; + } +//-----team_kurzbz--kompilitaet------------------------------------------------------------------------------------------ + function getTeam_kurzbz() + { + return $this->getTeam_forderer(); + } + function setTeam_kurzbz($team_kurzbz) + { + $this->setTeam_forderer($team_kurzbz); + } + +//-----team_gefordert-------------------------------------------------------------------------------------------- + function getTeam_gefordert() + { + return $this->team_gefordert; + } + function setTeam_gefordert($team_gefordert) + { + $this->team_gefordert=$team_gefordert; + } +//-----team_sieger-------------------------------------------------------------------------------------------- + function getTeam_sieger() + { + return $this->team_sieger; + } + function setTeam_sieger($team_sieger) + { + $this->team_sieger=$team_sieger; + } +//-----wettbewerb_kurzbz-------------------------------------------------------------------------------------------- + function getWettbewerb_kurzbz() + { + return $this->wettbewerb_kurzbz; + } + function setWettbewerb_kurzbz($wettbewerb_kurzbz="") + { + $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; + } +//-----matchdatumzeit-------------------------------------------------------------------------------------------- + function getMatchdatumzeit() + { + return $this->matchdatumzeit; + } + function setMatchdatumzeit($matchdatumzeit) + { + $this->matchdatumzeit=$matchdatumzeit; + } +//-----matchort-------------------------------------------------------------------------------------------- + function getMatchort() + { + return $this->matchort; + } + function setMatchort($matchort) + { + $this->matchort=$matchort; + } +//-----ergebniss-------------------------------------------------------------------------------------------- + function getErgebniss() + { + return $this->ergebniss; + } + function setErgebniss($ergebniss) + { + $this->ergebniss=$ergebniss; + } +//-----bestaetigtvon-------------------------------------------------------------------------------------------- + function getBestaetigtvon() + { + return $this->bestaetigtvon; + } + function setBestaetigtvon($bestaetigtvon) + { + $this->bestaetigtvon=$bestaetigtvon; + } +//-----bestaetigtamum-------------------------------------------------------------------------------------------- + function getBestaetigtamum() + { + return $this->bestaetigtamum; + } + function setBestaetigtamum($bestaetigtamum) + { + $this->bestaetigtamum=$bestaetigtamum; + } +//-----matchbestaetigtamum-------------------------------------------------------------------------------------------- + function getMatchbestaetigtamum() + { + return $this->matchbestaetigtamum; + } + function setMatchbestaetigtamum($matchbestaetigtamum) + { + $this->matchbestaetigtamum=$matchbestaetigtamum; + } +//-----matchbestaetigtvon-------------------------------------------------------------------------------------------- + function getMatchbestaetigtvon() + { + return $this->matchbestaetigtvon; + } + function setMatchbestaetigtvon($matchbestaetigtvon) + { + $this->matchbestaetigtvon=$matchbestaetigtvon; + } +//-----switchGewinner-------------------------------------------------------------------------------------------- +// Selektion des Datenlesen 0 nur nicht Gewonnene, 1 sind alle Gewonnene , leer alle + function getSwitchGewinner() + { + return $this->switchGewinner; + } + function setSwitchGewinner($switchGewinner) + { + $this->switchGewinner=$switchGewinner; + } + //------------------------------------------------------------------------------------------------- function saveWettbewerbeinladung($team_forderer="",$team_gefordert="",$match_id="") { @@ -139,18 +324,18 @@ class komune_wettbewerbeinladungen extends basis_db // Verarbeitungsvariablen $cSchemaSQL=$this->getschemaSQL(); $cMatch_id=$this->getMatch_id(); - $this->team_forderer=$this->getTeam_forderer(); + $cTeam_forderer=$this->getTeam_forderer(); $cTeam_gefordert=$this->getTeam_gefordert(); // Plausib - Pruefen ob Eingeladente Team nicht als Array ubergeben wurde ( gebraucht wird nur die Kurzbezeichnung) - if (is_array($this->team_forderer) && isset($this->team_forderer['team_forderer'])) - $this->team_forderer=$this->team_forderer['team_forderer']; - elseif (is_array($this->team_forderer) && isset($this->team_forderer[0]['team_forderer']) ) - $this->team_forderer=$this->team_forderer[0]['team_forderer']; - elseif (is_array($this->team_forderer) && isset($this->team_forderer['team_forderer'])) - $this->team_forderer=$this->team_forderer['team_kurzbz']; - elseif (is_array($this->team_forderer) && isset($this->team_forderer[0]['team_forderer']) ) - $this->team_forderer=$this->team_forderer[0]['team_forderer']; + if (is_array($cTeam_forderer) && isset($cTeam_forderer['team_forderer'])) + $cTeam_forderer=$cTeam_forderer['team_forderer']; + elseif (is_array($cTeam_forderer) && isset($cTeam_forderer[0]['team_forderer']) ) + $cTeam_forderer=$cTeam_forderer[0]['team_forderer']; + elseif (is_array($cTeam_forderer) && isset($cTeam_forderer['team_forderer'])) + $cTeam_forderer=$cTeam_forderer['team_kurzbz']; + elseif (is_array($cTeam_forderer) && isset($cTeam_forderer[0]['team_forderer']) ) + $cTeam_forderer=$cTeam_forderer[0]['team_forderer']; // Plausib - Pruefen ob Eingeladene Team nicht als Array ubergeben wurde ( gebraucht wird nur die Kurzbezeichnung) if (is_array($cTeam_gefordert) && isset($cTeam_gefordert['team_kurzbz'])) @@ -158,8 +343,8 @@ class komune_wettbewerbeinladungen extends basis_db elseif (is_array($cTeam_gefordert) && isset($cTeam_gefordert[0]['team_kurbz'])) $cTeam_gefordert=$cTeam_gefordert[0]['team_kurzbz']; - $this->team_forderer=trim($this->team_forderer); - if (empty($this->team_forderer) ) + $cTeam_forderer=trim($cTeam_forderer); + if (empty($cTeam_forderer) ) { $this->setError('Kein Einladung (Einladenter fehlt) möglich !'); return false; @@ -177,89 +362,121 @@ class komune_wettbewerbeinladungen extends basis_db return false; } - $this->setTableStruckturSQL($constTableMatch); if (!$origWettbewerbeinladungen=$this->loadWettbewerbeinladungen()) { if ($this->getError()) // Beim Lesen ist ein Fehler aufgetreten return false; $this->setNewRecord(true); } - - $arrTmpTableStrucktur=$this->getTableStruckturSQL(); - if (!is_array($arrTmpTableStrucktur)) - { - $this->setError('Kein Tabellenstrucktur ("'.$constTableMatch.'") gefunden !'); - return false; - } - $qry="BEGIN; "; + $this->db_query(" BEGIN; "); + $qry=""; + if ($this->getNewRecord()) // Neuanlage - Insert { - if (!$this->getGefordertamum()) - $this->setGefordertamum(time()); - +/* +team_sieger character varying(16) Durchsuchen Ändern Löschen +wettbewerb_kurzbz character varying(16) NOT NULL Durchsuchen Ändern Löschen +team_gefordert character varying(16) NOT NULL Durchsuchen Ändern Löschen +team_forderer character varying(16) NOT NULL Durchsuchen Ändern Löschen +gefordertvon character varying(16) NOT NULL Durchsuchen Ändern Löschen +matchdatumzeit timestamp without time zone Durchsuchen Ändern Löschen +matchort character varying(32) Durchsuchen Ändern Löschen +ergebniss character varying(16) Durchsuchen Ändern Löschen +bestaetigtvon character varying(16) Durchsuchen Ändern Löschen +bestaetigtamum timestamp without time zone Durchsuchen Ändern Löschen +match_id integer NOT NULL nextval('tbl_match_match_id_seq'::regclass) Durchsuchen Ändern Löschen +matchbestaetigtvon character varying(16) Durchsuchen Ändern Löschen +matchbestaetigtamum timestamp without time zone Durchsuchen Ändern Löschen +gefordertamum timestamp without time zone +*/ $fildsList=""; $fildsValue=""; - for ($fildIND=0;$fildIND$arrTmpTableStrucktur[$fildIND]['name']) && $this->$arrTmpTableStrucktur[$fildIND]['name']!='') - $cTmpWert=$this->$arrTmpTableStrucktur[$fildIND]['name']; - if ($cTmpWert!='') - { - switch ($arrTmpTableStrucktur[$fildIND]['type']) - { - case 'timestamp': - $cTmpWert="to_timestamp('".$cTmpWert."')"; - break; - case 'time': - $cTmpWert="to_timestamp('".$cTmpWert."')"; - break; - default: - $cTmpWert="E'".addslashes(trim($cTmpWert))."'"; - break; - } - $fildsList.=(!empty($fildsList)?',':'').$arrTmpTableStrucktur[$fildIND]['name']; - $fildsValue.=(!empty($fildsValue)?',':'').$cTmpWert; - } - } - $qry=" insert into ".$this->schemaSQL.".tbl_match (".$fildsList.") values (".$fildsValue."); "; + + $fildsList.='team_sieger,'; + $fildsList.='wettbewerb_kurzbz,'; + $fildsList.='team_gefordert,'; + $fildsList.='team_forderer,'; + $fildsList.='gefordertvon,'; + $fildsList.='matchdatumzeit,'; + $fildsList.='matchort,'; + $fildsList.='ergebniss,'; + $fildsList.='bestaetigtvon,'; + $fildsList.='bestaetigtamum,'; +# $fildsList.='match_id,'; + $fildsList.='matchbestaetigtvon,'; + $fildsList.='matchbestaetigtamum,'; + $fildsList.='gefordertamum'; + + if (!$this->getGefordertamum()) + $this->setGefordertamum(time()); + + $fildsValue.=($this->team_sieger?"'".addslashes($this->team_sieger)."'":'null').","; + + $fildsValue.="'".addslashes($this->wettbewerb_kurzbz)."',"; + $fildsValue.="'".addslashes($this->team_gefordert)."',"; + $fildsValue.="'".addslashes($this->team_forderer)."',"; + $fildsValue.="'".addslashes($this->gefordertvon)."',"; + + $fildsValue.=(empty($this->matchdatumzeit)?'null,':"'".addslashes(date('Y-m-d H:i:s',$this->matchdatumzeit))."',"); + + $fildsValue.="'".addslashes($this->matchort)."',"; + $fildsValue.="'".addslashes($this->ergebniss)."',"; + + $fildsValue.=($this->bestaetigtvon?"'".addslashes($this->bestaetigtvon)."'":'null').","; + $fildsValue.=(empty($this->bestaetigtamum)?'null,':"'".addslashes(date('Y-m-d H:i:s',$this->bestaetigtamum))."',"); +# $fildsValue.="".addslashes($this->match_id).","; + $fildsValue.=($this->matchbestaetigtvon?"'".addslashes($this->matchbestaetigtvon)."'":'null').","; + + $fildsValue.=(empty($this->matchbestaetigtamum)?'null,':"'".addslashes(date('Y-m-d H:i:s',$this->matchbestaetigtamum))."',"); + $fildsValue.=(empty($this->gefordertamum)?'null':"'".addslashes(date('Y-m-d H:i:s',$this->gefordertamum))."'"); + + $qry=" insert into ".$this->schemaSQL."tbl_match (".$fildsList.") values (".$fildsValue."); "; + } else { if (!$this->getMatch_id()) $this->setMatch_id($origWettbewerbeinladungen[0]['match_id']); - $qry.=" update ".$this->schemaSQL.".tbl_match set "; + $qry.=" update ".$cSchemaSQL."tbl_match set "; $fildsValue=''; - for ($fildIND=0;$fildIND$arrTmpTableStrucktur[$fildIND]['name']) - && $this->$arrTmpTableStrucktur[$fildIND]['name']!='' - && $arrTmpTableStrucktur[$fildIND]['name']!='match_id' ) - { - $cTmpWert=$this->$arrTmpTableStrucktur[$fildIND]['name']; - if ($cTmpWert!='') - { - switch ($arrTmpTableStrucktur[$fildIND]['type']) - { - case 'timestamp': - $cTmpWert="to_timestamp('".$cTmpWert."')"; - break; - case 'time': - $cTmpWert="to_timestamp('".$cTmpWert."')"; - break; - default: - $cTmpWert="E'".addslashes(trim($cTmpWert))."'"; - break; - } - $fildsValue.= (!empty($fildsValue)?',':'').$arrTmpTableStrucktur[$fildIND]['name']."=".$cTmpWert; - } - } - } + + if ($this->team_sieger) + $fildsValue.="team_sieger=".($this->team_sieger?"'".addslashes($this->team_sieger)."'":'null').","; + + + $fildsValue.="wettbewerb_kurzbz='".addslashes($this->wettbewerb_kurzbz)."',"; + $fildsValue.="team_gefordert='".addslashes($this->team_gefordert)."',"; + $fildsValue.="team_forderer='".addslashes($this->team_forderer)."',"; + + if (!is_null($this->gefordertvon) && $this->gefordertvon) + $fildsValue.="gefordertvon=".($this->gefordertvon?"'".addslashes($this->gefordertvon)."'":'null').","; + + if (!is_null($this->matchdatumzeit) && $this->matchdatumzeit) + $fildsValue.="matchdatumzeit=".($this->matchdatumzeit?"'".addslashes(date('Y-m-d H:i:s',$this->matchdatumzeit))."'":'null').","; + + if (!is_null($this->matchort) && $this->matchort) + $fildsValue.="matchort='".addslashes($this->matchort)."',"; + if (!is_null($this->ergebniss) && $this->ergebniss) + $fildsValue.="ergebniss='".addslashes($this->ergebniss)."',"; + + if (!is_null($this->ergebniss) && $this->bestaetigtvon) + $fildsValue.="bestaetigtvon=".($this->bestaetigtvon?"'".addslashes($this->bestaetigtvon)."'":'null').","; + if (!is_null($this->ergebniss) && $this->bestaetigtamum) + $fildsValue.="bestaetigtamum=".($this->bestaetigtamum?"'".addslashes(date('Y-m-d H:i:s',$this->bestaetigtamum))."'":'null').","; + + if (!is_null($this->ergebniss) && $this->matchbestaetigtvon) + $fildsValue.="matchbestaetigtvon=".($this->matchbestaetigtvon?"'".addslashes($this->matchbestaetigtvon)."'":'null').","; + if (!is_null($this->matchbestaetigtamum) && $this->matchbestaetigtamum) + $fildsValue.="matchbestaetigtamum=".($this->matchbestaetigtamum?"'".addslashes(date('Y-m-d H:i:s',$this->matchbestaetigtamum))."'":'null').","; + if (!is_null($this->gefordertamum) && $this->gefordertamum) + $fildsValue.="gefordertamum=".($this->gefordertamum?"'".addslashes(date('Y-m-d H:i:s',$this->gefordertamum))."'":'null').","; + + $fildsValue.="match_id=".addslashes($this->match_id).""; + $qry.=$fildsValue." where tbl_match.match_id='".$this->getMatch_id()."'; "; - $this->wettbewerb_kurzbz=trim($origWettbewerbeinladungen[0]['wettbewerb_kurzbz']); + + $cWettbewerb_kurzbz=trim($origWettbewerbeinladungen[0]['wettbewerb_kurzbz']); $origWettbewerbeinladungen[0]['matchbestaetigtvon']=trim($origWettbewerbeinladungen[0]['matchbestaetigtvon']); $origWettbewerbeinladungen[0]['team_sieger']=trim($origWettbewerbeinladungen[0]['team_sieger']); @@ -267,89 +484,88 @@ class komune_wettbewerbeinladungen extends basis_db && trim($origWettbewerbeinladungen[0]['team_sieger'])==trim($this->team_forderer)) // Der Forderer ist der Siehter den Rangtauschen { // Rang des Geforderten ermitteln - $qry_tmp="select rang from ".$this->schemaSQL.".tbl_wettbewerbteam where upper(team_kurzbz)=upper('".$cTeam_gefordert."') and upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."') FOR UPDATE ;"; - $this->fetch_object($qry_tmp); - $iTmpRangGeforderter=$this->getResultSQL(); - if (isset($iTmpRangGeforderter->rang)) - $iTmpRangGeforderter=trim($iTmpRangGeforderter->rang); - + $iTmpRangGeforderter=0; + $qry_tmp="select rang from ".$cSchemaSQL."tbl_wettbewerbteam where upper(team_kurzbz)=upper('".addslashes($this->team_gefordert)."') and upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."') ;"; + if($res=$this->db_query($qry_tmp)) + { + $iTmpRangGeforderter=$this->db_result($res,0,'rang'); + } + else + { + $this->errormsg = $this->db_last_error(); + return false; + } + + + $iTmpRangFrorderer=0; // Rang des Geforderten ermitteln - $qry_tmp="select rang from ".$this->schemaSQL.".tbl_wettbewerbteam where upper(team_kurzbz)=upper('".$this->team_forderer."') and upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."') FOR UPDATE ;"; - - $this->fetch_object($qry_tmp); - $iTmpRangFrorderer=$this->getResultSQL(); - if (isset($iTmpRangFrorderer->rang)) - $iTmpRangFrorderer=trim($iTmpRangFrorderer->rang); - - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry_tmp="select rang from ".$cSchemaSQL."tbl_wettbewerbteam where upper(team_kurzbz)=upper('".$this->team_forderer."') and upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."') ;"; + if($res=$this->db_query($qry_tmp)) + { + $iTmpRangFrorderer=$this->db_result($res,0,'rang'); + } + else + { + $this->errormsg = $this->db_last_error(); + return false; + } + + $qry.=" update ".$cSchemaSQL."tbl_wettbewerbteam "; $qry.="set rang=0 "; - $qry.=" where upper(team_kurzbz)=upper('".$cTeam_gefordert."') and upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."'); "; + $qry.=" where upper(team_kurzbz)=upper('".addslashes($this->team_gefordert)."') and upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."'); "; - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry.=" update ".$cSchemaSQL."tbl_wettbewerbteam "; $qry.="set rang=".$iTmpRangGeforderter; - $qry.=" where upper(team_kurzbz)=upper('".$this->team_forderer."') and upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."'); "; + $qry.=" where upper(team_kurzbz)=upper('".addslashes($this->team_forderer)."') and upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."'); "; - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry.=" update ".$cSchemaSQL."tbl_wettbewerbteam "; $qry.="set rang=".$iTmpRangFrorderer; - $qry.=" where upper(team_kurzbz)=upper('".$cTeam_gefordert."') and upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."'); "; + $qry.=" where upper(team_kurzbz)=upper('".addslashes($this->team_gefordert)."') and upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."'); "; - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry.=" update ".$cSchemaSQL."tbl_wettbewerbteam "; $qry.="set punkte=3+punkte "; - $qry.="where upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."') and upper(team_kurzbz)=upper('".$origWettbewerbeinladungen[0]['team_sieger']."'); "; + $qry.="where upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."') and upper(team_kurzbz)=upper('".addslashes($origWettbewerbeinladungen[0]['team_sieger'])."'); "; - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry.=" update ".$cSchemaSQL."tbl_wettbewerbteam "; $qry.="set punkte=1+punkte "; - $qry.="where upper(wettbewerb_kurzbz)=upper('".$this->wettbewerb_kurzbz."') and upper(team_kurzbz)=upper('". ($origWettbewerbeinladungen[0]['team_sieger']==$cTeam_gefordert?$this->team_forderer:$cTeam_gefordert)."'); "; + $qry.="where upper(wettbewerb_kurzbz)=upper('".addslashes($this->wettbewerb_kurzbz)."') and upper(team_kurzbz)=upper('". addslashes(($origWettbewerbeinladungen[0]['team_sieger']==$this->team_gefordert?$this->team_forderer:$this->team_gefordert))."'); "; } } - $qry.=" COMMIT; "; -#exit($qry); - // Datenbankabfrage - $this->setStringSQL($qry); - unset($qry); - - $this->setResultSQL(null); - if (!$this->dbQuery()) - return false; - if (!$origWettbewerbeinladungen=$this->loadWettbewerbeinladungen()) + + + if($this->db_query($qry)) { - if ($this->getError()) // Beim Lesen ist ein Fehler aufgetreten - return false; - $this->setNewRecord(true); + $this->db_query(" COMMIT; "); + return $this->loadWettbewerbeinladungen(); } - $this->setResultSQL(null); - return $origWettbewerbeinladungen; + else + { + $this->setError($qry.' '.$this->db_last_error()); + $this->db_query(" ROLLBACK; "); + return false; + } + return true; } //------------------------------------------------------------------------------------------------- - - function loadWettbewerbeinladungen($match_id=null,$gefordertvon=null,$team_forderer=null,$team_einladungen=null,$wettbewerb_kurzbz=null,$switchGewinner=null) + function loadWettbewerbeinladungen() { - - // Initialisierung + $this->setError(''); - $this->result=array(); - $this->errormsg=''; - - if (!is_null($match_id)) - $this->match_id=$match_id; - - if (!is_null($gefordertvon)) - $this->gefordertvon=$gefordertvon; - - if (!is_null($team_forderer)) - $this->team_forderer=$team_forderer; - - if (!is_null($team_einladungen)) - $this->team_einladungen=$team_einladungen; - - if (!is_null($wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - - if (!is_null($switchGewinner)) - $this->switchGewinner=$switchGewinner; + $cSchemaSQL=$this->getschemaSQL(); - $qry=""; + $match_id=$this->getMatch_id(); + $cTeam_forderer=$this->getTeam_forderer(); + $cTeam_kurzbz_einladungen=$this->getTeam_gefordert(); + $cWettbewerb_kurzbz=$this->getWettbewerb_kurzbz(); + $cGefordertvon=$this->getGefordertvon(); + + $bSwitchGewinner=$this->getSwitchGewinner(); + + #SELECT TIMESTAMP WITHOUT TIME ZONE 'epoch' + 982384720 * INTERVAL '1 second'; + #select to_char(TIMESTAMP '2007-03-27 10:48:50.022', 'DD.MM.YYYY'); + #select to_char(TIMESTAMP '2007-03-27 10:48:50.022', 'HH24:MI:SS'); + $qry=""; $qry.="SELECT * "; $qry.=", to_char(matchdatumzeit, 'DD.MM.YYYY') as \"matchdatum\" "; @@ -364,89 +580,133 @@ class komune_wettbewerbeinladungen extends basis_db $qry.=", to_char(matchbestaetigtamum, 'DD.MM.YYYY') as \"matchbestaetigtdatum\" "; $qry.=", to_char(matchbestaetigtamum, 'HH24:MI') as \"matchbestaetigtzeit\" "; - $qry.=" FROM ".$this->schemaSQL.".tbl_match "; + $qry.=" FROM ".$cSchemaSQL."tbl_match "; - if (empty($this->match_id)) + if (empty($match_id)) $qry.=" WHERE tbl_match.match_id>0 "; else - $qry.=" WHERE tbl_match.match_id='".addslashes(trim($this->match_id))."' "; + $qry.=" WHERE tbl_match.match_id='".addslashes(trim($match_id))."' "; + +# if (!empty($cGefordertvon)) +# $qry.=" and tbl_match.gefordertvon='".addslashes(trim($cGefordertvon))."' "; // Forderer - if (!is_array($this->team_forderer) && !empty($this->team_forderer) ) + if (!is_array($cTeam_forderer) && !empty($cTeam_forderer) ) { - $qry.=" AND UPPER(tbl_match.team_forderer)=UPPER('".addslashes(trim($this->team_forderer))."') "; + $qry.=" AND UPPER(tbl_match.team_forderer)=UPPER('".addslashes(trim($cTeam_forderer))."') "; } - elseif (is_array($this->team_forderer) && count($this->team_forderer)>0 ) + elseif (is_array($cTeam_forderer) && count($cTeam_forderer)>0 ) { - $qry.=" AND UPPER(tbl_match.team_forderer) in ('".strtoupper(implode("','",$this->team_forderer))."') "; + if (isset($cTeam_forderer[0]['team_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $arrTmpTeam_kurzbz=array(); + for ($indZEILE=0;$indZEILEteam_einladungen) && !empty($this->team_einladungen) ) + if (!is_array($cTeam_kurzbz_einladungen) && !empty($cTeam_kurzbz_einladungen) ) { - $qry.=" AND UPPER(tbl_match.team_gefordert)=UPPER('".addslashes(trim($this->team_einladungen))."') "; + $qry.=" AND UPPER(tbl_match.team_gefordert)=UPPER('".addslashes(trim($cTeam_kurzbz_einladungen))."') "; } - elseif (is_array($this->team_einladungen) && count($this->team_einladungen)>0 ) + elseif (is_array($cTeam_kurzbz_einladungen) && count($cTeam_kurzbz_einladungen)>0 ) { - $qry.=" AND UPPER(tbl_match.team_gefordert) in ('".strtoupper(implode("','",$this->team_einladungen))."') "; + if (isset($cTeam_kurzbz_einladungen[0]['team_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $arrTmpTeam_kurzbz=array(); + for ($indZEILE=0;$indZEILEwettbewerb_kurzbz) && !empty($this->wettbewerb_kurzbz) ) + if (!is_array($cWettbewerb_kurzbz) && !empty($cWettbewerb_kurzbz) ) { - $qry.=" AND UPPER(tbl_match.wettbewerb_kurzbz)=UPPER('".addslashes(trim($this->wettbewerb_kurzbz))."') "; + $qry.=" AND UPPER(tbl_match.wettbewerb_kurzbz)=UPPER('".addslashes(trim($cWettbewerb_kurzbz))."') "; } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) + elseif (is_array($cWettbewerb_kurzbz) && count($cWettbewerb_kurzbz)>0 ) { - $qry.=" AND UPPER(tbl_match.wettbewerb_kurzbz) in ('".strtoupper(implode("','",$this->wettbewerb_kurzbz))."') "; + if (isset($cWettbewerb_kurzbz[0]['wettbewerb_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $arrWettbewerb_kurzbz=array(); + for ($indZEILE=0;$indZEILEswitchGewinner=='0') + if ($bSwitchGewinner=='0') $qry.=" AND ( tbl_match.matchbestaetigtvon <='' or (tbl_match.matchbestaetigtvon IS NULL) ) "; - elseif ($this->switchGewinner=='1') + elseif ($bSwitchGewinner=='1') $qry.=" AND tbl_match.matchbestaetigtvon > '' "; +#echo $qry; + if($this->db_query($qry)) { - while($row = $this->db_fetch_object()) + $rows=array(); + while($row = $this->db_fetch_array()) { - $this->result[]=$row; + $rows[]=$row; } - return $this->result; - } + $this->setWettbewerbeinladung($rows); + } else { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen der Wettbewerbstypen'; + $this->setError($this->db_last_error()); return false; - } - return false; + } + return $this->getWettbewerbeinladung(); + } //------------------------------------------------------------------------------------------------- - function loadWettbewerbeinladungenForderungstage($match_id=null,$gefordertvon=null,$team_forderer=null,$team_einladungen=null,$wettbewerb_kurzbz=null) + function loadWettbewerbeinladungenForderungstage() { - $this->result=array(); - $this->errormsg=''; + $this->setError(''); + $cSchemaSQL=$this->getschemaSQL(); + + $match_id=$this->getMatch_id(); + $cTeam_forderer=$this->getTeam_forderer(); + $cTeam_kurzbz_einladungen=$this->getTeam_gefordert(); + $cWettbewerb_kurzbz=$this->getWettbewerb_kurzbz(); - if (!is_null($match_id)) - $this->match_id=$match_id; - - if (!is_null($gefordertvon)) - $this->gefordertvon=$gefordertvon; - - if (!is_null($team_forderer)) - $this->team_forderer=$team_forderer; - - if (!is_null($team_einladungen)) - $this->team_einladungen=$team_einladungen; - - if (!is_null($wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - + $cUid=$this->getGefordertvon(); + $qry=""; $qry.="SELECT * "; + $qry.=", to_char(matchdatumzeit, 'DD.MM.YYYY') as \"matchdatum\" "; $qry.=", to_char(matchdatumzeit, 'HH24:MI') as \"matchzeit\" "; @@ -459,113 +719,163 @@ class komune_wettbewerbeinladungen extends basis_db $qry.=", to_char(matchbestaetigtamum, 'DD.MM.YYYY') as \"matchbestaetigtdatum\" "; $qry.=", to_char(matchbestaetigtamum, 'HH24:MI') as \"matchbestaetigtzeit\" "; + $qry.=" - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.gefordertamum))) as gefordertamum_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.bestaetigtamum,".$this->schemaSQL.".tbl_match.gefordertamum))) as bestaetigtamum_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.matchdatumzeit,".$this->schemaSQL.".tbl_match.bestaetigtamum))) as matchdatumzeit_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.matchbestaetigtamum,".$this->schemaSQL.".tbl_match.matchdatumzeit))) as matchbestaetigtamum_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.gefordertamum))) as gefordertamum_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.bestaetigtamum,".$cSchemaSQL."tbl_match.gefordertamum))) as bestaetigtamum_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.matchdatumzeit,".$cSchemaSQL."tbl_match.bestaetigtamum))) as matchdatumzeit_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.matchbestaetigtamum,".$cSchemaSQL."tbl_match.matchdatumzeit))) as matchbestaetigtamum_diff + + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.gefordertamum))) as gefordertamum_tag_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.bestaetigtamum))) as bestaetigtamum_tag_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.matchdatumzeit))) as matchdatumzeit_tag_diff + ,1+extract('day' from (age(".$cSchemaSQL."tbl_match.matchbestaetigtamum))) as matchbestaetigtamum_tag_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.gefordertamum))) as gefordertamum_tag_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.bestaetigtamum))) as bestaetigtamum_tag_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.matchdatumzeit))) as matchdatumzeit_tag_diff - ,1+extract('day' from (age(".$this->schemaSQL.".tbl_match.matchbestaetigtamum))) as matchbestaetigtamum_tag_diff "; + - $qry.=" from ".$this->schemaSQL.".tbl_wettbewerbtyp,".$this->schemaSQL.".tbl_wettbewerb,".$this->schemaSQL.".tbl_match + $qry.=" from ".$cSchemaSQL."tbl_wettbewerbtyp,".$cSchemaSQL."tbl_wettbewerb,".$cSchemaSQL."tbl_match + + where ".$cSchemaSQL."tbl_wettbewerbtyp.wbtyp_kurzbz=".$cSchemaSQL."tbl_wettbewerb.wbtyp_kurzbz + and ".$cSchemaSQL."tbl_match.wettbewerb_kurzbz=".$cSchemaSQL."tbl_wettbewerb.wettbewerb_kurzbz + and (".$cSchemaSQL."tbl_match.matchbestaetigtvon IS NULL or ".$cSchemaSQL."tbl_match.matchbestaetigtvon<='') - where ".$this->schemaSQL.".tbl_wettbewerbtyp.wbtyp_kurzbz=".$this->schemaSQL.".tbl_wettbewerb.wbtyp_kurzbz - and ".$this->schemaSQL.".tbl_match.wettbewerb_kurzbz=".$this->schemaSQL.".tbl_wettbewerb.wettbewerb_kurzbz - and (".$this->schemaSQL.".tbl_match.matchbestaetigtvon IS NULL or ".$this->schemaSQL.".tbl_match.matchbestaetigtvon<='') "; - if (!empty($this->match_id)) - $qry.=" and tbl_match.match_id='".addslashes(trim($this->match_id))."' "; + if (!empty($match_id)) + $qry.=" and tbl_match.match_id='".addslashes(trim($match_id))."' "; - if (!empty($this->gefordertvon)) - $qry.=" and tbl_wettbewerb.uid='".addslashes(trim($this->gefordertvon))."' "; + if (!empty($cUid)) + $qry.=" and tbl_wettbewerb.uid='".addslashes(trim($cUid))."' "; // Forderer - if (!is_array($this->team_forderer) && !empty($this->team_forderer) ) + if (!is_array($cTeam_forderer) && !empty($cTeam_forderer) ) { - $qry.=" AND UPPER(tbl_match.team_forderer)=UPPER('".addslashes(trim($this->team_forderer))."') "; + $qry.=" AND UPPER(tbl_match.team_forderer)=UPPER('".addslashes(trim($cTeam_forderer))."') "; } - elseif (is_array($this->team_forderer) && count($this->team_forderer)>0 ) + elseif (is_array($cTeam_forderer) && count($cTeam_forderer)>0 ) { - $qry.=" AND UPPER(tbl_match.team_forderer) in ('".strtoupper(implode("','",$this->team_forderer))."') "; + if (isset($cTeam_forderer[0]['team_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $arrTmpTeam_kurzbz=array(); + for ($indZEILE=0;$indZEILEteam_einladungen) && !empty($this->team_einladungen) ) + + if (!is_array($cTeam_kurzbz_einladungen) && !empty($cTeam_kurzbz_einladungen) ) { - $qry.=" AND UPPER(tbl_match.team_gefordert)=UPPER('".addslashes(trim($this->team_einladungen))."') "; + $qry.=" AND UPPER(tbl_match.team_gefordert)=UPPER('".addslashes(trim($cTeam_kurzbz_einladungen))."') "; } - elseif (is_array($this->team_einladungen) && count($this->team_einladungen)>0 ) + elseif (is_array($cTeam_kurzbz_einladungen) && count($cTeam_kurzbz_einladungen)>0 ) { - $qry.=" AND UPPER(tbl_match.team_gefordert) in ('".strtoupper(implode("','",$this->team_einladungen))."') "; + if (isset($cTeam_kurzbz_einladungen[0]['team_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $arrTmpTeam_kurzbz=array(); + for ($indZEILE=0;$indZEILEwettbewerb_kurzbz) && !empty($this->wettbewerb_kurzbz) ) + // GEForderte + + if (!is_array($cWettbewerb_kurzbz) && !empty($cWettbewerb_kurzbz) ) { - $qry.=" AND UPPER(tbl_match.wettbewerb_kurzbz)=UPPER('".addslashes(trim($this->wettbewerb_kurzbz))."') "; + $qry.=" AND UPPER(tbl_match.wettbewerb_kurzbz)=UPPER('".addslashes(trim($cWettbewerb_kurzbz))."') "; } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) + elseif (is_array($cWettbewerb_kurzbz) && count($cWettbewerb_kurzbz)>0 ) { - $qry.=" AND UPPER(tbl_match.wettbewerb_kurzbz) in ('".strtoupper(implode("','",$this->wettbewerb_kurzbz))."') "; + if (isset($cWettbewerb_kurzbz[0]['wettbewerb_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $arrWettbewerb_kurzbz=array(); + for ($indZEILE=0;$indZEILEdb_query($qry)) { - while($row = $this->db_fetch_object()) + $rows=array(); + while($row = $this->db_fetch_array()) { - $this->result[]=$row; + $rows[]=$row; } - return $this->result; - } + $this->setWettbewerbeinladung($rows); + } else { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen der Wettbewerbstypen'; + $this->setError($this->db_last_error()); + return false; - } - return false; + } + return $this->getWettbewerbeinladung(); } //------------------------------------------------------------------------------------------------- - function unloadWettbewerbeinladungen($match_id=null) + function unloadWettbewerbeinladungen() { - $this->result=array(); - $this->errormsg=''; - - if (!is_null($match_id)) - $this->match_id=$match_id; - - if (empty($this->match_id) || is_null($this->match_id)) + $this->setError(''); + $cSchemaSQL=$this->getschemaSQL(); + + $match_id=$this->getMatch_id(); + if (empty($match_id)) { - $this->errormsg = 'Keine Match ID gefunden!'; + $this->setError('Keine Match ID gefunden!'); return false; } - - $qry=""; - $qry.="delete from ".$this->schemaSQL.".tbl_match "; + $qry=""; + $qry.="delete from ".$cSchemaSQL."tbl_match "; $qry.=" * "; - $qry.=" where tbl_match.match_id='".addslashes(trim($this->match_id))."' "; + $qry.=" where tbl_match.match_id='".addslashes(trim($match_id))."' "; + if($this->db_query($qry)) { + $this->setWettbewerbeinladung(null); return true; - } + } else { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen der Wettbewerbstypen'; - return false; - } - return false; - } + $this->setError($this->db_last_error()); - + return false; + } + return true; + } } // Class komune_wettbewerb Ende ?> \ No newline at end of file diff --git a/include/komune_wettbewerbteam.class.php b/include/komune_wettbewerbteam.class.php index 6be9b79b7..526f14fcd 100644 --- a/include/komune_wettbewerbteam.class.php +++ b/include/komune_wettbewerbteam.class.php @@ -35,157 +35,163 @@ * @return - kein Retourn des Konstruktors * */ - -require_once(dirname(__FILE__).'/basis_db.class.php'); -class komune_wettbewerbteam extends basis_db +require_once(dirname(__FILE__).'/basis_db.class.php'); +class komune_wettbewerbteam extends basis_db { - public $result; - public $new=false; // boolean - + public $new; + public $newWettbewerbteam; + public $wettbewerbteam; - public $wbtyp_kurzbz; - -// tbl_team - public $team_kurzbz; //character varying(16) - public $bezeichnung; //character varying(128) - public $beschreibung; //text - public $logo; //text + public $uid; + public $team_kurzbz; + public $team_kurzbz_old; + public $wettbewerb_kurzbz; -// tbl_teambenutzer - public $uid; // varying(16) - // im tbl_team public $team_kurzbz //character - -//tbl_wettbewerbteam - // im tbl_team public $team_kurzbz; // character varying(16) - public $rang; // smallint Alter Drop - public $punkte; // numeric(8,2) Alter Drop - public $wettbewerb_kurzb; // character varying(16) - - public $schemaSQL="kommune"; // string Datenbankschema - -//-----Konstruktor - function __construct($wbtyp_kurzbz="",$wettbewerb_kurzbz="",$uid="",$team_kurzbz="") + public $schemaSQL="kommune."; // string Datenbankschema +//-----Konstruktor + function __construct($uid="",$team_kurzbz="",$wettbewerb_kurzbz="") { - parent::__construct(); - - $this->InitWettbewerb(); - - $this->wbtyp_kurzbz=$wbtyp_kurzbz; - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - $this->uid=$uid; - $this->team_kurzbz=$team_kurzbz; + parent::__construct(); + + $this->InitWettbewerbteam(); + + $this->setuid($uid); + $this->setTeam_kurzbz($team_kurzbz); + $this->setWettbewerb_kurzbz($wettbewerb_kurzbz); } + //-----Initialisierung-------------------------------------------------------------------------------------------- - function InitWettbewerb() + function InitWettbewerbteam() { - $this->new=false; - $this->errormsg=''; - $this->result=array(); + $this->setError(''); - $this->wbtyp_kurzbz=''; - $this->wettbewerb_kurzbz=''; - $this->uid=''; - - - $this->team_kurzbz=''; - $this->bezeichnung=''; - $this->beschreibung=''; - $this->logo=''; - - $this->rang='1'; - $this->punkte='0'; + $this->setNewWettbewerbteam(''); + $this->setWettbewerbteam(''); + + $this->setuid(''); + $this->setTeam_kurzbz(''); + $this->setTeam_kurzbz_old(''); + $this->setWettbewerb_kurzbz(''); } - -//------------------------------------------------------------------------------------------------- -// ------------------------ Wettbewerbteam -//------------------------------------------------------------------------------------------------- - -//------------------------------------------------------------------------------------------------- - function saveWettbewerbteam() - { - // Initialisieren - $this->errormsg=''; - $qry=""; - - $fildsList=''; - $fildsValue=''; - -/* - tbl_wettbewerbteam - public $team_kurzbz; // character varying(16) - public $wettbewerb_kurzb; // character varying(16) - public $rang; // smallint Alter Drop - public $punkte; // numeric(8,2) Alter Drop -*/ - - if (empty($this->wettbewerb_kurzb) || $this->wettbewerb_kurzb==null ) - { - $this->errormsg='Wettbewerb fehlt!'; - return false; - } - if (empty($this->team_kurzbz) || $this->team_kurzbz==null ) - { - $this->errormsg='Teambezeichnung fehlt!'; - return false; - } - if (!is_numeric($this->rang)) - $this->rang= - if (!is_numeric($this->punkte)) - $this->punkte=0; - - if($this->new) - { - - $fildsList.='team_kurzbz,'; - $fildsList.='wettbewerb_kurzb,'; - $fildsList.='rang,'; - $fildsList.='punkte'; - - $fildsValue.="'".addslashes($this->team_kurzbz)."',"; - $fildsValue.="'".addslashes($this->wettbewerb_kurzb)."',"; - $fildsValue.="".addslashes($this->rang).","; - $fildsValue.="".addslashes($this->punkte).""; - $qry=" insert into ".$this->schemaSQL.".tbl_wettbewerbtyp (".$fildsList.") values (".$fildsValue."); "; - } - else - { - $fildsValue.=(!empty($fildsValue)?',':'')."bezeichnung='".addslashes($this->bezeichnung)."'"; - $fildsValue.=(!empty($fildsValue)?',':'')."farbe='".addslashes($this->farbe)."'"; + +//-----NewRecord-------------------------------------------------------------------------------------------- + function getNewRecord() + { + return $this->new; + } + function setNewRecord($switch) + { + $this->new=$switch; + } + +//-----Error-------------------------------------------------------------------------------------------- + function getError() + { + return $this->errormsg; + } + function setError($err) + { + $this->errormsg=$err; + } +//-----schemaSQL-------------------------------------------------------------------------------------------- + function getSchemaSQL() + { + return $this->schemaSQL; + } + function setSchemaSQL($schemaSQL) + { + $this->schemaSQL=$schemaSQL; + } +//-----Neuer Datensatz-------------------------------------------------------------------------------------------- + function getNewWettbewerbteam() + { + return $this->newWettbewerbteam; + } + function setNewWettbewerbteam($newWettbewerbteam) + { + $this->newWettbewerbteam=$newWettbewerbteam; + } +//-----Aenderung Datensatz wird wie Neuanlage gehandhabt ------------------------------------------------------------- + function getUpdWettbewerbteam() + { + return $this->newWettbewerbteam; + } + function setUpdWettbewerbteam($newWettbewerbteam) + { + $this->newWettbewerbteam=trim($newWettbewerbteam); + } +//-----Aktueller Datensatz-------------------------------------------------------------------------------------------- + function getWettbewerbteam() + { + return $this->wettbewerbteam; + } + function setWettbewerbteam($wettbewerbteam) + { + $this->wettbewerbteam=$wettbewerbteam; + } +//-----team_kurzbz-------------------------------------------------------------------------------------------- + function getTeam_kurzbz() + { + return $this->team_kurzbz; + } + function setTeam_kurzbz($team_kurzbz) + { + $this->team_kurzbz=trim($team_kurzbz); + } +//-----team_kurzbz-------------------------------------------------------------------------------------------- + function getTeam_kurzbz_old() + { + return $this->team_kurzbz_old; + } + function setTeam_kurzbz_old($team_kurzbz_old) + { + $this->team_kurzbz_old=trim($team_kurzbz_old); + } +//-----uid-------------------------------------------------------------------------------------------- + function getUid() + { + return $this->uid; + } + function setUid($uid) + { + $this->uid=trim($uid); + } +//-----wettbewerb_kurzbz-------------------------------------------------------------------------------------------- + function getWettbewerb_kurzbz() + { + return $this->wettbewerb_kurzbz; + } + function setWettbewerb_kurzbz($wettbewerb_kurzbz="") + { + $this->wettbewerb_kurzbz=trim($wettbewerb_kurzbz); + } +//------------------------------------------------------------------------------------------------- + function saveWettbewerbteam($newWettbewerbteam="") + { + // Initialisierung + $this->setError(''); + + // Plausib + if (!empty($newWettbewerbteam)) + $this->setNewWettbewerbteam($newWettbewerbteam); - $qry.=" update ".$this->schemaSQL.".tbl_wettbewerbtyp set "; - $qry.=$fildsValue; - $qry.=" where wbtyp_kurzbz='".addslashes($this->wbtyp_kurzbz)."' "; - } - if($resurce=$this->db_query($qry)) - return $resurce; - else - { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim speichern des Datensatzes '; - return false; - } - - - - return false; - if (!is_array($this->getNewWettbewerbteam())) { - $this->errormsg='Kein Wettbewerbsteam übergeben'; + $this->setError('Kein Wettbewerbsteam übergeben'); return false; } $newWettbewerbteam=$this->getNewWettbewerbteam(); // Daten uebernahme $cSchemaSQL=$this->getSchemaSQL(); - $this->team_kurzbz=$this->getTeam_kurzbz(); + $cTeam_kurzbz=$this->getTeam_kurzbz(); // Aenderungen muessen mit dem Team_kurzbz_old gekennzeichnet werden. Ansonst koennten falsche Daten geaendert werden - $this->team_kurzbz_old=$this->getTeam_kurzbz_old(); + $cTeam_kurzbz_old=$this->getTeam_kurzbz_old(); - $cUserUID=$this->uid; // Vor der Verarbeitung sicherstellen das Alle Anwender gelesen werden - $this->uid=''; + $cUserUID=$this->getUid(); // Vor der Verarbeitung sicherstellen das Alle Anwender gelesen werden + $this->setUid(''); $this->setNewRecord(false); if (!$origWettbewerbteam=$this->loadWettbewerbteam()) @@ -197,18 +203,18 @@ class komune_wettbewerbteam extends basis_db $this->setUid($cUserUID); unset($cUserUID); - if ($origWettbewerbteam && empty($this->team_kurzbz_old)) // Datenrec bereits vorhanden + if ($origWettbewerbteam && empty($cTeam_kurzbz_old)) // Datenrec bereits vorhanden { - $this->setError('Das Team '.$this->team_kurzbz.' ist bereits angelegt!'); + $this->setError('Das Team '.$cTeam_kurzbz.' ist bereits angelegt!'); return false; } $bTmpNewRecord=$this->getNewRecord(); // Neuanlage Switch sichern // Aus dem Array newWettbewerbteam die Teaminformationen heraus holen - $this->wettbewerb_kurzbz=(isset($newWettbewerbteam['wettbewerb_kurzbz']) ? $newWettbewerbteam['wettbewerb_kurzbz'] : ''); - if (empty($this->wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=(isset($newWettbewerbteam[0]['wettbewerb_kurzbz']) ? $newWettbewerbteam[0]['wettbewerb_kurzbz'] : ''); + $cWettbewerb_kurzbz=(isset($newWettbewerbteam['wettbewerb_kurzbz']) ? $newWettbewerbteam['wettbewerb_kurzbz'] : ''); + if (empty($cWettbewerb_kurzbz)) + $cWettbewerb_kurzbz=(isset($newWettbewerbteam[0]['wettbewerb_kurzbz']) ? $newWettbewerbteam[0]['wettbewerb_kurzbz'] : ''); $team_bezeichnung=(isset($newWettbewerbteam['bezeichnung']) ? $newWettbewerbteam['bezeichnung'] : ''); $team_beschreibung=(isset($newWettbewerbteam['beschreibung']) ? $newWettbewerbteam['beschreibung'] : ''); @@ -225,31 +231,26 @@ class komune_wettbewerbteam extends basis_db } - $qry="select * from ".$this->schemaSQL.".tbl_teambenutzer , ".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry="select * from ".$cSchemaSQL."tbl_teambenutzer , ".$cSchemaSQL."tbl_wettbewerbteam "; $qry.=" where tbl_wettbewerbteam.team_kurzbz =tbl_teambenutzer.team_kurzbz "; - $qry.=" and not ( UPPER(tbl_teambenutzer.team_kurzbz)=E'".addslashes(trim(strtoupper($this->team_kurzbz_old)))."' and UPPER(tbl_teambenutzer.team_kurzbz)=E'".addslashes(trim(strtoupper($this->team_kurzbz)))."' ) "; + $qry.=" and not ( UPPER(tbl_teambenutzer.team_kurzbz)='".addslashes(trim(strtoupper($cTeam_kurzbz_old)))."' and UPPER(tbl_teambenutzer.team_kurzbz)='".addslashes(trim(strtoupper($cTeam_kurzbz)))."' ) "; $qry.=" and UPPER(tbl_teambenutzer.uid) in ('".strtoupper(implode("','",$array_userUID))."') "; - $qry.=" and UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz)=E'".addslashes(trim(strtoupper($this->wettbewerb_kurzbz)))."' ; "; + $qry.=" and UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz)='".addslashes(trim(strtoupper($cWettbewerb_kurzbz)))."' ; "; // Datenbankabfrage - $this->setStringSQL($qry); - unset($qry); - $this->setResultSQL(null); - if ($this->fetch_all()) + if($this->db_query($qry)) + { + $rows=array(); + while($row = $this->db_fetch_array()) { - $qry=$this->getResultSQL(); - $this->setResultSQL(null); -# exit(kommune_Test($qry)); - if (is_array($qry)) - { - for ($zeileIND=0;$zeileINDsetError(sprintf('Der Spieler %s wurde bereits im Team %s im Wettbewerb %s gefunden ! ',$qry[$zeileIND]['uid'],$qry[$zeileIND]['team_kurzbz'],$qry[$zeileIND]['wettbewerb_kurzbz'])); - return false; - } + $this->setError(sprintf('Der Spieler %s wurde bereits im Team %s im Wettbewerb %s gefunden ! ',$row['uid'],$row['team_kurzbz'],$row['wettbewerb_kurzbz'])); + return false; } + + } $arrTmpCheckUID=array(); // Aus dem Array nur die Belegten UIDs suchen for ($zeileIND=0;$zeileINDsetNewRecord($bTmpNewRecord); - $qry="BEGIN; "; + + $this->db_query(" BEGIN; "); + + $qry=""; // Neuanlage - Insert if ($this->getNewRecord()) { - $qry.=" INSERT into ".$this->schemaSQL.".tbl_team (team_kurzbz,bezeichnung,beschreibung,logo) VALUES (E'".addslashes(trim($this->team_kurzbz))."',E'".addslashes(trim($team_bezeichnung))."',E'".addslashes(trim($team_beschreibung))."',E'".addslashes(trim($team_logo))."'); "; + $qry.=" INSERT into ".$cSchemaSQL."tbl_team (team_kurzbz,bezeichnung,beschreibung,logo) VALUES ('".addslashes(trim($cTeam_kurzbz))."','".addslashes(trim($team_bezeichnung))."','".addslashes(trim($team_beschreibung))."','".addslashes(trim($team_logo))."'); "; for ($zeileIND=0;$zeileINDschemaSQL.".tbl_teambenutzer (uid, team_kurzbz) VALUES (E'".addslashes(trim($array_userUID[$zeileIND]))."',E'".addslashes(trim($this->team_kurzbz))."'); "; + $qry.=" INSERT into ".$cSchemaSQL."tbl_teambenutzer (uid, team_kurzbz) VALUES ('".addslashes(trim($array_userUID[$zeileIND]))."','".addslashes(trim($cTeam_kurzbz))."'); "; } - $qry.=" INSERT into ".$this->schemaSQL.".tbl_wettbewerbteam (team_kurzbz, wettbewerb_kurzbz,rang,punkte) VALUES (E'".$this->team_kurzbz."',E'".addslashes(trim($this->wettbewerb_kurzbz))."',(select 1+count(wettbewerb_kurzbz) from ".$this->schemaSQL.".tbl_wettbewerbteam where rang<9999 and upper(wettbewerb_kurzbz)=upper(E'".addslashes(trim($this->wettbewerb_kurzbz))."')),0); "; + $qry.=" INSERT into ".$cSchemaSQL."tbl_wettbewerbteam (team_kurzbz, wettbewerb_kurzbz,rang,punkte) VALUES ('".$cTeam_kurzbz."','".addslashes(trim($cWettbewerb_kurzbz))."',(select 1+count(wettbewerb_kurzbz) from ".$cSchemaSQL."tbl_wettbewerbteam where rang<9999 and upper(wettbewerb_kurzbz)=upper('".addslashes(trim($cWettbewerb_kurzbz))."')),0); "; } else @@ -280,11 +284,11 @@ class komune_wettbewerbteam extends basis_db # if ($team_logo==null) $team_logo=(isset($origWettbewerbteam[0]['logo']) ? $origWettbewerbteam[0]['logo'] : null); # if ($team_rang==null) $team_rang=(isset($origWettbewerbteam[0]['rang']) ? $origWettbewerbteam[0]['rang'] : null); - $qry.=" UPDATE ".$this->schemaSQL.".tbl_team "; - $qry.=" set team_kurzbz=E'".addslashes(trim($this->team_kurzbz))."',bezeichnung=E'".addslashes(trim($team_bezeichnung))."',beschreibung=E'".addslashes(trim($team_beschreibung))."'".($team_logo!=null?",logo=E'".addslashes(trim($team_logo))."'":""); - $qry.=" WHERE upper(team_kurzbz)=upper(E'".$this->team_kurzbz_old."'); "; + $qry.=" UPDATE ".$cSchemaSQL."tbl_team "; + $qry.=" set team_kurzbz='".addslashes(trim($cTeam_kurzbz))."',bezeichnung='".addslashes(trim($team_bezeichnung))."',beschreibung='".addslashes(trim($team_beschreibung))."'".($team_logo!=null?",logo='".addslashes($team_logo)."'":""); + $qry.=" WHERE upper(team_kurzbz)=upper('".$cTeam_kurzbz_old."'); "; - $qry.=" UPDATE ".$this->schemaSQL.".tbl_wettbewerbteam set team_kurzbz=E'".addslashes(trim($this->team_kurzbz))."'".($team_rang!=null?",rang=".$team_rang:"")." WHERE upper(team_kurzbz)=upper(E'".$this->team_kurzbz_old."'); "; + $qry.=" UPDATE ".$cSchemaSQL."tbl_wettbewerbteam set team_kurzbz='".addslashes(trim($cTeam_kurzbz))."'".($team_rang!=null?",rang=".$team_rang:"")." WHERE upper(team_kurzbz)=upper('".$cTeam_kurzbz_old."'); "; // Alle bisher bestehenden DB-Eintraege in Array lesen fuer spaeteren vergleich ob Update/Delete reset($origWettbewerbteam); @@ -303,12 +307,12 @@ class komune_wettbewerbteam extends basis_db $cTmpUID=trim($array_userUID[$zeileIND]); if (isset($arrTmpCheckUID->$cTmpUID)) { - $qry.=" UPDATE ".$this->schemaSQL.".tbl_teambenutzer set team_kurzbz=E'".addslashes(trim($this->team_kurzbz))."' WHERE UPPER(uid)=UPPER(E'".addslashes($cTmpUID)."') AND upper(team_kurzbz)=upper(E'".$this->team_kurzbz_old."'); "; + $qry.=" UPDATE ".$cSchemaSQL."tbl_teambenutzer set team_kurzbz='".addslashes(trim($cTeam_kurzbz))."' WHERE UPPER(uid)=UPPER('".addslashes($cTmpUID)."') AND upper(team_kurzbz)=upper('".$cTeam_kurzbz_old."'); "; unset($arrTmpCheckUID->$cTmpUID); } elseif (!isset($arrTmpCheckUID->$cTmpUID)) { - $qry.=" INSERT into ".$this->schemaSQL.".tbl_teambenutzer (uid, team_kurzbz) VALUES (E'".addslashes(trim($cTmpUID))."',E'".addslashes(trim($this->team_kurzbz))."'); "; + $qry.=" INSERT into ".$cSchemaSQL."tbl_teambenutzer (uid, team_kurzbz) VALUES ('".addslashes(trim($cTmpUID))."','".addslashes(trim($cTeam_kurzbz))."'); "; } } @@ -316,139 +320,99 @@ class komune_wettbewerbteam extends basis_db if (isset($array_userUID)) unset($array_userUID); // Alle die noch in der DB-Alt Array sind muessen geloeschte sein while (list( $key, $value ) = each($arrTmpCheckUID) ) - $qry.=" DELETE from ".$this->schemaSQL.".tbl_teambenutzer WHERE UPPER(uid)=UPPER(E'".addslashes($value)."') AND upper(team_kurzbz)=upper(E'".$this->team_kurzbz_old."'); "; + $qry.=" DELETE from ".$cSchemaSQL."tbl_teambenutzer WHERE UPPER(uid)=UPPER('".addslashes($value)."') AND upper(team_kurzbz)=upper('".$cTeam_kurzbz_old."'); "; if (isset($key)) unset($key); if (isset($value)) unset($value); if (isset($arrTmpCheckUID)) unset($arrTmpCheckUID); } - $qry.=" COMMIT; "; -# exit("
".$qry); - - // Datenbankabfrage - $this->setStringSQL($qry); - unset($qry); - - $this->setResultSQL(null); - if (!$this->dbQuery()) - return false; - if (!$this->loadWettbewerbteam()) + if($this->db_query($qry)) { - if ($this->getError()) // Beim Lesen ist ein Fehler aufgetreten + $this->db_query(" COMMIT; "); + if (!$this->loadWettbewerbteam()) + { return false; - $this->setNewRecord(true); + } } - - $this->setResultSQL(null); - return $this->getWettbewerbteam(); + else + { + $this->db_query(" ROLLBACK; "); + $this->setError($this->db_last_error()); + return false; + } + return $this->getWettbewerbteam(); } //------------------------------------------------------------------------------------------------- - function loadWettbewerbteam($wbtyp_kurzbz=null,$wettbewerb_kurzbz=null,$uid=null,$team_kurzbz=null) + function loadWettbewerbteam() { - // Initialisierung - $this->result=array(); - $this->errormsg=''; + $this->setError(''); - if (!is_null($wbtyp_kurzbz)) - $this->wbtyp_kurzbz=$wbtyp_kurzbz; + $cSchemaSQL=$this->getSchemaSQL(); + $tmpUid=$this->getUid(); - if (!is_null($wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - - if (!is_null($uid)) - $this->uid=$uid; + $cTeam_kurzbz=$this->getTeam_kurzbz_old(); + if (empty($cTeam_kurzbz)) + $cTeam_kurzbz=$this->getTeam_kurzbz(); - if (!is_null($team_kurzbz)) - $this->team_kurzbz=$team_kurzbz; + $cWettbewerb_kurzbz=$this->getWettbewerb_kurzbz(); $qry=""; - $qry.="SELECT * FROM ".$this->schemaSQL.".tbl_teambenutzer,".$this->schemaSQL.".tbl_team,".$this->schemaSQL.".tbl_wettbewerbteam "; + $qry.="SELECT * FROM ".$cSchemaSQL."tbl_teambenutzer,".$cSchemaSQL."tbl_team,".$cSchemaSQL."tbl_wettbewerbteam "; $qry.=" WHERE UPPER(tbl_team.team_kurzbz)=UPPER(tbl_teambenutzer.team_kurzbz) "; $qry.=" AND UPPER(tbl_wettbewerbteam.team_kurzbz)=UPPER(tbl_team.team_kurzbz) "; + // Check wie Postgre darauf reagiert Performenc $qry.=" AND UPPER(tbl_wettbewerbteam.team_kurzbz)=UPPER(tbl_teambenutzer.team_kurzbz) "; - if (!empty($this->team_kurzbz)) - $qry.=" AND UPPER(tbl_teambenutzer.team_kurzbz)=UPPER(E'".$this->team_kurzbz."') "; - - if (!empty($this->uid)) - $qry.=" AND UPPER(tbl_teambenutzer.uid)=UPPER(E'".addslashes($this->uid)."') "; + if (!empty($cTeam_kurzbz)) + $qry.=" AND UPPER(tbl_teambenutzer.team_kurzbz)=UPPER('".$cTeam_kurzbz."') "; + + if (!empty($tmpUid)) + $qry.=" AND UPPER(tbl_teambenutzer.uid)=UPPER('".addslashes($tmpUid)."') "; // Suche nach einem einzigen Wettbewerb - if (!is_array($this->wettbewerb_kurzbz) && !empty($this->wettbewerb_kurzbz) ) + if (!is_array($cWettbewerb_kurzbz) && !empty($cWettbewerb_kurzbz) ) { - $qry.=" AND UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz)=UPPER(E'".$this->wettbewerb_kurzbz."') "; + $qry.=" AND UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz)=UPPER('".$cWettbewerb_kurzbz."') "; } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) + elseif (is_array($cWettbewerb_kurzbz) && count($cWettbewerb_kurzbz)>0 ) { - $qry.=" AND UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz) in (E'".strtoupper(implode("','",$this->wettbewerb_kurzbz))."') "; + if (isset($cWettbewerb_kurzbz[0]['wettbewerb_kurzbz'])) // Check ob nicht kpl. Tablestruck in Array + { + $tmpWETTBEWERB=array(); + for ($indZEILE=0;$indZEILEdb_query($qry)) { - while($row = $this->db_fetch_object()) + $rows=array(); + while($row = $this->db_fetch_array()) { - $this->result[]=$row; + $rows[]=$row; } - return $this->result; - } + $this->setWettbewerbteam($rows); + } else { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen der Wettbewerbstypen'; + $this->setError($this->db_last_error()); + return false; - } - return false; + } + return $this->getWettbewerbteam(); } +} // Class komune_wettbewerbteam Ende - -//------------------------------------------------------------------------------------------------- - function loadMaxRang($wettbewerb_kurzbz=null) - { - // Initialisierung - $this->result=array(); - $this->errormsg=''; - - - if (!is_null($wettbewerb_kurzbz)) - $this->wettbewerb_kurzbz=$wettbewerb_kurzbz; - - $qry=""; - $qry.="SELECT max(rang) as max FROM ".$this->schemaSQL.".tbl_teambenutzer "; - $qry.=" WHERE rang > 0 "; - // Suche nach einem einzigen Wettbewerb - if (!is_array($this->wettbewerb_kurzbz) && !empty($this->wettbewerb_kurzbz) ) - { - $qry.=" AND UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz)=UPPER(E'".$this->wettbewerb_kurzbz."') "; - } - elseif (is_array($this->wettbewerb_kurzbz) && count($this->wettbewerb_kurzbz)>0 ) - { - $qry.=" AND UPPER(tbl_wettbewerbteam.wettbewerb_kurzbz) in (E'".strtoupper(implode("','",$this->wettbewerb_kurzbz))."') "; - } - -exit($qry); - - // Entfernen der Temporaeren Variablen aus dem Speicher - if($this->db_query($qry)) - { - while($row = $this->db_fetch_object()) - { - $this->result=$row->max; - } - return $this->result; - } - else - { - if (empty($this->errormsg)) - $this->errormsg = 'Fehler beim lesen des letzten Range im Wettbewerb '; - return 0; - } - return 0; - } - - -} ?> \ No newline at end of file