umgestellt auf xcal
git-svn-id: svn://svn.cccv.de/engel-system@51 29ba0400-6e00-0410-a75a-ca02368028f8
This commit is contained in:
parent
4a905f9360
commit
a49eb0bdaa
|
@ -8,14 +8,33 @@ include ("./inc/funktion_xml.php");
|
||||||
///////////
|
///////////
|
||||||
// DEBUG //
|
// DEBUG //
|
||||||
///////////
|
///////////
|
||||||
$EnableRooms = true;
|
$ShowDataStrukture = 0;
|
||||||
$EnableRoomsDB = true;
|
$EnableRoomFunctions = 0;
|
||||||
$EnableSchudle = true;
|
$EnableRooms = 0;
|
||||||
$EnableSchudleDB = true;
|
$EnableRoomsDB = 0;
|
||||||
//$EnableRooms = false;
|
$EnableSchudleFunctions = 1;
|
||||||
//$EnableRoomsDB = false;
|
$EnableSchudle = 1;
|
||||||
//$EnableSchudle = false;
|
$EnableSchudleDB = 0;
|
||||||
//$EnableSchudleDB = false;
|
|
||||||
|
|
||||||
|
/*##############################################################################################
|
||||||
|
erstellt Arrays der Reume
|
||||||
|
##############################################################################################*/
|
||||||
|
$sql = "SELECT `RID`, `Name` FROM `Room` ".
|
||||||
|
"WHERE `Show`='Y'".
|
||||||
|
"ORDER BY `Number`, `Name`;";
|
||||||
|
$Erg = mysql_query($sql, $con);
|
||||||
|
$rowcount = mysql_num_rows($Erg);
|
||||||
|
|
||||||
|
for ($i=0; $i<$rowcount; $i++)
|
||||||
|
{
|
||||||
|
$Room[$i]["RID"] = mysql_result($Erg, $i, "RID");
|
||||||
|
$Room[$i]["Name"] = mysql_result($Erg, $i, "Name");
|
||||||
|
$RoomID[ mysql_result($Erg, $i, "RID") ] = mysql_result($Erg, $i, "Name");
|
||||||
|
$RoomName[ mysql_result($Erg, $i, "Name") ] = mysql_result($Erg, $i, "RID");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*##############################################################################################
|
/*##############################################################################################
|
||||||
F I L E
|
F I L E
|
||||||
|
@ -24,12 +43,13 @@ echo "\n\n<br>\n<h1>XML File:</h1>\n";
|
||||||
if( isset($_POST["PentabarfUser"]) && isset($_POST["PentabarfPasswd"]) && isset($_POST["PentabarfURL"]))
|
if( isset($_POST["PentabarfUser"]) && isset($_POST["PentabarfPasswd"]) && isset($_POST["PentabarfURL"]))
|
||||||
{
|
{
|
||||||
echo "Update XML-File from Pentabarf..";
|
echo "Update XML-File from Pentabarf..";
|
||||||
/* $Command = "wget --http-user=". $_POST["PentabarfUser"]. " --http-passwd=".$_POST["PentabarfPasswd"]. " ".
|
$Command = "wget --http-user=". $_POST["PentabarfUser"]. " --http-passwd=".$_POST["PentabarfPasswd"]. " ".
|
||||||
$_POST["PentabarfURL"].
|
$_POST["PentabarfURL"].
|
||||||
" --output-file=/tmp/engelXMLwgetLog --output-document=/tmp/engelXML";
|
" --output-file=/tmp/engelXMLwgetLog --output-document=/tmp/engelXML".
|
||||||
*/
|
" --no-check-certificate";
|
||||||
$Command = "lynx -auth=". $_POST["PentabarfUser"]. ":".$_POST["PentabarfPasswd"]. " -dump ".
|
|
||||||
$_POST["PentabarfURL"]. " > /tmp/engelXML";
|
// $Command = "lynx -auth=". $_POST["PentabarfUser"]. ":".$_POST["PentabarfPasswd"]. " -dump ".
|
||||||
|
// $_POST["PentabarfURL"]. " > /tmp/engelXML";
|
||||||
echo system( $Command, $Status);
|
echo system( $Command, $Status);
|
||||||
|
|
||||||
if( $Status==0)
|
if( $Status==0)
|
||||||
|
@ -43,7 +63,7 @@ else
|
||||||
echo "<table border=\"0\">\n";
|
echo "<table border=\"0\">\n";
|
||||||
echo "\t<tr><td>XML-File:</td>".
|
echo "\t<tr><td>XML-File:</td>".
|
||||||
"<td><input name=\"PentabarfURL\" type=\"text\" size=\"100\" maxlength=\"1000\" ".
|
"<td><input name=\"PentabarfURL\" type=\"text\" size=\"100\" maxlength=\"1000\" ".
|
||||||
"value=\"https://pentabarf.cccv.de/pentabarf/xml/fahrplan/conference/1\"></td></tr>\n";
|
"value=\"https://pentabarf.cccv.de/~sven/xcal/conference/7\"></td></tr>\n";
|
||||||
echo "\t<tr><td>Username:</td>".
|
echo "\t<tr><td>Username:</td>".
|
||||||
"<td><input name=\"PentabarfUser\" type=\"text\" size=\"30\" maxlength=\"30\"></td></tr>\n";
|
"<td><input name=\"PentabarfUser\" type=\"text\" size=\"30\" maxlength=\"30\"></td></tr>\n";
|
||||||
echo "\t<tr><td>Password:</td>".
|
echo "\t<tr><td>Password:</td>".
|
||||||
|
@ -58,13 +78,19 @@ else
|
||||||
//readXMLfile("xml.php.xml");
|
//readXMLfile("xml.php.xml");
|
||||||
if( readXMLfile("/tmp/engelXML") == 0)
|
if( readXMLfile("/tmp/engelXML") == 0)
|
||||||
{
|
{
|
||||||
/*
|
$XMLmain = getXMLsubPease( $XMLmain, "VCALENDAR");
|
||||||
|
|
||||||
|
|
||||||
|
if( $ShowDataStrukture)
|
||||||
|
{
|
||||||
echo "<pre><br>";
|
echo "<pre><br>";
|
||||||
echo $XMLmain->name;
|
echo $XMLmain->name;
|
||||||
echo "<br>";
|
echo "<br>";
|
||||||
//print_r(array_values ($XMLmain->sub));
|
print_r(array_values ($XMLmain->sub));
|
||||||
|
echo "</pre>";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
echo "<br>";
|
echo "<br>";
|
||||||
$Feld=7;
|
$Feld=7;
|
||||||
echo "$Feld#". $XMLmain->sub[$Feld]->name. "<br>";
|
echo "$Feld#". $XMLmain->sub[$Feld]->name. "<br>";
|
||||||
|
@ -72,362 +98,31 @@ echo "$Feld#". $XMLmain->sub[$Feld]->sub;
|
||||||
//print_r(array_values ($XMLmain->sub[$Feld]->sub));
|
//print_r(array_values ($XMLmain->sub[$Feld]->sub));
|
||||||
while(list($key, $value) = each($XMLmain->sub[$Feld]->sub))
|
while(list($key, $value) = each($XMLmain->sub[$Feld]->sub))
|
||||||
echo "?ID".$value->sub[1]->data. "=". $value->sub[2]->data. "\n";
|
echo "?ID".$value->sub[1]->data. "=". $value->sub[2]->data. "\n";
|
||||||
|
|
||||||
echo "</pre>";
|
echo "</pre>";
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
/*##############################################################################################
|
/*##############################################################################################
|
||||||
V e r s i o n
|
V e r s i o n
|
||||||
##############################################################################################*/
|
##############################################################################################*/
|
||||||
|
|
||||||
echo "<hr>\n";
|
echo "<hr>\n";
|
||||||
$XMLrelease = getXMLsubPease( $XMLmain, "RELEASE");
|
$XMLrelease = getXMLsubPease( $XMLmain, "X-WR-CALDESC");
|
||||||
echo "release: ". $XMLrelease->data. "<br>\n";
|
echo "release: ". $XMLrelease->data. "<br>\n";
|
||||||
$XMLreleaseDate = getXMLsubPease( $XMLmain, "RELEASE-DATE");
|
//$XMLreleaseDate = getXMLsubPease( $XMLmain, "RELEASE-DATE");
|
||||||
echo "release date: ". $XMLreleaseDate->data. "<br>\n";
|
//echo "release date: ". $XMLreleaseDate->data. "<br>\n";
|
||||||
echo "<hr>\n";
|
echo "<hr>\n";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*##############################################################################################
|
/*##############################################################################################
|
||||||
R o o m
|
V e r s i o n
|
||||||
##############################################################################################*/
|
##############################################################################################*/
|
||||||
echo "\n\n<br>\n<h1>Rooms:</h1>\n";
|
if( $EnableRoomFunctions)
|
||||||
|
include("./inc/funktion_xml_room.php");
|
||||||
function saveRoomData()
|
|
||||||
{
|
|
||||||
include ("./inc/db.php");
|
|
||||||
if( isset($_GET["RID"]) && isset($_GET["NumberXML"]) && isset($_GET["NameXML"]))
|
|
||||||
{
|
|
||||||
$SQL1 = "SELECT `RID` FROM `Room` ".
|
|
||||||
"WHERE `RID` = '". $_GET["RID"]. "';";
|
|
||||||
$Erg1 = mysql_query($SQL1, $con);
|
|
||||||
|
|
||||||
if( mysql_num_rows($Erg1)==1 )
|
|
||||||
$SQL= "UPDATE `Room` SET `Name` = '". mysql_escape_string($_GET["NameXML"]).
|
|
||||||
"', `FromPentabarf`='Y', `Number`='". $_GET["NumberXML"]. "' ".
|
|
||||||
"WHERE `RID` = '". $_GET["RID"]. "' LIMIT 1;";
|
|
||||||
else
|
|
||||||
$SQL= "INSERT INTO `Room` ( `RID` , `Name`, `FromPentabarf`, `Number` ) ".
|
|
||||||
"VALUES ('". $_GET["RID"]. "', '". mysql_escape_string($_GET["NameXML"]).
|
|
||||||
"', 'Y', ". $_GET["NumberXML"]. ");";
|
|
||||||
$Erg = mysql_query($SQL, $con);
|
|
||||||
if( $Erg )
|
|
||||||
echo "Aenderung, an Raum ". $_GET["NameXML"]. ", war erfogreich<br>";
|
|
||||||
else
|
|
||||||
echo "Aenderung, an Raum ". $_GET["NameXML"]. ", war <u>nicht</u> erfogreich.(".
|
|
||||||
mysql_error($con). ")<br>[$SQL]<br>";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "Fehler in den Parametern!<br>";
|
|
||||||
} /*function saveRoomData*/
|
|
||||||
|
|
||||||
function getDBRoomName( $RID)
|
|
||||||
{
|
|
||||||
include ("./inc/db.php");
|
|
||||||
$SQL = "SELECT Name FROM `Room` WHERE RID=$RID";
|
|
||||||
$Erg = mysql_query($SQL, $con);
|
|
||||||
if(mysql_num_rows($Erg)>0)
|
|
||||||
return mysql_result($Erg, 0, 0);
|
|
||||||
else
|
|
||||||
return "";
|
|
||||||
} /*function getDBRoomName*/
|
|
||||||
|
|
||||||
function getDBRoomNumber( $RID)
|
|
||||||
{
|
|
||||||
include ("./inc/db.php");
|
|
||||||
$SQL = "SELECT Number FROM `Room` WHERE RID=$RID";
|
|
||||||
$Erg = mysql_query($SQL, $con);
|
|
||||||
if(mysql_num_rows($Erg)>0)
|
|
||||||
return mysql_result($Erg, 0, 0);
|
|
||||||
else
|
|
||||||
return "";
|
|
||||||
} /*function getDBRoomNumber*/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if( isset($_GET["RoomUpdate"]))
|
|
||||||
saveRoomData();
|
|
||||||
|
|
||||||
//INIT Status counter
|
|
||||||
$DS_OK = 0;
|
|
||||||
$DS_KO = 0;
|
|
||||||
$Where = "";
|
|
||||||
|
|
||||||
//Ausgabe
|
|
||||||
echo "<table border=\"0\">\n";
|
|
||||||
echo "<tr><th>RID</th><th>NumberXML</th><th>NumberDB</th><th>NameXML</th><th>NameDB</th><th>state</th></tr>\n";
|
|
||||||
$XMLroom = getXMLsubPease( $XMLmain, "ROOMS");
|
|
||||||
while( (list($key, $value) = each($XMLroom->sub)) && $EnableRooms)
|
|
||||||
{
|
|
||||||
$XMLRID = getXMLsubPease( $value, "ID");
|
|
||||||
$RID = $XMLRID->data;
|
|
||||||
$XMLNumber = getXMLsubPease( $value, "NUMBER");
|
|
||||||
$NumberXML = trim($XMLNumber->data);
|
|
||||||
$XMLName = getXMLsubPease( $value, "NAME");
|
|
||||||
$NameXML = trim($XMLName->data);
|
|
||||||
|
|
||||||
if( isset($_GET["UpdateALL"]))
|
|
||||||
{
|
|
||||||
$_GET["NameXML"] = $NameXML;
|
|
||||||
$_GET["NumberXML"] = $NumberXML;
|
|
||||||
$_GET["RID"] = $RID;
|
|
||||||
saveRoomData();
|
|
||||||
}
|
|
||||||
|
|
||||||
$NameDB = convertValues(getDBRoomName($RID));
|
|
||||||
$NumberDB = convertValues(getDBRoomNumber($RID));
|
|
||||||
|
|
||||||
echo "<form action=\"dbUpdateFromXLS.php\">\n";
|
|
||||||
echo "\t<tr>\n";
|
|
||||||
echo "\t<td><input name=\"RID\" type=\"text\" value=\"$RID\" size=\"1\" eadonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NumberXML\" type=\"text\" value=\"$NumberXML\" size=\"1\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NumberDB\" type=\"text\" value=\"$NumberDB\" size=\"1\"readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NameXML\" type=\"text\" value=\"$NameXML\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NameDB\" type=\"text\" value=\"$NameDB\" readonly></td>\n";
|
|
||||||
if( !( $NameXML==$NameDB && $NumberXML==$NumberDB) )
|
|
||||||
{
|
|
||||||
echo "\t<td><input type=\"submit\" name=\"RoomUpdate\" value=\"update\"></td>\n";
|
|
||||||
$DS_KO++;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
echo "\t<td>OK</td>\n";
|
|
||||||
$DS_OK++;
|
|
||||||
}
|
|
||||||
echo "\t</tr>\n";
|
|
||||||
echo "</form>\n";
|
|
||||||
$Where.= " OR RID=$RID";
|
|
||||||
}
|
|
||||||
echo "<tr><td colspan=\"6\">status: $DS_KO/$DS_OK nicht Aktuel.</td></tr>\n";
|
|
||||||
|
|
||||||
//Anzeige von nicht im XML File vorkommende entraege
|
|
||||||
$SQL2 = "SELECT * FROM `Room` WHERE NOT (".substr( $Where, 4). ") AND FromPentabarf = 'Y';";
|
|
||||||
$Erg2 = mysql_query($SQL2, $con);
|
|
||||||
if( mysql_num_rows($Erg2)>0 && $EnableRoomsDB )
|
|
||||||
for( $i=0; $i<mysql_num_rows( $Erg2); $i++)
|
|
||||||
{
|
|
||||||
$RID = mysql_result( $Erg2, $i, "RID");
|
|
||||||
$NumberDB = mysql_result( $Erg2, $i, "Number");
|
|
||||||
$NameDB = mysql_result( $Erg2, $i, "Name");
|
|
||||||
echo "\t<tr>\n";
|
|
||||||
echo "\t<td><input name=\"RID\" type=\"text\" value=\"$RID\" size=\"1\" eadonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NumberXML\" type=\"text\" value=\"\" size=\"1\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NumberDB\" type=\"text\" value=\"$NumberDB\" size=\"1\"readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NameXML\" type=\"text\" value=\"\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"NameDB\" type=\"text\" value=\"$NameDB\" readonly></td>\n";
|
|
||||||
echo "\t<td><a href=\"./room.php?action=change&RID=$RID\">edit</a></td>\n";
|
|
||||||
echo "\t<tr>\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "</table>\n";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*##############################################################################################
|
|
||||||
S c h e d u l e
|
|
||||||
##############################################################################################*/
|
|
||||||
echo "\n\n<h1>Schudle:</h1>\n";
|
|
||||||
|
|
||||||
// erstellt ein Array der Reume
|
|
||||||
$sql = "SELECT * FROM `Room` ".
|
|
||||||
"ORDER BY `Number`, `Name`;";
|
|
||||||
$Erg = mysql_query($sql, $con);
|
|
||||||
for( $i=0; $i<mysql_num_rows($Erg); $i++)
|
|
||||||
for( $j=0; $j<mysql_num_fields( $Erg); $j++)
|
|
||||||
$RoomID[ mysql_result($Erg, $i, "RID")]
|
|
||||||
[ mysql_field_name($Erg, $j)] = mysql_result($Erg, $i, $j);
|
|
||||||
|
|
||||||
|
|
||||||
function SaveSchedule()
|
|
||||||
{
|
|
||||||
global $RoomID;
|
|
||||||
|
|
||||||
include ("./inc/db.php");
|
|
||||||
if( isset($_GET["SIDXML"]) &&
|
|
||||||
isset($_GET["DateXML"]) &&
|
|
||||||
isset($_GET["RIDXML"]) &&
|
|
||||||
isset($_GET["LenXML"]) &&
|
|
||||||
isset($_GET["ManXML"]) )
|
|
||||||
{
|
|
||||||
//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";
|
|
||||||
|
|
||||||
//Update OR insert ?
|
|
||||||
$SQL1 = "Select `SID` FROM `Shifts` WHERE `SID`='". $_GET["SIDXML"]. "';";
|
|
||||||
$Erg1 = mysql_query($SQL1, $con);
|
|
||||||
|
|
||||||
if( mysql_num_rows($Erg1)==0)
|
|
||||||
$SQL= "INSERT INTO `Shifts` (`SID`, `DateS`, `DateE`, `Len`, `RID`, `Man`, `FromPentabarf`) ".
|
|
||||||
"VALUES ('". $_GET["SIDXML"]. "', '". $_GET["DateXML"]. "', '".
|
|
||||||
$DateEnd. "', '". $_GET["LenXML"]. "', '".
|
|
||||||
$_GET["RIDXML"]. "', '". mysql_escape_string($_GET["ManXML"]). "', 'Y');";
|
|
||||||
else
|
|
||||||
$SQL= "UPDATE `Shifts` SET ".
|
|
||||||
"`DateS` = '". $_GET["DateXML"]. "', ".
|
|
||||||
"`DateE` = '". $DateEnd. "', ".
|
|
||||||
"`Len` = '". $_GET["LenXML"]. "', ".
|
|
||||||
"`RID` = '". $_GET["RIDXML"]. "', ".
|
|
||||||
"`Man` = '". mysql_escape_string($_GET["ManXML"]). "', ".
|
|
||||||
"`FromPentabarf`= 'Y' ".
|
|
||||||
"WHERE `SID` = '". $_GET["SIDXML"]. "' LIMIT 1;";
|
|
||||||
$Erg = mysql_query($SQL, $con);
|
|
||||||
if( $Erg )
|
|
||||||
{
|
|
||||||
echo "Aenderung, am Schedule '". $_GET["SIDXML"]. "', war erfogreich<br>\n";
|
|
||||||
if( mysql_num_rows($Erg1)==0)
|
|
||||||
{
|
|
||||||
echo "-->Create Shifts:<br>\n";
|
|
||||||
foreach ($RoomID[ $_GET["RIDXML"]] as $Key => $Value)
|
|
||||||
if( substr( $Key, 0, 12)=="DEFAULT_EID_" && $Value > 0 )
|
|
||||||
{
|
|
||||||
echo "---->Create engeltype: ". substr( $Key, 12). " ". $Value. "x<br>\n";
|
|
||||||
$i=0;
|
|
||||||
while( $i++ < $Value )
|
|
||||||
{
|
|
||||||
$SQL3 = "INSERT INTO `ShiftEntry` (`SID`, `TID`) VALUES (".
|
|
||||||
"'". $_GET["SIDXML"]. "', '". substr( $Key, 12). "');";
|
|
||||||
|
|
||||||
$Erg = mysql_query($SQL3, $con);
|
|
||||||
|
|
||||||
if ($Erg == 1)
|
|
||||||
echo "------>pass<br>\n";
|
|
||||||
else
|
|
||||||
echo "------>fail <u>". mysql_error($con).
|
|
||||||
"</u>($SQL3)<br>\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
echo "<br>\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "Aenderung, am Schedule '". $_GET["SIDXML"]. "', war <u>nicht</u> erfogreich.(".
|
|
||||||
mysql_error($con). ")<br>[$SQL]<br>\n";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "Fehler in den Parametern!<br>";
|
|
||||||
} /*SaveSchedule*/
|
|
||||||
|
|
||||||
if( isset($_GET["ScheduleUpdate"]))
|
|
||||||
SaveSchedule();
|
|
||||||
|
|
||||||
//INIT Status counter
|
|
||||||
$DS_OK = 0;
|
|
||||||
$DS_KO = 0;
|
|
||||||
$Where = "";
|
|
||||||
|
|
||||||
//ausgabe
|
|
||||||
echo "<table border=\"0\">\n";
|
|
||||||
echo "<tr><th>SID</th><th>Date</th>".
|
|
||||||
"<th>Room</th><th>Len</th><th>Name</th><th>state</th></tr>\n";
|
|
||||||
echo "<tr align=\"center\"><td>XML - DB</td><td>XML - DB</td>".
|
|
||||||
"<td>XML - DB</td><td>XML - DB</td><td>XML - DB</td><td></td></tr>\n";
|
|
||||||
$XMLevents = getXMLsubPease( $XMLmain, "EVENTS");
|
|
||||||
while( (list($EventKey, $Event) = each($XMLevents->sub)) && $EnableSchudle)
|
|
||||||
{
|
|
||||||
echo "<form action=\"dbUpdateFromXLS.php\">\n";
|
|
||||||
echo "\t<tr>\n";
|
|
||||||
|
|
||||||
$DateXML = substr($Event->attributes["START"], 0, 10). " ".
|
|
||||||
substr($Event->attributes["START"], 11). ":00";
|
|
||||||
$LenXML = $Event->attributes["DURATION"];
|
|
||||||
$LenXML = substr( $LenXML, 0, 2) + (substr($LenXML, 3, 2)/60);
|
|
||||||
$XMLeventID = getXMLsubPease( $Event, "ID");
|
|
||||||
$SIDXML = $XMLeventID->data;
|
|
||||||
$RIDXML = $Event->attributes["ROOM-ID"];
|
|
||||||
$XMLTitle = getXMLsubPease( $Event, "TITLE");
|
|
||||||
$ManXML = $XMLTitle->data;
|
|
||||||
|
|
||||||
if( isset($_GET["UpdateALL"]))
|
|
||||||
{
|
|
||||||
$_GET["SIDXML"] = $SIDXML;
|
|
||||||
$_GET["DateXML"] = "$DateXML $TimeXML";
|
|
||||||
$_GET["LenXML"] = $LenXML;
|
|
||||||
$_GET["RIDXML"] = $RIDXML;
|
|
||||||
$_GET["ManXML"] = $ManXML;
|
|
||||||
SaveSchedule();
|
|
||||||
}
|
|
||||||
|
|
||||||
$SQL = "SELECT * FROM `Shifts` WHERE SID=$SIDXML";
|
|
||||||
$Erg = mysql_query($SQL, $con);
|
|
||||||
if(mysql_num_rows($Erg)>0)
|
|
||||||
{
|
|
||||||
$SIDDB = mysql_result($Erg, 0, "SID");
|
|
||||||
$TimeDB = mysql_result($Erg, 0, "DateS");
|
|
||||||
$LenDB = mysql_result($Erg, 0, "Len");
|
|
||||||
$RIDDB = mysql_result($Erg, 0, "RID");
|
|
||||||
$ManDB = mysql_result($Erg, 0, "Man");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
$SIDDB = $TimeDB = $LenDB = $RIDDB = $ManDB= "";
|
|
||||||
echo "\t<td><input name=\"SIDXML\" type=\"text\" value=\"$SIDXML\" size=\"2\" eadonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"DateXML\" type=\"text\" value=\"$DateXML\" size=\"17\" readonly>\n\t\t".
|
|
||||||
"<input name=\"DateDB\" type=\"text\" value=\"$TimeDB\" size=\"17\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"RIDXML\" type=\"text\" value=\"$RIDXML\" size=\"1\" readonly>\n\t\t".
|
|
||||||
"<input name=\"RIDDB\" type=\"text\" value=\"$RIDDB\" size=\"1\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"LenXML\" type=\"text\" value=\"$LenXML\" size=\"1\"readonly>\n\t\t".
|
|
||||||
"<input name=\"LenDB\" type=\"text\" value=\"$LenDB\" size=\"1\"readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"ManXML\" type=\"text\" value=\"$ManXML\" size=\"40\"readonly>\n\t\t".
|
|
||||||
"<input name=\"ManDB\" type=\"text\" value=\"$ManDB\" size=\"40\"readonly></td>\n";
|
|
||||||
if( !( $SIDXML==$SIDDB &&
|
|
||||||
$DateXML==$TimeDB &&
|
|
||||||
$RIDXML==$RIDDB &&
|
|
||||||
$LenXML==$LenDB &&
|
|
||||||
$ManXML==$ManDB) )
|
|
||||||
{
|
|
||||||
echo "\t<td><input type=\"submit\" name=\"ScheduleUpdate\" value=\"update\"></td>\n";
|
|
||||||
$DS_KO++;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
echo "\t<td>OK</td>\n";
|
|
||||||
$DS_OK++;
|
|
||||||
}
|
|
||||||
echo "\t</tr>\n";
|
|
||||||
echo "</form>\n";
|
|
||||||
$Where.= " OR SID=$SIDXML";
|
|
||||||
}
|
|
||||||
echo "<tr><td colspan=\"6\">status: $DS_KO/$DS_OK nicht Aktuel.</td></tr>\n";
|
|
||||||
|
|
||||||
//Anzeige von nicht im XML File vorkommende entraege
|
|
||||||
$SQL2 = "SELECT * FROM `Shifts` WHERE NOT (".substr( $Where, 4). ") AND FromPentabarf = 'Y';";
|
|
||||||
$Erg2 = mysql_query($SQL2, $con);
|
|
||||||
if(mysql_num_rows($Erg2)>0 && $EnableSchudleDB )
|
|
||||||
for( $i=0; $i<mysql_num_rows( $Erg2); $i++)
|
|
||||||
{
|
|
||||||
echo "\t<tr>\n";
|
|
||||||
$SID = mysql_result($Erg2, $i, "SID");
|
|
||||||
$Time = mysql_result($Erg2, $i, "DateS");
|
|
||||||
$Len = mysql_result($Erg2, $i, "Len");
|
|
||||||
$RID = mysql_result($Erg2, $i, "RID");
|
|
||||||
$Man = mysql_result($Erg2, $i, "Man");
|
|
||||||
echo "\t<td><input name=\"SIDXML\" type=\"text\" value=\"$SID\" size=\"2\" eadonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"DateXML\" type=\"text\" value=\"\" size=\"17\" readonly>\n\t\t".
|
|
||||||
"<input name=\"DateDB\" type=\"text\" value=\"$Time\" size=\"17\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"RIDXML\" type=\"text\" value=\"\" size=\"1\" readonly>\n\t\t".
|
|
||||||
"<input name=\"RIDDB\" type=\"text\" value=\"$RID\" size=\"1\" readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"LenXML\" type=\"text\" value=\"\" size=\"1\"readonly>\n\t\t".
|
|
||||||
"<input name=\"LenDB\" type=\"text\" value=\"$Len\" size=\"1\"readonly></td>\n";
|
|
||||||
echo "\t<td><input name=\"ManXML\" type=\"text\" value=\"\" size=\"40\"readonly>\n\t\t".
|
|
||||||
"<input name=\"ManDB\" type=\"text\" value=\"$Man\" size=\"40\"readonly></td>\n";
|
|
||||||
echo "\t<td><a href=\"./schichtplan.php?action=change&SID=$SID\">edit</a></td>\n";
|
|
||||||
echo "\t<tr>\n";
|
|
||||||
}
|
|
||||||
echo "</table>";
|
|
||||||
|
|
||||||
|
if( $EnableSchudleFunctions)
|
||||||
|
include("./inc/funktion_xml_schudle.php");
|
||||||
|
|
||||||
|
|
||||||
/*##############################################################################################
|
/*##############################################################################################
|
||||||
|
|
|
@ -18,6 +18,7 @@ $XMLpos = array( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
function convertValues( $Data)
|
function convertValues( $Data)
|
||||||
{
|
{
|
||||||
|
global $XMLDEBUG;
|
||||||
if( $XMLDEBUG)
|
if( $XMLDEBUG)
|
||||||
{
|
{
|
||||||
$Data = htmlspecialchars($Data);
|
$Data = htmlspecialchars($Data);
|
||||||
|
@ -101,6 +102,8 @@ function character_data_handler($parser, $data)
|
||||||
/*#######################################################################################*/
|
/*#######################################################################################*/
|
||||||
function readXMLfile( $file )
|
function readXMLfile( $file )
|
||||||
{
|
{
|
||||||
|
global $XMLDEBUG;
|
||||||
|
|
||||||
//$xml_parser = xml_parser_create_ns();
|
//$xml_parser = xml_parser_create_ns();
|
||||||
$xml_parser = xml_parser_create("UTF-8");
|
$xml_parser = xml_parser_create("UTF-8");
|
||||||
xml_set_element_handler($xml_parser, "start_element_handler", "end_element_handler");
|
xml_set_element_handler($xml_parser, "start_element_handler", "end_element_handler");
|
||||||
|
@ -137,4 +140,10 @@ function getXMLsubPease( $Sourse, $Name )
|
||||||
// die;
|
// die;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*#######################################################################################*/
|
||||||
|
function getXMLsubData( $Sourse, $Name )
|
||||||
|
{
|
||||||
|
$XML = getXMLsubPease( $Sourse, $Name);
|
||||||
|
return $XML->data;
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -0,0 +1,225 @@
|
||||||
|
<?PHP
|
||||||
|
|
||||||
|
/*##############################################################################################
|
||||||
|
S c h e d u l e
|
||||||
|
##############################################################################################*/
|
||||||
|
echo "\n\n<h1>Schudle:</h1>\n";
|
||||||
|
|
||||||
|
|
||||||
|
function SaveSchedule()
|
||||||
|
{
|
||||||
|
global $RoomID, $RoomName;
|
||||||
|
|
||||||
|
include ("./inc/db.php");
|
||||||
|
if( isset($_GET["SIDXML"]) &&
|
||||||
|
isset($_GET["DateXML"]) &&
|
||||||
|
isset($_GET["RIDXML"]) &&
|
||||||
|
isset($_GET["LenXML"]) &&
|
||||||
|
isset($_GET["ManXML"]) )
|
||||||
|
{
|
||||||
|
//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 `SID`='". $_GET["SIDXML"]. "';";
|
||||||
|
$Erg1 = mysql_query($SQL1, $con);
|
||||||
|
|
||||||
|
if( mysql_num_rows($Erg1)==0)
|
||||||
|
$SQL= "INSERT INTO `Shifts` (`SID`, `DateS`, `DateE`, `Len`, `RID`, `Man`, `FromPentabarf`) ".
|
||||||
|
"VALUES ('". $_GET["SIDXML"]. "', '". $_GET["DateXML"]. "', '".
|
||||||
|
$DateEnd. "', '". $_GET["LenXML"]. "', '".
|
||||||
|
$_GET["RIDXML"]. "', '". mysql_escape_string($_GET["ManXML"]). "', 'Y');";
|
||||||
|
else
|
||||||
|
$SQL= "UPDATE `Shifts` SET ".
|
||||||
|
"`DateS` = '". $_GET["DateXML"]. "', ".
|
||||||
|
"`DateE` = '". $DateEnd. "', ".
|
||||||
|
"`Len` = '". $_GET["LenXML"]. "', ".
|
||||||
|
"`RID` = '". $_GET["RIDXML"]. "', ".
|
||||||
|
"`Man` = '". mysql_escape_string($_GET["ManXML"]). "', ".
|
||||||
|
"`FromPentabarf`= 'Y' ".
|
||||||
|
"WHERE `SID` = '". $_GET["SIDXML"]. "' LIMIT 1;";
|
||||||
|
$Erg = mysql_query($SQL, $con);
|
||||||
|
if( $Erg )
|
||||||
|
{
|
||||||
|
echo "Aenderung, am Schedule '". $_GET["SIDXML"]. "', war erfogreich<br>\n";
|
||||||
|
if( mysql_num_rows($Erg1)==0)
|
||||||
|
{
|
||||||
|
echo "-->Create Shifts:<br>\n";
|
||||||
|
|
||||||
|
// 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<mysql_num_fields( $Erg2); $j++)
|
||||||
|
if( substr( mysql_field_name($Erg2, $j), 0, 12)=="DEFAULT_EID_" &&
|
||||||
|
mysql_result($Erg2, 0, $j) > 0 )
|
||||||
|
{
|
||||||
|
echo "---->Create engeltype: ". substr( mysql_field_name($Erg2, $j), 12).
|
||||||
|
" ". mysql_result($Erg2, 0, $j). "x<br>\n";
|
||||||
|
for( $i=0; $i < mysql_result($Erg2, 0, $j); $i++ )
|
||||||
|
{
|
||||||
|
$SQL3 = "INSERT INTO `ShiftEntry` (`SID`, `TID`) VALUES (".
|
||||||
|
"'". $_GET["SIDXML"]. "', ".
|
||||||
|
"'". substr( mysql_field_name($Erg2, $j), 12). "');";
|
||||||
|
|
||||||
|
$Erg3 = mysql_query($SQL3, $con);
|
||||||
|
if ($Erg3 == 1)
|
||||||
|
echo "------>pass<br>\n";
|
||||||
|
else
|
||||||
|
echo "------>fail <u>".
|
||||||
|
mysql_error($con).
|
||||||
|
"</u>($SQL3)<br>\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
echo "<br>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo "Aenderung, am Schedule '". $_GET["SIDXML"]. "', war <u>nicht</u> erfogreich.(".
|
||||||
|
mysql_error($con). ")<br>[$SQL]<br>\n";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo "Fehler in den Parametern!<br>";
|
||||||
|
} /*SaveSchedule*/
|
||||||
|
|
||||||
|
if( isset($_GET["ScheduleUpdate"]))
|
||||||
|
SaveSchedule();
|
||||||
|
|
||||||
|
//INIT Status counter
|
||||||
|
$DS_OK = 0;
|
||||||
|
$DS_KO = 0;
|
||||||
|
$Where = "";
|
||||||
|
|
||||||
|
//ausgabe
|
||||||
|
echo "<table border=\"0\">\n";
|
||||||
|
echo "<tr><th>SID</th><th>Date</th>".
|
||||||
|
"<th>Room</th><th>Len</th><th>Name</th><th>state</th></tr>\n";
|
||||||
|
echo "<tr align=\"center\"><td>XML - DB</td><td>XML - DB</td>".
|
||||||
|
"<td>XML - DB</td><td>XML - DB</td><td>XML - DB</td><td></td></tr>\n";
|
||||||
|
|
||||||
|
if( $EnableSchudle)
|
||||||
|
foreach($XMLmain->sub as $EventKey => $Event)
|
||||||
|
{
|
||||||
|
if( $Event->name == "VEVENT")
|
||||||
|
{
|
||||||
|
echo "<form action=\"dbUpdateFromXLS.php\">\n";
|
||||||
|
echo "\t<tr>\n";
|
||||||
|
|
||||||
|
$SIDXML = substr( getXMLsubData( $Event, "UID"), 0, strpos( 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, strlen(getXMLsubData( $Event, "DURATION"))-1);
|
||||||
|
$RIDXML = getXMLsubData( $Event, "LOCATION");
|
||||||
|
$ManXML = getXMLsubData( $Event, "SUMMARY");
|
||||||
|
|
||||||
|
if( isset($_GET["UpdateALL"]))
|
||||||
|
{
|
||||||
|
$_GET["SIDXML"] = $SIDXML;
|
||||||
|
$_GET["DateXML"] = $DateXML;
|
||||||
|
$_GET["LenXML"] = $LenXML;
|
||||||
|
$_GET["RIDXML"] = $RIDXML;
|
||||||
|
$_GET["ManXML"] = $ManXML;
|
||||||
|
SaveSchedule();
|
||||||
|
}
|
||||||
|
|
||||||
|
$SQL = "SELECT * FROM `Shifts` WHERE SID=$SIDXML";
|
||||||
|
$Erg = mysql_query($SQL, $con);
|
||||||
|
if(mysql_num_rows($Erg)>0)
|
||||||
|
{
|
||||||
|
$SIDDB = mysql_result($Erg, 0, "SID");
|
||||||
|
$TimeDB = mysql_result($Erg, 0, "DateS");
|
||||||
|
$LenDB = mysql_result($Erg, 0, "Len");
|
||||||
|
$RIDDB = $RoomID[mysql_result($Erg, 0, "RID")];
|
||||||
|
$ManDB = mysql_result($Erg, 0, "Man");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
$SIDDB = $TimeDB = $LenDB = $RIDDB = $ManDB= "";
|
||||||
|
|
||||||
|
echo "\t<td><input name=\"SIDXML\" type=\"text\" value=\"$SIDXML\" size=\"2\" eadonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"DateXML\" type=\"text\" value=\"$DateXML\" size=\"17\" readonly>\n\t\t".
|
||||||
|
"<input name=\"DateDB\" type=\"text\" value=\"$TimeDB\" size=\"17\" readonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"RIDXML\" type=\"text\" value=\"$RIDXML\" size=\"15\" readonly>\n\t\t".
|
||||||
|
"<input name=\"RIDDB\" type=\"text\" value=\"$RIDDB\" size=\"15\" readonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"LenXML\" type=\"text\" value=\"$LenXML\" size=\"1\"readonly>\n\t\t".
|
||||||
|
"<input name=\"LenDB\" type=\"text\" value=\"$LenDB\" size=\"1\"readonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"ManXML\" type=\"text\" value=\"$ManXML\" size=\"40\"readonly>\n\t\t".
|
||||||
|
"<input name=\"ManDB\" type=\"text\" value=\"$ManDB\" size=\"40\"readonly></td>\n";
|
||||||
|
if( !( $SIDXML==$SIDDB &&
|
||||||
|
$DateXML==$TimeDB &&
|
||||||
|
$RIDXML==$RIDDB &&
|
||||||
|
$LenXML==$LenDB &&
|
||||||
|
$ManXML==$ManDB) )
|
||||||
|
{
|
||||||
|
echo "\t<td><input type=\"submit\" name=\"ScheduleUpdate\" value=\"update\"></td>\n";
|
||||||
|
$DS_KO++;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
echo "\t<td><a href=\"./schichtplan.php?action=change&SID=$SIDXML\">edit</a></td>\n";
|
||||||
|
$DS_OK++;
|
||||||
|
}
|
||||||
|
echo "\t</tr>\n";
|
||||||
|
echo "</form>\n";
|
||||||
|
$Where.= " OR SID=$SIDXML";
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
echo "<tr><td colspan=\"6\">status: $DS_KO/$DS_OK nicht Aktuel.</td></tr>\n";
|
||||||
|
|
||||||
|
|
||||||
|
//Anzeige von nicht im XML File vorkommende entraege
|
||||||
|
if( $Where =="")
|
||||||
|
$SQL2 = "SELECT * FROM `Shifts` WHERE FromPentabarf = 'Y';";
|
||||||
|
else
|
||||||
|
$SQL2 = "SELECT * FROM `Shifts` WHERE NOT (".substr( $Where, 4). ") AND FromPentabarf = 'Y';";
|
||||||
|
|
||||||
|
$Erg2 = mysql_query($SQL2, $con);
|
||||||
|
if(mysql_num_rows($Erg2)>0 && $EnableSchudleDB )
|
||||||
|
for( $i=0; $i<mysql_num_rows( $Erg2); $i++)
|
||||||
|
{
|
||||||
|
echo "\t<tr>\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 "\t<td><input name=\"SIDXML\" type=\"text\" value=\"$SID\" size=\"2\" eadonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"DateXML\" type=\"text\" value=\"\" size=\"17\" readonly>\n\t\t".
|
||||||
|
"<input name=\"DateDB\" type=\"text\" value=\"$Time\" size=\"17\" readonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"RIDXML\" type=\"text\" value=\"\" size=\"15\" readonly>\n\t\t".
|
||||||
|
"<input name=\"RIDDB\" type=\"text\" value=\"$RID\" size=\"15\" readonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"LenXML\" type=\"text\" value=\"\" size=\"1\"readonly>\n\t\t".
|
||||||
|
"<input name=\"LenDB\" type=\"text\" value=\"$Len\" size=\"1\"readonly></td>\n";
|
||||||
|
echo "\t<td><input name=\"ManXML\" type=\"text\" value=\"\" size=\"40\"readonly>\n\t\t".
|
||||||
|
"<input name=\"ManDB\" type=\"text\" value=\"$Man\" size=\"40\"readonly></td>\n";
|
||||||
|
echo "\t<td><a href=\"./schichtplan.php?action=change&SID=$SID\">edit</a></td>\n";
|
||||||
|
echo "\t<tr>\n";
|
||||||
|
}
|
||||||
|
echo "</table>";
|
||||||
|
|
||||||
|
|
||||||
|
?>
|
Loading…
Reference in New Issue