- LV-Plan Link ohne Authentifizierung

- Gruppenverwaltung Attribut für Zutrittssystem hinzguefügt
This commit is contained in:
Andreas Österreicher
2013-10-24 13:56:10 +00:00
parent 9840d974a1
commit c42027c2bc
12 changed files with 1252 additions and 146 deletions
+18 -1
View File
@@ -190,6 +190,7 @@ $(document).ready(function()
<tr>
<td class="cmscontent" rowspan="3" valign="top">
<table><tr><td valign="top" width="30%">
<?php
if (isset($uid))
echo '<h2>'.$titelpre.' '.$vornamen." ".$nachname.' '.$titelpost.'</h2>';
@@ -197,7 +198,23 @@ $(document).ready(function()
echo $p->t('lvplan/nichtVorhanden').' '.$p->t('lvplan/bitteWendenSieSichAn').'<A href="mailto:'.MAIL_ADMIN.'">Admin</A>!';
?>
<a class="Item" href="stpl_week.php?pers_uid=<?php echo $uid; ?>"><?php echo $p->t("lvplan/persoenlicherLvPlan");?></a>
<BR><BR>
</td><td>&nbsp;</td><td valign="top">
<?php
echo'
<h2>'.$p->t('lvplan/persoenlichenAbonnieren').'</h2>
<div>
<a class="Item" href="../../../cms/content.php?content_id='.$p->t('dms_link/lvplanSyncFAQ').'" target="_blank">'.$p->t('lvplan/anleitungLVPlanSync').'</a>
<br>';
echo '<ul>';
$caldavurl = APP_ROOT.'webdav/lvplan.php/calendars/'.$uid.'/LVPlan-'.$uid;
echo '<li><a class="Item" href="'.$caldavurl.'">'.$p->t('lvplan/caldavURL').'</a></li>';
echo '<li><a class="Item" href="'.APP_ROOT.'webdav/lvplan.php/principals/'.$uid.'">'.$p->t('lvplan/caldavURLMac').'</a></li>';
echo '<li><a class="Item" href="'.APP_ROOT.'webdav/google.php?cal='.encryptData($uid,LVPLAN_CYPHER_KEY).'">'.$p->t('lvplan/googleURL').'</a></li>';
echo '</ul>';
echo ' </div>';
?>
</td></tr></table>
<FORM name="Auswahl" action="stpl_week.php">
<table class="tabcontent">
<tr>
+33 -8
View File
@@ -29,12 +29,12 @@
* Update: 10.9.2005 von Christian Paminger
*****************************************************************************/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/wochenplan.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/phrasen.class.php');
require_once(dirname(__FILE__).'/../../../config/cis.config.inc.php');
require_once(dirname(__FILE__).'/../../../include/functions.inc.php');
require_once(dirname(__FILE__).'/../../../include/wochenplan.class.php');
require_once(dirname(__FILE__).'/../../../include/datum.class.php');
require_once(dirname(__FILE__).'/../../../include/studiensemester.class.php');
require_once(dirname(__FILE__).'/../../../include/phrasen.class.php');
if(!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
@@ -74,8 +74,33 @@ $version=(isset($_GET['version'])?$_GET['version']:2);
$target=(isset($_GET['target'])?$_GET['target']:null);
$stsem=(isset($_GET['stsem'])?$_GET['stsem']:'');
// UID bestimmen
$uid = get_uid();
if(isset($_GET["cal"]))
{
// Nicht authentifizierter Zugriff per Codierter UID
// fuer Abonnierung im Google ueber /webdav/google.php
$cal = $_GET["cal"];
$uid=decryptData($cal,LVPLAN_CYPHER_KEY);
//Wenn der Key manuell geaendert wird koennen Fehlerhaft kodierte Zeichen
//entstehen und fuehren zu DB fehlern deshalb werden falsch kodierte uids hier aussortiert
if(!check_utf8($uid))
die('Fehlerhafter Parameter');
//Pruefen ob dieser Benutzer auch wirklich existiert
$benutzer = new benutzer();
if(!$benutzer->load($uid))
die('Ungueltiger Benutzername');
//Output-Format wird auf ical geaendert
$target='ical';
$format='ical';
}
else
{
// UID bestimmen
$uid = get_uid();
}
// Beginn Ende setzen
if(!isset($begin))
+3
View File
@@ -114,6 +114,9 @@ define('TAGE_PRO_WOCHE','7');
// Kalenderkategorie beim Export des LVPlans
define('LVPLAN_KATEGORIE', 'StundenplanTW');
// Key zum Verschluesseln des LV-Plan Google Links
define('LVPLAN_CYPHER_KEY',pack('H*', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'));
// Default Stylesheet
define('DEFAULT_STYLE','tw');
// Layout Wechsel im CIS moeglich?
+44
View File
@@ -837,5 +837,49 @@ function check_user($username, $passwort)
}
}
function safe_b64encode($string)
{
$data = base64_encode($string);
$data = str_replace(array('+','/','='),array('-','_',''),$data);
return $data;
}
function safe_b64decode($string)
{
$data = str_replace(array('-','_'),array('+','/'),$string);
$mod4 = strlen($data) % 4;
if ($mod4)
{
$data .= substr('====', $mod4);
}
return base64_decode($data);
}
function encryptData($value,$key)
{
if(!$value)
{
return false;
}
$text = $value;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv);
return trim(safe_b64encode($crypttext));
}
function decryptData($value,$key)
{
if(!$value)
{
return false;
}
$crypttext = safe_b64decode($value);
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$decrypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $crypttext, MCRYPT_MODE_ECB, $iv);
return trim($decrypttext);
}
?>
+101 -4
View File
@@ -45,7 +45,8 @@ class gruppe extends basis_db
public $insertamum; // timestamp
public $insertvon; // varchar(16)
public $orgform_kurzbz;
public $gesperrt=false; // boolean
public $gesperrt=false; // boolean
public $zutrittssystem=false; // boolean
/**
* Konstruktor - Laedt optional eine Gruppe
@@ -138,6 +139,7 @@ class gruppe extends basis_db
$this->insertvon = $row->insertvon;
$this->orgform_kurzbz = $row->orgform_kurzbz;
$this->gesperrt = $this->db_parse_bool($row->gesperrt);
$this->zutrittssystem = $this->db_parse_bool($row->zutrittssystem);
return true;
}
else
@@ -186,6 +188,7 @@ class gruppe extends basis_db
$grp_obj->insertvon = $row->insertvon;
$grp_obj->orgform_kurzbz = $row->orgform_kurzbz;
$grp_obj->gesperrt = $this->db_parse_bool($row->gesperrt);
$grp_obj->zutrittssystem = $this->db_parse_bool($row->zutrittssystem);
$this->result[] = $grp_obj;
}
@@ -273,6 +276,7 @@ class gruppe extends basis_db
$grp_obj->insertvon = $row->insertvon;
$grp_obj->orgform_kurzbz = $row->orgform_kurzbz;
$grp_obj->gesperrt = $this->db_parse_bool($row->gesperrt);
$grp_obj->zutrittsssystem = $this->db_parse_bool($row->zutrittssystem);
$this->result[] = $grp_obj;
}
@@ -380,7 +384,7 @@ class gruppe extends basis_db
$qry = 'INSERT INTO public.tbl_gruppe (gruppe_kurzbz, studiengang_kz, bezeichnung, semester, sort,
mailgrp, beschreibung, sichtbar, generiert, aktiv, lehre, content_visible,
updateamum, updatevon, insertamum, insertvon, orgform_kurzbz, gesperrt)
updateamum, updatevon, insertamum, insertvon, orgform_kurzbz, gesperrt,zutrittssystem)
VALUES('.$this->db_add_param($kurzbz).','.
$this->db_add_param($this->studiengang_kz).','.
$this->db_add_param($this->bezeichnung).','.
@@ -398,7 +402,8 @@ class gruppe extends basis_db
$this->db_add_param($this->insertamum).','.
$this->db_add_param($this->insertvon).','.
$this->db_add_param($this->orgform_kurzbz).','.
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).');';
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).','.
$this->db_add_param($this->zutrittssystem, FHC_BOOLEAN).');';
}
else
{
@@ -417,7 +422,8 @@ class gruppe extends basis_db
' updateamum='.$this->db_add_param($this->updateamum).','.
' updatevon='.$this->db_add_param($this->updatevon).','.
' orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).', '.
' gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).' ';
' gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).', '.
' zutrittssystem='.$this->db_add_param($this->zutrittssystem, FHC_BOOLEAN).' ';
if($this->gruppe_kurbzNeu != null) {
$qry.=', gruppe_kurzbz='.$this->db_add_param($this->gruppe_kurbzNeu).' ';
}
@@ -435,5 +441,96 @@ class gruppe extends basis_db
return false;
}
}
/**
* Laedt die User dieser Gruppe
*
* @param $gruppe_kurzbz
*/
public function loadUser($gruppe_kurzbz)
{
$qry = "SELECT
tbl_benutzer.uid, tbl_person.vorname, tbl_person.nachname
FROM
public.tbl_benutzergruppe
JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id)
WHERE
tbl_benutzergruppe.gruppe_kurzbz=".$this->db_add_param($gruppe_kurzbz)."
ORDER BY nachname, vorname";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new gruppe();
$obj->uid = $row->uid;
$obj->vorname = $row->vorname;
$obj->nachname = $row->nachname;
$this->result[]=$obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt alle Zutrittsgruppen in denen sich der Benutzer befindet
*
* @param $user UID des Benutzers
*/
public function loadZutrittsgruppen($user)
{
$qry = "SELECT
*
FROM
public.tbl_benutzergruppe
JOIN public.tbl_gruppe USING(gruppe_kurzbz)
WHERE
tbl_gruppe.zutrittssystem=true
AND tbl_benutzergruppe.uid=".$this->db_add_param($user);
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$grp_obj = new gruppe();
$grp_obj->gruppe_kurzbz = $row->gruppe_kurzbz;
$grp_obj->studiengang_kz = $row->studiengang_kz;
$grp_obj->bezeichnung = $row->bezeichnung;
$grp_obj->semester = $row->semester;
$grp_obj->sort = $row->sort;
$grp_obj->mailgrp = $this->db_parse_bool($row->mailgrp);
$grp_obj->lehre = $this->db_parse_bool($row->lehre);
$grp_obj->beschreibung = $row->beschreibung;
$grp_obj->sichtbar = $this->db_parse_bool($row->sichtbar);
$grp_obj->aktiv = $this->db_parse_bool($row->aktiv);
$grp_obj->content_visible = $this->db_parse_bool($row->content_visible);
$grp_obj->generiert = $this->db_parse_bool($row->generiert);
$grp_obj->updateamum = $row->updateamum;
$grp_obj->updatevon = $row->updatevon;
$grp_obj->insertamum = $row->insertamum;
$grp_obj->insertvon = $row->insertvon;
$grp_obj->orgform_kurzbz = $row->orgform_kurzbz;
$grp_obj->gesperrt = $this->db_parse_bool($row->gesperrt);
$grp_obj->zutrittssystem = $this->db_parse_bool($row->zutrittssystem);
$this->result[] = $grp_obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
}
?>
+5
View File
@@ -76,6 +76,11 @@ $this->phrasen['lvplan/bitteEinenLektorAuswaehlen']='Bitte eineN LektorIn/Studen
$this->phrasen['lvplan/semesterplaene']='Semesterübersicht';
$this->phrasen['lvplan/hauptmenue']='Hauptmenü';
$this->phrasen['lvplan/nameEingeben']='Name eingeben';
$this->phrasen['lvplan/anleitungLVPlanSync']='Anleitung LV-Plan Synchronisation';
$this->phrasen['lvplan/caldavURL']='CalDAV URL (Android, Thunderbird)';
$this->phrasen['lvplan/caldavURLMac']='CalDAV Principal URL (MacOS, iOS)';
$this->phrasen['lvplan/googleURL']='iCAL URL (Google)';
$this->phrasen['lvplan/persoenlichenAbonnieren']='Persönlichen LV-Plan abonnieren';
$this->phrasen['lvplan/aktuelleKW']='Aktuelle Kalenderwoche';
$this->phrasen['lvplan/rauminformationenAnzeigen']='Rauminformationen anzeigen';
$this->phrasen['lvplan/personen']='Personen';
+889 -99
View File
File diff suppressed because it is too large Load Diff
+12 -1
View File
@@ -564,6 +564,17 @@ if(!$result = @$db->db_query("SELECT zgvdoktor_code from public.tbl_prestudent L
public.tbl_prestudent: Spalte zgvdoktordatum hinzugefuegt<br>';
}
// tbl_gruppe neues attribut zutrittssystem
if(!$result = @$db->db_query("SELECT zutrittssystem from public.tbl_gruppe LIMIT 1;"))
{
$qry = "ALTER TABLE public.tbl_gruppe ADD COLUMN zutrittssystem boolean NOT NULL DEFAULT false;";
if(!$db->db_query($qry))
echo '<strong>public.tbl_gruppe: '.$db->db_last_error().'</strong><br>';
else
echo 'public.tbl_gruppe: Spalte zutrittssystem hinzugefuegt';
}
echo '<br>';
$tabellen=array(
@@ -710,7 +721,7 @@ $tabellen=array(
"public.tbl_fotostatus" => array("fotostatus_kurzbz","beschreibung"),
"public.tbl_funktion" => array("funktion_kurzbz","beschreibung","aktiv","fachbereich","semester"),
"public.tbl_geschaeftsjahr" => array("geschaeftsjahr_kurzbz","start","ende","bezeichnung"),
"public.tbl_gruppe" => array("gruppe_kurzbz","studiengang_kz","semester","bezeichnung","beschreibung","sichtbar","lehre","aktiv","sort","mailgrp","generiert","updateamum","updatevon","insertamum","insertvon","ext_id","orgform_kurzbz","gid","content_visible","gesperrt"),
"public.tbl_gruppe" => array("gruppe_kurzbz","studiengang_kz","semester","bezeichnung","beschreibung","sichtbar","lehre","aktiv","sort","mailgrp","generiert","updateamum","updatevon","insertamum","insertvon","ext_id","orgform_kurzbz","gid","content_visible","gesperrt","zutrittssystem"),
"public.tbl_kontakt" => array("kontakt_id","person_id","kontakttyp","anmerkung","kontakt","zustellung","updateamum","updatevon","insertamum","insertvon","ext_id","standort_id"),
"public.tbl_kontaktmedium" => array("kontaktmedium_kurzbz","beschreibung"),
"public.tbl_kontakttyp" => array("kontakttyp","beschreibung"),
+72
View File
@@ -0,0 +1,72 @@
<?php
/* Copyright (C) 2013 fhcomplete.org
*
* 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 >
*/
header( 'Expires: -1' );
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' );
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
header( 'Pragma: no-cache' );
header('Content-Type: text/html;charset=UTF-8');
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/person.class.php');
require_once('../../include/mitarbeiter.class.php');
if (!$uid = get_uid())
die('Username ungueltig');
$rechte = new benutzerberechtigung();
if(!$rechte->getBerechtigungen($uid))
die('Sie haben keine Berechtigung fuer diese Seite');
if(!$rechte->isBerechtigt('lehre/gruppe:begrenzt', null, 's'))
die('Sie haben keine Berechtigung fuer diese Seite');
$work=(isset($_REQUEST['work'])?$_REQUEST['work']:'');
switch ($work)
{
case 'searchUser':
$filter=trim((isset($_REQUEST['term']) ? $_REQUEST['term']:''));
if (is_null($filter) || $filter=='')
exit();
$benutzer = new benutzer();
$benutzer->search(array($filter));
$result=array();
foreach($benutzer->result as $row)
{
$item['uid']=html_entity_decode($row->uid);
$item['vorname']=html_entity_decode($row->vorname);
$item['nachname']=html_entity_decode($row->nachname);
$result[]=$item;
}
echo json_encode($result);
break;
default:
echo " Funktion $work fehlt! ";
break;
}
exit();
?>
+64 -29
View File
@@ -28,18 +28,27 @@ require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/gruppe.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user=get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('lehre/gruppe:begrenzt',null,'s'))
die('Sie haben keine Berechtigung für diese Seite');
$kurzbz=(isset($_GET['kurzbz'])?$_GET['kurzbz']:(isset($_POST['kurzbz'])?$_POST['kurzbz']:''));
if(empty($kurzbz))
die('Gruppe wurde nicht &uuml;bergeben <a href="javascript:history.back()">Zur&uuml;ck</a>');
if (isset($_POST['new']))
{
if(!$rechte->isBerechtigt('lehre/gruppe',null,'sui'))
die('Sie haben keine Berechtigung für diese Seite');
$e=new benutzergruppe();
$e->new=true;
$e->gruppe_kurzbz=$kurzbz;
@@ -53,6 +62,9 @@ if (isset($_POST['new']))
}
else if (isset($_GET['type']) && $_GET['type']=='delete')
{
if(!$rechte->isBerechtigt('lehre/gruppe',null,'suid'))
die('Sie haben keine Berechtigung für diese Seite');
$e=new benutzergruppe();
$e->delete($_GET['uid'], $kurzbz);
}
@@ -62,13 +74,17 @@ if(!$gruppe->load($kurzbz))
die('Gruppe wurde nicht gefunden:'+$kurzbz);
?>
<!DOCTYPE html>
<html>
<head>
<title>Gruppen Details</title>
<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="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<link rel="stylesheet" href="../../skin/jquery.css" type="text/css">
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css">
<link rel="stylesheet" href="../../skin/jquery-ui-1.9.2.custom.min.css" type="text/css">
<script type="text/javascript" src="../../include/js/jquery1.9.min.js" ></script>
</head>
<body>
<H2>Gruppe <?php echo $kurzbz ?></H2>
@@ -77,48 +93,67 @@ if(!$gruppe->load($kurzbz))
echo "<a href='einheit_menu.php?studiengang_kz=$gruppe->studiengang_kz'>Zurück zur &Uuml;bersicht</a><br><br>";
if(!$gruppe->generiert)
{
{
echo '
<FORM name="newpers" method="post" action="einheit_det.php">
<INPUT type="hidden" name="type" value="new">
<SELECT name="uid">';
$qry = "SELECT * FROM campus.vw_benutzer ORDER BY nachname, vorname";
$result = $db->db_query($qry);
for ($i=0;$row = $db->db_fetch_object($result);$i++)
{
echo "<option value=\"".$row->uid."\">".$row->nachname." ".$row->vorname." - ".$row->uid."</option>";
}
echo '
</SELECT>
<INPUT type="hidden" name="kurzbz" value="'.$kurzbz.'">
Name: <INPUT type="hidden" name="type" value="new">
<input type="text" name="uid" id="uid"/>
<script type="text/javascript">
$(document).ready(function()
{
$("#uid").autocomplete({
source: "einheit_autocomplete.php?work=searchUser",
minLength:3,
response: function(event, ui)
{
//Value und Label fuer die Anzeige setzen
for(i in ui.content)
{
ui.content[i].value=ui.content[i].uid;
ui.content[i].label=ui.content[i].uid+" - "+ui.content[i].vorname+" "+ui.content[i].nachname;
}
},
select: function(event, ui)
{
ui.item.value=ui.item.uid;
}
});
});
</script>
<INPUT type="hidden" name="kurzbz" value="'.$kurzbz.'">
<INPUT type="submit" name="new" value="Hinzuf&uuml;gen">
</FORM>
<HR>';
<HR>
';
}
$qry = "SELECT * FROM public.tbl_benutzergruppe JOIN public.tbl_benutzer USING(uid) JOIN public.tbl_person USING(person_id) WHERE".
" tbl_benutzergruppe.gruppe_kurzbz='".addslashes($kurzbz)."'".
" ORDER BY nachname, vorname";
if($result = $db->db_query($qry))
$gruppe = new gruppe();
if($gruppe->loadUser($kurzbz))
{
$num_rows=$db->db_num_rows($result);
$num_rows=count($gruppe->result);
echo "Anzahl: $num_rows";
echo "<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
echo '<script>
$(document).ready(function()
{
$("#usertabelle").tablesorter(
{
sortList: [[2,0]],
widgets: ["zebra"]
});
});
</script>';
echo '<table id="usertabelle" class="tablesorter">
<thead>
<tr class='liste'>
<tr>
<th>UID</th>
<th>Vornamen</th>
<th>Nachname</th>
</tr>
</thead>
<tbody>";
<tbody>';
for ($j=0; $row = $db->db_fetch_object($result);$j++)
foreach($gruppe->result as $row)
{
echo "<tr>";
echo "<td>".$row->uid."</td>";
+8 -4
View File
@@ -37,7 +37,7 @@ if (isset($_GET['studiengang_kz']))
else if(isset($_POST['studiengang_kz']))
$studiengang_kz = $_POST['studiengang_kz'];
else
$studiengang_kz='0';
$studiengang_kz='';
if (isset($_GET['sem']))
@@ -55,6 +55,9 @@ $uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('lehre/gruppe'))
die('Sie haben keine Berechtigung fuer diese Seite');
?>
<html>
<head>
@@ -116,8 +119,7 @@ function printDropDown()
foreach($stud->result as $row)
{
if($rechte->isBerechtigt('admin', $row->studiengang_kz, 'suid') ||
$rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
if($rechte->isBerechtigt('lehre/gruppe', $row->oe_kurzbz, 'suid'))
{
if($studiengang_kz=='')
$studiengang_kz=$row->studiengang_kz;
@@ -126,7 +128,7 @@ function printDropDown()
}
}
echo '</SELECT>';
echo '</SELECT><input type="submit" value="Anzeigen" />';
echo '</form>';
}
function doSave()
@@ -158,6 +160,7 @@ function doSave()
$e->generiert=isset($_POST['generiert']);
$e->aktiv=isset($_POST['aktiv']);
$e->gesperrt = isset($_POST['gesperrt']);
$e->zutrittssystem = isset($_POST['zutrittssystem']);
$e->sort=$_POST['sort'];
$e->content_visible=isset($_POST['content_visible']);
@@ -222,6 +225,7 @@ function doEdit($kurzbz,$new=false)
<tr><td><i>Aktiv</i></td><td><input type='checkbox' name='aktiv' <?php echo ($e->aktiv?'checked':'');?>>
<tr><td><i>ContentVisible</i></td><td><input type='checkbox' name='content_visible' <?php echo ($e->content_visible?'checked':'');?>>
<tr><td><i>Gesperrt</i></td><td><input type='checkbox' name='gesperrt' <?php echo ($e->gesperrt?'checked':'');?>>
<tr><td><i>Zutrittssystem</i></td><td><input type='checkbox' name='zutrittssystem' <?php echo ($e->zutrittssystem?'checked':'');?>>
<tr>
<td><i>Sort</i></td><td><input type='text' name='sort' maxlength="4" value="<?php echo $e->sort;?>">
</td>
+3
View File
@@ -0,0 +1,3 @@
Symlink anlegen um die offene LVPlan URL zu ermoeglichen:
ln -s ../cis/private/lvplan/stpl_kalender.php google.php