From 04973d1fa148381978b1251d10118e6bab86f435 Mon Sep 17 00:00:00 2001 From: Philip Häusler Date: Mon, 13 Jun 2011 18:05:51 +0200 Subject: moved public files to public, old and yet untouched files to directories ending with _old --- includes/error_handler.php | 125 -- includes/funktion_SendMessenges.php | 14 - includes/funktion_cron.php | 131 --- includes/funktion_db.php | 145 --- includes/funktion_db_list.php | 62 - includes/funktion_jabber.php | 1853 ------------------------------ includes/funktion_modem.php | 34 - includes/funktion_schichtplan_beamer.php | 180 --- includes/funktion_xml.php | 152 --- includes/funktion_xml_room.php | 61 - includes/funktion_xml_schudle.php | 309 ----- includes/header.php | 102 -- 12 files changed, 3168 deletions(-) delete mode 100644 includes/error_handler.php delete mode 100644 includes/funktion_SendMessenges.php delete mode 100644 includes/funktion_cron.php delete mode 100644 includes/funktion_db.php delete mode 100644 includes/funktion_db_list.php delete mode 100644 includes/funktion_jabber.php delete mode 100644 includes/funktion_modem.php delete mode 100644 includes/funktion_schichtplan_beamer.php delete mode 100644 includes/funktion_xml.php delete mode 100644 includes/funktion_xml_room.php delete mode 100644 includes/funktion_xml_schudle.php delete mode 100644 includes/header.php (limited to 'includes') diff --git a/includes/error_handler.php b/includes/error_handler.php deleted file mode 100644 index 42e561fc..00000000 --- a/includes/error_handler.php +++ /dev/null @@ -1,125 +0,0 @@ - $v) - if((strpos( "0$k", "sql") > 0) || (strpos( "0$k", "SQL") > 0)) - $Temp .= "Error Context: $k = $v\n"; - - if((strpos( "0$error_string", "MySQL") > 0)) - $Temp .= "Error MySQL: ". mysql_error($con). "\n"; - - // Uebergeben des arrays - array_push($error_messages, "Error Number: " . $error_number . "\n". - "Error String: " . $error_string . "\n". - "Error File: " . $error_file . "\n". - "Error Line: " . $error_line . "\n". - (strlen($Temp)? "$Temp": "")); - } - - // register error handler - set_error_handler("Error_Handler"); - - error_reporting(E_ALL); - - if($debug) { - ini_set("display_errors", "On"); - ini_set("display_startup_errors", "On"); - ini_set("html_errors", "On"); - } - - // send errors - function send_errors() { - global $error_messages; - - if(!$error_messages) - return; - - $message = ""; - foreach($error_messages as $value) - $message .= $value."\n"; - - $message .= "\n"; - - if(isset($_POST)) { - foreach ($_POST as $k => $v) - $message .= "_POST: $k = ". ( $k!="password"? $v : "???..."). "\n"; - - $message .= "\n"; - } - - if(isset($_GET)) { - foreach ($_GET as $k => $v) - $message .= "_GET: $k = $v\n"; - - $message .= "\n"; - } - - $message .= "\n\n"; - - if( isset( $_SESSION)) - { - foreach ($_SESSION as $k => $v ) - $message .= "_SESSION: $k = $v\n"; - $message .= "\n"; - } - - if( isset( $_SESSION['CVS'])) - { - foreach ($_SESSION['CVS'] as $k => $v ) - if( strlen($k)>3 ) - $message .= "_SESSION['CVS']: $k = $v\n"; - $message .= "\n"; - } - - foreach ($_SERVER as $k => $v ) - if( strpos( "0$k", "SERVER_")==0) - $message .= "_SERVER: $k = $v\n"; - - send_message($message); - - // display error messages on screen too for developers - if ($_SESSION['CVS']['admin/debug.php']=='Y') - { - echo "
\n".$message."
"; - } - -} - - register_shutdown_function("send_errors"); - - // send jabber message and email - function send_message(&$message) - { - chdir(dirname(__FILE__)); - require_once('../config/config_jabber.php'); - - if (isset($jabber_recipient) && count($jabber_recipient)) { - $jabber = new Jabber($server, $port, $username, $password, $resource); - if ($jabber->Connect() && $jabber->SendAuth()) { - foreach($jabber_recipient as $value) - { - $jabber->SendMessage($value, "normal", NULL, array("body" => $message, "subject" => "Error in Pentabarf"), NULL); - } - $jabber->Disconnect(); - } else { - array_push($message, "Couldn't connect to Jabber Server."); - } - } - - if (isset($mail_recipient) && count($mail_recipient)) { - foreach($mail_recipient as $to) { - mail($to, isset($mail_subject) ? $mail_subject : "Pentabarf Error", $message); - } - } - } - -?> diff --git a/includes/funktion_SendMessenges.php b/includes/funktion_SendMessenges.php deleted file mode 100644 index b6de67cc..00000000 --- a/includes/funktion_SendMessenges.php +++ /dev/null @@ -1,14 +0,0 @@ - diff --git a/includes/funktion_cron.php b/includes/funktion_cron.php deleted file mode 100644 index 3a0e984b..00000000 --- a/includes/funktion_cron.php +++ /dev/null @@ -1,131 +0,0 @@ - $v) { - $o.= "$k=" . urlencode(utf8_encode($v)) . "&"; - } - - $post_data = substr($o, 0, -1); - - $ch = curl_init(); - curl_setopt($ch, CURLOPT_POST, 1); - curl_setopt($ch, CURLOPT_HEADER, 0); - curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); - curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); - $result = curl_exec($ch); - echo curl_error($ch); - curl_close($ch); - } else { - // IAX file Schareiebn - $CallFile = $Tempdir. "/call_". date("Ymd_His"). "_$DECTnumber"; - - if($DebugDECT) - echo "IAX create file for dialing Number $DECTnumber\n"; - - $file = fopen( $CallFile, 'w'); - - if($file != false) { - fputs($file, "Channel: SIP/$DECTnumber@$IAXserver\n"); - fputs($file, "Callerid: Engelserver\n"); - fputs($file, "Extension: s\n"); - fputs($file, "MaxRetries: 1\n"); - fputs($file, "RetryTime: 10\n"); - fputs($file, "SetVar: msg=$Message\n"); - fclose($file); - system("chmod 777 " . $CallFile); - system("mv " . $CallFile . " " . $AsteriskOutputDir); - } else - echo "error: $CallFile not created"; - } - } else - if($DebugDECT) - echo "IAX is disable\n"; - } - - function DialNumberModem($DECTnumber, $Time) { - global $AnrufDelay; - - // Parameter verarbeiten - $TimeH = substr($Time, 11, 2); - $TimeM = substr($Time, 14, 2); - $TimeM = substr($Time, 14, 2) + $AnrufDelay; - - if($TimeM < 0) { - $TimeM += 60; - $TimeH -= 1; - } - - if($TimeH < 0) - $TimeH += 24; - - if(strlen( $TimeH) == 1) - $TimeH = "0" . $TimeH; - - SetWackeup($DECTnumber, $TimeH, $TimeM); - } -?> diff --git a/includes/funktion_db.php b/includes/funktion_db.php deleted file mode 100644 index ffd7d6a2..00000000 --- a/includes/funktion_db.php +++ /dev/null @@ -1,145 +0,0 @@ -"; - $Diff .= ""; - - for ($m = 0 ; $m < $Anzahl_Felder ; $m++) - $Diff .= "". mysql_field_name($Erg, $m). ""; - - $Diff .= ""; - - for ($n = 0 ; $n < $Zeilen ; $n++) { - $Diff .= ""; - - for ($m = 0 ; $m < $Anzahl_Felder ; $m++) - $Diff .= "".mysql_result($Erg, $n, $m). ""; - - $Diff .= ""; - } - - $Diff .= ""; - return $Diff; - } - - function db_querry_getDatenAssocArray($SQL) { - global $con; - - $Erg = mysql_query($SQL, $con); - echo mysql_error($con); - - $Daten = array(); - - for( $i=0; $i $Data1) { - if(isset( $Daten2[$DataKey])) { - $Data2 = $Daten2[$DataKey]; - - foreach($Data1 as $key => $value) - if( $value != $Data2[$key]) { - $Gefunden = true; - $Diff .= "\n$key\n$value\n" . $Data2[$key] . "\n"; - } - } else - foreach($Data1 as $key => $value) { - $Gefunden = true; - $Diff .= "\n$key\n$value\n\n"; - } - } - - $Diff .= "\n"; - - if($Gefunden) - return $Diff; - else - return "\nno changes Fount\n"; - } - - function db_query( $SQL, $comment) { - global $con, $Page; - $Diff = ""; - - // commed anlyse udn daten sicherung - if(strpos("#$SQL", "UPDATE") > 0) { - // Tabellen name ermitteln - $Table_Start = strpos( $SQL, "`"); - $Table_End = strpos( $SQL, "`", $Table_Start+1); - $Table = substr( $SQL, $Table_Start, ($Table_End-$Table_Start+1)); - - //SecureTest - if( $Table_Start == 0 || $Table_End == 0) die("

funktion_db ERROR SQL: '$SQL' nicht OK

"); - - //WHERE ermitteln - $Where_Start = strpos( $SQL, "WHERE"); - $Where = substr( $SQL, $Where_Start); - if( $Where_Start == 0) $Where = ";"; - - if( strlen( $Where) < 2) - { - $Diff = "can't show, too mutch data (no filter was set)"; - $querry_erg = mysql_query($SQL, $con); - } - else - { - $Daten1 = db_querry_getDatenAssocArray( "SELECT * FROM $Table $Where"); - $querry_erg = mysql_query($SQL, $con); - $Daten2 = db_querry_getDatenAssocArray( "SELECT * FROM $Table $Where"); - $Diff = db_querry_diffDaten($Daten1, $Daten2); - } - } - elseif( strpos( "#$SQL", "DELETE") > 0) - { - $TableWhere = substr( $SQL, 6); - $Diff .= Ausgabe_Daten( "SELECT * $TableWhere"); - - //execute command - $querry_erg = mysql_query($SQL, $con); - } - elseif( strpos( "#$SQL", "INSERT") > 0) - { - //execute command - $querry_erg = mysql_query($SQL, $con); - } - else - { - //execute command - $querry_erg = mysql_query($SQL, $con); - } - - $SQLCommand = "SQL:
". htmlentities( $SQL, ENT_QUOTES); - if( strlen($Diff) > 0) - $SQLCommand .= "

Diff:
$Diff"; - - $Commend = htmlentities( ($Page["Name"]. ": ". $comment), ENT_QUOTES); - //LOG commands in DB - $SQL_SEC = "INSERT INTO `ChangeLog` ( `UID` , `SQLCommad` , `Commend` ) ". - " VALUES ( '". $_SESSION['UID']. "', ". - "'". mysql_escape_string( $SQLCommand). "', ". - "'". mysql_escape_string( $Commend). "' );"; - $erg = mysql_query($SQL_SEC, $con); - echo mysql_error($con); - return $querry_erg; - }//function db_query( -} - -?> diff --git a/includes/funktion_db_list.php b/includes/funktion_db_list.php deleted file mode 100644 index 35bb7255..00000000 --- a/includes/funktion_db_list.php +++ /dev/null @@ -1,62 +0,0 @@ -"; - $html .= "DB: $Table_Name"; - - $html .= ""; - for ($m = 0; $m < $Anzahl_Felder; $m++) { - $html .= "" . mysql_field_name($Erg, $m) . ""; - } - $html .= ""; - - for ($n = 0; $n < $Zeilen; $n++) { - $html .= ""; - for ($m = 0; $m < $Anzahl_Felder; $m++) { - $html .= "" . mysql_result($Erg, $n, $m) . ""; - } - $html .= ""; - } - $html .= ""; - return $html; -} - -function funktion_db_element_list_2row($TopicName, $SQL) { - $html = ""; - $html .= "\n"; - $html .= ""; - # $html .= "\n"; - - $Erg = sql_query($SQL); - - $html .= ""; - for ($m = 0; $m < mysql_num_fields($Erg); $m++) { - $html .= ""; - } - $html .= ""; - - for ($n = 0; $n < mysql_num_rows($Erg); $n++) { - $html .= ""; - for ($m = 0; $m < mysql_num_fields($Erg); $m++) { - $html .= ""; - } - $html .= ""; - } - $html .= "
$TopicName

$TopicName

" . mysql_field_name($Erg, $m) . "
" . mysql_result($Erg, $n, $m) . "
\n"; - return $html; -} -?> diff --git a/includes/funktion_jabber.php b/includes/funktion_jabber.php deleted file mode 100644 index 9c699d70..00000000 --- a/includes/funktion_jabber.php +++ /dev/null @@ -1,1853 +0,0 @@ -server = $server; - $this->port = $port; - - $this->username = $username; - $this->password = $password; - $this->resource = $resource; - - $this->enable_logging = FALSE; - $this->log_array = array(); - $this->log_filename = ''; - $this->log_filehandler = FALSE; - - $this->packet_queue = array(); - $this->subscription_queue = array(); - - $this->iq_sleep_timer = 1; - $this->delay_disconnect = 1; - - $this->returned_keep_alive = TRUE; - $this->txnid = 0; - - $this->iq_version_name = "Class.Jabber.PHP -- http://cjphp.netflint.net -- by Nathan 'Fritzy' Fritz, fritz@netflint.net"; - $this->iq_version_version = "0.4"; - $this->iq_version_os = $_SERVER['SERVER_SOFTWARE']; - - $this->connection_class = "CJP_StandardConnector"; - - $this->error_codes = array(400 => "Bad Request", - 401 => "Unauthorized", - 402 => "Payment Required", - 403 => "Forbidden", - 404 => "Not Found", - 405 => "Not Allowed", - 406 => "Not Acceptable", - 407 => "Registration Required", - 408 => "Request Timeout", - 409 => "Conflict", - 500 => "Internal Server Error", - 501 => "Not Implemented", - 502 => "Remove Server Error", - 503 => "Service Unavailable", - 504 => "Remove Server Timeout", - 510 => "Disconnected"); - } - - - - function Connect() - { - $this->_create_logfile(); - - $this->CONNECTOR = new $this->connection_class; - - if ($this->CONNECTOR->OpenSocket($this->server, $this->port)) - { - $this->SendPacket("\n"); - $this->SendPacket("\n"); - - sleep(2); - - if ($this->_check_connected()) - { - $this->connected = TRUE; // Nathan Fritz - return TRUE; - } - else - { - $this->AddToLog("ERROR: Connect() #1"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: Connect() #2"); - return FALSE; - } - } - - - - function Disconnect() - { - if (is_int($this->delay_disconnect)) - { - sleep($this->delay_disconnect); - } - - $this->SendPacket(""); - $this->CONNECTOR->CloseSocket(); - - $this->_close_logfile(); - $this->PrintLog(); - } - - - - function SendAuth() - { - $this->auth_id = "auth_" . md5(time() . $_SERVER['REMOTE_ADDR']); - - $this->resource = ($this->resource != NULL) ? $this->resource : ("Class.Jabber.PHP " . md5($this->auth_id)); - $this->jid = "{$this->username}@{$this->server}/{$this->resource}"; - - // request available authentication methods - $payload = "{$this->username}"; - $packet = $this->SendIq(NULL, 'get', $this->auth_id, "jabber:iq:auth", $payload); - - // was a result returned? - if ($this->GetInfoFromIqType($packet) == 'result' && $this->GetInfoFromIqId($packet) == $this->auth_id) - { - // yes, now check for auth method availability in descending order (best to worst) - - if (!function_exists('mhash')) - { - $this->AddToLog("ATTENTION: SendAuth() - mhash() is not available; screw 0k and digest method, we need to go with plaintext auth"); - } - - // auth_0k - if (function_exists('mhash') && isset($packet['iq']['#']['query'][0]['#']['sequence'][0]["#"]) && isset($packet['iq']['#']['query'][0]['#']['token'][0]["#"])) - { - return $this->_sendauth_0k($packet['iq']['#']['query'][0]['#']['token'][0]["#"], $packet['iq']['#']['query'][0]['#']['sequence'][0]["#"]); - } - // digest - elseif (function_exists('mhash') && isset($packet['iq']['#']['query'][0]['#']['digest'])) - { - return $this->_sendauth_digest(); - } - // plain text - elseif ($packet['iq']['#']['query'][0]['#']['password']) - { - return $this->_sendauth_plaintext(); - } - // dude, you're fucked - { - $this->AddToLog("ERROR: SendAuth() #2 - No auth method available!"); - return FALSE; - } - } - else - { - // no result returned - $this->AddToLog("ERROR: SendAuth() #1"); - return FALSE; - } - } - - - - function AccountRegistration($reg_email = NULL, $reg_name = NULL) - { - $packet = $this->SendIq($this->server, 'get', 'reg_01', 'jabber:iq:register'); - - if ($packet) - { - $key = $this->GetInfoFromIqKey($packet); // just in case a key was passed back from the server - unset($packet); - - $payload = "{$this->username} - {$this->password} - $reg_email - $reg_name\n"; - - $payload .= ($key) ? "$key\n" : ''; - - $packet = $this->SendIq($this->server, 'set', "reg_01", "jabber:iq:register", $payload); - - if ($this->GetInfoFromIqType($packet) == 'result') - { - if (isset($packet['iq']['#']['query'][0]['#']['registered'][0]['#'])) - { - $return_code = 1; - } - else - { - $return_code = 2; - } - - if ($this->resource) - { - $this->jid = "{$this->username}@{$this->server}/{$this->resource}"; - } - else - { - $this->jid = "{$this->username}@{$this->server}"; - } - - } - elseif ($this->GetInfoFromIqType($packet) == 'error' && isset($packet['iq']['#']['error'][0]['#'])) - { - // "conflict" error, i.e. already registered - if ($packet['iq']['#']['error'][0]['@']['code'] == '409') - { - $return_code = 1; - } - else - { - $return_code = "Error " . $packet['iq']['#']['error'][0]['@']['code'] . ": " . $packet['iq']['#']['error'][0]['#']; - } - } - - return $return_code; - - } - else - { - return 3; - } - } - - - - function SendPacket($xml) - { - $xml = trim($xml); - - if ($this->CONNECTOR->WriteToSocket($xml)) - { - $this->AddToLog("SEND: $xml"); - return TRUE; - } - else - { - $this->AddToLog('ERROR: SendPacket() #1'); - return FALSE; - } - } - - - - function Listen() - { - $incoming = ""; - - while ($line = $this->CONNECTOR->ReadFromSocket(4096)) - { - $incoming .= $line; - } - - $incoming = trim($incoming); - - if ($incoming != "") - { - $this->AddToLog("RECV: $incoming"); - } - - if ($incoming != "") - { - $temp = $this->_split_incoming($incoming); - - for ($a = 0; $a < count($temp); $a++) - { - $this->packet_queue[] = $this->xmlize($temp[$a]); - } - } - - return TRUE; - } - - - - function StripJID($jid = NULL) - { - preg_match("/(.*)\/(.*)/Ui", $jid, $temp); - return ($temp[1] != "") ? $temp[1] : $jid; - } - - - - function SendMessage($to, $type = "normal", $id = NULL, $content = NULL, $payload = NULL) - { - if ($to && is_array($content)) - { - if (!$id) - { - $id = $type . "_" . time(); - } - - $content = $this->_array_htmlspecialchars($content); - - $xml = "\n"; - - if (isset($content['subject'])) - { - $xml .= "" . $content['subject'] . "\n"; - } - - if (isset($content['thread'])) - { - $xml .= "" . $content['thread'] . "\n"; - } - - $xml .= "" . $content['body'] . "\n"; - $xml .= $payload; - $xml .= "\n"; - - - if ($this->SendPacket($xml)) - { - return TRUE; - } - else - { - $this->AddToLog("ERROR: SendMessage() #1"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: SendMessage() #2"); - return FALSE; - } - } - - - - function SendPresence($type = NULL, $to = NULL, $status = NULL, $show = NULL, $priority = NULL) - { - $xml = "\n" : " />\n"; - - $xml .= ($status) ? " $status\n" : ''; - $xml .= ($show) ? " $show\n" : ''; - $xml .= ($priority) ? " $priority\n" : ''; - - $xml .= ($status || $show || $priority) ? "\n" : ''; - - if ($this->SendPacket($xml)) - { - return TRUE; - } - else - { - $this->AddToLog("ERROR: SendPresence() #1"); - return FALSE; - } - } - - - - function SendError($to, $id = NULL, $error_number, $error_message = NULL) - { - $xml = "error_codes[$error_number]; - $xml .= "\n"; - $xml .= ""; - - $this->SendPacket($xml); - } - - - - function RosterUpdate() - { - $roster_request_id = "roster_" . time(); - - $incoming_array = $this->SendIq(NULL, 'get', $roster_request_id, "jabber:iq:roster"); - - if (is_array($incoming_array)) - { - if ($incoming_array['iq']['@']['type'] == 'result' - && $incoming_array['iq']['@']['id'] == $roster_request_id - && $incoming_array['iq']['#']['query']['0']['@']['xmlns'] == "jabber:iq:roster") - { - $number_of_contacts = count($incoming_array['iq']['#']['query'][0]['#']['item']); - $this->roster = array(); - - for ($a = 0; $a < $number_of_contacts; $a++) - { - $this->roster[$a] = array( "jid" => strtolower($incoming_array['iq']['#']['query'][0]['#']['item'][$a]['@']['jid']), - "name" => $incoming_array['iq']['#']['query'][0]['#']['item'][$a]['@']['name'], - "subscription" => $incoming_array['iq']['#']['query'][0]['#']['item'][$a]['@']['subscription'], - "group" => $incoming_array['iq']['#']['query'][0]['#']['item'][$a]['#']['group'][0]['#'] - ); - } - - return TRUE; - } - else - { - $this->AddToLog("ERROR: RosterUpdate() #1"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: RosterUpdate() #2"); - return FALSE; - } - } - - - - function RosterAddUser($jid = NULL, $id = NULL, $name = NULL) - { - $id = ($id) ? $id : "adduser_" . time(); - - if ($jid) - { - $payload = " SendIq(NULL, 'set', $id, "jabber:iq:roster", $payload); - - if ($this->GetInfoFromIqType($packet) == 'result') - { - $this->RosterUpdate(); - return TRUE; - } - else - { - $this->AddToLog("ERROR: RosterAddUser() #2"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: RosterAddUser() #1"); - return FALSE; - } - } - - - - function RosterRemoveUser($jid = NULL, $id = NULL) - { - $id = ($id) ? $id : 'deluser_' . time(); - - if ($jid && $id) - { - $packet = $this->SendIq(NULL, 'set', $id, "jabber:iq:roster", ""); - - if ($this->GetInfoFromIqType($packet) == 'result') - { - $this->RosterUpdate(); - return TRUE; - } - else - { - $this->AddToLog("ERROR: RosterRemoveUser() #2"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: RosterRemoveUser() #1"); - return FALSE; - } - } - - - - function RosterExistsJID($jid = NULL) - { - if ($jid) - { - if ($this->roster) - { - for ($a = 0; $a < count($this->roster); $a++) - { - if ($this->roster[$a]['jid'] == strtolower($jid)) - { - return $a; - } - } - } - else - { - $this->AddToLog("ERROR: RosterExistsJID() #2"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: RosterExistsJID() #1"); - return FALSE; - } - } - - - - function GetFirstFromQueue() - { - return array_shift($this->packet_queue); - } - - - - function GetFromQueueById($packet_type, $id) - { - $found_message = FALSE; - - foreach ($this->packet_queue as $key => $value) - { - if ($value[$packet_type]['@']['id'] == $id) - { - $found_message = $value; - unset($this->packet_queue[$key]); - - break; - } - } - - return (is_array($found_message)) ? $found_message : FALSE; - } - - - - function CallHandler($packet = NULL) - { - $packet_type = $this->_get_packet_type($packet); - - if ($packet_type == "message") - { - $type = $packet['message']['@']['type']; - $type = ($type != "") ? $type : "normal"; - $funcmeth = "Handler_message_$type"; - } - elseif ($packet_type == "iq") - { - $namespace = $packet['iq']['#']['query'][0]['@']['xmlns']; - $namespace = str_replace(":", "_", $namespace); - $funcmeth = "Handler_iq_$namespace"; - } - elseif ($packet_type == "presence") - { - $type = $packet['presence']['@']['type']; - $type = ($type != "") ? $type : "available"; - $funcmeth = "Handler_presence_$type"; - } - - - if ($funcmeth != '') - { - if (function_exists($funcmeth)) - { - call_user_func($funcmeth, $packet); - } - elseif (method_exists($this, $funcmeth)) - { - call_user_func(array(&$this, $funcmeth), $packet); - } - else - { - $this->Handler_NOT_IMPLEMENTED($packet); - $this->AddToLog("ERROR: CallHandler() #1 - neither method nor function $funcmeth() available"); - } - } - } - - - - function CruiseControl($seconds = -1) - { - $count = 0; - - while ($count != $seconds) - { - $this->Listen(); - - do { - $packet = $this->GetFirstFromQueue(); - - if ($packet) { - $this->CallHandler($packet); - } - - } while (count($this->packet_queue) > 1); - - $count += 0.25; - usleep(250000); - - if ($this->last_ping_time + 180 < time()) - { - // Modified by Nathan Fritz - if ($this->returned_keep_alive == FALSE) - { - $this->connected = FALSE; - $this->AddToLog('EVENT: Disconnected'); - } - if ($this->returned_keep_alive == TRUE) - { - $this->connected = TRUE; - } - - $this->returned_keep_alive = FALSE; - $this->keep_alive_id = 'keep_alive_' . time(); - //$this->SendPacket("", 'CruiseControl'); - $this->SendPacket(""); - // ** - - $this->last_ping_time = time(); - } - } - - return TRUE; - } - - - - function SubscriptionAcceptRequest($to = NULL) - { - return ($to) ? $this->SendPresence("subscribed", $to) : FALSE; - } - - - - function SubscriptionDenyRequest($to = NULL) - { - return ($to) ? $this->SendPresence("unsubscribed", $to) : FALSE; - } - - - - function Subscribe($to = NULL) - { - return ($to) ? $this->SendPresence("subscribe", $to) : FALSE; - } - - - - function Unsubscribe($to = NULL) - { - return ($to) ? $this->SendPresence("unsubscribe", $to) : FALSE; - } - - - - function SendIq($to = NULL, $type = 'get', $id = NULL, $xmlns = NULL, $payload = NULL, $from = NULL) - { - if (!preg_match("/^(get|set|result|error)$/", $type)) - { - unset($type); - - $this->AddToLog("ERROR: SendIq() #2 - type must be 'get', 'set', 'result' or 'error'"); - return FALSE; - } - elseif ($id && $xmlns) - { - $xml = "SendPacket($xml); - sleep($this->iq_sleep_timer); - $this->Listen(); - - return (preg_match("/^(get|set)$/", $type)) ? $this->GetFromQueueById("iq", $id) : TRUE; - } - else - { - $this->AddToLog("ERROR: SendIq() #1 - to, id and xmlns are mandatory"); - return FALSE; - } - } - - - - // get the transport registration fields - // method written by Steve Blinch, http://www.blitzaffe.com - function TransportRegistrationDetails($transport) - { - $this->txnid++; - $packet = $this->SendIq($transport, 'get', "reg_{$this->txnid}", "jabber:iq:register", NULL, $this->jid); - - if ($packet) - { - $res = array(); - - foreach ($packet['iq']['#']['query'][0]['#'] as $element => $data) - { - if ($element != 'instructions' && $element != 'key') - { - $res[] = $element; - } - } - - return $res; - } - else - { - return 3; - } - } - - - - // register with the transport - // method written by Steve Blinch, http://www.blitzaffe.com - function TransportRegistration($transport, $details) - { - $this->txnid++; - $packet = $this->SendIq($transport, 'get', "reg_{$this->txnid}", "jabber:iq:register", NULL, $this->jid); - - if ($packet) - { - $key = $this->GetInfoFromIqKey($packet); // just in case a key was passed back from the server - unset($packet); - - $payload = ($key) ? "$key\n" : ''; - foreach ($details as $element => $value) - { - $payload .= "<$element>$value\n"; - } - - $packet = $this->SendIq($transport, 'set', "reg_{$this->txnid}", "jabber:iq:register", $payload); - - if ($this->GetInfoFromIqType($packet) == 'result') - { - if (isset($packet['iq']['#']['query'][0]['#']['registered'][0]['#'])) - { - $return_code = 1; - } - else - { - $return_code = 2; - } - } - elseif ($this->GetInfoFromIqType($packet) == 'error') - { - if (isset($packet['iq']['#']['error'][0]['#'])) - { - $return_code = "Error " . $packet['iq']['#']['error'][0]['@']['code'] . ": " . $packet['iq']['#']['error'][0]['#']; - $this->AddToLog('ERROR: TransportRegistration()'); - } - } - - return $return_code; - } - else - { - return 3; - } - } - - - - function GetvCard($jid = NULL, $id = NULL) - { - if (!$id) - { - $id = "vCard_" . md5(time() . $_SERVER['REMOTE_ADDR']); - } - - if ($jid) - { - $xml = " - - "; - - $this->SendPacket($xml); - sleep($this->iq_sleep_timer); - $this->Listen(); - - return $this->GetFromQueueById("iq", $id); - } - else - { - $this->AddToLog("ERROR: GetvCard() #1 - to and id are mandatory"); - return FALSE; - } - } - - - - function PrintLog() - { - if ($this->enable_logging) - { - if ($this->log_filehandler) - { - echo "

Logging enabled, logged events have been written to the file {$this->log_filename}.

\n"; - } - else - { - echo "

Logging enabled, logged events below:

\n"; - echo "
\n";
-        echo (count($this->log_array) > 0) ? implode("\n\n\n", $this->log_array) : "No logged events.";
-        echo "
\n"; - } - } - } - - - - // ====================================================================== - // private methods - // ====================================================================== - - - - function _sendauth_0k($zerok_token, $zerok_sequence) - { - // initial hash of password - $zerok_hash = mhash(MHASH_SHA1, $this->password); - $zerok_hash = bin2hex($zerok_hash); - - // sequence 0: hash of hashed-password and token - $zerok_hash = mhash(MHASH_SHA1, $zerok_hash . $zerok_token); - $zerok_hash = bin2hex($zerok_hash); - - // repeat as often as needed - for ($a = 0; $a < $zerok_sequence; $a++) - { - $zerok_hash = mhash(MHASH_SHA1, $zerok_hash); - $zerok_hash = bin2hex($zerok_hash); - } - - $payload = "{$this->username} - $zerok_hash - {$this->resource}"; - - $packet = $this->SendIq(NULL, 'set', $this->auth_id, "jabber:iq:auth", $payload); - - // was a result returned? - if ($this->GetInfoFromIqType($packet) == 'result' && $this->GetInfoFromIqId($packet) == $this->auth_id) - { - return TRUE; - } - else - { - $this->AddToLog("ERROR: _sendauth_0k() #1"); - return FALSE; - } - } - - - - function _sendauth_digest() - { - $payload = "{$this->username} - {$this->resource} - " . bin2hex(mhash(MHASH_SHA1, $this->stream_id . $this->password)) . ""; - - $packet = $this->SendIq(NULL, 'set', $this->auth_id, "jabber:iq:auth", $payload); - - // was a result returned? - if ($this->GetInfoFromIqType($packet) == 'result' && $this->GetInfoFromIqId($packet) == $this->auth_id) - { - return TRUE; - } - else - { - $this->AddToLog("ERROR: _sendauth_digest() #1"); - return FALSE; - } - } - - - - function _sendauth_plaintext() - { - $payload = "{$this->username} - {$this->password} - {$this->resource}"; - - $packet = $this->SendIq(NULL, 'set', $this->auth_id, "jabber:iq:auth", $payload); - - // was a result returned? - if ($this->GetInfoFromIqType($packet) == 'result' && $this->GetInfoFromIqId($packet) == $this->auth_id) - { - return TRUE; - } - else - { - $this->AddToLog("ERROR: _sendauth_plaintext() #1"); - return FALSE; - } - } - - - - function _listen_incoming() - { - $incoming = ""; - - while ($line = $this->CONNECTOR->ReadFromSocket(4096)) - { - $incoming .= $line; - } - - $incoming = trim($incoming); - - if ($incoming != "") - { - $this->AddToLog("RECV: $incoming"); - } - - return $this->xmlize($incoming); - } - - - - function _check_connected() - { - $incoming_array = $this->_listen_incoming(); - - if (is_array($incoming_array)) - { - if ($incoming_array["stream:stream"]['@']['from'] == $this->server - && $incoming_array["stream:stream"]['@']['xmlns'] == "jabber:client" - && $incoming_array["stream:stream"]['@']["xmlns:stream"] == "http://etherx.jabber.org/streams") - { - $this->stream_id = $incoming_array["stream:stream"]['@']['id']; - - return TRUE; - } - else - { - $this->AddToLog("ERROR: _check_connected() #1"); - return FALSE; - } - } - else - { - $this->AddToLog("ERROR: _check_connected() #2"); - return FALSE; - } - } - - - - function _get_packet_type($packet = NULL) - { - if (is_array($packet)) - { - reset($packet); - $packet_type = key($packet); - } - - return ($packet_type) ? $packet_type : FALSE; - } - - - - function _split_incoming($incoming) - { - $temp = preg_split("/<(message|iq|presence|stream)/", $incoming, -1, PREG_SPLIT_DELIM_CAPTURE); - $array = array(); - - for ($a = 1; $a < count($temp); $a = $a + 2) - { - $array[] = "<" . $temp[$a] . $temp[($a + 1)]; - } - - return $array; - } - - - - function _create_logfile() - { - if ($this->log_filename != '' && $this->enable_logging) - { - $this->log_filehandler = fopen($this->log_filename, 'w'); - } - } - - - - function AddToLog($string) - { - if ($this->enable_logging) - { - if ($this->log_filehandler) - { - #fwrite($this->log_filehandler, $string . "\n\n"); - print "$string \n\n"; - } - else - { - $this->log_array[] = htmlspecialchars($string); - } - } - } - - - - function _close_logfile() - { - if ($this->log_filehandler) - { - fclose($this->log_filehandler); - } - } - - - - // _array_htmlspecialchars() - // applies htmlspecialchars() to all values in an array - - function _array_htmlspecialchars($array) - { - if (is_array($array)) - { - foreach ($array as $k => $v) - { - if (is_array($v)) - { - $v = $this->_array_htmlspecialchars($v); - } - else - { - $v = htmlspecialchars($v); - } - } - } - - return $array; - } - - - - // ====================================================================== - // parsers - // ====================================================================== - - - - function GetInfoFromMessageFrom($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['@']['from'] : FALSE; - } - - - - function GetInfoFromMessageType($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['@']['type'] : FALSE; - } - - - - function GetInfoFromMessageId($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['@']['id'] : FALSE; - } - - - - function GetInfoFromMessageThread($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['#']['thread'][0]['#'] : FALSE; - } - - - - function GetInfoFromMessageSubject($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['#']['subject'][0]['#'] : FALSE; - } - - - - function GetInfoFromMessageBody($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['#']['body'][0]['#'] : FALSE; - } - - function GetInfoFromMessageXMLNS($packet = NULL) - { - return (is_array($packet)) ? $packet['message']['#']['x'] : FALSE; - } - - - - function GetInfoFromMessageError($packet = NULL) - { - $error = preg_replace("/^\/$/", "", ($packet['message']['#']['error'][0]['@']['code'] . "/" . $packet['message']['#']['error'][0]['#'])); - return (is_array($packet)) ? $error : FALSE; - } - - - - // ====================================================================== - // parsers - // ====================================================================== - - - - function GetInfoFromIqFrom($packet = NULL) - { - return (is_array($packet)) ? $packet['iq']['@']['from'] : FALSE; - } - - - - function GetInfoFromIqType($packet = NULL) - { - return (is_array($packet)) ? $packet['iq']['@']['type'] : FALSE; - } - - - - function GetInfoFromIqId($packet = NULL) - { - return (is_array($packet)) ? $packet['iq']['@']['id'] : FALSE; - } - - - - function GetInfoFromIqKey($packet = NULL) - { - return (is_array($packet)) ? $packet['iq']['#']['query'][0]['#']['key'][0]['#'] : FALSE; - } - - - - function GetInfoFromIqError($packet = NULL) - { - $error = preg_replace("/^\/$/", "", ($packet['iq']['#']['error'][0]['@']['code'] . "/" . $packet['iq']['#']['error'][0]['#'])); - return (is_array($packet)) ? $error : FALSE; - } - - - - // ====================================================================== - // parsers - // ====================================================================== - - - - function GetInfoFromPresenceFrom($packet = NULL) - { - return (is_array($packet)) ? $packet['presence']['@']['from'] : FALSE; - } - - - - function GetInfoFromPresenceType($packet = NULL) - { - return (is_array($packet)) ? $packet['presence']['@']['type'] : FALSE; - } - - - - function GetInfoFromPresenceStatus($packet = NULL) - { - return (is_array($packet)) ? $packet['presence']['#']['status'][0]['#'] : FALSE; - } - - - - function GetInfoFromPresenceShow($packet = NULL) - { - return (is_array($packet)) ? $packet['presence']['#']['show'][0]['#'] : FALSE; - } - - - - function GetInfoFromPresencePriority($packet = NULL) - { - return (is_array($packet)) ? $packet['presence']['#']['priority'][0]['#'] : FALSE; - } - - - - // ====================================================================== - // handlers - // ====================================================================== - - - - function Handler_message_normal($packet) - { - $from = $packet['message']['@']['from']; - $this->AddToLog("EVENT: Message (type normal) from $from"); - } - - - - function Handler_message_chat($packet) - { - $from = $packet['message']['@']['from']; - $this->AddToLog("EVENT: Message (type chat) from $from"); - } - - - - function Handler_message_groupchat($packet) - { - $from = $packet['message']['@']['from']; - $this->AddToLog("EVENT: Message (type groupchat) from $from"); - } - - - - function Handler_message_headline($packet) - { - $from = $packet['message']['@']['from']; - $this->AddToLog("EVENT: Message (type headline) from $from"); - } - - - - function Handler_message_error($packet) - { - $from = $packet['message']['@']['from']; - $this->AddToLog("EVENT: Message (type error) from $from"); - } - - - - // ====================================================================== - // handlers - // ====================================================================== - - - - // application version updates - function Handler_iq_jabber_iq_autoupdate($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:autoupdate from $from"); - } - - - - // interactive server component properties - function Handler_iq_jabber_iq_agent($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:agent from $from"); - } - - - - // method to query interactive server components - function Handler_iq_jabber_iq_agents($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:agents from $from"); - } - - - - // simple client authentication - function Handler_iq_jabber_iq_auth($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:auth from $from"); - } - - - - // out of band data - function Handler_iq_jabber_iq_oob($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:oob from $from"); - } - - - - // method to store private data on the server - function Handler_iq_jabber_iq_private($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:private from $from"); - } - - - - // method for interactive registration - function Handler_iq_jabber_iq_register($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:register from $from"); - } - - - - // client roster management - function Handler_iq_jabber_iq_roster($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:roster from $from"); - } - - - - // method for searching a user database - function Handler_iq_jabber_iq_search($packet) - { - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: jabber:iq:search from $from"); - } - - - - // method for requesting the current time - function Handler_iq_jabber_iq_time($packet) - { - if ($this->keep_alive_id == $this->GetInfoFromIqId($packet)) - { - $this->returned_keep_alive = TRUE; - $this->connected = TRUE; - $this->AddToLog('EVENT: Keep-Alive returned, connection alive.'); - } - $type = $this->GetInfoFromIqType($packet); - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - $id = ($id != "") ? $id : "time_" . time(); - - if ($type == 'get') - { - $payload = "" . gmdate("Ydm\TH:i:s") . " - " . date("T") . " - " . date("Y/d/m h:i:s A") . ""; - - $this->SendIq($from, 'result', $id, "jabber:iq:time", $payload); - } - - $this->AddToLog("EVENT: jabber:iq:time (type $type) from $from"); - } - - - - // method for requesting version - function Handler_iq_jabber_iq_version($packet) - { - $type = $this->GetInfoFromIqType($packet); - $from = $this->GetInfoFromIqFrom($packet); - $id = $this->GetInfoFromIqId($packet); - $id = ($id != "") ? $id : "version_" . time(); - - if ($type == 'get') - { - $payload = "{$this->iq_version_name} - {$this->iq_version_os} - {$this->iq_version_version}"; - - #$this->SendIq($from, 'result', $id, "jabber:iq:version", $payload); - } - - $this->AddToLog("EVENT: jabber:iq:version (type $type) from $from -- DISABLED"); - } - - - - // keepalive method, added by Nathan Fritz - /* - function Handler_jabber_iq_time($packet) - { - if ($this->keep_alive_id == $this->GetInfoFromIqId($packet)) - { - $this->returned_keep_alive = TRUE; - $this->connected = TRUE; - $this->AddToLog('EVENT: Keep-Alive returned, connection alive.'); - } - } - */ - - - // ====================================================================== - // handlers - // ====================================================================== - - - - function Handler_presence_available($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - - $show_status = $this->GetInfoFromPresenceStatus($packet) . " / " . $this->GetInfoFromPresenceShow($packet); - $show_status = ($show_status != " / ") ? " ($addendum)" : ''; - - $this->AddToLog("EVENT: Presence (type: available) - $from is available $show_status"); - } - - - - function Handler_presence_unavailable($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - - $show_status = $this->GetInfoFromPresenceStatus($packet) . " / " . $this->GetInfoFromPresenceShow($packet); - $show_status = ($show_status != " / ") ? " ($addendum)" : ''; - - $this->AddToLog("EVENT: Presence (type: unavailable) - $from is unavailable $show_status"); - } - - - - function Handler_presence_subscribe($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - $this->SubscriptionAcceptRequest($from); - $this->RosterUpdate(); - - $this->log_array[] = "Presence: (type: subscribe) - Subscription request from $from, was added to \$this->subscription_queue, roster updated"; - } - - - - function Handler_presence_subscribed($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - $this->RosterUpdate(); - - $this->AddToLog("EVENT: Presence (type: subscribed) - Subscription allowed by $from, roster updated"); - } - - - - function Handler_presence_unsubscribe($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - $this->SendPresence("unsubscribed", $from); - $this->RosterUpdate(); - - $this->AddToLog("EVENT: Presence (type: unsubscribe) - Request to unsubscribe from $from, was automatically approved, roster updated"); - } - - - - function Handler_presence_unsubscribed($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - $this->RosterUpdate(); - - $this->AddToLog("EVENT: Presence (type: unsubscribed) - Unsubscribed from $from's presence"); - } - - - - // Added By Nathan Fritz - function Handler_presence_error($packet) - { - $from = $this->GetInfoFromPresenceFrom($packet); - $this->AddToLog("EVENT: Presence (type: error) - Error in $from's presence"); - } - - - - // ====================================================================== - // Generic handlers - // ====================================================================== - - - - // Generic handler for unsupported requests - function Handler_NOT_IMPLEMENTED($packet) - { - $packet_type = $this->_get_packet_type($packet); - $from = call_user_func(array(&$this, "GetInfoFrom" . ucfirst($packet_type) . "From"), $packet); - $id = call_user_func(array(&$this, "GetInfoFrom" . ucfirst($packet_type) . "Id"), $packet); - - $this->SendError($from, $id, 501); - $this->AddToLog("EVENT: Unrecognized <$packet_type/> from $from"); - } - - - - // ====================================================================== - // Third party code - // m@d pr0ps to the coders ;) - // ====================================================================== - - - - // xmlize() - // (c) Hans Anderson / http://www.hansanderson.com/php/xml/ - - function xmlize($data) - { - $vals = $index = $array = array(); - $parser = xml_parser_create('utf-8'); - xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); - xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1); - xml_parse_into_struct($parser, $data, $vals, $index); - xml_parser_free($parser); - - $i = 0; - - $tagname = $vals[$i]['tag']; - $array[$tagname]['@'] = $vals[$i]['attributes']; - $array[$tagname]['#'] = $this->_xml_depth($vals, $i); - - return $array; - } - - - - // _xml_depth() - // (c) Hans Anderson / http://www.hansanderson.com/php/xml/ - - function _xml_depth($vals, &$i) - { - $children = array(); - - if (isset($vals[$i]['value'])) - { - array_push($children, trim($vals[$i]['value'])); - } - - while (++$i < count($vals)) - { - switch ($vals[$i]['type']) - { - case 'cdata': - array_push($children, trim($vals[$i]['value'])); - break; - - case 'complete': - $tagname = $vals[$i]['tag']; - $size = isset($children[$tagname]) ? sizeof($children[$tagname]) : 0; - $children[$tagname][$size]['#'] = isset($vals[$i]['value']) ? trim($vals[$i]['value']) : ""; - if (isset($vals[$i]['attributes'])) - { - $children[$tagname][$size]['@'] = $vals[$i]['attributes']; - } - break; - - case 'open': - $tagname = $vals[$i]['tag']; - $size = isset($children[$tagname]) ? sizeof($children[$tagname]) : 0; - if ($vals[$i]['attributes']) - { - $children[$tagname][$size]['@'] = $vals[$i]['attributes']; - $children[$tagname][$size]['#'] = $this->_xml_depth($vals, $i); - } - else - { - $children[$tagname][$size]['#'] = $this->_xml_depth($vals, $i); - } - break; - - case 'close': - return $children; - break; - } - } - - return $children; - } - - - - // TraverseXMLize() - // (c) acebone@f2s.com, a HUGE help! - - function TraverseXMLize($array, $arrName = "array", $level = 0) - { - if ($level == 0) - { - echo "
";
-    }
-
-    while (list($key, $val) = @each($array))
-    {
-      if (is_array($val))
-      {
-        $this->TraverseXMLize($val, $arrName . "[" . $key . "]", $level + 1);
-      }
-      else
-      {
-        echo '$' . $arrName . '[' . $key . '] = "' . $val . "\"\n";
-      }
-    }
-
-    if ($level == 0)
-    {
-      echo "
"; - } - } -} - - - -class MakeXML extends Jabber -{ - - function MakeXML() - { - $nodes = array(); - } - - - - function AddPacketDetails($string, $value = NULL) - { - if (preg_match("/\(([0-9]*)\)$/i", $string)) - { - $string .= "/[\"#\"]"; - } - - $temp = @explode("/", $string); - - for ($a = 0; $a < count($temp); $a++) - { - $temp[$a] = preg_replace("/^[@]{1}([a-z0-9_]*)$/i", "[\"@\"][\"\\1\"]", $temp[$a]); - $temp[$a] = preg_replace("/^([a-z0-9_]*)\(([0-9]*)\)$/i", "[\"\\1\"][\\2]", $temp[$a]); - $temp[$a] = preg_replace("/^([a-z0-9_]*)$/i", "[\"\\1\"]", $temp[$a]); - } - - $node = implode("", $temp); - - // Yeahyeahyeah, I know it's ugly... get over it. ;) - echo "\$this->nodes$node = \"" . htmlspecialchars($value) . "\";
"; - eval("\$this->nodes$node = \"" . htmlspecialchars($value) . "\";"); - } - - - - function BuildPacket($array = NULL) - { - - if (!$array) - { - $array = $this->nodes; - } - - if (is_array($array)) - { - array_multisort($array, SORT_ASC, SORT_STRING); - - foreach ($array as $key => $value) - { - if (is_array($value) && $key == "@") - { - foreach ($value as $subkey => $subvalue) - { - $subvalue = htmlspecialchars($subvalue); - $text .= " $subkey='$subvalue'"; - } - - $text .= ">\n"; - - } - elseif ($key == "#") - { - $text .= htmlspecialchars($value); - } - elseif (is_array($value)) - { - for ($a = 0; $a < count($value); $a++) - { - $text .= "<$key"; - - if (!$this->_preg_grep_keys("/^@/", $value[$a])) - { - $text .= ">"; - } - - $text .= $this->BuildPacket($value[$a]); - - $text .= "\n"; - } - } - else - { - $value = htmlspecialchars($value); - $text .= "<$key>$value\n"; - } - } - - return $text; - } - } - - - - function _preg_grep_keys($pattern, $array) - { - while (list($key, $val) = each($array)) - { - if (preg_match($pattern, $key)) - { - $newarray[$key] = $val; - } - } - return (is_array($newarray)) ? $newarray : FALSE; - } -} - - - -class CJP_StandardConnector -{ - function OpenSocket($server, $port) - { - if ($this->active_socket = fsockopen($server, $port)) - { - socket_set_blocking($this->active_socket, 0); - socket_set_timeout($this->active_socket, 31536000); - - return TRUE; - } - else - { - return FALSE; - } - } - - - - function CloseSocket() - { - return fclose($this->active_socket); - } - - - - function WriteToSocket($data) - { - return fwrite($this->active_socket, $data); - } - - - - function ReadFromSocket($chunksize) - { - set_magic_quotes_runtime(0); - $buffer = fread($this->active_socket, $chunksize); - set_magic_quotes_runtime(get_magic_quotes_gpc()); - - return $buffer; - } -} - - - -?> diff --git a/includes/funktion_modem.php b/includes/funktion_modem.php deleted file mode 100644 index 8e93ebf4..00000000 --- a/includes/funktion_modem.php +++ /dev/null @@ -1,34 +0,0 @@ -$Number' was called
\n"; - - $fp = fopen( $ModemDev, "w"); - sleep(1); - fwrite( $fp, "+++"); - sleep(1); - fwrite( $fp, "ATZ\n"); - sleep(1); - fwrite( $fp, "ATX1\n"); - sleep(1); - fwrite( $fp, "ATD $Number \n"); - sleep(8); - fclose($fp); - sleep(1); - } - else - echo "Modem is Disable, number: '$Number' was not called
\n"; -} - - -function SetWackeup( $Number, $TimeH, $TimeM) -{ - global $WakeupNumber; - DialNumber( "$WakeupNumber$TimeH$TimeM$Number"); -} - -?> diff --git a/includes/funktion_schichtplan_beamer.php b/includes/funktion_schichtplan_beamer.php deleted file mode 100644 index 85c5ffe8..00000000 --- a/includes/funktion_schichtplan_beamer.php +++ /dev/null @@ -1,180 +0,0 @@ -\n"; - - $Out.= "\n". - "\n". - "\n". - "\n"; - - /////////////////////////////////////////////////////////////////// - // SQL abfrage für die benötigten schichten - /////////////////////////////////////////////////////////////////// - $SQL = "SELECT * FROM `ShiftEntry` WHERE (`SID` = '$SID') ORDER BY `TID`, `UID` DESC ;"; - $Erg = mysql_query($SQL, $con); - - $Anzahl = mysql_num_rows($Erg); - $Feld=-1; - for( $i = 0; $i < $Anzahl; $i++ ) - { - - $Temp_TID = mysql_result($Erg, $i, "TID"); - - // wenn sich der Type ändert wird zumnästen feld geweckselt - if( ($i==0) || ($Temp_TID_old != $Temp_TID) ) - { - $Feld++; - $Temp[$Feld]["free"]=0; - $Temp[$Feld]["Engel"]=array(); - } - - $Temp[$Feld]["TID"] = $Temp_TID; - $Temp[$Feld]["UID"] = mysql_result($Erg, $i, "UID"); - - // ist es eine zu vergeben schicht? - if( $Temp[$Feld]["UID"] == 0 ) - $Temp[$Feld]["free"]++; - else - $Temp[$Feld]["Engel"][] = $Temp[$Feld]["UID"]; - - $Temp_TID_old = $Temp[$Feld]["TID"]; - } // FOR - - - /////////////////////////////////////////////////////////////////// - // Aus gabe der Schicht - /////////////////////////////////////////////////////////////////// - if( isset($Temp) && count($Temp) ) - foreach( $Temp as $TempEntry => $TempValue ) - { - $Out.= "\n"; - - // ausgabe EngelType - $Out.= "". $EngelTypeID[ $TempValue["TID"] ]; - - // ausgabe Eingetragener Engel - if( count($TempValue["Engel"]) > 0 ) - { - if( count($TempValue["Engel"]) == 1 ) - $Out.= " ". trim(Get_Text("inc_schicht_ist")). ":"; - else - $Out.= " ". trim(Get_Text("inc_schicht_sind")). ":"; - $Out.= "\n"; - $Out.= ""; - - foreach( $TempValue["Engel"] as $TempEngelEntry=> $TempEngelID ) - $Out.= UID2Nick( $TempEngelID ). ", "; -// $Out.= UID2Nick( $TempEngelID ). DisplayAvatar( $TempEngelID ). ", "; - $Out = substr( $Out, 0, strlen($Out)-2 ); - } - else - { - $Out.= ":\n"; - $Out.= "\n"; - } - - - // ausgabe benötigter Engel - //////////////////////////// - if( $_SESSION['CVS']["nonpublic/schichtplan_add.php"] == "Y") - { - if ( $TempValue["free"] > 0) - { - if( count($TempValue["Engel"]) > 0) - $Out.= ", "; - $Out.= $TempValue["free"]. "x free "; - } - } - $Out.= "\n"; - $Out.= "\n"; - - } // FOREACH - - $Out.= "\n"; - - return $Out; -} // function Ausgabe_Feld_Inhalt - - - -/*####################################################### -# gibt die engelschischten für einen Ruam aus # -#######################################################*/ -function ausgabe_Zeile( $RID, $Time, &$AnzahlEintraege ) -{ - global $con; - - $SQL = "SELECT `SID`, `Len`, `Man` FROM `Shifts` ". - "WHERE ( (`RID` = '$RID') AND ". - "((`DateE` like '". gmdate("Y-m-d H", $Time+3600). "%') OR ". - " (`DateS` like '". gmdate("Y-m-d H", $Time). "%')) ) ORDER BY `DateS`;"; - - $ErgRoom = mysql_query($SQL, $con); - $Out= ""; - if( mysql_num_rows( $ErgRoom)>0 ) - for( $i=1; $i<=mysql_num_rows( $ErgRoom); $i++ ) - { - $AnzahlEintraege++; - $Out.= ausgabe_Feld_Inhalt( mysql_result( $ErgRoom, $i-1, "SID"), - mysql_result( $ErgRoom, $i-1, "Man")); - if( (mysql_num_rows( $ErgRoom) > 1) && !($i==mysql_num_rows( $ErgRoom)) ) - $Out.= "
"; -// $Out.= "
\n"; - - } - else - $Out.= " "; - - $Out.= "\n"; - - return $Out; -} - -?> diff --git a/includes/funktion_xml.php b/includes/funktion_xml.php deleted file mode 100644 index 4ab3bfd5..00000000 --- a/includes/funktion_xml.php +++ /dev/null @@ -1,152 +0,0 @@ -sub[$XMLpos[$Tiefe]]->data .= htmlentities(convertValues($Data), ENT_QUOTES); - - if ($XMLDEBUG) - echo "???" . $Objekt->sub[$XMLpos[$Tiefe]]->name . "|$Data|$Tiefe???
"; - } else - dataXMLmain($Data, $Objekt->sub[$XMLpos[$Tiefe]], $Tiefe +1); -} - -function startXMLmain($Data, & $Objekt, $Tiefe) { - global $XMLpos, $depth, $XMLDEBUG; - - if ($XMLDEBUG) - if ($Tiefe == 1) { - print_r(array_values($XMLpos)); - echo "--" . $Data->name; - echo " #$Tiefe/$depth#"; - } - - if ($depth == $Tiefe) { - $Objekt->sub[$XMLpos[$Tiefe]] = $Data; - if ($XMLDEBUG) - echo "|" . $XMLpos[$Tiefe] . "|" . $Objekt->sub[$XMLpos[$Tiefe]]->name . " " . $Data->name . " save|" . "#-#
"; - } else - startXMLmain($Data, $Objekt->sub[$XMLpos[$Tiefe]], $Tiefe +1); -} - -function start_element_handler($parser, $name, $attribs) { - global $depth, $XMLmain, $XMLpos; - - $Data = new element; - $Data->name = $name; - while (list ($key, $value) = each($attribs)) - $Data->attributes[$key] = convertValues($value); - $Data->depth = $depth; - $XMLpos[$depth]++; - - if ($depth == 0) - $XMLmain = $Data; - else - startXMLmain($Data, $XMLmain, 1); - - $depth++; -} - -function end_element_handler($parser, $name) { - global $depth, $XMLpos; - $XMLpos[$depth] = 0; - $depth--; -} - -function character_data_handler($parser, $data) { - global $XMLmain; - if (strlen(trim($data))) - dataXMLmain($data, $XMLmain, 1); -} - -/*#######################################################################################*/ -function readXMLfile($file) { - global $XMLDEBUG; - - //$xml_parser = xml_parser_create_ns(); - $xml_parser = xml_parser_create("UTF-8"); - xml_set_element_handler($xml_parser, "start_element_handler", "end_element_handler"); - xml_set_character_data_handler($xml_parser, "character_data_handler"); - - if (file_exists($file)) { - if (!($fp = fopen($file, "r"))) { - echo ("

could not open XML file \"$file\"

"); - return -1; - } - } else { - echo ("

XML file \"$file\" not exist

"); - return -1; - } - - if ($XMLDEBUG) - echo "
";
-	while ($data = fread($fp, 4096)) {
-		if (!xml_parse($xml_parser, $data, feof($fp))) {
-			die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser)));
-		}
-	}
-	if ($XMLDEBUG)
-		echo "
"; - xml_parser_free($xml_parser); - return 0; -} - -/*#######################################################################################*/ -function getXMLsubPease($Sourse, $Name) { - foreach ($Sourse->sub as $key => $value) { - if ($value->name == $Name) { - return $value; - } - } - // die; -} - -/*#######################################################################################*/ -function getXMLsubData($Sourse, $Name) { - $XML = getXMLsubPease($Sourse, $Name); - return $XML->data; -} -?> diff --git a/includes/funktion_xml_room.php b/includes/funktion_xml_room.php deleted file mode 100644 index f31d5661..00000000 --- a/includes/funktion_xml_room.php +++ /dev/null @@ -1,61 +0,0 @@ -Rooms:\n"; - - function saveRoomData() { - global $con; - - if(isset($_GET["NameXML"])) { - $SQL = "INSERT INTO `Room` ( `Name`, `FromPentabarf` ) ". - "VALUES ('". mysql_escape_string($_GET["NameXML"]). "', 'Y');"; - $Erg = mysql_query($SQL, $con); - - if($Erg) - echo "Aenderung, an Raum ". $_GET["NameXML"]. ", war erfogreich
"; - else - echo "Aenderung, an Raum ". $_GET["NameXML"]. ", war nicht erfogreich.(". - - mysql_error($con). ")
[$SQL]
"; - } else - echo "Fehler in den Parametern!
"; - } - - if(isset($_GET["RoomUpdate"])) - saveRoomData(); - - // INIT Status counter - $DS_KO = 0; - - // Ausgabe - echo "\n"; - echo "\n"; - - if($EnableSchudle) { - foreach($XMLmain->sub as $EventKey => $Event) { - if( $Event->name == "VEVENT") { - $NameXML = getXMLsubData( $Event, "LOCATION"); - - if( !isset( $RoomName[$NameXML])) { - $RoomName[$NameXML] = ""; - - if(isset($_GET["UpdateALL"])) { - $_GET["NameXML"] = $NameXML; - saveRoomData(); - CreateRoomArrays(); - } else { - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - $DS_KO++; - echo "\n"; - echo "\n"; - echo "
"; - } - } - } - } - } - - echo "\n"; - echo "
Namestate
status: $DS_KO nicht vorhanden.
\n"; -?> diff --git a/includes/funktion_xml_schudle.php b/includes/funktion_xml_schudle.php deleted file mode 100644 index f73f11ad..00000000 --- a/includes/funktion_xml_schudle.php +++ /dev/null @@ -1,309 +0,0 @@ -Schedule:\n"; - - -function SaveSchedule() -{ - global $RoomID, $RoomName; - global $con; - - if( isset($_GET["PSIDXML"]) && - isset($_GET["DateXML"]) && - isset($_GET["RIDXML"]) && - isset($_GET["LenXML"]) && - isset($_GET["ManXML"]) && - isset($_GET["URLXML"]) ) - { - //erzeuge von `DateE` - $TimeStart = substr( $_GET["DateXML"], 11, 2) + (substr($_GET["DateXML"], 14, 2)/60); - $TimeEnd = ($_GET["LenXML"] + $TimeStart) * 60; - $TimeM = $TimeEnd % 60; - $TimeH = ($TimeEnd - $TimeM)/60; - if( $TimeH>=24 ) - { - $TimeH -= 24; - $DateEnd = substr($_GET["DateXML"], 0, 8). - (substr($_GET["DateXML"], 8, 2)+1). " "; - } - else - $DateEnd = substr($_GET["DateXML"], 0, 11); - $DateEnd .= "$TimeH:$TimeM:00"; - - //Namen ermitteln - $_GET["RIDXML"] = $RoomName[$_GET["RIDXML"]]; - - //Update OR insert ? - $SQL1 = "Select `SID` FROM `Shifts` WHERE `PSID`='". $_GET["PSIDXML"]. "';"; - $Erg1 = mysql_query($SQL1, $con); - - if( mysql_num_rows($Erg1)==0) - { - echo "Aenderung, am Schedule '". $_GET["PSIDXML"]. "'"; - $SQL= "INSERT INTO `Shifts` (`PSID`, `DateS`, `DateE`, `Len`, `RID`, `Man`, `URL`) ". - "VALUES ('". $_GET["PSIDXML"]. "', ". - "'". $_GET["DateXML"]. "', ". - "'". $DateEnd. "', ". - "'". $_GET["LenXML"]. "', ". - "'". $_GET["RIDXML"]. "', ". - "'". mysql_escape_string($_GET["ManXML"]). "', ". - "'". $_GET["URLXML"]. "'". - ");"; - } - else - { - echo "Aenderung, am Schedule '". $_GET["PSIDXML"]. "' (SID ". - mysql_result( $Erg1, 0, "SID"). ")"; - $SQL= "UPDATE `Shifts` SET ". - "`DateS` = '". $_GET["DateXML"]. "', ". - "`DateE` = '". $DateEnd. "', ". - "`Len` = '". $_GET["LenXML"]. "', ". - "`RID` = '". $_GET["RIDXML"]. "', ". - "`Man` = '". mysql_escape_string($_GET["ManXML"]). "', ". - "`URL`= '". $_GET["URLXML"]. "' ". - "WHERE `PSID` = '". $_GET["PSIDXML"]. "' LIMIT 1;"; - } - $Erg = mysql_query($SQL, $con); - if( $Erg ) - { - echo ", war erfogreich
\n"; - - //SID auslesen - $SQL1 = "Select `SID` FROM `Shifts` WHERE `PSID`='". $_GET["PSIDXML"]. "';"; - $Erg1 = mysql_query($SQL1, $con); - $newSID = mysql_result($Erg1, 0, 0); - - // erstellt ein Array der Reume - $sql2 = "SELECT * FROM `Room` ". - "WHERE `RID`='".$_GET["RIDXML"]. "' ". - "ORDER BY `Number`, `Name`;"; - $Erg2 = mysql_query( $sql2, $con); - for( $j=0; $j $EngelNeeded_Exist) - { - echo "---->Create Shifts for engeltype: ". TID2Type($EngelTypeID). " ". - ($EngelNeeded-$EngelNeeded_Exist). "x
\n------>\n"; - for( $i=0; $i < ($EngelNeeded-$EngelNeeded_Exist); $i++ ) - { - $SQL3 = "INSERT INTO `ShiftEntry` (`SID`, `TID`) VALUES (". - "'". $newSID. "', ". - "'". $EngelTypeID. "');"; - $Erg3 = mysql_query($SQL3, $con); - if ($Erg3 == 1) - echo "pass "; - else - echo "fail ". mysql_error($con). - "($SQL3)
\n"; - } - echo "
\n"; - } - else if ($EngelNeeded < $EngelNeeded_Exist) - { - if( $EngelNeeded > $EngelNeeded_NotEmpty) - { - $EngelMin = $EngelNeeded; - } - else - { - $EngelMin = $EngelNeeded_NotEmpty; - echo "---> WARING ". $EngelNeeded_NotEmpty. - " shift is used, can't del ". TID2Type($EngelTypeID). " shifts"; - } - - echo "---->Delete empty Shifts for engeltype: ". TID2Type($EngelTypeID). " ". - ($EngelNeeded_Exist-$EngelMin)."x
\n------>\n"; - for( $i=$EngelMin; $i<$EngelNeeded_Exist; $i++ ) - { - $SQL3 = "DELETE FROM `ShiftEntry` ". - "WHERE `SID` = ". $newSID. " AND ". - "`TID` = ". $EngelTypeID. " AND ". - "`UID` = 0 ". - "LIMIT 1;"; - $Erg3 = mysql_query($SQL3, $con); - if ($Erg3 == 1) - echo "pass "; - else - echo "fail ". mysql_error($con). - "($SQL3)
\n"; - } - echo "
\n"; - } - else - { -// echo "---->Nothing to do, for engeltype: ". TID2Type($EngelTypeID). "
\n"; - } - } - } - - } - else - echo ", war nicht erfogreich.(". - mysql_error($con). ")
[$SQL]
\n"; - } - else - echo "Fehler in den Parametern!
"; -} /*SaveSchedule*/ - -if( isset($_GET["ScheduleUpdate"])) - SaveSchedule(); - -//INIT Status counter -$DS_OK = 0; -$DS_KO = 0; -$Where = ""; - -//ausgabe -echo "\n"; -echo "". - "\n"; -echo "". - "\n"; - -if( $EnableSchudle) -foreach($XMLmain->sub as $EventKey => $Event) -{ - if( $Event->name == "VEVENT") - { - echo "\n"; - echo "\n"; - - $PSIDXML = getXMLsubData( $Event, "UID"); - $DateXML = - substr( getXMLsubData( $Event, "DTSTART"), 0, 4). "-". - substr( getXMLsubData( $Event, "DTSTART"), 4, 2). "-". - substr( getXMLsubData( $Event, "DTSTART"), 6, 2). " ". - substr( getXMLsubData( $Event, "DTSTART"), 9, 2). ":". - substr( getXMLsubData( $Event, "DTSTART"), 11,2). ":00"; - $LenXML = substr( getXMLsubData( $Event, "DURATION"), 0, 2) + ( substr( getXMLsubData( $Event, "DURATION"), 3, 2)/60); - $RIDXML = getXMLsubData( $Event, "LOCATION"); - $ManXML = getXMLsubData( $Event, "SUMMARY"); - $URLXML = getXMLsubData( $Event, "URL"); - - if( isset($_GET["UpdateALL"])) - { - $_GET["PSIDXML"] = $PSIDXML; - $_GET["DateXML"] = $DateXML; - $_GET["LenXML"] = $LenXML; - $_GET["RIDXML"] = $RIDXML; - $_GET["ManXML"] = $ManXML; - $_GET["URLXML"] = $URLXML; - SaveSchedule(); - } - - $SQL = "SELECT * FROM `Shifts` WHERE `PSID`='$PSIDXML'"; - $Erg = mysql_query($SQL, $con); - if(mysql_num_rows($Erg)>0) - { - $SIDDB = mysql_result($Erg, 0, "SID"); - $PSIDDB = mysql_result($Erg, 0, "PSID"); - $TimeDB = mysql_result($Erg, 0, "DateS"); - $LenDB = mysql_result($Erg, 0, "Len"); - if( isset($RoomID[mysql_result($Erg, 0, "RID")])) - $RIDDB = $RoomID[mysql_result($Erg, 0, "RID")]; - else - $RIDDB = "RID". mysql_result($Erg, 0, "RID"); - - $ManDB = mysql_result($Erg, 0, "Man"); - $URLDB = mysql_result($Erg, 0, "URL"); - } - else - $SIDDB = $PSIDDB = $TimeDB = $LenDB = $RIDDB = $ManDB = $URLDB = ""; - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - if( !( $PSIDXML==$PSIDDB && - $DateXML==$TimeDB && - $RIDXML==$RIDDB && - $LenXML==$LenDB && - $ManXML==$ManDB && - $URLXML==$URLDB) ) - { - echo "\n"; - $DS_KO++; - } - else - { - echo "\n"; - $DS_OK++; - } - echo "\n"; - echo "\n"; - $Where.= " OR `PSID`='$PSIDXML'"; - } -} -echo "\n"; - - -//Anzeige von nicht im XML File vorkommende entraege -if( $Where =="") - $SQL2 = "SELECT * FROM `Shifts` WHERE NOT `PSID`='';"; -else - $SQL2 = "SELECT * FROM `Shifts` WHERE NOT (".substr( $Where, 4). ") AND NOT PSID = '';"; - -$Erg2 = mysql_query($SQL2, $con); -echo mysql_error($con); -if(mysql_num_rows($Erg2)>0 && $EnableSchudleDB ) - for( $i=0; $i\n"; - $SID = mysql_result($Erg2, $i, "SID"); - $Time = mysql_result($Erg2, $i, "DateS"); - $Len = mysql_result($Erg2, $i, "Len"); - if( isset($RoomID[ mysql_result($Erg2, $i, "RID")])) - $RID = $RoomID[ mysql_result($Erg2, $i, "RID")]; - else - $RID = "RID.". mysql_result($Erg2, $i, "RID"); - $Man = mysql_result($Erg2, $i, "Man"); - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - } -echo "
PSIDDateRoomLenNamestate
XML - DBXML - DBXML - DBXML - DBXML - DB
\n". - "\n". - "\n". - "\n". - "". funktion_isLinkAllowed_addLink_OrLinkText("admin/schichtplan.php?action=change&SID=".$SIDDB, "edit"). "
status: $DS_KO/$DS_OK nicht Aktuel.
\n". - "\n". - "\n". - "\n". - "". funktion_isLinkAllowed_addLink_OrLinkText( "admin/schichtplan.php?action=change&SID=".$SID, "edit"). - "
"; - - -?> diff --git a/includes/header.php b/includes/header.php deleted file mode 100644 index 9cd2e51d..00000000 --- a/includes/header.php +++ /dev/null @@ -1,102 +0,0 @@ -\n"; -?> - - - -<?php echo $title; ?> - Engelsystem - - - - - - - - - - - - - - -\n"; -} - -if (isset ($Page["AutoReload"])) - echo "\n\n"; - -echo "\n"; - -///////////////////////////////////////////////////////////////////////////////////////////// -////////////////////////////////////// B O D Y -///////////////////////////////////////////////////////////////////////////////////////////// -echo "\n"; - -echo '
'; - -//ausgabe new message -if (isset ($_SESSION['CVS']["nonpublic/messages.php"])) { - if ($_SESSION['CVS']["nonpublic/messages.php"] == "Y") { - $SQL = "SELECT `Datum` FROM `Messages` WHERE `RUID`=" . $_SESSION["UID"] . " AND `isRead`='N'"; - $erg = mysql_query($SQL, $con); - if (mysql_num_rows($erg) > 0) - echo "
" . Get_Text("pub_messages_new1") . - " " . mysql_num_rows($erg) . " " . - Get_Text("pub_messages_new2") . "

"; - } -} -?> -
- -
-' . (strlen($header) == 0 ? Get_Text($Page["Name"]) : $header) . ''; -echo '
'; - -if (isset ($_SESSION['UID'])) { - if (isset ($_SESSION['oldurl'])) - $BACKUP_SESSION_OLDURL = $_SESSION['oldurl']; - if (isset ($_SESSION['newurl'])) - $_SESSION['oldurl'] = $_SESSION['newurl']; - $_SESSION['newurl'] = $_SERVER["REQUEST_URI"]; -} - -function SetHeaderGo2Back() { - global $BACKUP_SESSION_OLDURL; - $_SESSION['oldurl'] = $BACKUP_SESSION_OLDURL; -} - -if ($Page["CVS"] != "Y") { - echo "Du besitzt kein Rechte für diesen Bereich.
\n"; - - if (isset ($_SESSION['oldurl'])) - echo "hier gehts zurück...\n"; - else - echo "hier geht's zurück...\n"; - - exit (); -} -?> - - -- cgit v1.2.3-54-g00ecf