<?php
/**
* @author Bettina Schwarzer, Fritz-Haber-Institut
* @copyright 07/2011
*
* UPDATE(/DELETE) Raumdaten
*/
error_reporting(E_ALL ^ E_NOTICE);
session_start();
if (! isset($_SESSION["userid"]))
{
include_once ("inc/func_lib.inc.php");
login($_SERVER["PHP_SELF"]);
exit;
}
if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rr",$_SESSION["recht"]) && !in_array("re",$_SESSION["recht"])))
{
header("Location: start.php");
exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
<link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
<title>Aktualisieren Raumdaten</title>
</head>
<body>
<?php
echo " ";
echo "<div class=\"float-br smaller\" valign='top'>";
echo " user: " . $_SESSION["userid"];
echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
echo "<div class=\"float-r\"><img src=\"img/house.png\" border=\"0\" alt=\"Raumdaten bearbeiten\" title=\"Raumdaten bearbeiten\"/></div>\n";
include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
$dbc = new dbconnection();
$rid = $_GET["uid"];
$start = $_GET["st"];
$zeil = $_GET["z"];
$sort = $_GET["s"]; // Sortierung nach Spalte
$dir = $_GET["d"]; // Sortierrichtung
$fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
$filter = $_GET["b"]; // Filterbegriff
// $_GET-Parameter zurück zur Raumliste mit den selben Einstellungen wie zuvor
$getp = "?s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
if (!$rid) $rid=1;
$ok = $_POST["ok"];
$upd = $_POST["upd"];
$del = $_POST["del"];
$raum = $_POST["raum"];
if (!$raum['okn']) $ok=false;
// print_r($raum);
// echo "<br><br>\n";
// echo "Vertragsbezeichnung: " . $raum['cname'] ."<br><br>\n";
if ($_FILES["rfile"]["error"] == 1 || $_FILES["rfile"]["error"] == 2)
{
if ($_FILES["rfile"]["error"] == 2)
echo "<p class='red'><b>Uploadfile zu ID '$rid' > 10 MByte!</b></p>\n";
$ok = 0;
}
if ((!$ok && ((!$upd && !$del) || $upd || $del)) || ($upd && is_uploaded_file($_FILES["rfile"]["tmp_name"]) && $raum['rfname']<'!'))
{
if (!$upd && !$del)
{
$sql = "SELECT raum_ID,raum_nr,raum_name,geb_ID,raumtyp_ID,reinigung_typ_ID,raum_flaeche,raum_file,
reinigung_kat,reinigung_turnus_ID,boden_typ_ID,raum_bem
FROM fhiiqm.Raum WHERE raum_ID = $rid";
if ($result = $dbc ->queryObjectArray($sql))
{
foreach ($result as $row)
{
$raum['rnum'] = $row->raum_nr;
$raum['rbez'] = $row->raum_name;
$raum['geb'] = $row->geb_ID;
$raum['rtyp'] = $row->raumtyp_ID;
$raum['reityp'] = $row->reinigung_typ_ID;
$raum['rflae'] = str_replace(".",",",$row->raum_flaeche);
$raum['rfname'] = $row->raum_file;
$raum['reikat'] = $row->reinigung_kat;
$raum['reitur'] = $row->reinigung_turnus_ID;
$raum['boden'] = $row->boden_typ_ID;
// $raum['bem'] = $row->raum_bem;
}
}
}
include_once("form/raum_form.inc.php");
if ($upd)
{
echo
"<tr>
<td>Upload Raumplan </td>
<td><input type=\"file\" name=\"rfile\" size=\"50\" maxlength=\"50\" value=\"" .
$_FILES["rfile"]["name"] . "\"/></td>
</tr>";
}
if ($upd || $del)
{
if ($upd)
$frage = "Alle Angaben ok?<br>
erst wenn Haken gesetzt, Upload-File wählen!";
elseif ($del)
$frage = "Raum wirklich löschen?";
echo "<tr>
<td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
<td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
if ($ok) echo "checked";
echo "></td>\n</tr>\n";
}
if (!is_null($_SESSION["recht"]) && in_array("re", $_SESSION["recht"]))
{
echo "<tr>\n";
echo "
<td> </td>
<td><input class=\"button\" type=\"submit\" value=\"ändern\" name=\"upd\" title=\"update\" />
<input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" /></td>\n";
echo "</tr>\n";
}
echo "</table>\n";
echo "</div>\n";
// if (!is_null($_SESSION["recht"]) && !in_array("re", $_SESSION["recht"]))
// echo "<p class='sc'> <a href=\"raum_flist.php$liste\" target=\"_self\" title=\"Raumliste\">« zur Raumliste</a></p>\n";
echo "<p class='sc'> <a href=\"raum_flist.php$getp\" target=\"_self\" title=\"Raumliste\">« zur Raumliste</a></p>\n";
echo "</form>\n";
}
elseif ($ok && $upd)
{
echo "<div align='center'>\n";
//daten speichern
//UPDATE Raum
$raum['rbez'] = substr($raum['rbez'],0,50);
$raum['rnum'] = substr($raum['rnum'],0,10);
// $raum['bem'] = substr($raum['bem'],0,800);
// if (!isset($raum['bem']) || $raum['bem']<'!') $raum['bem'] = null;
if ($raum['rtyp']== -1) $raum['rtyp'] = null;
if ($raum['reityp']== -1) $raum['reityp'] = null;
if ($raum['reikat']== -1) $raum['reikat'] = null;
if ($raum['reitur']== -1) $raum['reitur'] = null;
if ($raum['boden']== -1) $raum['boden'] = null;
// Filename Vertrag
$raum['rfname'] = substr($raum['rfname'],0,50);
if (isset($raum['rflae']) && $raum['rflae']>"0")
$raum['rflae'] = str_replace(",",".",$raum['rflae']);
else
$raum['rflae'] = null;
if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
// alter Name Raumfile
$sql = "SELECT raum_file FROM Raum WHERE raum_ID = $rid";
$rfile_old = $dbc -> querySingleItem($sql);
// upload File, wenn vorhanden
if (is_uploaded_file($_FILES["rfile"]["tmp_name"]) && isset($_FILES["rfile"]["name"]) && $_FILES["rfile"]["name"] )
{
include_once ("inc/file_upload.inc.php");
$fname = gen_filename($raum['rfname'],"rfile",$rid); // Dateinamen generieren
$retdf = mod_file("/var/www/fhiiqm/raeume",$rid,"","del"); // Loeschen alte Datei
$retf = upload("rfile", $fname, $rid, "raeume"); // Datei prüfen und in Dokumentenverzeichnis verschieben
}
else
{
// nur Aenderung Dateiname
include_once ("inc/file_upload.inc.php");
if ($raum['rfname'] != $rfile_old)
{
if ($raum['rfname']>"!")
{
$fname = gen_filename($raum['rfname'],$rfile_old,$rid,0);
$len = strlen($rid)+1;
if (substr($fname,0,$len) != "$rid" . "_") $fname = $rid . "_" . $fname;
$retf = mod_file("/var/www/fhiiqm/raeume",$rid,$fname,"upd"); // Umbenennen alte Datei
}
else
{ // Dateiname nicht angegeben
$retf=1;
if ($rfile_old)
{ // Loeschen alte Datei
$retf = mod_file("/var/www/fhiiqm/raeume",$rid,"","del");
}
$fname = null;
}
}
else
{
//kein Upload, keine Dateinamenaenderung
$fname = $raum['rfname'];
$retf=1;
}
}
$len = strlen($rid)+1;
if (isset($fname) && $fname && $retf && (substr($fname,0,$len) != "$rid" . "_")) $rfile = $rid . "_" . $fname; else $rfile = $fname;
/*
if ($raum['rtyp']== -1) $rtyp = "NULL"; else $rtyp = "'" . $raum['rtyp'] . "'";
if (isset($raum['rflae']) && $raum['rflae']>"0")
$raum['rflae'] = str_replace(",",".",$raum['rflae']);
else
$raum['rflae'] = "NULL";
if (isset($fname) && $retf) $rfile = "raum_file = '" . $rid . "_" . $fname . "' "; else $rfile = "raum_file = '" . $raum['rfname'] . "'";
$sql = "UPDATE fhiiqm.Raum SET
raum_nr ='" . $raum['rnum'] ."',
raum_name ='" . $raum['rbez'] ."',
geb_ID = '" . $raum['geb'] . "',
raumtyp_ID = " . $rtyp . ",
raum_flaeche = " . $raum['rflae'] . ", " .
$rfile .
" WHERE raum_ID = $rid" ;
$retr = $dbc -> execute($sql);
*/
$stmt = $dbc -> stmtinit();
if (is_object($stmt))
{
$stmt -> prepare("UPDATE fhiiqm.Raum SET
raum_nr = ?,
raum_name = ?,
geb_ID = ?,
raumtyp_ID = ?,
reinigung_typ_ID = ?,
raum_flaeche = ?,
raum_file = ?,
reinigung_kat = ?,
reinigung_turnus_ID = ?,
boden_typ_ID = ?
WHERE raum_ID = $rid");
$stmt -> bind_param('sssssdssdi',$raum["rnum"],$raum["rbez"],$raum["geb"],$raum["rtyp"],$raum["reityp"],$raum["rflae"],$rfile,
$raum["reikat"],$raum["reitur"],$raum["boden"]);
$retr = $stmt -> execute();
}
// echo "UPDATE-sql = $sql<br />\n";
if (!$retr) echo "error update" . $stmt -> error ."<br />\n";
if ($retr)
{//Eingabe Daten, Upload File erfolgreich
echo "<p class='green'><b>Raumdaten zu ID '$rid' wurden erfolgreich gespeichert.</b></p>\n";
echo "<br /><br />\n";
// Anzeigen gespeicherte Vertragsdaten
include ("inc/raum_dat_show.inc.php");
}
}
elseif ($ok && $del)
{
// DELETE aus Tab Vertrag und abhaengigen Tabellen
echo "<div align='center'>\n";
$sql = "DELETE FROM Raum WHERE raum_ID = $rid";
$retrd = $dbc -> execute($sql);
if ($retrd)
{
echo "<p class='green'><b>Raum " . $raum['rnum'] . " (ID '$rid') wurde gelöscht.</b></p>\n";
include ("inc/file_upload.inc.php");
$retdf = mod_file("/var/www/fhiiqm/raeume",$rid,"","del"); // Loeschen Dokument
if ($retdf) echo "<p class='green'><b>Raumplan zu ID '$rid' wurde gelöscht.</b></p>\n";
echo "<br /><br />\n";
// Anzeigen geloeschter Vertragsdaten
if ($fname)
$rfile = $rid . "_" . $fname;
else
$rfile = $raum['rfname'];
include ("inc/raum_dat_show.inc.php");
}
else
{
echo "<p class='red'><b>DELETE: Raum '".$raum["rnum"]." - ".$raum["rbez"]."', Haus '". $raum["geb"] ."' konnte nicht gelöscht werden!</b></p>\n";
echo "error DELETE" . $dbc -> error ."<br />\n";
}
}
if ($ok && ($upd || $del))
{
// Raumliste filtern mit zuletzt eingegeben Haus
echo "</div><br /><br />\n";
echo "<p class='sc'> <a href=\"raum_flist.php$getp\" target=\"_self\" title=\"Raumliste\">Zurück zur Raumliste</a></p>\n";
echo "<p class='sc'> <a href=\"raum_ins.php$getp\" target=\"_self\" title=\"Raum erfassen\">Weiteren Raum erfassen</a></p>\n";
}
?>
</body>
</html>