diff --git a/README b/README index 6ee1ee5b..6251812f 100644 --- a/README +++ b/README @@ -7,6 +7,10 @@ DIRS: ./www-ssl daten für https verbindung +Anfordeungen: +------------- + PHP 4.xx + Systemconfig: ------------- ./www-ssl/inc/config.php @@ -19,3 +23,4 @@ php.ini: -------- add: allow_url_fopen = On + date.timezone = Europe/Berlin diff --git a/services/cron_dect.php b/services/cron_dect.php index 73e2d69c..c0ee8761 100755 --- a/services/cron_dect.php +++ b/services/cron_dect.php @@ -12,7 +12,7 @@ include ("./inc/funktion_cron.php"); $StartTimeBeforEvent = (60/4)*60; $AnrufDelay = -5; $DebugDECT = FALSE; -//$DebugDECT = TRUE; +#$DebugDECT = TRUE; //Timeout erhöhen; set_time_limit(50000); @@ -21,11 +21,11 @@ set_time_limit(50000); $SQL = "SELECT Shifts.DateS, Shifts.RID, ShiftEntry.UID, ShiftEntry.TID ". "FROM `Shifts` INNER JOIN `ShiftEntry` ON `Shifts`.`SID` = `ShiftEntry`.`SID` "; if( $DebugDECT) - $SQL .= "WHERE (Shifts.DateS>'2004-12-27 10:45:00' AND ". - "Shifts.DateS<='2004-12-27 11:00:00');"; + $SQL .= "WHERE (Shifts.DateS>'2007-07-09 09:45:00' AND ". + "Shifts.DateS<='2007-07-09 11:00:00');"; else - $SQL .= "WHERE ((`Shifts`.`DateS`>'". gmdate("Y-m-d H:i:s", time()+3600+120). "') AND ". - "(`Shifts`.`DateS`<='". gmdate("Y-m-d H:i:s", time()+3600+120+$StartTimeBeforEvent). "') );"; + $SQL .= "WHERE ((`Shifts`.`DateS`>'". gmdate("Y-m-d H:i:s", time()+3600+120+3600). "') AND ". + "(`Shifts`.`DateS`<='". gmdate("Y-m-d H:i:s", time()+3600+120+3600+$StartTimeBeforEvent). "') );"; $Erg = mysql_query($SQL, $con); echo mysql_error($con); diff --git a/www-ssl/inc/funktion_cron.php b/www-ssl/inc/funktion_cron.php index 4ff383dc..7f47e346 100755 --- a/www-ssl/inc/funktion_cron.php +++ b/www-ssl/inc/funktion_cron.php @@ -5,14 +5,20 @@ function UID2DECT($UID) global $con; $SQL = "SELECT DECT FROM `User` WHERE UID='$UID'"; $Erg = mysql_query($SQL, $con); - return mysql_result($Erg, 0); + if( mysql_num_rows( $Erg) == 1) + return mysql_result($Erg, 0); + else + return ""; } function RID2Room($RID) { global $con; $SQL = "SELECT Name FROM `Room` WHERE RID='$RID'"; $Erg = mysql_query($SQL, $con); - return mysql_result($Erg, 0); + if( mysql_num_rows( $Erg) == 1) + return mysql_result($Erg, 0); + else + return ""; } function TID2Engeltype($TID) @@ -20,7 +26,10 @@ function TID2Engeltype($TID) global $con; $SQL = "SELECT Name FROM `EngelType` WHERE TID='$TID'"; $Erg = mysql_query($SQL, $con); - return mysql_result($Erg, 0); + if( mysql_num_rows( $Erg) == 1) + return mysql_result($Erg, 0); + else + return ""; } @@ -44,56 +53,63 @@ function DialNumberIAX( $DECTnumber, $Time, $RID, $TID) $TimeH = "0".$TimeH; if( $IAXenable) - { - $post_data = array(); - $post_data['code'] = "89o8eu9cg4"; - $post_data['callerid'] = "1023"; - $post_data['nr'] = "$DECTnumber"; - //$post_data['message'] = "Deine schicht beginnt in ein paar minuten . . . your shift beginns in a few minutes "; - $post_data['message'] = "die-nee shisht beh-kinned , in where-neegin me-nooten . . . your shift beginns in a few minutes "; - $url = "https://23c3.eventphone.de/~bef/call.php"; - - $o=""; - foreach ($post_data as $k=>$v) + { $Message="die-nee shisht beh-kinned , in where-neegin me-nooten . . . your shift beginns in a few minutes"; + if (isset($SetHttpIAX)) { - $o.= "$k=".urlencode(utf8_encode($v))."&"; - } - $post_data=substr($o,0,-1); + $post_data = array(); + $post_data['code'] = "89o8eu9cg4"; + $post_data['callerid'] = "1023"; + $post_data['nr'] = "$DECTnumber"; + //$post_data['message'] = "Deine schicht beginnt in ein paar minuten . . . your shift beginns in a few minutes "; + $post_data['message'] = "die-nee shisht beh-kinned , in where-neegin me-nooten . . . your shift beginns in a few minutes "; + $url = "https://23c3.eventphone.de/~bef/call.php"; - $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); + $o=""; + foreach ($post_data as $k=>$v) + { + $o.= "$k=".urlencode(utf8_encode($v))."&"; + } + $post_data=substr($o,0,-1); - - /* - // IAX file Schareiebn - $CallFile = "/tmp/call_". date("Ymd_His"). "_$DECTnumber"; - - if($DebugDECT) echo "IAX create file for dialing Number $DECTnumber\n"; - $file = fopen( $CallFile, 'w' ); - if( $file != FALSE) + $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 { - fputs( $file, "Channel: IAX2/$IAXserver/Engelserver@$IAXcontent\n"); - fputs( $file, "Callerid: $IAXcontent\n"); - fputs( $file, "Context: $IAXcontent\n"); - fputs( $file, "Extension: s\n"); - fputs( $file, "MaxRetries: 3\n"); - fputs( $file, "RetryTime: 10\n"); - fputs( $file, "SetVar: TimeH=$TimeH\n"); - fputs( $file, "SetVar: TimeM=$TimeM\n"); - fputs( $file, "SetVar: DECTnumber=$DECTnumber\n"); - fputs( $file, "SetVar: Room=". RID2Room( $RID). "\n"); - fputs( $file, "SetVar: Engeltype=". TID2Engeltype( $TID). "\n"); - fclose($file); - system( "chmod 777 $CallFile"); - system( "mv $CallFile /var/spool/asterisk/outgoing"); - }*/ + // IAX file Schareiebn + $CallFile = "/tmp/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"); //Ziel nummer + fputs( $file, "Callerid: Engelserver\n"); + // fputs( $file, "Callerid: $IAXcontent\n"); + // fputs( $file, "Context: $DECTnumber@$IAXserver\n"); + fputs( $file, "Extension: s\n"); + fputs( $file, "MaxRetries: 1\n"); + fputs( $file, "RetryTime: 10\n"); + fputs( $file, "SetVar: msg=$Message\n"); +// fputs( $file, "SetVar: TimeH=$TimeH\n"); +// fputs( $file, "SetVar: TimeM=$TimeM\n"); +// fputs( $file, "SetVar: DECTnumber=$DECTnumber\n"); +// fputs( $file, "SetVar: Room=". RID2Room( $RID). "\n"); +// fputs( $file, "SetVar: Engeltype=". TID2Engeltype( $TID). "\n"); + fclose($file); + system( "chmod 777 $CallFile"); + system( "mv $CallFile /var/spool/asterisk/outgoing"); + } + else + echo "error: $CallFile not created"; + } } else if($DebugDECT) echo "IAX is disable\n"; diff --git a/www-ssl/inc/funktion_schichtplan.php b/www-ssl/inc/funktion_schichtplan.php index c9780fba..39785c42 100755 --- a/www-ssl/inc/funktion_schichtplan.php +++ b/www-ssl/inc/funktion_schichtplan.php @@ -8,7 +8,7 @@ function ausgabe_Feld_Inhalt( $SID, $Man ) { // gibt, nach übergabe der der SchichtID (SID) und der RaumBeschreibung, // die eingetragenden und und offenden Schichteintäge zurück - global $EngelType, $EngelTypeID, $TID2Name, $con, $DEBUG; + global $EngelType, $EngelTypeID, $TID2Name, $con, $DEBUG, $gmdateOffset; $Spalten = ""; @@ -130,7 +130,7 @@ function ausgabe_Feld_Inhalt( $SID, $Man ) //////////////////////////// //in vergangenheit $SQLtime = "SELECT `DateE` FROM `Shifts` WHERE (`SID`='$SID' AND `DateE` >= '". - gmdate("Y-m-d H:i:s", time()+ 3600). "')"; + gmdate("Y-m-d H:i:s", time()+ $gmdateOffset). "')"; $Ergtime = mysql_query($SQLtime, $con); if( mysql_num_rows( $Ergtime) > 0) { @@ -312,7 +312,7 @@ function CreateRoomShifts( $raum ) #######################################################*/ function showEmptyShifts( ) { - global $con, $DEBUG, $RoomID; + global $con, $DEBUG, $RoomID, $gmdateOffset; echo "\n"; echo "\n"; @@ -323,7 +323,7 @@ function showEmptyShifts( ) echo "\n"; $sql = "SELECT `SID`, `DateS`, `Man`, `RID` FROM `Shifts` ". - "WHERE (`Shifts`.`DateS`>='". gmdate("Y-m-d H:i:s", time()+3600). "') ". + "WHERE (`Shifts`.`DateS`>='". gmdate("Y-m-d H:i:s", time()+$gmdateOffset). "') ". "ORDER BY `DateS`, `RID`;"; $Erg = mysql_query($sql, $con); diff --git a/www-ssl/nonpublic/index.php b/www-ssl/nonpublic/index.php index ba47e4d9..f4dee263 100755 --- a/www-ssl/nonpublic/index.php +++ b/www-ssl/nonpublic/index.php @@ -73,7 +73,6 @@ else $ErrorText = "pub_index_User_more_as_one"; } // Ende Check, ob User angemeldet wurde } - include ("./inc/header.php"); if( isset($ErrorText)) echo "

". Get_Text($ErrorText). "


\n"; diff --git a/www-ssl/nonpublic/schichtplan.php b/www-ssl/nonpublic/schichtplan.php index 7bebc49f..e9b8f09b 100755 --- a/www-ssl/nonpublic/schichtplan.php +++ b/www-ssl/nonpublic/schichtplan.php @@ -3,6 +3,8 @@ $title = "Himmel"; $header = "Schichtpläne"; $submenus = 2; +$gmdateOffset=3600+3600; + if( isset($_GET["ausdatum"])) $ausdatum = $_GET["ausdatum"]; if( isset($_GET["raum"])) @@ -43,7 +45,7 @@ function ShowSwitchDay() // das Datum auf den ersten Tag setzen... if( !isset($ausdatum) ) { - $sql = "SELECT `DateS` FROM `Shifts` WHERE `DateS` like '". gmdate("Y-m-d", time()+3600). "%' ORDER BY `DateS`"; + $sql = "SELECT `DateS` FROM `Shifts` WHERE `DateS` like '". gmdate("Y-m-d", time()+$gmdateOffset). "%' ORDER BY `DateS`"; // $sql = "SELECT `DateS` FROM `Shifts` WHERE `DateS` like '2004-12-29%' ORDER BY `DateS`"; $Erg = mysql_query($sql, $con); if( mysql_num_rows( $Erg ) == 0 ) @@ -54,7 +56,7 @@ if( !isset($ausdatum) ) if( mysql_num_rows( $Erg ) > 0 ) $ausdatum = substr(mysql_result($Erg,0,"DateS"),0,10); else - $ausdatum = gmdate("Y-m-d", time()+3600); + $ausdatum = gmdate("Y-m-d", time()+$gmdateOffset); } @@ -122,7 +124,7 @@ else $SpaltenTemp.= ($TempMinuten<10)? "0$TempMinuten": "$TempMinuten"; //aktuelle stunde markieren - if( ($j==0) && ($i == gmdate("H", time()+3600)) && (gmdate("Y-m-d", time()+ 3600) == $ausdatum) ) + if( ($j==0) && ($i == gmdate("H", time()+$gmdateOffset)) && (gmdate("Y-m-d", time()+ $gmdateOffset) == $ausdatum) ) $SpaltenTemp = "

$SpaltenTemp

"; $SpaltenTemp = "\n";
$SpaltenTemp