mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Anmerkung und Insertdaten bei Rolleberechtigung
+ Vergleichsskript für Rechte in einzelnen Rollen
This commit is contained in:
@@ -29,6 +29,10 @@ class berechtigung extends basis_db
|
||||
public $rolle_kurzbz;
|
||||
public $beschreibung;
|
||||
public $berechtigung_kurzbz;
|
||||
public $art;
|
||||
public $anmerkung;
|
||||
public $insertamum;
|
||||
public $insertvon;
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
@@ -78,8 +82,7 @@ class berechtigung extends basis_db
|
||||
public function save($new=null)
|
||||
{
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
|
||||
if($new)
|
||||
{
|
||||
$qry = "INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) VALUES(".
|
||||
@@ -176,6 +179,9 @@ class berechtigung extends basis_db
|
||||
$obj->rolle_kurzbz = $row->rolle_kurzbz;
|
||||
$obj->art = $row->art;
|
||||
$obj->beschreibung = $row->beschreibung;
|
||||
$obj->anmerkung = $row->anmerkung;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
@@ -276,15 +282,22 @@ class berechtigung extends basis_db
|
||||
if($this->db_num_rows()>0)
|
||||
{
|
||||
//Update
|
||||
$qry = "UPDATE system.tbl_rolleberechtigung SET art=".$this->db_add_param($this->art)." WHERE rolle_kurzbz=".$this->db_add_param($this->rolle_kurzbz)." AND berechtigung_kurzbz=".$this->db_add_param($this->berechtigung_kurzbz).";";
|
||||
$qry = "UPDATE system.tbl_rolleberechtigung SET art=".$this->db_add_param($this->art).",
|
||||
anmerkung=".$this->db_add_param($this->anmerkung).",
|
||||
insertamum=".$this->db_add_param($this->insertamum).",
|
||||
insertvon=".$this->db_add_param($this->insertvon)."
|
||||
WHERE rolle_kurzbz=".$this->db_add_param($this->rolle_kurzbz)." AND berechtigung_kurzbz=".$this->db_add_param($this->berechtigung_kurzbz).";";
|
||||
}
|
||||
else
|
||||
{
|
||||
//Insert
|
||||
$qry = "INSERT INTO system.tbl_rolleberechtigung (rolle_kurzbz, berechtigung_kurzbz, art) VALUES(".
|
||||
$qry = "INSERT INTO system.tbl_rolleberechtigung (rolle_kurzbz, berechtigung_kurzbz, art, anmerkung, insertamum, insertvon) VALUES(".
|
||||
$this->db_add_param($this->rolle_kurzbz).",".
|
||||
$this->db_add_param($this->berechtigung_kurzbz).",".
|
||||
$this->db_add_param($this->art).");";
|
||||
$this->db_add_param($this->art).",".
|
||||
$this->db_add_param($this->anmerkung).",".
|
||||
$this->db_add_param($this->insertamum).",".
|
||||
$this->db_add_param($this->insertvon).");";
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
|
||||
@@ -39,6 +39,7 @@ require_once('dbupdate_3.4/27107_vilesci_erfassung_abwesenheiten_reinigung.php')
|
||||
require_once('dbupdate_3.4/24913_tabelle_raumtyp_neues_attribut_aktiv.php');
|
||||
require_once('dbupdate_3.4/28089_plausichecks_in_extension_hinzufuegen.php');
|
||||
require_once('dbupdate_3.4/29133_einzelne_studiengaenge_aus_issuechecks_ausnehmen.php');
|
||||
require_once('dbupdate_3.4/30537_anmerkung_in_tbl_rolleberechtigung.php');
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
@@ -326,7 +327,7 @@ $tabellen=array(
|
||||
"system.tbl_phrase" => array("phrase_id","app","phrase","insertamum","insertvon","category"),
|
||||
"system.tbl_phrasentext" => array("phrasentext_id","phrase_id","sprache","orgeinheit_kurzbz","orgform_kurzbz","text","description","insertamum","insertvon"),
|
||||
"system.tbl_rolle" => array("rolle_kurzbz","beschreibung"),
|
||||
"system.tbl_rolleberechtigung" => array("berechtigung_kurzbz","rolle_kurzbz","art"),
|
||||
"system.tbl_rolleberechtigung" => array("berechtigung_kurzbz","rolle_kurzbz","art","anmerkung","insertamum","insertvon"),
|
||||
"system.tbl_verarbeitungstaetigkeit" => array("taetigkeit_kurzbz", "bezeichnung", "bezeichnung_mehrsprachig","aktiv"),
|
||||
"system.tbl_webservicelog" => array("webservicelog_id","webservicetyp_kurzbz","request_id","beschreibung","request_data","execute_time","execute_user"),
|
||||
"system.tbl_webservicerecht" => array("webservicerecht_id","berechtigung_kurzbz","methode","attribut","insertamum","insertvon","updateamum","updatevon","klasse"),
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
if (! defined('DB_NAME')) exit('No direct script access allowed');
|
||||
|
||||
// ADD COLUMN anmerkung to system.tbl_rolleberechtigung
|
||||
if(!$result = @$db->db_query("SELECT anmerkung FROM system.tbl_rolleberechtigung LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE system.tbl_rolleberechtigung ADD COLUMN anmerkung varchar(256);
|
||||
ALTER TABLE system.tbl_rolleberechtigung ADD COLUMN insertamum timestamp DEFAULT now();
|
||||
ALTER TABLE system.tbl_rolleberechtigung ADD COLUMN insertvon varchar(32);";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>system.tbl_rolleberechtigung '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Spalten anmerkung, insertamum, insertvon in system.tbl_rolleberechtigung hinzugefügt';
|
||||
}
|
||||
@@ -1,239 +1,3 @@
|
||||
<?php
|
||||
/* Copyright (C) 2009 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: Christian Paminger < christian.paminger@technikum-wien.at >
|
||||
* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/berechtigung.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/berechtigung'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$berechtigung_kurzbz = filter_input(INPUT_POST, 'berechtigung_kurzbz');
|
||||
$beschreibung = filter_input(INPUT_POST, 'beschreibung');
|
||||
$kurzbz = filter_input(INPUT_GET, 'kurzbz');
|
||||
$kurzbzPost = filter_input(INPUT_POST, 'kurzbz_post');
|
||||
$edit = filter_input(INPUT_GET, 'edit');
|
||||
$save = filter_input(INPUT_POST, 'save');
|
||||
$delete = filter_input(INPUT_GET, 'delete');
|
||||
$saveNew = filter_input(INPUT_POST, 'saveNew');
|
||||
|
||||
//$delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Rechte</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<link href="../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
|
||||
<?php
|
||||
include('../../include/meta/jquery.php');
|
||||
include('../../include/meta/jquery-tablesorter.php');
|
||||
?>
|
||||
<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script language="Javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[0,0]],
|
||||
widgets: ["zebra", "filter", "stickyHeaders"],
|
||||
headers: {2:{sorter:false, filter:false}},
|
||||
widgetOptions : {filter_saveFilters : true}
|
||||
});
|
||||
$('.resetsaved').click(function()
|
||||
{
|
||||
$("#t1").trigger("filterReset");
|
||||
window.location("<?php echo $_SERVER['PHP_SELF'] ?>");
|
||||
return false;
|
||||
});
|
||||
$("textarea").keyup(function()
|
||||
{
|
||||
$(this).siblings("span").text((256 - $(this).val().length));
|
||||
});
|
||||
});
|
||||
function confdel(berechtigung)
|
||||
{
|
||||
return confirm("Achtung! Sie sollten nur Rechte löschen, die unabhängig von Core-Funktionalitäten angelegt wurden.\n\n"
|
||||
+"Sie können ein Recht erst dann löschen, wenn alle Zuordnungen zu Personen, Rollen und Funktionen ebenfalls entfernt wurden.\n\n"
|
||||
+"Wollen Sie das Recht '" + berechtigung + "' wirklich löschen?");
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body class="background_main">
|
||||
<h2>Rollenübersicht</h2>
|
||||
|
||||
<?php
|
||||
if(isset($saveNew))
|
||||
{
|
||||
if(isset($kurzbzPost) && isset($beschreibung))
|
||||
{
|
||||
$berechtigung = new berechtigung();
|
||||
$berechtigung->berechtigung_kurzbz = $kurzbzPost;
|
||||
$berechtigung->beschreibung = $beschreibung;
|
||||
$berechtigung->new = true;
|
||||
|
||||
if($berechtigung->save())
|
||||
{
|
||||
echo 'Recht '.$kurzbzPost.' wurde angelegt<br><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Fehler beim Speichern:'.$berechtigung->errormsg.'<br><br>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Zum Speichern der Daten muss die Kurzbz und die Beschreibung angegeben werden<br><br>';
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($delete) && isset($kurzbz))
|
||||
{
|
||||
$berechtigung = new berechtigung();
|
||||
if($berechtigung->delete($kurzbz))
|
||||
echo 'Das Recht "'.$kurzbz.'" wurde erfolgreich gelöscht<br><br>';
|
||||
else
|
||||
echo 'Fehler beim Löschen des Rechts:'.$berechtigung->errormsg.'<br><br>';
|
||||
}
|
||||
|
||||
if(isset($save))
|
||||
{
|
||||
$berechtigung = new berechtigung();
|
||||
$berechtigung->load($berechtigung_kurzbz);
|
||||
$berechtigung->beschreibung = $beschreibung;
|
||||
if (!$berechtigung->save(false))
|
||||
echo 'Fehler beim Speichern:'.$berechtigung->errormsg.'<br><br>';
|
||||
}
|
||||
|
||||
//Tabelle mit Rollen anzeigen
|
||||
$berechtigung = new berechtigung();
|
||||
$berechtigung->getBerechtigungen();
|
||||
|
||||
echo '<button type="button" class="resetsaved" title="Reset Filter">Reset Filter</button>';
|
||||
echo '
|
||||
<table id="t1" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Kurzbz</th>
|
||||
<th>Beschreibung</th>
|
||||
<th colspan="2">Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
foreach($berechtigung->result as $recht)
|
||||
{
|
||||
if($edit && $recht->berechtigung_kurzbz == $kurzbz)
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td>
|
||||
'.$recht->berechtigung_kurzbz.'
|
||||
</td>
|
||||
<td colspan="3"><form method="POST" action="'.$_SERVER['PHP_SELF'].'?kurzbz='.$kurzbz.'">
|
||||
<textarea style="vertical-align: top; font-family: inherit; font-size: small;"
|
||||
cols="50"
|
||||
rows="3"
|
||||
type="text"
|
||||
maxlength="256"
|
||||
size="200"
|
||||
name="beschreibung" />'.$recht->beschreibung.'</textarea>
|
||||
<span style="color: grey; display: inline-block; width: 30px;">'.(256 - strlen($recht->beschreibung)).'</span>
|
||||
<input type="hidden" name="berechtigung_kurzbz" value="'.$recht->berechtigung_kurzbz.'" />
|
||||
<input type="submit" name="save" value="Speichern" />
|
||||
</form>
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.$recht->berechtigung_kurzbz.'</td>
|
||||
<td>'.$recht->beschreibung.'</td>
|
||||
<td>
|
||||
<a href="'.basename(__FILE__).'?kurzbz='.$recht->berechtigung_kurzbz.'&edit=1">
|
||||
Bearbeiten
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="'.basename(__FILE__).'?kurzbz='.$recht->berechtigung_kurzbz.'&delete=1"
|
||||
onclick="return confdel(\''.$recht->berechtigung_kurzbz.'\')">
|
||||
Recht löschen
|
||||
</a>
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
echo '
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br><div style="vertical-align: top">';
|
||||
|
||||
echo ' <form method="POST">
|
||||
<h2>Neues Recht einfügen</h2>
|
||||
Kurzbz: <input type="text" maxlength="32" size="35" name="kurzbz_post" value="" />
|
||||
Beschreibung: <textarea style="vertical-align: top; font-family: inherit; font-size: small;"
|
||||
cols="50"
|
||||
rows="3"
|
||||
type="text"
|
||||
maxlength="256"
|
||||
size="200"
|
||||
name="beschreibung"
|
||||
value="" /></textarea>
|
||||
<span style="color: grey; display: inline-block; width: 30px;" id="countdown_textarea_new">256</span>
|
||||
<input type="submit" name="saveNew" value="Anlegen" />
|
||||
</form>
|
||||
</div>
|
||||
</body>
|
||||
</html>';
|
||||
?>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<?php
|
||||
/* Copyright (C) 2009 Technikum-Wien
|
||||
*
|
||||
@@ -271,10 +35,12 @@ if(!$rechte->isBerechtigt('basis/berechtigung'))
|
||||
|
||||
$rolle_kurzbz = filter_input(INPUT_GET, 'rolle_kurzbz');
|
||||
$delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
$copy = filter_input(INPUT_POST, 'copy');
|
||||
$vergleich = filter_input(INPUT_GET, 'vergleich');
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Berechtigungen Uebersicht</title>
|
||||
<title>Rollen Uebersicht</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<link href="../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
|
||||
@@ -290,15 +56,37 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[0,0]],
|
||||
widgets: ["zebra"],
|
||||
headers: {3:{sorter:false}}
|
||||
widgets: ["zebra", "filter", "stickyHeaders"],
|
||||
headers: {3:{filter:false, sorter:false}},
|
||||
widgetOptions : {filter_saveFilters : true}
|
||||
});
|
||||
|
||||
$("#t2").tablesorter(
|
||||
{
|
||||
sortList: [[0,0]],
|
||||
widgets: ["zebra"],
|
||||
headers: {2:{sorter:false}}
|
||||
widgets: ["zebra", "filter", "stickyHeaders"],
|
||||
headers: {2:{filter:false, sorter:false}},
|
||||
widgetOptions : {filter_saveFilters : true}
|
||||
});
|
||||
$("#t3").tablesorter(
|
||||
{
|
||||
sortList: [],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
$("#t4").tablesorter(
|
||||
{
|
||||
sortList: [],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
$('.resetsaved').click(function()
|
||||
{
|
||||
$(".tablesorter").trigger("filterReset");
|
||||
window.location("<?php echo $_SERVER['PHP_SELF'] ?>");
|
||||
return false;
|
||||
});
|
||||
$("textarea").keyup(function()
|
||||
{
|
||||
$(this).siblings("span").text((256 - $(this).val().length));
|
||||
});
|
||||
|
||||
// Breite des Autocompletes korrigieren um das Springen zu verhindern
|
||||
@@ -329,16 +117,15 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
$(this).val(ui.item.berechtigung_kurzbz);
|
||||
}
|
||||
});
|
||||
});
|
||||
function confdel()
|
||||
{
|
||||
var value=prompt('Achtung! Sie sind dabei eine Rolle zu löschen. Die Zuordnungen gehen dadurch verloren! Um diese Rolle wirklich zu Löschen tippen Sie "LÖSCHEN" in das untenstehende Feld.');
|
||||
|
||||
if(value=='LÖSCHEN')
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
$(".copyButton").click(function(event)
|
||||
{
|
||||
event.preventDefault();
|
||||
$(this).siblings().show();
|
||||
$(this).hide();
|
||||
});
|
||||
});
|
||||
|
||||
function validateNewData()
|
||||
{
|
||||
if($('#berechtigung_neu_autocomplete').val() == '')
|
||||
@@ -374,14 +161,16 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
</head>
|
||||
|
||||
<body class="background_main">
|
||||
<h2>Berechtigung - Rolle - <?php echo $rolle_kurzbz ?></h2>
|
||||
|
||||
|
||||
<?php
|
||||
if(isset($rolle_kurzbz))
|
||||
{
|
||||
echo '<h2>Berechtigungen der Rolle "'.$rolle_kurzbz.'"</h2>';
|
||||
$berechtigung_kurzbz = filter_input(INPUT_GET, 'berechtigung_kurzbz');
|
||||
$art = filter_input(INPUT_GET, 'art');
|
||||
$save = filter_input(INPUT_GET, 'save');
|
||||
$anmerkung = filter_input(INPUT_GET, 'anmerkung');
|
||||
|
||||
if(isset($save))
|
||||
{
|
||||
@@ -391,10 +180,17 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
$berechtigung->rolle_kurzbz = $rolle_kurzbz;
|
||||
$berechtigung->berechtigung_kurzbz = $berechtigung_kurzbz;
|
||||
$berechtigung->art = $art;
|
||||
$berechtigung->anmerkung = $anmerkung;
|
||||
$berechtigung->insertamum = date('Y-m-d H:i:s');
|
||||
$berechtigung->insertvon = $user;
|
||||
|
||||
if($berechtigung->saveRolleBerechtigung()): ?>
|
||||
<b>Zuteilung gespeichert</b>
|
||||
<?php else: ?>
|
||||
<?php
|
||||
$berechtigung_kurzbz = '';
|
||||
$art = 'suid';
|
||||
$anmerkung = '';
|
||||
else: ?>
|
||||
<b>Fehler beim Speichern der Zuteilung: <?php echo $berechtigung->errormsg ?>
|
||||
<?php endif;
|
||||
}
|
||||
@@ -411,7 +207,7 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
} ?>
|
||||
|
||||
<a href="<?php echo basename(__FILE__) ?>">
|
||||
Zurück zur Rollenübersicht
|
||||
Zurück zur Rollen Übersicht
|
||||
</a>
|
||||
<br><br>
|
||||
<?php
|
||||
@@ -419,35 +215,41 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
$berechtigung->getBerechtigungen();
|
||||
?>
|
||||
<form action="<?php echo basename(__FILE__) ?>" method="GET">
|
||||
<input type="text" placeholder="Berechtigung" id="berechtigung_neu_autocomplete" class="berechtigung_autocomplete" name="berechtigung_kurzbz" style="width: 300px">
|
||||
<div style="vertical-align: top">
|
||||
<input type="text"
|
||||
value="<?php echo $berechtigung_kurzbz ?>"
|
||||
placeholder="Berechtigung"
|
||||
id="berechtigung_neu_autocomplete"
|
||||
class="berechtigung_autocomplete"
|
||||
name="berechtigung_kurzbz"
|
||||
style="width: 300px">
|
||||
<input type="hidden" name="rolle_kurzbz" value="<?php echo $rolle_kurzbz ?>">
|
||||
<!-- <SELECT name="berechtigung_kurzbz">-->
|
||||
<?php
|
||||
/*$berechtigungen = new berechtigung();
|
||||
$berechtigungen->getRolleBerechtigung($rolle_kurzbz);
|
||||
$berechtigungen_arr = array();
|
||||
foreach ($berechtigungen->result as $row)
|
||||
{
|
||||
$berechtigungen_arr[] = $row->berechtigung_kurzbz;
|
||||
}
|
||||
foreach ($berechtigung->result as $row): ?>
|
||||
<OPTION value="<?php echo $row->berechtigung_kurzbz ?>"
|
||||
<?php echo array_search($row->berechtigung_kurzbz,$berechtigungen_arr)!==false ? 'disabled' : '' ?>>
|
||||
<?php echo $row->berechtigung_kurzbz ?>
|
||||
</OPTION>
|
||||
<?php endforeach; */?>
|
||||
<!-- </SELECT>-->
|
||||
<input type="text" id="art_neu" value="suid" size="4" name="art">
|
||||
<input type="text"
|
||||
id="art_neu"
|
||||
value="<?php echo ($art != '' ? $art : 'suid') ?>"
|
||||
size="4"
|
||||
name="art">
|
||||
<textarea type="text"
|
||||
placeholder="Anmerkung"
|
||||
id="anmerkung_neu"
|
||||
rows="2"
|
||||
cols="50"
|
||||
size="200"
|
||||
maxlength="256"
|
||||
name="anmerkung"
|
||||
style="vertical-align: top; font-family: inherit; font-size: small;"><?php echo $anmerkung ?></textarea>
|
||||
<input type="submit" name="save" value="Hinzufügen" onclick="return validateNewData()">
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<button type="button" class="resetsaved" title="Reset Filter">Reset Filter</button>
|
||||
<table id="t1" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Kurzbz</th>
|
||||
<th>Art</th>
|
||||
<th>Beschreibung</th>
|
||||
<th></th>
|
||||
<th>Anmerkung</th>
|
||||
<th colspan="2"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -460,9 +262,15 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
<td><?php echo $rolle->berechtigung_kurzbz ?></td>
|
||||
<td><?php echo $rolle->art ?></td>
|
||||
<td><?php echo $rolle->beschreibung ?></td>
|
||||
<td><?php echo $rolle->anmerkung ?></td>
|
||||
<td>
|
||||
<a href="<?php echo basename(__FILE__) ?>?delete=1&rolle_kurzbz=<?php echo $rolle->rolle_kurzbz ?>&berechtigung_kurzbz=<?php echo $rolle->berechtigung_kurzbz ?>&art=<?php echo $rolle->art ?>">
|
||||
entfernen
|
||||
<a href="<?php echo basename(__FILE__) ?>?rolle_kurzbz=<?php echo $rolle->rolle_kurzbz ?>&berechtigung_kurzbz=<?php echo $rolle->berechtigung_kurzbz ?>&art=<?php echo $rolle->art ?>&anmerkung=<?php echo $rolle->anmerkung ?>">
|
||||
Bearbeiten
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="<?php echo basename(__FILE__) ?>?delete=1&rolle_kurzbz=<?php echo $rolle->rolle_kurzbz ?>&berechtigung_kurzbz=<?php echo $rolle->berechtigung_kurzbz ?>&art=<?php echo $rolle->art ?>&anmerkung=<?php echo $rolle->anmerkung ?>">
|
||||
Recht entfernen
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -471,8 +279,166 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
elseif(isset($vergleich))
|
||||
{
|
||||
echo '<h2>Rollen vergleichen</h2>';
|
||||
$rolle1 = filter_input(INPUT_GET, 'rolle_kurzbz1');
|
||||
$rolle2 = filter_input(INPUT_GET, 'rolle_kurzbz2');
|
||||
?>
|
||||
|
||||
<a href="<?php echo basename(__FILE__) ?>">
|
||||
Zurück zur Rollen Übersicht
|
||||
</a>
|
||||
<br><br>
|
||||
|
||||
<?php
|
||||
$rollen1Arr = array();
|
||||
$rollen2Arr = array();
|
||||
$rollenGesamt = array();
|
||||
$rollen = new berechtigung();
|
||||
$rollen->getRolleBerechtigung($rolle1);
|
||||
foreach ($rollen->result AS $recht)
|
||||
{
|
||||
$rollen1Arr[$recht->berechtigung_kurzbz] = $recht->art;
|
||||
}
|
||||
$rollen = new berechtigung();
|
||||
$rollen->getRolleBerechtigung($rolle2);
|
||||
foreach ($rollen->result AS $recht)
|
||||
{
|
||||
$rollen2Arr[$recht->berechtigung_kurzbz] = $recht->art;
|
||||
}
|
||||
$rollenGesamt = array_merge($rollen1Arr,$rollen2Arr);
|
||||
ksort($rollenGesamt);
|
||||
|
||||
echo ' <form action="'.basename(__FILE__).'?vergleich=vergleich" method="GET" style="width: 60%">
|
||||
<div style="width: 100%">
|
||||
<div style="width: 50%; float: left;">
|
||||
Rolle 1:
|
||||
<select id="rolle_kurzbz" name="rolle_kurzbz1">
|
||||
<option value="">Bitte auswählen</option>';
|
||||
$rollen = new berechtigung();
|
||||
$rollen->getRollen('rolle_kurzbz');
|
||||
foreach($rollen->result as $rolle)
|
||||
{
|
||||
if ($rolle1 == $rolle->rolle_kurzbz)
|
||||
$selected = 'selected="selected"';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo '<option value="'.$rolle->rolle_kurzbz.'" title="'.$rolle->beschreibung.'" '.$selected.'>'.$rolle->rolle_kurzbz.'</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
if (isset($rolle1))
|
||||
{
|
||||
echo ' <table id="t3" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Kurzbz</th>
|
||||
<th>Art</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
foreach ($rollenGesamt AS $recht => $art)
|
||||
{
|
||||
if (array_key_exists($recht, $rollen1Arr))
|
||||
{
|
||||
if ($art != $rollen1Arr[$recht])
|
||||
{
|
||||
echo ' <tr>
|
||||
<td style="border: 1px solid transparent">'.$recht.'</td>
|
||||
<td style="border: 1px solid black">'.$rollen1Arr[$recht].'</td>
|
||||
</tr>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' <tr>
|
||||
<td style="border: 1px solid transparent">'.$recht.'</td>
|
||||
<td style="border: 1px solid transparent">'.$art.'</td>
|
||||
</tr>';
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' <tr>
|
||||
<td style="border: 1px solid black; border-right: 0"> </td>
|
||||
<td style="border: 1px solid black; border-left: 0"> </td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
echo '
|
||||
</tbody>
|
||||
</table>';
|
||||
}
|
||||
echo '
|
||||
</div>
|
||||
<div style="width: 50%; float: left;">
|
||||
Rolle 2:
|
||||
<select id="rolle_kurzbz" name="rolle_kurzbz2">
|
||||
<option value="">Bitte auswählen</option>';
|
||||
$rollen = new berechtigung();
|
||||
$rollen->getRollen('rolle_kurzbz');
|
||||
foreach($rollen->result as $rolle)
|
||||
{
|
||||
if ($rolle2 == $rolle->rolle_kurzbz)
|
||||
$selected = 'selected="selected"';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo '<option value="'.$rolle->rolle_kurzbz.'" title="'.$rolle->beschreibung.'" '.$selected.'>'.$rolle->rolle_kurzbz.'</option>';
|
||||
}
|
||||
echo '</select>';
|
||||
echo '<input style="margin-left: 20px" type="submit" name="vergleich" value="Vergleichen">';
|
||||
if (isset($rolle2))
|
||||
{
|
||||
echo ' <table id="t4" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Kurzbz</th>
|
||||
<th>Art</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
foreach ($rollenGesamt AS $recht => $art)
|
||||
{
|
||||
if (array_key_exists($recht, $rollen2Arr))
|
||||
{
|
||||
if ($art != $rollen2Arr[$recht])
|
||||
{
|
||||
echo ' <tr>
|
||||
<td style="border: 1px solid transparent">'.$recht.'</td>
|
||||
<td style="border: 1px solid black">'.$rollen2Arr[$recht].'</td>
|
||||
</tr>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' <tr>
|
||||
<td style="border: 1px solid transparent">'.$recht.'</td>
|
||||
<td style="border: 1px solid transparent">'.$art.'</td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' <tr>
|
||||
<td style="border: 1px solid black; border-right: 0"> </td>
|
||||
<td style="border: 1px solid black; border-left: 0"> </td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
echo '
|
||||
</tbody>
|
||||
</table>';
|
||||
}
|
||||
echo '
|
||||
</div>
|
||||
</div>
|
||||
</form>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<h2>Rollen Übersicht</h2>';
|
||||
$save = filter_input(INPUT_POST, 'save');
|
||||
$edit = filter_input(INPUT_POST, 'edit');
|
||||
|
||||
@@ -509,11 +475,56 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
{
|
||||
$berechtigung = new berechtigung();
|
||||
if($berechtigung->deleteRolle($kurzbz))
|
||||
echo 'Rolle wurde entfernt';
|
||||
echo 'Die Rolle '.$kurzbz.' wurde erfolgreich gelöscht';
|
||||
else
|
||||
echo 'Fehler beim Löschen:'.$berechtigung->errormsg;
|
||||
}
|
||||
|
||||
if(isset($copy))
|
||||
{
|
||||
$kurzbz = filter_input(INPUT_POST, 'kurzbz');
|
||||
$copyName = filter_input(INPUT_POST, 'copy_name');
|
||||
$beschreibung = filter_input(INPUT_POST, 'beschreibung');
|
||||
|
||||
if(isset($kurzbz))
|
||||
{
|
||||
$berechtigung = new berechtigung();
|
||||
$berechtigung->rolle_kurzbz = $copyName;
|
||||
$berechtigung->beschreibung = $beschreibung;
|
||||
$berechtigung->new = true;
|
||||
|
||||
if($berechtigung->saveRolle())
|
||||
{
|
||||
$rollenrechte = new berechtigung();
|
||||
$rollenrechte->getRolleBerechtigung($kurzbz);
|
||||
foreach($rollenrechte->result as $rollenrecht)
|
||||
{
|
||||
$newRolleRecht = new berechtigung();
|
||||
$newRolleRecht->rolle_kurzbz = $copyName;
|
||||
$newRolleRecht->berechtigung_kurzbz = $rollenrecht->berechtigung_kurzbz;
|
||||
$newRolleRecht->art = $rollenrecht->art;
|
||||
$newRolleRecht->anmerkung = $rollenrecht->anmerkung;
|
||||
$newRolleRecht->insertamum = date('Y-m-d H:i:s');
|
||||
$newRolleRecht->insertvon = $user;
|
||||
if(!$newRolleRecht->saveRolleBerechtigung())
|
||||
{
|
||||
echo 'Fehler beim Speichern des Rechts '.$rollenrecht->berechtigung_kurzbz.' zur Rolle '.$rollenrecht->rolle_kurzbz;
|
||||
break;
|
||||
}
|
||||
}
|
||||
echo 'Rolle erfolgreich kopiert';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Fehler beim kopieren der Rolle '.$kurzbz.':'.$berechtigung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Zum Speichern der Daten muss die kurzbz und die Beschreibung angegeben werden';
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($edit))
|
||||
{
|
||||
$beschreibung = filter_input(INPUT_POST, 'beschreibung');
|
||||
@@ -528,13 +539,18 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
$berechtigung = new berechtigung();
|
||||
$berechtigung->getRollen(); ?>
|
||||
|
||||
<h3>Rollen:</h3>
|
||||
<p style="text-align: right">
|
||||
<a href="<?php echo basename(__FILE__) ?>?vergleich=vergleich">
|
||||
Rollen vergleichen
|
||||
</a>
|
||||
</p>
|
||||
<button type="button" class="resetsaved" title="Reset Filter">Reset Filter</button>
|
||||
<table id="t2" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Kurzbz</th>
|
||||
<th>Beschreibung</th>
|
||||
<th colspan="2">Aktion</th>
|
||||
<th colspan="3">Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -561,7 +577,18 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="<?php echo basename(__FILE__) ?>?kurzbz=<?php echo $rolle->rolle_kurzbz ?>&delete=1" onclick="return confdel()">
|
||||
<form method="POST" style="display: none">
|
||||
<input type="text" placeholder="Name der Kopie" maxlength="32" size="35" name="copy_name" value=""/>
|
||||
<input type="hidden" name="kurzbz" value="<?php echo $rolle->rolle_kurzbz ?>"/>
|
||||
<input type="hidden" name="beschreibung" value="<?php echo $rolle->beschreibung ?>"/>
|
||||
<input type="submit" name="copy" value="Jetzt kopieren" />
|
||||
</form>
|
||||
<a class="copyButton" href="">
|
||||
Rolle kopieren
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="<?php echo basename(__FILE__) ?>?kurzbz=<?php echo $rolle->rolle_kurzbz ?>&delete=1" onclick="return confirm('Achtung! Das Löschen einer Rolle löscht auch alle Zuordnungen dieser Rolle zu BenutzerInnen.\n\nWollen Sie die Rolle <?php echo $rolle->rolle_kurzbz ?> wirklich löschen?');">
|
||||
Rolle löschen
|
||||
</a>
|
||||
</td>
|
||||
@@ -577,6 +604,7 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
<form method="POST">
|
||||
Kurzbz: <input type="text" maxlength="32" size="35" name="kurzbz" value="<?php echo $rolle_edit->rolle_kurzbz ?>" disabled />
|
||||
Beschreibung: <textarea style="vertical-align: top; font-family: inherit; font-size: small;" cols="50" rows="3" type="text" maxlength="256" size="200" name="beschreibung" value="" /><?php echo $rolle_edit->beschreibung ?></textarea>
|
||||
<span style="color: grey; display: inline-block; width: 30px;"><?php echo (256 - strlen($rolle_edit->beschreibung)) ?></span>
|
||||
<input type="submit" name="edit" value="Speichern" />
|
||||
</form>
|
||||
<a href="<?php echo basename(__FILE__) ?>">Neue Rolle anlegen</a>
|
||||
@@ -584,6 +612,7 @@ $delete = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_BOOLEAN);
|
||||
<form method="POST">
|
||||
Kurzbz: <input type="text" maxlength="32" size="35" name="kurzbz" value="" />
|
||||
Beschreibung: <textarea style="vertical-align: top; font-family: inherit; font-size: small;" cols="50" rows="3" type="text" maxlength="256" size="200" name="beschreibung" value="" /></textarea>
|
||||
<span style="color: grey; display: inline-block; width: 30px;" id="countdown_textarea_new">256</span>
|
||||
<input type="submit" name="save" value="Anlegen" />
|
||||
</form>
|
||||
<?php endif; ?>
|
||||
|
||||
Reference in New Issue
Block a user