- UID bei Zutrittskarten / Betriebsmittel mitspeichern

- GUI zum Zuweisen von neuen Karten
This commit is contained in:
Andreas Österreicher
2012-06-25 14:04:52 +00:00
parent 7624f3c31b
commit 0fd4f0c0c3
12 changed files with 582 additions and 1315 deletions
+4 -1
View File
@@ -30,6 +30,7 @@ loadVariables($user);
var BetriebsmittelTreeDatasource; //Datasource des BetriebsmittelTrees
var BetriebsmittelSelectBetriebsmittelperson_id=null; //Betriebsmittelzurodnung die nach dem Refresh markiert werden soll
var Betriebsmittel_Person_id;
var Betriebsmittel_Person_UID;
// ********** Observer und Listener ************* //
// ****
@@ -77,10 +78,11 @@ var BetriebsmittelTreeListener =
// ****
// * Laedt den Betriebsmitteltree
// ****
function loadBetriebsmittel(person_id)
function loadBetriebsmittel(person_id, uid)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
Betriebsmittel_Person_id = person_id;
Betriebsmittel_Person_UID = uid;
// *** Betriebsmittel ***
betriebsmitteltree = document.getElementById('betriebsmittel-tree');
@@ -400,6 +402,7 @@ function BetriebsmittelDetailSpeichern()
req.add('nummer2', nummer2);
req.add('beschreibung', beschreibung);
req.add('studiengang_kz', studiengang_kz);
req.add('uid', Betriebsmittel_Person_UID);
var response = req.executePOST();
+10 -1
View File
@@ -26,6 +26,7 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../config/vilesci.config.inc.php');
require_once('../include/basis.class.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
@@ -38,12 +39,20 @@ if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
$person_id = $_GET['person_id'];
else
die('Parameter person_id muss uebergeben werden');
if(isset($_GET['uid']))
{
$basis = new basis();
$uid = $basis->convert_html_chars($_GET['uid']);
}
else
$uid='';
?>
<window id="Betriebsmittel"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadBetriebsmittel(<?php echo $person_id; ?>);"
onload="loadBetriebsmittel(<?php echo $person_id.",'".$uid."'"; ?>);"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/betriebsmitteloverlay.js.php" />
+13 -2
View File
@@ -39,6 +39,7 @@ require_once('../include/bankverbindung.class.php');
require_once('../include/variable.class.php');
require_once('../include/benutzerfunktion.class.php');
require_once('../include/studiensemester.class.php');
require_once('../include/fotostatus.class.php');
$user = get_uid();
@@ -530,12 +531,22 @@ if(!$error)
}
else
{
$qry = "UPDATE public.tbl_person SET foto=null WHERE person_id='".$_POST['person_id']."'";
$qry = "UPDATE public.tbl_person SET foto=null WHERE person_id=".$db->db_add_param($_POST['person_id']);
if($db->db_query($qry))
{
$qry = "DELETE FROM public.tbl_akte WHERE person_id='".$_POST['person_id']."' AND dokument_kurzbz='Lichtbil'";
$qry = "DELETE FROM public.tbl_akte WHERE person_id=".$db->db_add_param($_POST['person_id'])." AND dokument_kurzbz='Lichtbil'";
if($db->db_query($qry))
{
$fs = new fotostatus();
$fs->person_id = $_POST['person_id'];
$fs->fotostatus_kurzbz='abgewiesen';
$fs->datum = date('Y-m-d');
$fs->insertamum = date('Y-m-d H:i:s');
$fs->insertvon = $user;
$fs->updateamum = date('Y-m-d H:i:s');
$fs->updatevon = $user;
$fs->save(true);
$return = true;
}
else
@@ -591,7 +591,7 @@ function MitarbeiterAuswahl()
document.getElementById('mitarbeiter-kontakt').setAttribute('src','kontakt.xul.php?person_id='+person_id);
// ***** BETRIEBSMITTEL *****
document.getElementById('mitarbeiter-betriebsmittel').setAttribute('src','betriebsmitteloverlay.xul.php?person_id='+person_id);
document.getElementById('mitarbeiter-betriebsmittel').setAttribute('src','betriebsmitteloverlay.xul.php?person_id='+person_id+'&uid='+uid);
// **** VERWENDUNG ****
verwendungtree = document.getElementById('mitarbeiter-tree-verwendung');
+1
View File
@@ -1914,6 +1914,7 @@ if(!$error)
$bmp->kaution = trim(str_replace(',','.',$_POST['kaution']));
$bmp->ausgegebenam = $_POST['ausgegebenam'];
$bmp->retouram = $_POST['retouram'];
$bmp->uid = $_POST['uid'];
if($bmp->save())
{
+1 -1
View File
@@ -1288,7 +1288,7 @@ function StudentAuswahl()
document.getElementById('student-kontakt').setAttribute('src','kontakt.xul.php?person_id='+person_id);
// ***** Betriebsmittel *****
document.getElementById('student-betriebsmittel').setAttribute('src','betriebsmitteloverlay.xul.php?person_id='+person_id);
document.getElementById('student-betriebsmittel').setAttribute('src','betriebsmitteloverlay.xul.php?person_id='+person_id+'&uid='+uid);
if(uid!='')
{
+13 -4
View File
@@ -53,6 +53,7 @@ class betriebsmittelperson extends basis_db
public $beschreibung;
public $oe_kurzbz;
public $nummer2;
public $uid;
/**
* Konstruktor
@@ -109,6 +110,7 @@ class betriebsmittelperson extends basis_db
$this->ort_kurzbz = $row->ort_kurzbz;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->nummer2 = $row->nummer2;
$this->uid = $row->uid;
return true;
}
else
@@ -188,7 +190,7 @@ class betriebsmittelperson extends basis_db
{
//Neuen Datensatz einfuegen
$qry='BEGIN;INSERT INTO wawi.tbl_betriebsmittelperson (betriebsmittel_id, person_id, anmerkung, kaution,
ausgegebenam, retouram, ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('.
ausgegebenam, retouram, ext_id, insertamum, insertvon, updateamum, updatevon, uid) VALUES('.
$this->db_add_param($this->betriebsmittel_id, FHC_INTEGER).', '.
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->anmerkung).', '.
@@ -197,7 +199,8 @@ class betriebsmittelperson extends basis_db
$this->db_add_param($this->retouram).', '.
$this->db_add_param($this->ext_id).', now(), '.
$this->db_add_param($this->insertvon).', now(), '.
$this->db_add_param($this->updatevon).');';
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->uid).');';
}
else
{
@@ -217,7 +220,8 @@ class betriebsmittelperson extends basis_db
'retouram='.$this->db_add_param($this->retouram).', '.
'ext_id='.$this->db_add_param($this->ext_id).', '.
'updateamum= now(), '.
'updatevon='.$this->db_add_param($this->updatevon).' '.
'updatevon='.$this->db_add_param($this->updatevon).', '.
'uid = '.$this->db_add_param($this->uid).' '.
'WHERE betriebsmittelperson_id='.$this->db_add_param($this->betriebsmittelperson_id, FHC_INTEGER).';';
}
@@ -351,7 +355,8 @@ class betriebsmittelperson extends basis_db
$bm->updatevon = $row->updatevon;
$bm->ext_id = $row->ext_id;
$bm->oe_kurzbz = $row->oe_kurzbz;
$bm->nummer2 = $row->nummer2;
$bm->nummer2 = $row->nummer2;
$bm->uid = $row->uid;
$this->result[] = $bm;
}
@@ -419,6 +424,7 @@ class betriebsmittelperson extends basis_db
$this->ext_id = $row->ext_id;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->nummer2 = $row->nummer2;
$this->uid = $row->uid;
return true;
}
else
@@ -484,6 +490,8 @@ class betriebsmittelperson extends basis_db
$bm->ext_id = $row->ext_id;
$bm->oe_kurzbz = $row->oe_kurzbz;
$bm->nummer2 = $row->nummer2;
$bm->uid = $row->uid;
$this->result[] = $bm;
}
@@ -537,6 +545,7 @@ class betriebsmittelperson extends basis_db
$this->ext_id = $row->ext_id;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->nummer2 = $row->nummer2;
$this->uid = $row->uid;
return true;
}
+6 -3
View File
@@ -168,10 +168,13 @@ $menu=array
'Ampel'=>array('name'=>'Ampel', 'link'=>'stammdaten/ampel_frameset.html', 'target'=>'main','permissions'=>array('basis/ampel')),
'Infoscreen'=>array('name'=>'Infoscreen', 'link'=>'stammdaten/infoscreen_frameset.html', 'target'=>'main','permissions'=>array('basis/infoscreen')),
'Ferien'=>array('name'=>'Ferien', 'link'=>'lehre/ferienverwaltung.php', 'target'=>'main','permissions'=>array('admin')),
'ImExport'=>array
'FH Ausweis'=>array
(
'name'=>'ImExport','permissions'=>array('admin'),
'Zutrittskarten'=>array('name'=>'Zutrittskarten', 'link'=>'stammdaten/imexport/zutrittskarten/index.html', 'target'=>'main')
'name'=>'FH Ausweis','permissions'=>array('basis/fhausweis'),
'Profilfotocheck'=>array('name'=>'Profilfoto Check','link'=>'fhausweis/bildpruefung.php','target'=>'main'),
'Kartentausch'=>array('name'=>'Kartentausch','link'=>'fhausweis/kartentausch.php','target'=>'main'),
'KarteZuweisen'=>array('name'=>'Karte zuweisen','link'=>'fhausweis/kartezuweisen.php','target'=>'main'),
'Syncronisation'=>array('name'=>'Syncronisation', 'link'=>'stammdaten/imexport/zutrittskarten/index.html', 'target'=>'main')
)
),
'Wartung'=> array
+347 -1301
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -46,7 +46,7 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
<body>
<h2>Profilfoto Check</h2>
';
if(!$rechte->isBerechtigt('basis/person','suid'))
if(!$rechte->isBerechtigt('basis/fhausweis','suid'))
{
die('Sie haben keine Berechtigung für diese Seite');
}
@@ -28,9 +28,13 @@ require_once('../../include/student.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/betriebsmittel.class.php');
require_once('../../include/betriebsmittelperson.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
@@ -44,6 +48,10 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
</head>
<body>
<h2>Zutrittskarte - Tauschen der Karte</h2>';
if(!$rechte->isBerechtigt('basis/fhausweis', 'suid'))
die('Sie haben keine Berechtigung für diese Seite');
$db = new basis_db();
$kartennummer_alt = (isset($_POST['kartennummer_alt'])?$_POST['kartennummer_alt']:'');
$karten_user = (isset($_POST['karten_user'])?$_POST['karten_user']:'');
+177
View File
@@ -0,0 +1,177 @@
<?php
/* Copyright (C) 2012 FH Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
/**
* GUI zum Zuweisen einer Zutrittskarte zu einer Person
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/betriebsmittel.class.php');
require_once('../../include/betriebsmittelperson.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/fhcomplete.css" type="text/css">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../skin/jquery.css" type="text/css"/>
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
<script type="text/javascript" src="../../include/js/jquery.js"></script>
<title>Kartentausch</title>
<script type="text/javascript">
$(document).ready(function()
{
$("#myTable").tablesorter(
{
sortList: [[2,0]],
widgets: ["zebra"]
});
});
</script>
</head>
<body>
<h2>Zutrittskarte - Zuweisen der Karte</h2>';
if(!$rechte->isBerechtigt('basis/fhausweis', 'suid'))
die('Sie haben keine Berechtigung für diese Seite');
$db = new basis_db();
$users = (isset($_REQUEST['users'])?$_REQUEST['users']:'');
if(isset($_GET['data']))
{
$users = explode(';',$_GET['data']);
}
if(isset($_POST['save']) && $users!='')
{
foreach($users as $user)
{
$benutzer = new benutzer();
if($benutzer->load($user))
{
$nummer1 = $_POST['nummer1_'.$user];
$nummer2 = $_POST['nummer2_'.$user];
if($nummer1=='' || $nummer2=='')
{
echo '<span class="error">Ueberspringe '.$db->convert_html_chars($user).' - keine Nummer eingetragen</span>';
continue;
}
//Karte anlegen
$bm = new betriebsmittel();
$bm->betriebsmitteltyp = 'Zutrittskarte';
$bm->nummer = $nummer1;
$bm->nummer2 = $nummer2;
$bm->insertamum = date('Y-m-d H:i:s');
$bm->insertvon = $uid;
$bm->updateamum = date('Y-m-d H:i:s');
$bm->updatevon = $uid;
$bm->reservieren=false;
if($bm->save(true))
{
//Zuordnung zu Benutzer anlegen
$bmp = new betriebsmittelperson();
$bmp->betriebsmittel_id = $bm->betriebsmittel_id;
$bmp->person_id = $benutzer->person_id;
$bmp->insertamum = date('Y-m-d H:i:s');
$bmp->insertvon = $uid;
$bmp->uid = $user;
if($bmp->save(true))
{
echo '<span class="ok">+</span>';
}
else
{
echo '<br><span class="error">'.$user.' - '.$bmp->errormsg.'</span>';
}
}
else
{
echo '<br><span class="error">'.$user.' - '.$bm->errormsg.'</span>';
}
}
else
{
echo '<br><span class="error">'.$user.' - '.$benutzer->errormsg.'</span>';
}
}
}
if($users!='')
{
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
<table id="myTable" class="tablesorter">
<thead>
<tr>
<th>UID</th>
<th>Vorname</th>
<th>Nachname</th>
<th>Nummer 1</th>
<th>Nummer 2</th>
</tr>
</thead>
<tbody>';
foreach($users as $user)
{
$benutzer = new benutzer();
if($benutzer->load($user))
{
echo '<tr>';
echo '<td><input type="hidden" name="users[]" value="'.$db->convert_html_chars($user).'">'.$db->convert_html_chars($user).'</td>';
echo '<td>'.$db->convert_html_chars($benutzer->vorname).'</td>';
echo '<td>'.$db->convert_html_chars($benutzer->nachname).'</td>';
echo '<td><input type="text" name="nummer1_'.$db->convert_html_chars($user).'"></td>';
echo '<td><input type="text" name="nummer2_'.$db->convert_html_chars($user).'"></td>';
echo '</tr>';
}
else
{
echo '<tr><td colspan="5">'.$db->convert_html_chars($user).' - Unbekannte UID</td></tr>';
}
}
echo '</tbody></table>';
echo '<input type="submit" name="save" value="Speichern">
</form>';
}
else
{
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
UID: <input type="text" name="users[]" value="">';
echo '<input type="submit" name="submit" value="Zuweisung">
</form>';
}
echo '</body>
</html>';
?>