* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
// ---------------- Konstante
// ---------------- Datenbank - Schema der Kommune, Wettbewerbe
// Max. Wettbewerbe je Zeile am Starttemplate
if (!defined('constMaxWettbwerbeZeile')) define('constMaxWettbwerbeZeile',5 );
// Pflichteingabefelder Defaultwert
if (!defined('constEingabeFehlt')) define('constEingabeFehlt','Eingabe !' );
// HREF Parameter fuer die Include Auswahl
if (!defined('constKommuneParmSetWork')) define('constKommuneParmSetWork','userSel' );
// ------ Anzeige - Display Include HTML Datenerzeugen
// Auswahl Kommunen Template :: Anzeigenauswahl :: Definition mit constKommuneParmSetWork
if (!defined('constKommuneAnzeigeDEFAULT')) define('constKommuneAnzeigeDEFAULT','kommune_template_start');
// Anzeige Wettbewerb Team(s) in Pyramidenform
if (!defined('constKommuneAnzeigeWETTBEWERBTEAM')) define('constKommuneAnzeigeWETTBEWERBTEAM','kommune_template_pyramiden');
// Neuanlage Teamspieler zu einem Wettbewerb
if (!defined('constKommuneWartungUID')) define('constKommuneWartungUID','kommune_wartung_team' );
// Neuanlage Teamspieler zu einem Wettbewerb
if (!defined('constKommuneEinladenTEAM')) define('constKommuneEinladenTEAM','kommune_einladen_team' );
// Bildausgabe lt.Datenbank
if (!defined('constKommuneDisplayIMAGE')) define('constKommuneDisplayIMAGE','kommune_hex_img' );
// Statistik - Bestenliste - Sonstiges
if (!defined('constKommuneSTATISTIK')) define('constKommuneSTATISTIK','kommune_template_statistik' );
// XML User Liste
if (!defined('constKommuneUserXML')) define('constKommuneUserXML','kommune_user_xml' );
// ---------------- CIS Include Dateien einbinden
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/globals.inc.php');
// ---------------- Datenbank-Verbindung
# include_once('../../../include/postgre_sql.class.php');
include_once('../../../include/komune_wettbewerb.class.php');
include_once('../../../include/komune_wettbewerbteam.class.php');
include_once('../../../include/komune_wettbewerbeinladungen.class.php');
include_once('../../../include/person.class.php');
include_once('../../../include/benutzer.class.php');
// Kommunen Allg.Funktionen
include_once('kommune_funktionen.inc.php');
// ---------------- Anzeige/Ausgabe Variable Initialisieren
// Initialisieren Anzeige-Variable
$showHTML='';
// Kommunen - Wettbewerb - Datenobjekt -----------------------------------------------------------------------------------------------------------
// Datenobjekt - Alle Daten je Parameter werden gesammelt fuer die neachste Funktionn
$oWettbewerb= new stdClass;
// DB Open
$oWettbewerb->sqlCONN=@pg_pconnect(CONN_STRING) or die('
Keine Wettbewerbe zurzeit Online. Bitte etwas Geduld. Danke
');// Datenbankverbindung
// Parameter DB Schema
$oWettbewerb->sqlSCHEMA='kommune';
# $oWettbewerb->sqlSCHEMA='public';
// Parameter ClientEncode
$oWettbewerb->clientENCODE=(defined('CONN_CLIENT_ENCODING')?CONN_CLIENT_ENCODING:'LATIN9');
$oWettbewerb->clientENCODE = (isset($_REQUEST['client_encode']) ? $_REQUEST['client_encode']:$oWettbewerb->clientENCODE);
// Parameter Applikation - Template Auswahl
$oWettbewerb->workSITE = (isset($_REQUEST[constKommuneParmSetWork]) ? $_REQUEST[constKommuneParmSetWork] : constKommuneAnzeigeDEFAULT);
$oWettbewerb->workSITE = (!empty($oWettbewerb->workSITE) ? trim($oWettbewerb->workSITE):constKommuneAnzeigeDEFAULT);
// AktiverAnwender-----------------------------------------------------------------------------------------------------------
$userUID=(isset($_REQUEST['userUID']) ? $_REQUEST['userUID'] :get_uid() );
# $userUID='pam';
# $userUID='oesi';
# $userUID='ruhan';
# $userUID='kindlm';
$oWettbewerb->userUID=$userUID;
$pers=kommune_funk_benutzerperson($oWettbewerb->userUID,$oWettbewerb);
if (isset($pers->nachname)) $oWettbewerb->PersonenBenutzer[$oWettbewerb->userUID]=$pers;
// Teams -------------------------------------------------------------------------------------------------------------------
// Parameter Team (zum Wettbewerb)
$oWettbewerb->team_kurzbz=(isset($_REQUEST['team_kurzbz']) ? $_REQUEST['team_kurzbz']:'');
$oWettbewerb->team_kurzbz=(isset($_REQUEST['team_forderer']) ? $_REQUEST['team_forderer']:$oWettbewerb->team_kurzbz);
$oWettbewerb->team_kurzbz=trim($oWettbewerb->team_kurzbz);
// Spieler/Team Wartung
$oWettbewerb->team_kurzbz_old=(isset($_REQUEST['team_kurzbz_old']) ? $_REQUEST['team_kurzbz_old']:'');;
$oWettbewerb->team_kurzbz_old=trim($oWettbewerb->team_kurzbz_old);
// Einladung an Spieler/Team
$oWettbewerb->team_kurzbz_einladung=(isset($_REQUEST['einladen_team_kurzbz']) ? $_REQUEST['einladen_team_kurzbz']:'');
$oWettbewerb->team_kurzbz_einladung=(isset($_REQUEST['team_gefordert']) ? $_REQUEST['team_gefordert']:$oWettbewerb->team_kurzbz_einladung);
$oWettbewerb->team_kurzbz_einladung=(isset($_REQUEST['team_kurzbz_einladen']) ? $_REQUEST['team_kurzbz_einladen']:$oWettbewerb->team_kurzbz_einladung);
$oWettbewerb->team_kurzbz_einladung=trim($oWettbewerb->team_kurzbz_einladung);
// -------------------------------------------------------------------------------------------------------------------------
// Wettbewerb ---------------------------------------------------------------------------------------------------------------
// Parameter Wettbewerb - Type
$oWettbewerb->wbtyp_kurzbz=(isset($_REQUEST['wbtyp_kurzbz']) ? $_REQUEST['wbtyp_kurzbz']:'');
$oWettbewerb->wbtyp_kurzbz=trim($oWettbewerb->wbtyp_kurzbz);
// Parameter Wettbewerb
$oWettbewerb->wettbewerb_kurzbz=(isset($_REQUEST['wettbewerb_kurzbz']) ? $_REQUEST['wettbewerb_kurzbz']:'');
$oWettbewerb->wettbewerb_kurzbz=trim($oWettbewerb->wettbewerb_kurzbz);
// -------------------------------------------------------------------------------------------------------------------------
$oWettbewerb->WettbewerbTyp=array(); // Alle Daten des Wettbewerb
$oWettbewerb->Wettbewerb=array(); // Alle Daten des Wettbewerb
$oWettbewerb->EigeneWettbewerbe=array(); // Eigene Wettbewerbe auf UID Basis
//kommune_funk_teams
$oWettbewerb->TeamGesamt=array(); // Alle Teams in diesem Wettbewerb (=wettbewerb_kurzbz), oder Alle wenn wettbewerb_kurzbz leer ist
//kommune_funk_anwenderteams
$oWettbewerb->TeamAnwender=array(); // Alle Wettbewerbe zum angemeldeten Anwende (Alle Teams der uid)
// ----------- Team Key => team_kurzbz
//kommune_funk_teambenutzer 1x Datensatz je team_kurzbz
$oWettbewerb->Team=array(); // Alle Teams (ein DatenArray je Team Key => team_kurzbz) Achtung! nur ein Benutzer im Array (verwende TeamBenutzer) !
//kommune_funk_teambenutzer Alle Datensaetze je team_kurzbz
$oWettbewerb->TeamBenutzer=array(); // Alle Teammitglieder (ein Datensatz je Team Key => team_kurzbz)
// Match -------------------------------------------------------------------------------------------------------------------
$oWettbewerb->match_id=(isset($_REQUEST['match_id']) ? $_REQUEST['match_id']:'');
$oWettbewerb->match_id=trim($oWettbewerb->match_id);
$oWettbewerb->Einladung=array(); // Alle Daten zur Einladung
$oWettbewerb->EinladungVonTeam=array(); // Alle Teaminformation des Einladenten Teams
$oWettbewerb->EinladungAnTeam=array(); // Alle Teaminformation des Eingeladenen Teams
$oWettbewerb->Forderungen=array(); // Forderungen an Andere Teams
$oWettbewerb->Spiele=array(); // Forderungen
$oWettbewerb->Error=array(); // Fehlermeldungen
// Benutzer Personen Gen. -------------------------------------------------------------------------------------------------------------------
$oWettbewerb->PersonenBenutzer=array(); // Personendaten je Spieler ( Key => userid )
// ---------------- Kommunen Standart Include Dateien einbinden
// Anzeige Templates mittels Include Laden
if (trim($oWettbewerb->workSITE)!=constKommuneAnzeigeDEFAULT)
{
$includeFILE=strtolower($oWettbewerb->workSITE.".inc.php");
if (file_exists($includeFILE))// Check ob das Verarbeitungs-Include File vorhanden ist
include_once($includeFILE);
}
// Fuer die Bildfunktion werden keine Datenbenoetigt, und nach Verarbeitung beenden
if (trim($oWettbewerb->workSITE)==constKommuneDisplayIMAGE)
{
createIMGfromHEX(&$oWettbewerb);
exit;
}
// Fuer die Bildfunktion werden keine Datenbenoetigt, und nach Verarbeitung beenden
if (trim($oWettbewerb->workSITE)==constKommuneUserXML)
{
if (empty($userUID))
exit('Keine Daten ');
exit( (isset($pers->nachname)?$pers->nachname:"$userUID falsch!"));
}
#exit($_SERVER["HTTP_REFERER"].kommune_Test($_SERVER).(isset($_SERVER["HTTP_REFERER"])? str_replace(strstr($_SERVER["HTTP_REFERER"],'?'),'?userSel='.constKommuneUserXML,$_SERVER["HTTP_REFERER"]):''));
// -------------------------------------------------------------------------------------------------------------------------
// HTML Ausgabe Datenstrom Teil I Header
$cTmpCharSet=(defined('HTML_HEADER_CHARSET')?HTML_HEADER_CHARSET:'iso-8859-1');
if (stristr($oWettbewerb->clientENCODE,"UTF8"))
$cTmpCharSet="UTF-8";
elseif (stristr($oWettbewerb->clientENCODE,"UTF16"))
$cTmpCharSet="UTF-16";
$showHTML='
Kommune '.$oWettbewerb->workSITE.'
';
//-------------- Datenlesen
// Daten Wettbewerb ermitteln /include kommune_funktionen.inc.php
kommune_funk_wettbewerb(&$oWettbewerb);
kommune_funk_eigene_wettbewerb(&$oWettbewerb);
kommune_funk_team_wettbewerbe(&$oWettbewerb);
// Daten Teams ermitteln /include kommune_funktionen.inc.php
kommune_funk_teams(&$oWettbewerb); // TeamGesamt
kommune_funk_anwenderteams(&$oWettbewerb); // TeamAnwender
kommune_funk_teambenutzer(&$oWettbewerb); // Team, TeamBenutzer
// Daten Anzeige und Verarbeitung
$showHTML.=showMenueFunktion($oWettbewerb);
// Fehler - Error Ausgabe
$showHTML.='
';
for ($iTmpZehler=0;$iTmpZehlerError);$iTmpZehler++)
{
if (!empty($oWettbewerb->Error[$iTmpZehler]))
$showHTML.='
'. $oWettbewerb->Error[$iTmpZehler].'
';
}
$showHTML.='
';
$showHTML.='';
$iTmpCompress=0;
echo $encode = getenv("HTTP_ACCEPT_ENCODING");
if(ereg("gzip",$encode) || ereg("x-gzip",$encode)) {
//zlib.output_compression = 1 , zlib.output_compression_level = 9
if (@ini_get( 'zlib.output_compression' ))
{
@ini_set('zlib.output_compression_level',5);
@ob_end_clean();
@ob_start();
@ob_implicit_flush(0);
$iTmpCompress=3;
}
// ob_gzhandler() requires the zlib extension,output_handler = ,output_buffering=On
If (empty($iTmpCompress) && extension_loaded("zlib") && @ini_get('output_buffering'))
{
@ob_end_clean();
If (@ob_start('ob_gzhandler'))
{
$iTmpCompress=2;
}
}
} // Ende If HTTP_ACCEPT_ENCODING"
// output_buffering=On and not zlib extension
if (empty($iTmpCompress) && @ob_start())
{
@ob_end_clean();
$iTmpCompress=1;
}
if ($iTmpCompress==1)
{
@ob_end_flush();
}
elseif ($iTmpCompress==2)
{
@ob_end_clean();
header("Content-Encoding: gzip");
$str = ob_gzhandler ( $showHTML, 5 );
if($str===false)
exit('ob_gzhandler() returns false.');
else
exit("$str");
}
else if ($iTmpCompress==4)
{
print_r($showHTML);
$gzip_size= @ob_get_length();
$gzip_contents = @ob_get_clean(); // PHP < 4.3 use ob_get_contents() + ob_end_clean()
@ob_end_clean();
@header('Content-length: '.$gzip_size);
if(strpos(' '.$_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip') !== false) {
@header('Content-Encoding: x-gzip');
} else if(strpos(' '.$_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false) {
@header('Content-Encoding: gzip');
}
echo "\x1f\x8b\x08\x00\x00\x00\x00\x00",
substr(gzcompress($gzip_contents, $iTmpCompressLevel), 0, - 4), // substr -4 isn't needed
pack('V', crc32($gzip_contents)), // crc32 and
pack('V', $gzip_size); // size are ignored by all the browsers i have tested
@flush();
}
else if ($iTmpCompress==3)
{
print_r($showHTML);
$gzip_size= @ob_get_length();
$gzip_contents = @ob_get_clean(); // PHP < 4.3 use ob_get_contents() + ob_end_clean()
@ob_end_clean();
@header('Content-length: '.$gzip_size);
if(strpos(' '.$_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip') !== false) {
@header('Content-Encoding: x-gzip');
} else if(strpos(' '.$_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false) {
@header('Content-Encoding: gzip');
}
// open file for writing with maximum compression
$filename="erp_". time().".gz" ;
$zp = gzopen($filename, "w9");
// write string to file
gzwrite($zp, $gzip_contents);
// close file
gzclose($zp);
// open file for reading
$zp = gzopen($filename, "r");
// read 3 char
echo gzread($zp, $gzip_size);
// output until end of the file and close it.
gzpassthru($zp);
gzclose($zp);
echo "\n";
unlink($filename);
@flush();
}
else
exit($showHTML);
?>