--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/form/ma_fkt_form.inc.php Thu Sep 08 15:25:25 2011 +0200
@@ -0,0 +1,57 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 09/2011
+ */
+
+
+
+?>
+<div align="center">
+<table>
+<tr><td class="bigger">Die Auswahl von Mitarbeiter bzw. Funktion geschieht durch<br />Eingeben von mindesten 2 bzw. 1 Zeichen in das entsprechende Feld.
+</td></tr>
+<tr><td class="bigger"><div class="red">Achtung! </div>Umlaute wie 'ä', 'ü', 'ö', 'ß' werden nicht gefunden, bitte benachbarte Zeichen eingeben.</td></tr>
+<tr><td class="bigger"> </td></tr>
+</table>
+</div>
+<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="fmafkt">
+<div align="center">
+ <table border="0" cellspacing="3" cellpadding="3">
+ <div class="ui-widget">
+ <tr><td>Mitarbeiter *</td>
+ <td valign="top"><input class="long20" type="text" name="fkt[persknr]" id="persknr" value="<?php echo $fkt['persknr']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Funktion *</td>
+ <td valign="top"><input class="long20" type="text" name="fkt[func]" id="func" value="<?php echo $fkt['func']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Geltungsbereich</td>
+ <td valign="top"><input class="long20" type="text" name="fkt[ber]" id="ber" maxlength="50" value="<?php echo $fkt['ber']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Beginn</td>
+ <td valign="top"><input class="long10" type="text" name="fkt[von]" id="von" value="<?php echo $fkt['von']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Ende</td>
+ <td valign="top"><input class="long10" type="text" name="fkt[bis]" id="bis" value="<?php echo $fkt['bis']; ?>"/>
+ </td>
+ </tr>
+ <tr><td>Bemerkung</td>
+ <td valign="top"><textarea name="fkt[bem]" id="bem" rows="3" cols="33"><?php echo $fkt['bem']; ?></textarea>
+ </td>
+ </tr>
+ <tr><td> </td>
+ <td><input class="button" type="submit" name="eintragen" value=" eintragen " />
+ <!-- <input type="submit" name="abbrechen" value="abbrechen"> -->
+ </td>
+ </tr>
+ </div>
+ </table>
+ <input type="hidden" name="fkt[pid]" id="pid" value="<?php echo $fkt['pid']; ?>"/>
+ <input type="hidden" name="fkt[fid]" id="fid" value="<?php echo $fkt['fid']; ?>"/>
+</form>
+</div>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/inc/fkt_list_ac.inc.php Thu Sep 08 15:25:25 2011 +0200
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 09/2011
+ *
+ * Autocomplete Funktionensuche
+ */
+
+ header('Content-type: text/html; charset="iso-8859-1',true); //wg. jquery ui autocomplete
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ $q = strtolower($_GET["term"]); // wird in jquery in 'term' uebergeben
+
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ $dbc = new dbconnection();
+
+ $sql = "SELECT fkt_bez as label, fkt_bez as val, fkt_ID as id FROM `fhiiqm`.`Funktion`
+ WHERE fkt_bez LIKE '%".$q."%' COLLATE latin1_general_ci
+ ORDER BY 1";
+ $result = $dbc ->queryObjectArray($sql);
+ if ($result)
+ {
+ foreach ($result as $row)
+ {
+ $clist[] = "{\"label\": \"" . $row->label . "\",\"value\": \"" . $row->val . "\",\"id\": \"" . $row->id . "\"}";
+ }
+ echo "[" . implode(", ", $clist) . "]"; // Format, das jquery source erwartet
+ }
+ $dbc -> close();
+?>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/inc/ma_list_ac.inc.php Thu Sep 08 15:25:25 2011 +0200
@@ -0,0 +1,33 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 09/2011
+ *
+ * Autocomplete Mitarbeitersuche
+ */
+
+ header('Content-type: text/html; charset="iso-8859-1',true); //wg. jquery ui autocomplete
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ $q = strtolower($_GET["term"]); // wird in jquery in 'term' uebergeben
+
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ $dbc = new dbconnection();
+
+ $sql = "SELECT CONCAT (nachname, ', ',vorname) as label, CONCAT (nachname, ', ',vorname) as val,persknr as id
+ FROM fhiiqm.Mitarbeiter
+ WHERE nachname LIKE '%".$q."%' COLLATE latin1_general_ci
+ ORDER BY 1";
+ $result = $dbc ->queryObjectArray($sql);
+ if ($result)
+ {
+ foreach ($result as $row)
+ {
+ $clist[] = "{\"label\": \"" . $row->label . "\",\"value\": \"" . $row->val . "\",\"id\": " . $row->id . "}";
+ }
+ echo "[" . implode(", ", $clist) . "]"; // Format, das jquery source erwartet
+ }
+ $dbc -> close();
+?>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/ma_fkt_ed.php Thu Sep 08 15:25:25 2011 +0200
@@ -0,0 +1,164 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer
+ * @copyright 2011
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+?>
+
+<!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 type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" />
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
+ <title>Funktionen</title>
+ </head>
+
+ <body>
+ <div class="float-r"><img src="img/reseller_account_template.png" border="0" alt="Mitarbeiter-Funktion" title="Mitarbeiter-Funktion"/></div>
+ <div align='center'>
+ <script>
+ $(document).ready(function() {
+ $("#persknr").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("#func").autocomplete({
+ source: "/fhiiqm/inc/fkt_list_ac.inc.php",
+ minLength: 1,
+ select: function(event,ui){$("#fid").val(ui.item.id);}
+ });
+
+ $("#von").datepicker({
+ dateFormat: 'yy-mm-dd',
+ yearRange: '2000:2020',
+ changeMonth: true,
+ changeYear: true
+ });
+ $("#bis").datepicker({
+ dateFormat: 'yy-mm-dd',
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true
+ });
+ $("input").filter("long20").addClass("long20");
+ $("input").filter("long30").addClass("long30");
+ $("input").filter("long50").addClass("long50");
+ });
+ </script>
+
+ <?php
+ $fkt = $_POST["fkt"];
+ if (!$fkt["pid"]) $fkt["pid"] = $_GET["p"];
+ if (!$fkt["fid"]) $fkt["fid"] = $_GET["f"];
+ $sub = $_POST["eintragen"];
+
+ echo "<h3>Zuordnung von Funktionen zu Mitarbeitern<h3>";
+
+ echo "</div>\n";
+
+ if ((!isset($fkt) && !$fkt) || !$fkt["pid"] || !$fkt["fid"] || !$sub)
+ {
+ if ($fkt["pid"] && $fkt["fid"])
+ {
+ $sql = "SELECT fkt_bereich, fkt_von, fkt_bis, fkt_bem, CONCAT(nachname,', ',vorname) AS vname, fkt_bez
+ FROM fhiiqm.MA_Funktion ma INNER JOIN
+ fhiiqm.Mitarbeiter m ON ma.persknr=m.persknr INNER JOIN
+ fhiiqm.Funktion f ON ma.fkt_ID=f.fkt_ID
+ WHERE ma.persknr = " . $fkt["pid"] . " AND ma.fkt_ID ='" . $fkt["fid"] ."'";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $fkt["persknr"] = $row->vname;
+ $fkt["func"] = $row->fkt_bez;
+ $fkt["ber"] = $row->fkt_bereich;
+ $fkt["von"] = $row->fkt_von;
+ $fkt["bis"] = $row->fkt_bis;
+ $fkt["bem"] = $row->fkt_bem;
+ }
+ }
+ }
+ include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/ma_fkt_form.inc.php");
+ }
+ else
+ {
+ // Daten speichern
+ echo "<div align='center'>\n";
+
+ // Eingabedaten validieren
+ if (!$fkt["von"])
+ $fvon = null;
+ elseif (!$fvon = new DateTime_s($fkt["von"]))
+ $fvon = null;
+ if (!$fkt["bis"])
+ $fbis = null;
+ elseif (!$fbis = new DateTime_s($fkt["bis"]))
+ $fbis = null;
+ if ($fkt["ber"]) $fkt["ber"] = substr($fkt["ber"],0,50); else $fkt["ber"]=null;
+ if ($fkt["bem"]) $fkt["bem"] = substr($fkt["bem"],0,100); else $fkt["bem"]=null;
+/*
+ echo "MA = ".$fkt["pid"] ." - ". $fkt["persknr"] . ", Funktion= ".$fkt["fid"] ." - ". $fkt["func"] . ", Bereich = " . $fkt["ber"] .
+ ", von = ".$fkt["von"] .", bis = ".$fkt["bis"] .", bem = ".$fkt["bem"] ."<br />\n";
+ echo "fvon = $fvon, fbis = $fbis<br />\n";
+*/
+ if ($fkt["pid"] && $fkt["fid"])
+ {
+ $sql="SELECT COUNT(*) FROM MA_Funktion WHERE persknr=" . $fkt["pid"] . " AND fkt_ID='" . $fkt["fid"] ."'";
+ $result = $dbc ->querySingleItem($sql);
+ if ($result && $fkt["ber"]>"!")
+ { // UPDATE
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $stmt -> prepare("UPDATE fhiiqm.MA_Funktion SET
+ fkt_bereich = ?,
+ fkt_von = ?,
+ fkt_bis = ?,
+ fkt_bem = ?
+ WHERE persknr=" . $fkt["pid"] . " AND fkt_ID='" . $fkt["fid"] ."'");
+ $stmt -> bind_param('ssss',$fkt["ber"], $fvon, $fbis, $fkt["bem"]);
+ $res = $stmt -> execute();
+ print_r($stmt);
+ if ($dbc->error) echo "error: " . $dbc->errno." -> ".$dbc->error . "<br><br>\n";
+ if ($res)
+ echo "<p class='green'><b>UPDATE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' wurde erfolgreich gespeichert.</b></p>\n";
+ else
+ echo "<p class='red'><b>UPDATE: Daten zu '".$fkt["persknr"]."' und '".$fkt["func"]."' konnte nicht gespeichert werden!</b></p>\n";
+ }
+ }
+ else
+ { // INSERT
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ $stmt -> prepare("INSERT INTO fhiiqm.MA_Funktion (persknr,fkt_ID,fkt_bereich,fkt_von,fkt_bis,fkt_bem) VALUES(?,?,?,?,?,?)");
+ $stmt -> bind_param('iss',$fkt["pid"],$fkt["fid"],$fkt["ber"], $fvon, $fbis, $fkt["bem"]);
+ $res = $stmt -> execute();
+ if ($dbc->error) echo "error: " . $dbc->errno." -> ".$dbc->error . "<br><br>\n";
+ if ($res)
+ echo "<p class='green'><b>INSERT: Zuordnung von '".$fkt["func"]."' zu '".$fkt["persknr"]."' wurde erfolgreich gespeichert.</b></p>\n";
+ else
+ echo "<p class='red'><b>INSERT: Zuordnung von '".$fkt["func"]."' zu '".$fkt["persknr"]."' konnte nicht gespeichert werden!</b></p>\n";
+ }
+
+ }
+ }
+ echo "</div>\n";
+ echo "<p> <a href=\"ma_fkt_ed.php\" target=\"_self\" title=\"Information erfassen\">Weitere Funktion erfassen/editieren</a></p>\n";
+ }
+ ?>
+
+ </body>
+ </html>