This commit is contained in:
Gerald Simane
2009-06-17 12:28:16 +00:00
parent 6b9cf188ac
commit 148bf1e8fe
36 changed files with 10103 additions and 10142 deletions
+1 -1
View File
@@ -74,7 +74,7 @@
echo '<tr><td class="ContentHeader2"><p><small>'.$datum.' - '.$row->verfasser.' - </small><br><b>'.$row->betreff.'</b><br></td></tr>';
}
echo "<tr><td class='MarkLine'>".str_replace("../../skin","../../../skin","$row->text")."</p></td></tr>";*/
echo "<tr><td class='MarkLine'>".mb_ereg_replace("../../skin","../../../skin","$row->text")."</p></td></tr>";*/
}
echo "</div>";
if($zaehler==0)
+2 -2
View File
@@ -70,7 +70,7 @@
{
$news_message = mb_ereg_replace("\r\n", "<br>", $news_message);
$news_obj = new news($sql_conn);
$news_obj = new news();
$news_obj->verfasser = $author;
$news_obj->uid = $user;
@@ -153,7 +153,7 @@
echo '<td class="ContentHeader2">&nbsp;';
if(isset($news_id) && $news_id != "")
{
$news_obj = new news($sql_conn, $news_id);
$news_obj = new news($news_id);
$verfasser = $news_obj->verfasser;
$betreff = $news_obj->betreff;
$text = $news_obj->text;
+1 -1
View File
@@ -56,7 +56,7 @@
if(isset($remove_id) && $remove_id != "")
{
$news_obj = new news($sql_conn);
$news_obj = new news();
if($news_obj->delete($remove_id))
{
writeCISlog('DELETE PINBOARD','');
+412 -411
View File
@@ -1,411 +1,412 @@
<?php
/* Copyright (C) 2008 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 >
*/
// ---------------- CIS Include Dateien einbinden
require_once('../../config.inc.php');
// Datenbankverbindung - ohne erfolg kann hier bereits beendet werden
if (!$conn=pg_pconnect(CONN_STRING))
{
die('Jahresplan<br />Keine Veranstaltungen zurzeit Online.<br />Bitte etwas Geduld.<br />Danke');
}
require_once('../../../include/functions.inc.php');
require_once('../../../include/globals.inc.php');
// ---------------- Datenbank-Verbindung
include_once('../../../include/person.class.php');
include_once('../../../include/benutzer.class.php');
include_once('../../../include/benutzerberechtigung.class.php');
// ---------------- Jahresplan Classe und Allg.Funktionen
include_once('../../../include/jahresplan.class.php');
include_once('jahresplan_funktionen.inc.php');
// ------------------------------------------------------------------------------------------
// Request Parameter
// ------------------------------------------------------------------------------------------
if (!$userUID=get_uid())
{
die('Es wurde keine Benutzer UID gefunden ?');
}
// Parameter Veranstaltungskategorie
$veranstaltungskategorie_kurzbz=trim((isset($_REQUEST['veranstaltungskategorie_kurzbz']) ? $_REQUEST['veranstaltungskategorie_kurzbz']:''));
// Parameter Veranstaltung
$veranstaltung_id=trim((isset($_REQUEST['veranstaltung_id']) ? $_REQUEST['veranstaltung_id']:''));
$Jahr=trim((isset($_REQUEST['Jahr']) ? $_REQUEST['Jahr']:date("Y", mktime(0,0,0,date("m"),date("d"),date("y")))));
$Monat=trim((isset($_REQUEST['Monat']) ? $_REQUEST['Monat']:date("m", mktime(0,0,0,date("m"),date("d"),date("y")))));
$Suchtext=trim((isset($_REQUEST['Suchtext']) ? $_REQUEST['Suchtext']:''));
// ------------------------------------------------------------------------------------------
// Personen Classe
// Anwernderdaten ermitteln
// ------------------------------------------------------------------------------------------
$userNAME=$userUID;
$unicode=null; // Standart Encoding der Datenbank
$pers = new benutzer($conn,$userUID,$unicode); // Lesen Person - Benutzerdaten
if (isset($pers->nachname))
{
$userNAME=(isset($pers->anrede) ? $pers->anrede.' ':'');
$userNAME.=(isset($pers->titelpre) ? $pers->titelpre.' ':'');
$userNAME.=(isset($pers->vorname) ? $pers->vorname.' ':'');
$userNAME.=(isset($pers->nachname) ? $pers->nachname.' ':'');
}
// ------------------------------------------------------------------------------------------
// Benutzerberechtigung Classe
// Berechtigungen ermitteln
// ------------------------------------------------------------------------------------------
$is_lector=false;
$is_wartungsberechtigt=false;
if (isset($pers->nachname))
{
$benutzerberechtigung = new benutzerberechtigung($conn,$userUID);
$benutzerberechtigung->getBerechtigungen($userUID,true);
// Nur Lektoren oder Mitarbeiter duerfen alle Termine sehen , Studenten nur Freigegebene Kategorien
if($benutzerberechtigung->fix || $benutzerberechtigung->lektor)
$is_lector=true;
else
$is_lector=false;
// Kennzeichen setzen fuer Berechtigungspruefung
$berechtigung='veranstaltung';
$studiengang_kz=null;
$art='suid';
$fachbereich_kurzbz=null;
// Berechtigungen abfragen
$is_wartungsberechtigt=$benutzerberechtigung->isBerechtigt($berechtigung,$studiengang_kz,$art, $fachbereich_kurzbz);
if (!$is_wartungsberechtigt)
{
$is_wartungsberechtigt=false;
}
}
// ------------------------------------------------------------------------------------------
// Alle Kategoriedaten lesen fuer Selektfeld
// ------------------------------------------------------------------------------------------
$Jahresplan = new jahresplan($conn);
$Jahresplan->InitVeranstaltungskategorie();
if ($Jahresplan->loadVeranstaltungskategorie())
{
$veranstaltungskategorie=$Jahresplan->getVeranstaltungskategorie();
}
else // Es gibt keine Kategorie oder Fehler beim Lesen - keine weitere Anzeige mehr moeglich
{
die($Jahresplan->getError());
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Jahresplan</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
form {display:inline;}
/* Kategorien Abrundungen im Detail */
b.rtop, b.rbottom{display:block;background: transparent;}
b.rtop b, b.rbottom b{display:block;height: 1px; overflow: hidden; background: #E5E5E5;}
b.r1{margin: 0 5px}
b.r2{margin: 0 3px}
b.r3{margin: 0 2px}
b.rtop b.r4, b.rbottom b.r4{margin: 0 1px;height: 2px}
.cursor_hand {cursor:pointer;vertical-align: top;white-space : nowrap;}
.ausblenden {display:none;}
.footer_zeile {color: silver;}
/* Kalender */ kalender_kpl_monat
tr.kalender_header {text-align:left;}
/* Monat Container */
table.kalender_kpl_monat {border:0px;background-color:#E5E5E5;}
.kalender_kpl_monatkalender_kpl_monat th { font-weight: normal;width: 13%;}
#kalender_kpl_monat { font-weight: normal;width: 2%;}
/* Tages Row */
.kalender_kpl_monat_tagname tr {text-align:center;}
.kalender_kpl_monat_tagname th {border:0px; font-weight: normal;}
#kalender_kpl_monat_woche {font-weight: normal;width: 2%;}
/* Woche - Tages - Rows */
td.kalender_woche_on_of_container {vertical-align:top;width: 2%;}
td.kalender_woche_tages_kpl_container {vertical-align:top;width: 13%;border:1px solid #E5E5E5;background-color:#FFFFFF;}
.kalender_woche_anzeigen {white-space: nowrap;cursor:pointer;vertical-align:top;}
.kalender_woche_verbergen {white-space: nowrap;cursor:pointer;display:none;vertical-align:top;}
table.kalender_woche_tages_container {width: 100%;background-color:#FFFFFF;}
td.kalender_woche_tages_container {vertical-align:top;}
/* - Header Tagesansicht im Kalender - */
div.kalender_woche_tag_falscher_monat {width:100%;text-align:left;border:0px solid #B2B2B2;color:silver;background-color:#E5E5E5;}
div.kalender_woche_tag_ohne_termin {width:100%;text-align:left;border:0px solid #B2B2B2;color:black;background-color:#E5E5E5;}
div.kalender_woche_tag_mit_termin {width:100%;text-align:left;border:0px solid #B2B2B2;color:black;background-color:#E5E5E5;font-weight: bold;}
div.kalender_tages_container_on {width: 100%;border:0px;padding: 1px 0px 1px 0px;}
div.kalender_tages_container_off {width: 100%;display:none;border:0px;padding: 1px 0px 1px 0px;}
table.kalender_tages_info {width: 100%;border:0px;text-align:left;}
tr.kalender_tages_info {text-align:left;vertical-align:top;cursor:pointer;}
td.kalender_tages_info {text-align:left;}
/* Listen */
tr.header_liste_titelzeile {background-color: #F0F0F0;text-align:center;}
tr.header_liste_row_0 {background:#FEFFEC;vertical-align: top;}
tr.header_liste_row_1 {background:#F7F7F7;vertical-align: top;}
-->
</style>
<script language="JavaScript1.2" type="text/javascript">
<!--
function show_layer(x)
{
if (document.getElementById && document.getElementById(x))
{
document.getElementById(x).style.visibility = 'visible';
document.getElementById(x).style.display = 'inline';
} else if (document.all && document.all[x]) {
document.all[x].visibility = 'visible';
document.all[x].style.display='inline';
} else if (document.layers && document.layers[x]) {
document.layers[x].visibility = 'show';
document.layers[x].style.display='inline';
}
}
function hide_layer(x)
{
if (document.getElementById && document.getElementById(x))
{
document.getElementById(x).style.visibility = 'hidden';
document.getElementById(x).style.display = 'none';
} else if (document.all && document.all[x]) {
document.all[x].visibility = 'hidden';
document.all[x].style.display='none';
} else if (document.layers && document.layers[x]) {
document.layers[x].visibility = 'hide';
document.layers[x].style.display='none';
}
}
var InfoWin;
function callWindows(url,nameID)
{
// width=(Pixel) - erzwungene Fensterbreite
// height=(Pixel) - erzwungene Fensterh&ouml;he
// resizable=yes/no - Gr&ouml;&szlig;e fest oder ver&auml;nderbar
// scrollbars=yes/no - fenstereigene Scrollbalken
// toolbar=yes/no - fenstereigene Buttonleiste
// status=yes/no - fenstereigene Statuszeile
// directories=yes/no - fenstereigene Directory-Buttons (Netscape)
// menubar=yes/no - fenstereigene Men&uuml;leiste
// location=yes/no - fenstereigenes Eingabe-/Auswahlfeld f&uuml;r URLs
if (InfoWin) {
InfoWin.close();
}
InfoWin=window.open(url,nameID,"copyhistory=no,directories=no,location=no,dependent=no,toolbar=yes,menubar=no,status=no,resizable=yes,scrollbars=yes, width=500,height=600,left=60, top=15");
InfoWin.focus();
InfoWin.setTimeout("window.close()",800000);
}
-->
</script>
</head>
<body>
<?php
// Wartungsberechtigt bekommen noch ein Spezielles Menue
if ($is_wartungsberechtigt)
{
// wunsch keine Veranstaltungs Menue echo '[&nbsp;<a href="index.php">Veranstaltung</a>&nbsp;|&nbsp;<a href="jahresplan_veranstaltung.php">Veranstaltung bearbeiten</a>&nbsp;|&nbsp;<a href="jahresplan_kategorie.php">Kategorie</a>&nbsp;]&nbsp;'.$userNAME;
echo '[&nbsp;<a href="index.php">Veranstaltung</a>&nbsp;|&nbsp;<a href="jahresplan_kategorie.php">Kategorie</a>&nbsp;]&nbsp;'.$userNAME;
} // Ende Wartungsberechtigt
?>
<h1>&nbsp;Veranstaltungen&nbsp;</h1>
<form name="selJahresplan" target="_self" action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data">
<table cellpadding="0" cellspacing="0">
<tr>
<!-- Jahresauswahl -->
<td title="1 Jahr zur&uuml;ck" ><img onclick="if (window.document.selJahresplan.Jahr.options.selectedIndex==0) {window.document.selJahresplan.Jahr.options.selectedIndex=(window.document.selJahresplan.Jahr.options.length - 1);} else { window.document.selJahresplan.Jahr.options.selectedIndex--; }; window.document.selJahresplan.submit();" alt="1 Jahr zur&uuml;ck" src="../../../skin/images/left.gif" border="0"></td>
<td><select name="Jahr" onchange="window.document.selJahresplan.submit();" >
<?php
$cTmpStart=date("Y", mktime(0,0,0,date("m"),date("d"),date("y")-3));
for ($iTmpZehler=1;$iTmpZehler<=7;$iTmpZehler++)
{
$cTmpStart++;
echo '<option '.($Jahr==$cTmpStart?' selected="selected" ':'').' value="'.$cTmpStart.'">'.$cTmpStart.'</option>';
}
?>
</select></td>
<td title="1 Jahr vor" ><img onclick="if (window.document.selJahresplan.Jahr.options.selectedIndex==(window.document.selJahresplan.Jahr.options.length - 1)) {window.document.selJahresplan.Jahr.options.selectedIndex=0} else {window.document.selJahresplan.Jahr.options.selectedIndex++;};window.document.selJahresplan.submit();" alt="1 Jahr vor" src="../../../skin/images/right.gif" border="0"></td>
<td>&nbsp;</td>
<!-- Monatsauswahl -->
<td title="1 Monat zur&uuml;ck" ><img onclick="if (window.document.selJahresplan.Monat.options.selectedIndex==0) {window.document.selJahresplan.Monat.options.selectedIndex=(window.document.selJahresplan.Monat.options.length - 1);} else { window.document.selJahresplan.Monat.options.selectedIndex--; }; window.document.selJahresplan.veranstaltung_id.value='';window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit();" alt="1 Monat zur&uuml;ck" src="../../../skin/images/left.gif" border="0"></td>
<td><select name="Monat" onchange="window.document.selJahresplan.veranstaltung_id.value='';window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit();" >
<?php
for ($iTmpZehler=0;$iTmpZehler<=12;$iTmpZehler++)
{
echo '<option '.($Monat==$iTmpZehler || $Monat=='0'.$iTmpZehler?' selected="selected" ':'').' value="'.(!empty($iTmpZehler)?strftime ("%m", mktime(0, 0, 0, $iTmpZehler, 1,date("y"))):'').'">'.(!empty($iTmpZehler)?strftime ("%B", mktime(0, 0, 0, $iTmpZehler, 1,date("y"))):'gesamtes Jahr').'</option>';
}
?>
</select></td>
<td title="1 Monat vor" ><img onclick="if (window.document.selJahresplan.Monat.options.selectedIndex==(window.document.selJahresplan.Monat.options.length - 1)) {window.document.selJahresplan.Monat.options.selectedIndex=0} else {window.document.selJahresplan.Monat.options.selectedIndex++;};window.document.selJahresplan.veranstaltung_id.value='';window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit();" alt="1 Monat vor" src="../../../skin/images/right.gif" border="0"></td>
<td>&nbsp;</td>
<!-- Kategorieauswahl -->
<td><select name="veranstaltungskategorie_kurzbz" onchange="window.document.selJahresplan.submit();" >
<?php
echo '<option '.(empty($veranstaltungskategorie_kurzbz)?' selected="selected" ':'').' value="">alle Kategorien</option>';
// Init Direktzugriffstabelle der Kategorien fuer Kalender - Key:veranstaltungskategorie_kurzbz
// Verarbeitungskategorie - Auswahl.- Selektliste
if (is_array($veranstaltungskategorie) || count($veranstaltungskategorie)>0)
{
reset($veranstaltungskategorie);
for ($iTmpZehler=0;$iTmpZehler<count($veranstaltungskategorie);$iTmpZehler++)
{
// Check Space
$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]=trim($veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]);
$veranstaltungskategorie[$iTmpZehler]["bezeichnung"]=trim($veranstaltungskategorie[$iTmpZehler]["bezeichnung"]);
// Kategoriebild erzeugen (wird spaeter verwendet)
$cURL='jahresplan_bilder.php?time='.time().'&'.(strlen($veranstaltungskategorie[$iTmpZehler]["bild"])<800?'heximg='.$veranstaltungskategorie[$iTmpZehler]["bild"]:'veranstaltungskategorie_kurzbz='.$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]);
$veranstaltungskategorie[$iTmpZehler]["bild_image"]='<img height="20" border="0" alt="Kategoriebild" titel="'.$veranstaltungskategorie[$iTmpZehler]["bezeichnung"].'" src="'.$cURL.'" />';
echo '<option '.(!empty($veranstaltungskategorie[$iTmpZehler]["farbe"])?' style="background-color:#'.$veranstaltungskategorie[$iTmpZehler]["farbe"].'" ':'').' '.($veranstaltungskategorie_kurzbz==$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]?' selected="selected" ':'').' value="'.$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"].'">'.$veranstaltungskategorie[$iTmpZehler]["bezeichnung"].'</option>';
}
}
?>
</select></td>
<td>&nbsp;</td>
<!-- Veranstaltungs ID -->
<td>ID</td>
<td><input onblur="if (this.value!='') { window.document.selJahresplan.Monat.options.selectedIndex=0;window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit(); } " name="veranstaltung_id" type="text" size="4" maxlength="10" title="Veranstaltungs ID" value="<?php echo $veranstaltung_id;?>"></td>
<td>&nbsp;</td>
<!-- Textsuche -->
<td>Suche</td>
<td><input onblur="if (this.value!='') { window.document.selJahresplan.Monat.options.selectedIndex=0;window.document.selJahresplan.submit(); } " name="Suchtext" type="text" size="15" maxlength="30" title="Suchtext" value="<?php echo $Suchtext;?>"></td>
<td>&nbsp;</td>
<!-- Datenanzeige Startknopf -->
<td title="Veranstaltungen anzeigen">
<input type="Submit" value="anzeigen">
</td>
<td>&nbsp;</td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
</form>
<?php
// ------------------------------------------------------------------------------------------
// Datenanzeige - Varianten sind Detail,Listen und Kalenderform
// ------------------------------------------------------------------------------------------
// Veranstaltung Initialisieren der Klasse
$Jahresplan->InitVeranstaltung();
// Nur Berechtigte duerfen alle Informationen sehen (Mitarbeiter)
$Jahresplan->setVeranstaltungskategorieMitarbeiter($is_lector);
// Nur Berechtigte duerfen auch noch nicht freigegebene Sehen
if (!$is_wartungsberechtigt)
$Jahresplan->setFreigabe(true);
else
$Jahresplan->setFreigabe(false);
$Jahresplan->setVeranstaltungskategorie_kurzbz($veranstaltungskategorie_kurzbz);
$Jahresplan->setVeranstaltung_id($veranstaltung_id);
$Jahresplan->setSuchtext(str_replace('*','%',$Suchtext));
// Datum setzen ausser wenn eine eindeutige ID selektiert wurde. Diese soll in allen Perioden gesucht werden
if (empty($veranstaltung_id))
{
if (empty($Jahr))
{
$Jahr=date("Y", mktime(0,0,0,date("m"),date("d"),date("y")));
}
$Jahresplan->setStart_jahr($Jahr);
if (!empty($Woche))
{
$iTmpMinKW=date("W",mktime(0, 0, 0,(empty($Monat) || $Monat>12?'01':$Monat),1, $Jahr));
$iTmpMaxKW=date("W",mktime(0, 0, 0,(empty($Monat) || $Monat>12?'01':$Monat),$iTmpMaxTage, $Jahr));
$iTmpMaxKW=number_format($iTmpMaxKW);
if ($iTmpMaxKW<2 && $iTmpMonat==12)
$iTmpMaxKW=53;
$Jahresplan->setStart_jahr_woche($Jahr.$iTmpMinKW);
$Jahresplan->setEnde_jahr_woche($Jahr.$iTmpMaxKW);
}
elseif (!empty($Monat))
{
$Jahresplan->setStart_jahr_monat($Jahr.(empty($Monat) || $Monat>12?'01':$Monat));
$Jahresplan->setEnde_jahr_monat($Jahr.(empty($Monat) || $Monat>12?'01':$Monat));
}
}
// **************************************
// Veranstaltungen zu Selektion - lesen
// **************************************
$veranstaltung=array();
if ($Jahresplan->loadVeranstaltung())
{
$veranstaltung=$Jahresplan->getVeranstaltung();
}
#echo $Jahresplan->getStringSQL();
// Ausgabe der Veranstaltungsdaten bzw Hinweisstext
if (is_array($veranstaltung) && isset($veranstaltung[0]))
{
// Detailanzeige
if (!empty($veranstaltung_id))
{
echo jahresplan_veranstaltung_detailanzeige($conn,$veranstaltung,$is_wartungsberechtigt);
}
// Listenanzeige
elseif (!empty($Suchtext))
{
echo jahresplan_veranstaltung_listenanzeige($conn,$veranstaltung,$is_wartungsberechtigt);
}
// Kalenderanzeige
else
{
echo jahresplan_veranstaltungskategorie_kalenderanzeige($conn,$veranstaltung,$is_wartungsberechtigt,$Jahr,$Monat);
}
}
// Keine Daten gefunden
elseif (empty($veranstaltung_id) && empty($Suchtext))
{
echo jahresplan_veranstaltungskategorie_kalenderanzeige($conn,$veranstaltung,$is_wartungsberechtigt,$Jahr,$Monat);
}
else
{
echo "<br />keine Daten gefunden ".(!empty($Suchtext)? ' Suchtext '.$Suchtext:'' ).(!empty($veranstaltung_id)? ' ID '.$veranstaltung_id:'' );
}
// Fehlerausgabe
echo '<p>'.$Jahresplan->getError().'</p>';
?>
</body>
</html>
<?php
/* Copyright (C) 2008 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 >
*/
// ---------------- CIS Include Dateien einbinden
require_once('../../config.inc.php');
// Datenbankverbindung - ohne erfolg kann hier bereits beendet werden
if (!$conn=pg_pconnect(CONN_STRING))
{
die('Jahresplan<br />Keine Veranstaltungen zurzeit Online.<br />Bitte etwas Geduld.<br />Danke');
}
require_once('../../../include/functions.inc.php');
require_once('../../../include/globals.inc.php');
// ---------------- Datenbank-Verbindung
include_once('../../../include/person.class.php');
include_once('../../../include/benutzer.class.php');
include_once('../../../include/benutzerberechtigung.class.php');
// ---------------- Jahresplan Classe und Allg.Funktionen
include_once('../../../include/jahresplan.class.php');
include_once('jahresplan_funktionen.inc.php');
// ------------------------------------------------------------------------------------------
// Request Parameter
// ------------------------------------------------------------------------------------------
if (!$userUID=get_uid())
{
die('Es wurde keine Benutzer UID gefunden ?');
}
// Parameter Veranstaltungskategorie
$veranstaltungskategorie_kurzbz=trim((isset($_REQUEST['veranstaltungskategorie_kurzbz']) ? $_REQUEST['veranstaltungskategorie_kurzbz']:''));
// Parameter Veranstaltung
$veranstaltung_id=trim((isset($_REQUEST['veranstaltung_id']) ? $_REQUEST['veranstaltung_id']:''));
$Jahr=trim((isset($_REQUEST['Jahr']) ? $_REQUEST['Jahr']:date("Y", mktime(0,0,0,date("m"),date("d"),date("y")))));
$Monat=trim((isset($_REQUEST['Monat']) ? $_REQUEST['Monat']:date("m", mktime(0,0,0,date("m"),date("d"),date("y")))));
$Suchtext=trim((isset($_REQUEST['Suchtext']) ? $_REQUEST['Suchtext']:''));
// ------------------------------------------------------------------------------------------
// Personen Classe
// Anwernderdaten ermitteln
// ------------------------------------------------------------------------------------------
$userNAME=$userUID;
$unicode=null; // Standart Encoding der Datenbank
$pers = new benutzer($conn,$userUID,$unicode); // Lesen Person - Benutzerdaten
if (isset($pers->nachname))
{
$userNAME=(isset($pers->anrede) ? $pers->anrede.' ':'');
$userNAME.=(isset($pers->titelpre) ? $pers->titelpre.' ':'');
$userNAME.=(isset($pers->vorname) ? $pers->vorname.' ':'');
$userNAME.=(isset($pers->nachname) ? $pers->nachname.' ':'');
}
// ------------------------------------------------------------------------------------------
// Benutzerberechtigung Classe
// Berechtigungen ermitteln
// ------------------------------------------------------------------------------------------
$is_lector=false;
$is_wartungsberechtigt=false;
if (isset($pers->nachname))
{
$benutzerberechtigung = new benutzerberechtigung($conn,$userUID);
$benutzerberechtigung->getBerechtigungen($userUID,true);
// Nur Lektoren oder Mitarbeiter duerfen alle Termine sehen , Studenten nur Freigegebene Kategorien
if($benutzerberechtigung->fix || $benutzerberechtigung->lektor)
$is_lector=true;
else
$is_lector=false;
// Kennzeichen setzen fuer Berechtigungspruefung
$berechtigung='veranstaltung';
$studiengang_kz=null;
$art='suid';
$fachbereich_kurzbz=null;
// Berechtigungen abfragen
$is_wartungsberechtigt=$benutzerberechtigung->isBerechtigt($berechtigung,$studiengang_kz,$art, $fachbereich_kurzbz);
if (!$is_wartungsberechtigt)
{
$is_wartungsberechtigt=false;
}
}
// ------------------------------------------------------------------------------------------
// Alle Kategoriedaten lesen fuer Selektfeld
// ------------------------------------------------------------------------------------------
$Jahresplan = new jahresplan($conn);
$Jahresplan->InitVeranstaltungskategorie();
if ($Jahresplan->loadVeranstaltungskategorie())
{
$veranstaltungskategorie=$Jahresplan->getVeranstaltungskategorie();
}
else // Es gibt keine Kategorie oder Fehler beim Lesen - keine weitere Anzeige mehr moeglich
{
die($Jahresplan->getError());
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Jahresplan</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
form {display:inline;}
/* Kategorien Abrundungen im Detail */
b.rtop, b.rbottom{display:block;background: transparent;}
b.rtop b, b.rbottom b{display:block;height: 1px; overflow: hidden; background: #E5E5E5;}
b.r1{margin: 0 5px}
b.r2{margin: 0 3px}
b.r3{margin: 0 2px}
b.rtop b.r4, b.rbottom b.r4{margin: 0 1px;height: 2px}
.cursor_hand {cursor:pointer;vertical-align: top;white-space : nowrap;}
.ausblenden {display:none;}
.footer_zeile {color: silver;}
/* Kalender */ kalender_kpl_monat
tr.kalender_header {text-align:left;}
/* Monat Container */
table.kalender_kpl_monat {border:0px;background-color:#E5E5E5;}
.kalender_kpl_monatkalender_kpl_monat th { font-weight: normal;width: 13%;}
#kalender_kpl_monat { font-weight: normal;width: 2%;}
/* Tages Row */
.kalender_kpl_monat_tagname tr {text-align:center;}
.kalender_kpl_monat_tagname th {border:0px; font-weight: normal;}
#kalender_kpl_monat_woche {font-weight: normal;width: 2%;}
/* Woche - Tages - Rows */
td.kalender_woche_on_of_container {vertical-align:top;width: 2%;}
td.kalender_woche_tages_kpl_container {vertical-align:top;width: 13%;border:1px solid #E5E5E5;background-color:#FFFFFF;}
.kalender_woche_anzeigen {white-space: nowrap;cursor:pointer;vertical-align:top;}
.kalender_woche_verbergen {white-space: nowrap;cursor:pointer;display:none;vertical-align:top;}
table.kalender_woche_tages_container {width: 100%;background-color:#FFFFFF;}
td.kalender_woche_tages_container {vertical-align:top;}
/* - Header Tagesansicht im Kalender - */
div.kalender_woche_tag_falscher_monat {width:100%;text-align:left;border:0px solid #B2B2B2;color:silver;background-color:#E5E5E5;}
div.kalender_woche_tag_ohne_termin {width:100%;text-align:left;border:0px solid #B2B2B2;color:black;background-color:#E5E5E5;}
div.kalender_woche_tag_mit_termin {width:100%;text-align:left;border:0px solid #B2B2B2;color:black;background-color:#E5E5E5;font-weight: bold;}
div.kalender_tages_container_on {width: 100%;border:0px;padding: 1px 0px 1px 0px;}
div.kalender_tages_container_off {width: 100%;display:none;border:0px;padding: 1px 0px 1px 0px;}
table.kalender_tages_info {width: 100%;border:0px;text-align:left;}
tr.kalender_tages_info {text-align:left;vertical-align:top;cursor:pointer;}
td.kalender_tages_info {text-align:left;}
/* Listen */
tr.header_liste_titelzeile {background-color: #F0F0F0;text-align:center;}
tr.header_liste_row_0 {background:#FEFFEC;vertical-align: top;}
tr.header_liste_row_1 {background:#F7F7F7;vertical-align: top;}
-->
</style>
<script language="JavaScript1.2" type="text/javascript">
<!--
function show_layer(x)
{
if (document.getElementById && document.getElementById(x))
{
document.getElementById(x).style.visibility = 'visible';
document.getElementById(x).style.display = 'inline';
} else if (document.all && document.all[x]) {
document.all[x].visibility = 'visible';
document.all[x].style.display='inline';
} else if (document.layers && document.layers[x]) {
document.layers[x].visibility = 'show';
document.layers[x].style.display='inline';
}
}
function hide_layer(x)
{
if (document.getElementById && document.getElementById(x))
{
document.getElementById(x).style.visibility = 'hidden';
document.getElementById(x).style.display = 'none';
} else if (document.all && document.all[x]) {
document.all[x].visibility = 'hidden';
document.all[x].style.display='none';
} else if (document.layers && document.layers[x]) {
document.layers[x].visibility = 'hide';
document.layers[x].style.display='none';
}
}
var InfoWin;
function callWindows(url,nameID)
{
// width=(Pixel) - erzwungene Fensterbreite
// height=(Pixel) - erzwungene Fensterh&ouml;he
// resizable=yes/no - Gr&ouml;&szlig;e fest oder ver&auml;nderbar
// scrollbars=yes/no - fenstereigene Scrollbalken
// toolbar=yes/no - fenstereigene Buttonleiste
// status=yes/no - fenstereigene Statuszeile
// directories=yes/no - fenstereigene Directory-Buttons (Netscape)
// menubar=yes/no - fenstereigene Men&uuml;leiste
// location=yes/no - fenstereigenes Eingabe-/Auswahlfeld f&uuml;r URLs
if (InfoWin) {
InfoWin.close();
}
InfoWin=window.open(url,nameID,"copyhistory=no,directories=no,location=no,dependent=no,toolbar=yes,menubar=no,status=no,resizable=yes,scrollbars=yes, width=500,height=600,left=60, top=15");
InfoWin.focus();
InfoWin.setTimeout("window.close()",800000);
}
-->
</script>
</head>
<body>
<?php
// Wartungsberechtigt bekommen noch ein Spezielles Menue
if ($is_wartungsberechtigt)
{
// wunsch keine Veranstaltungs Menue echo '[&nbsp;<a href="index.php">Veranstaltung</a>&nbsp;|&nbsp;<a href="jahresplan_veranstaltung.php">Veranstaltung bearbeiten</a>&nbsp;|&nbsp;<a href="jahresplan_kategorie.php">Kategorie</a>&nbsp;]&nbsp;'.$userNAME;
echo '[&nbsp;<a href="index.php">Veranstaltung</a>&nbsp;|&nbsp;<a href="jahresplan_kategorie.php">Kategorie</a>&nbsp;]&nbsp;'.$userNAME;
} // Ende Wartungsberechtigt
?>
<h1>&nbsp;Veranstaltungen&nbsp;</h1>
<form name="selJahresplan" target="_self" action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data">
<table cellpadding="0" cellspacing="0">
<tr>
<!-- Jahresauswahl -->
<td title="1 Jahr zur&uuml;ck" ><img onclick="if (window.document.selJahresplan.Jahr.options.selectedIndex==0) {window.document.selJahresplan.Jahr.options.selectedIndex=(window.document.selJahresplan.Jahr.options.length - 1);} else { window.document.selJahresplan.Jahr.options.selectedIndex--; }; window.document.selJahresplan.submit();" alt="1 Jahr zur&uuml;ck" src="../../../skin/images/left.gif" border="0"></td>
<td><select name="Jahr" onchange="window.document.selJahresplan.submit();" >
<?php
$cTmpStart=date("Y", mktime(0,0,0,date("m"),date("d"),date("y")-3));
for ($iTmpZehler=1;$iTmpZehler<=7;$iTmpZehler++)
{
$cTmpStart++;
echo '<option '.($Jahr==$cTmpStart?' selected="selected" ':'').' value="'.$cTmpStart.'">'.$cTmpStart.'</option>';
}
?>
</select></td>
<td title="1 Jahr vor" ><img onclick="if (window.document.selJahresplan.Jahr.options.selectedIndex==(window.document.selJahresplan.Jahr.options.length - 1)) {window.document.selJahresplan.Jahr.options.selectedIndex=0} else {window.document.selJahresplan.Jahr.options.selectedIndex++;};window.document.selJahresplan.submit();" alt="1 Jahr vor" src="../../../skin/images/right.gif" border="0"></td>
<td>&nbsp;</td>
<!-- Monatsauswahl -->
<td title="1 Monat zur&uuml;ck" ><img onclick="if (window.document.selJahresplan.Monat.options.selectedIndex==0) {window.document.selJahresplan.Monat.options.selectedIndex=(window.document.selJahresplan.Monat.options.length - 1);} else { window.document.selJahresplan.Monat.options.selectedIndex--; }; window.document.selJahresplan.veranstaltung_id.value='';window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit();" alt="1 Monat zur&uuml;ck" src="../../../skin/images/left.gif" border="0"></td>
<td><select name="Monat" onchange="window.document.selJahresplan.veranstaltung_id.value='';window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit();" >
<?php
for ($iTmpZehler=0;$iTmpZehler<=12;$iTmpZehler++)
{
echo '<option '.($Monat==$iTmpZehler || $Monat=='0'.$iTmpZehler?' selected="selected" ':'').' value="'.(!empty($iTmpZehler)?strftime ("%m", mktime(0, 0, 0, $iTmpZehler, 1,date("y"))):'').'">'.(!empty($iTmpZehler)?strftime ("%B", mktime(0, 0, 0, $iTmpZehler, 1,date("y"))):'gesamtes Jahr').'</option>';
}
?>
</select></td>
<td title="1 Monat vor" ><img onclick="if (window.document.selJahresplan.Monat.options.selectedIndex==(window.document.selJahresplan.Monat.options.length - 1)) {window.document.selJahresplan.Monat.options.selectedIndex=0} else {window.document.selJahresplan.Monat.options.selectedIndex++;};window.document.selJahresplan.veranstaltung_id.value='';window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit();" alt="1 Monat vor" src="../../../skin/images/right.gif" border="0"></td>
<td>&nbsp;</td>
<!-- Kategorieauswahl -->
<td><select name="veranstaltungskategorie_kurzbz" onchange="window.document.selJahresplan.submit();" >
<?php
echo '<option '.(empty($veranstaltungskategorie_kurzbz)?' selected="selected" ':'').' value="">alle Kategorien</option>';
// Init Direktzugriffstabelle der Kategorien fuer Kalender - Key:veranstaltungskategorie_kurzbz
// Verarbeitungskategorie - Auswahl.- Selektliste
if (is_array($veranstaltungskategorie) || count($veranstaltungskategorie)>0)
{
reset($veranstaltungskategorie);
for ($iTmpZehler=0;$iTmpZehler<count($veranstaltungskategorie);$iTmpZehler++)
{
// Check Space
$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]=trim($veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]);
$veranstaltungskategorie[$iTmpZehler]["bezeichnung"]=trim($veranstaltungskategorie[$iTmpZehler]["bezeichnung"]);
// Kategoriebild erzeugen (wird spaeter verwendet)
$cURL='jahresplan_bilder.php?time='.time().'&'.(strlen($veranstaltungskategorie[$iTmpZehler]["bild"])<800?'heximg='.$veranstaltungskategorie[$iTmpZehler]["bild"]:'veranstaltungskategorie_kurzbz='.$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]);
$veranstaltungskategorie[$iTmpZehler]["bild_image"]='<img height="20" border="0" alt="Kategoriebild" titel="'.$veranstaltungskategorie[$iTmpZehler]["bezeichnung"].'" src="'.$cURL.'" />';
echo '<option '.(!empty($veranstaltungskategorie[$iTmpZehler]["farbe"])?' style="background-color:#'.$veranstaltungskategorie[$iTmpZehler]["farbe"].'" ':'').' '.($veranstaltungskategorie_kurzbz==$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"]?' selected="selected" ':'').' value="'.$veranstaltungskategorie[$iTmpZehler]["veranstaltungskategorie_kurzbz"].'">'.$veranstaltungskategorie[$iTmpZehler]["bezeichnung"].'</option>';
}
}
?>
</select></td>
<td>&nbsp;</td>
<!-- Veranstaltungs ID -->
<td>ID</td>
<td><input onblur="if (this.value!='') { window.document.selJahresplan.Monat.options.selectedIndex=0;window.document.selJahresplan.Suchtext.value='';window.document.selJahresplan.submit(); } " name="veranstaltung_id" type="text" size="4" maxlength="10" title="Veranstaltungs ID" value="<?php echo $veranstaltung_id;?>"></td>
<td>&nbsp;</td>
<!-- Textsuche -->
<td>Suche</td>
<td><input onblur="if (this.value!='') { window.document.selJahresplan.Monat.options.selectedIndex=0;window.document.selJahresplan.submit(); } " name="Suchtext" type="text" size="15" maxlength="30" title="Suchtext" value="<?php echo $Suchtext;?>"></td>
<td>&nbsp;</td>
<!-- Datenanzeige Startknopf -->
<td title="Veranstaltungen anzeigen">
<input type="Submit" value="anzeigen">
</td>
<td>&nbsp;</td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
</form>
<?php
// ------------------------------------------------------------------------------------------
// Datenanzeige - Varianten sind Detail,Listen und Kalenderform
// ------------------------------------------------------------------------------------------
// Veranstaltung Initialisieren der Klasse
$Jahresplan->InitVeranstaltung();
// Nur Berechtigte duerfen alle Informationen sehen (Mitarbeiter)
$Jahresplan->setVeranstaltungskategorieMitarbeiter($is_lector);
// Nur Berechtigte duerfen auch noch nicht freigegebene Sehen
if (!$is_wartungsberechtigt)
$Jahresplan->setFreigabe(true);
else
$Jahresplan->setFreigabe(false);
$Jahresplan->setVeranstaltungskategorie_kurzbz($veranstaltungskategorie_kurzbz);
$Jahresplan->setVeranstaltung_id($veranstaltung_id);
$Suchtext_korr=(!empty($Suchtext)?mb_ereg_replace("*","%",$Suchtext):'');
$Jahresplan->setSuchtext($Suchtext_korr);
// Datum setzen ausser wenn eine eindeutige ID selektiert wurde. Diese soll in allen Perioden gesucht werden
if (empty($veranstaltung_id))
{
if (empty($Jahr))
{
$Jahr=date("Y", mktime(0,0,0,date("m"),date("d"),date("y")));
}
$Jahresplan->setStart_jahr($Jahr);
if (!empty($Woche))
{
$iTmpMinKW=date("W",mktime(0, 0, 0,(empty($Monat) || $Monat>12?'01':$Monat),1, $Jahr));
$iTmpMaxKW=date("W",mktime(0, 0, 0,(empty($Monat) || $Monat>12?'01':$Monat),$iTmpMaxTage, $Jahr));
$iTmpMaxKW=number_format($iTmpMaxKW);
if ($iTmpMaxKW<2 && $iTmpMonat==12)
$iTmpMaxKW=53;
$Jahresplan->setStart_jahr_woche($Jahr.$iTmpMinKW);
$Jahresplan->setEnde_jahr_woche($Jahr.$iTmpMaxKW);
}
elseif (!empty($Monat))
{
$Jahresplan->setStart_jahr_monat($Jahr.(empty($Monat) || $Monat>12?'01':$Monat));
$Jahresplan->setEnde_jahr_monat($Jahr.(empty($Monat) || $Monat>12?'01':$Monat));
}
}
// **************************************
// Veranstaltungen zu Selektion - lesen
// **************************************
$veranstaltung=array();
if ($Jahresplan->loadVeranstaltung())
{
$veranstaltung=$Jahresplan->getVeranstaltung();
}
#echo $Jahresplan->getStringSQL();
// Ausgabe der Veranstaltungsdaten bzw Hinweisstext
if (is_array($veranstaltung) && isset($veranstaltung[0]))
{
// Detailanzeige
if (!empty($veranstaltung_id))
{
echo jahresplan_veranstaltung_detailanzeige($conn,$veranstaltung,$is_wartungsberechtigt);
}
// Listenanzeige
elseif (!empty($Suchtext))
{
echo jahresplan_veranstaltung_listenanzeige($conn,$veranstaltung,$is_wartungsberechtigt);
}
// Kalenderanzeige
else
{
echo jahresplan_veranstaltungskategorie_kalenderanzeige($conn,$veranstaltung,$is_wartungsberechtigt,$Jahr,$Monat);
}
}
// Keine Daten gefunden
elseif (empty($veranstaltung_id) && empty($Suchtext))
{
echo jahresplan_veranstaltungskategorie_kalenderanzeige($conn,$veranstaltung,$is_wartungsberechtigt,$Jahr,$Monat);
}
else
{
echo "<br />keine Daten gefunden ".(!empty($Suchtext)? ' Suchtext '.$Suchtext:'' ).(!empty($veranstaltung_id)? ' ID '.$veranstaltung_id:'' );
}
// Fehlerausgabe
echo '<p>'.$Jahresplan->getError().'</p>';
?>
</body>
</html>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+282 -282
View File
@@ -1,283 +1,283 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
/*
* Script zum Kopieren einer Kreuzerltool Uebung zu einer anderen Lehreinheit
* (zB fuer die Uebernahme der Uebungen aus dem Vorjahr)
*/
require_once('../../../config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/lehreinheit.class.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/uebung.class.php');
require_once('../../../../include/beispiel.class.php');
require_once('../../../../include/datum.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Rechte für diese Seite');
if(isset($_GET['uebung_id_source']))
$uebung_id_source=$_GET['uebung_id_source'];
else
$uebung_id_source='';
if(isset($_GET['lehreinheit_id_target']))
$lehreinheit_id_target=$_GET['lehreinheit_id_target'];
else
$lehreinheit_id_target='';
if($uebung_id_source!='' && $lehreinheit_id_target!='')
{
$copy_insert = 0;
$copy_update = 0;
$copy_insert_bsp = 0;
$copy_update_bsp = 0;
if (!is_numeric($uebung_id_source) or !is_numeric($lehreinheit_id_target))
echo "<span class='error'>Übung und Lehreinheit muss ausgewählt sein!</span>";
else
{
$ueb_1 = new uebung($conn, $uebung_id_source);
$lehreinheit_id=$ueb_1->lehreinheit_id;
$nummer_source = $ueb_1->nummer;
$qry = "SELECT * from campus.tbl_uebung where nummer = '".$nummer_source."' and lehreinheit_id = '".$lehreinheit_id_target."'";
//echo $qry;
if($result1 = pg_query($conn, $qry))
{
if (pg_num_rows($result1) >0)
{
$row1 = pg_fetch_object($result1);
$ueb_1_target =new uebung($conn, $row1->uebung_id);
$ueb_1_target->new = false;
$new = null;
$ueb_1_target->insertamum = null;
$ueb_1_target->insertvon = null;
$ueb_1_target->updateamum = date('Y-m-d H:i:s');
$ueb_1_target->updatevon = $user;
$copy_update++;
}
else
{
$ueb_1_target =new uebung($conn);
$ueb_1_target->new = true;
$new = true;
$ueb_1_target->insertamum = date('Y-m-d H:i:s');
$ueb_1_target->insertvon = $user;
$ueb_1_target->updateamum = null;
$ueb_1_target->updatevon = null;
$copy_insert++;
}
$ueb_1_target->gewicht = $ueb_1->gewicht;
$ueb_1_target->punkte = null;
$ueb_1_target->angabedatei=null;
$ueb_1_target->freigabevon = null;
$ueb_1_target->freigabebis = null;
$ueb_1_target->abgabe = false;
$ueb_1_target->beispiele = false;
$ueb_1_target->statistik = false;
$ueb_1_target->maxstd = null;
$ueb_1_target->maxbsp=null;
$ueb_1_target->liste_id=null;
$ueb_1_target->bezeichnung = $ueb_1->bezeichnung;
$ueb_1_target->positiv = $ueb_1->positiv;
$ueb_1_target->defaultbemerkung = $ueb_1->defaultbemerkung;
$ueb_1_target->lehreinheit_id = $lehreinheit_id_target;
$ueb_1_target->nummer = $nummer_source;
if (!$ueb_1_target->save($new))
{
$error = 1;
echo "<span class='error'>Hauptübung konnte nicht kopiert werden!</span>";
}
else
{
// Subübungen durchlaufen
$error = 0;
$ueb_2 = new uebung($conn);
$ueb_2->load_uebung($lehreinheit_id,2,$uebung_id_source);
$ueb_2anzahl = count($ueb_2->uebungen);
if ($ueb_2anzahl >0)
{
foreach ($ueb_2->uebungen as $subrow)
{
$nummer_source2 = $subrow->nummer;
$qry2 = "SELECT * from campus.tbl_uebung where nummer = '".$nummer_source2."' and lehreinheit_id = '".$lehreinheit_id_target."'";
$result2 = pg_query($conn, $qry2);
if (pg_num_rows($result2) >0)
{
$row2 = pg_fetch_object($result2);
$ueb_2_target =new uebung($conn, $row2->uebung_id);
$ueb_2_target->new = false;
$new = null;
$ueb_2_target->insertamum = null;
$ueb_2_target->insertvon = null;
$ueb_2_target->updateamum = date('Y-m-d H:i:s');
$ueb_2_target->updatevon = $user;
$copy_update++;
}
else
{
$ueb_2_target =new uebung($conn);
$ueb_2_target->new = true;
$new = true;
$ueb_2_target->insertamum = date('Y-m-d H:i:s');
$ueb_2_target->insertvon = $user;
$ueb_2_target->updateamum = null;
$ueb_2_target->updatevon = null;
$copy_insert++;
}
$ueb_2_target->gewicht = $subrow->gewicht;
$ueb_2_target->punkte = $subrow->punkte;
$ueb_2_target->angabedatei=null;
$ueb_2_target->freigabevon = $subrow->freigabevon;
$ueb_2_target->freigabebis = $subrow->freigabebis;
$ueb_2_target->abgabe = $subrow->abgabe;
$ueb_2_target->beispiele = $subrow->beispiele;
$ueb_2_target->statistik = $subrow->statistik;
$ueb_2_target->maxstd = $subrow->maxstd;
$ueb_2_target->maxbsp=$subrow->maxbsp;
$ueb_2_target->liste_id=$ueb_1_target->uebung_id;
$ueb_2_target->bezeichnung = $subrow->bezeichnung;
$ueb_2_target->positiv = $subrow->positiv;
$ueb_2_target->defaultbemerkung = $subrow->defaultbemerkung;
$ueb_2_target->lehreinheit_id = $lehreinheit_id_target;
$ueb_2_target->nummer = $nummer_source2;
if (!$ueb_2_target->save($new))
{
$error = 1;
echo "<span class='error'>Übung konnte nicht kopiert werden!</span>";
}
//angabedatei syncen
if ($subrow->angabedatei != "")
{
$angabedatei_source = $subrow->angabedatei;
$angabedatei_target = makeUploadName($conn, 'angabe', $lehreinheit_id, $ueb_2_target->uebung_id, $stsem);
$angabedatei_target .= ".".substr($angabedatei_source, mb_strrpos($angabedatei_source, '.',0,'UTF-8') + 1);
echo $angabedatei_source."->".$angabedatei_target."<br>";
exec("cp ".BENOTUNGSTOOL_PATH."angabe/".$angabedatei_source." ".BENOTUNGSTOOL_PATH."angabe/".$angabedatei_target);
$angabeupdate = "update campus.tbl_uebung set angabedatei = '".$angabedatei_target."' where uebung_id = '".$ueb_2_target->uebung_id."'";
pg_query($conn, $angabeupdate);
}
if (($error == 0) and $ueb_2_target->beispiele)
{
// beispiele synchronisieren
$bsp_obj = new beispiel($conn);
$bsp_obj->load_beispiel($subrow->uebung_id);
foreach ($bsp_obj->beispiele as $bsp)
{
$nummer_source_bsp = $bsp->nummer;
$qrybsp = "SELECT * from campus.tbl_beispiel where nummer = '".$nummer_source_bsp."' and uebung_id = '".$ueb_2_target->uebung_id."'";
$resultbsp = pg_query($conn, $qrybsp);
if (pg_num_rows($resultbsp) >0)
{
$rowbsp = pg_fetch_object($resultbsp);
$bsp_target =new beispiel($conn, $rowbsp->beispiel_id);
$bsp_target->new = false;
$new = null;
$bsp_target->insertamum = null;
$bsp_target->insertvon = null;
$bsp_target->updateamum = date('Y-m-d H:i:s');
$bsp_target->updatevon = $user;
$copy_update_bsp++;
}
else
{
$bsp_target =new beispiel($conn);
$bsp_target->new = true;
$new = true;
$bsp_target->insertamum = date('Y-m-d H:i:s');
$bsp_target->insertvon = $user;
$bsp_target->updateamum = null;
$bsp_target->updatevon = null;
$copy_insert_bsp++;
}
$bsp_target->uebung_id = $ueb_2_target->uebung_id;
$bsp_target->nummer = $nummer_source_bsp;
$bsp_target->bezeichnung = $bsp->bezeichnung;
$bsp_target->punkte = $bsp->punkte;
if (!$bsp_target->save($new))
{
$error = 1;
echo "<span class='error'>Beispiele konnten nicht angelegt werden</span>";
}
//Notenschlüssel synchronisieren
$clear = "delete from campus.tbl_notenschluesseluebung where uebung_id = '".$ueb_1_target->uebung_id."'";
pg_query($conn, $clear);
$qry_ns_source = "SELECT * from campus.tbl_notenschluesseluebung where uebung_id = '".$uebung_id_source."'";
$result_ns_source = pg_query($conn, $qry_ns_source);
while($row_ns = pg_fetch_object($result_ns_source))
{
$ns_insert = "INSERT INTO campus.tbl_notenschluesseluebung values ('".$ueb_1_target->uebung_id."','".$row_ns->note."', '".$row_ns->punkte."')";
pg_query($conn, $ns_insert);
}
}
}
}
}
}
}
else
echo "<span class='error'>Fehler beim Datenbankzugriff!</span>";
if ($error == 0)
{
echo "Übung erfolgreich kopiert! (Ü: ".$copy_insert."/".$copy_update."; B: ".$copy_insert_bsp."/".$copy_update_bsp.")";
echo '<br><br><a href="'.$_SERVER['PHP_SELF'].'" class="Item">noch eine Übung Kopieren</a>';
}
}
}
else
{
echo '
<h1>Kopieren von Übungen in eine andere Lehreinheit</h1>
Script zum Kopieren einer Übung in eine beliebige Lehreinheit:<br><br>
<form action="'.$_SERVER['PHP_SELF'].'" method="GET">
ÜbungID die Kopiert werden soll: <input type="text" name="uebung_id_source"><br>
Lehreinheit_id in welche diese Übung kopiert werden soll: <input type="text" name="lehreinheit_id_target"><br>
<input type="submit" value="Kopieren">
</form>';
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
/*
* Script zum Kopieren einer Kreuzerltool Uebung zu einer anderen Lehreinheit
* (zB fuer die Uebernahme der Uebungen aus dem Vorjahr)
*/
require_once('../../../config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/lehreinheit.class.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/uebung.class.php');
require_once('../../../../include/beispiel.class.php');
require_once('../../../../include/datum.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Rechte für diese Seite');
if(isset($_GET['uebung_id_source']))
$uebung_id_source=$_GET['uebung_id_source'];
else
$uebung_id_source='';
if(isset($_GET['lehreinheit_id_target']))
$lehreinheit_id_target=$_GET['lehreinheit_id_target'];
else
$lehreinheit_id_target='';
if($uebung_id_source!='' && $lehreinheit_id_target!='')
{
$copy_insert = 0;
$copy_update = 0;
$copy_insert_bsp = 0;
$copy_update_bsp = 0;
if (!is_numeric($uebung_id_source) or !is_numeric($lehreinheit_id_target))
echo "<span class='error'>Übung und Lehreinheit muss ausgewählt sein!</span>";
else
{
$ueb_1 = new uebung($conn, $uebung_id_source);
$lehreinheit_id=$ueb_1->lehreinheit_id;
$nummer_source = $ueb_1->nummer;
$qry = "SELECT * from campus.tbl_uebung where nummer = '".$nummer_source."' and lehreinheit_id = '".$lehreinheit_id_target."'";
//echo $qry;
if($result1 = pg_query($conn, $qry))
{
if (pg_num_rows($result1) >0)
{
$row1 = pg_fetch_object($result1);
$ueb_1_target =new uebung($conn, $row1->uebung_id);
$ueb_1_target->new = false;
$new = null;
$ueb_1_target->insertamum = null;
$ueb_1_target->insertvon = null;
$ueb_1_target->updateamum = date('Y-m-d H:i:s');
$ueb_1_target->updatevon = $user;
$copy_update++;
}
else
{
$ueb_1_target =new uebung($conn);
$ueb_1_target->new = true;
$new = true;
$ueb_1_target->insertamum = date('Y-m-d H:i:s');
$ueb_1_target->insertvon = $user;
$ueb_1_target->updateamum = null;
$ueb_1_target->updatevon = null;
$copy_insert++;
}
$ueb_1_target->gewicht = $ueb_1->gewicht;
$ueb_1_target->punkte = null;
$ueb_1_target->angabedatei=null;
$ueb_1_target->freigabevon = null;
$ueb_1_target->freigabebis = null;
$ueb_1_target->abgabe = false;
$ueb_1_target->beispiele = false;
$ueb_1_target->statistik = false;
$ueb_1_target->maxstd = null;
$ueb_1_target->maxbsp=null;
$ueb_1_target->liste_id=null;
$ueb_1_target->bezeichnung = $ueb_1->bezeichnung;
$ueb_1_target->positiv = $ueb_1->positiv;
$ueb_1_target->defaultbemerkung = $ueb_1->defaultbemerkung;
$ueb_1_target->lehreinheit_id = $lehreinheit_id_target;
$ueb_1_target->nummer = $nummer_source;
if (!$ueb_1_target->save($new))
{
$error = 1;
echo "<span class='error'>Hauptübung konnte nicht kopiert werden!</span>";
}
else
{
// Subübungen durchlaufen
$error = 0;
$ueb_2 = new uebung($conn);
$ueb_2->load_uebung($lehreinheit_id,2,$uebung_id_source);
$ueb_2anzahl = count($ueb_2->uebungen);
if ($ueb_2anzahl >0)
{
foreach ($ueb_2->uebungen as $subrow)
{
$nummer_source2 = $subrow->nummer;
$qry2 = "SELECT * from campus.tbl_uebung where nummer = '".$nummer_source2."' and lehreinheit_id = '".$lehreinheit_id_target."'";
$result2 = pg_query($conn, $qry2);
if (pg_num_rows($result2) >0)
{
$row2 = pg_fetch_object($result2);
$ueb_2_target =new uebung($conn, $row2->uebung_id);
$ueb_2_target->new = false;
$new = null;
$ueb_2_target->insertamum = null;
$ueb_2_target->insertvon = null;
$ueb_2_target->updateamum = date('Y-m-d H:i:s');
$ueb_2_target->updatevon = $user;
$copy_update++;
}
else
{
$ueb_2_target =new uebung($conn);
$ueb_2_target->new = true;
$new = true;
$ueb_2_target->insertamum = date('Y-m-d H:i:s');
$ueb_2_target->insertvon = $user;
$ueb_2_target->updateamum = null;
$ueb_2_target->updatevon = null;
$copy_insert++;
}
$ueb_2_target->gewicht = $subrow->gewicht;
$ueb_2_target->punkte = $subrow->punkte;
$ueb_2_target->angabedatei=null;
$ueb_2_target->freigabevon = $subrow->freigabevon;
$ueb_2_target->freigabebis = $subrow->freigabebis;
$ueb_2_target->abgabe = $subrow->abgabe;
$ueb_2_target->beispiele = $subrow->beispiele;
$ueb_2_target->statistik = $subrow->statistik;
$ueb_2_target->maxstd = $subrow->maxstd;
$ueb_2_target->maxbsp=$subrow->maxbsp;
$ueb_2_target->liste_id=$ueb_1_target->uebung_id;
$ueb_2_target->bezeichnung = $subrow->bezeichnung;
$ueb_2_target->positiv = $subrow->positiv;
$ueb_2_target->defaultbemerkung = $subrow->defaultbemerkung;
$ueb_2_target->lehreinheit_id = $lehreinheit_id_target;
$ueb_2_target->nummer = $nummer_source2;
if (!$ueb_2_target->save($new))
{
$error = 1;
echo "<span class='error'>Übung konnte nicht kopiert werden!</span>";
}
//angabedatei syncen
if ($subrow->angabedatei != "")
{
$angabedatei_source = $subrow->angabedatei;
$angabedatei_target = makeUploadName($conn, 'angabe', $lehreinheit_id, $ueb_2_target->uebung_id, $stsem);
$angabedatei_target .= ".".mb_substr($angabedatei_source, mb_strrpos($angabedatei_source, '.',0) + 1);
echo $angabedatei_source."->".$angabedatei_target."<br>";
exec("cp ".BENOTUNGSTOOL_PATH."angabe/".$angabedatei_source." ".BENOTUNGSTOOL_PATH."angabe/".$angabedatei_target);
$angabeupdate = "update campus.tbl_uebung set angabedatei = '".$angabedatei_target."' where uebung_id = '".$ueb_2_target->uebung_id."'";
pg_query($conn, $angabeupdate);
}
if (($error == 0) and $ueb_2_target->beispiele)
{
// beispiele synchronisieren
$bsp_obj = new beispiel($conn);
$bsp_obj->load_beispiel($subrow->uebung_id);
foreach ($bsp_obj->beispiele as $bsp)
{
$nummer_source_bsp = $bsp->nummer;
$qrybsp = "SELECT * from campus.tbl_beispiel where nummer = '".$nummer_source_bsp."' and uebung_id = '".$ueb_2_target->uebung_id."'";
$resultbsp = pg_query($conn, $qrybsp);
if (pg_num_rows($resultbsp) >0)
{
$rowbsp = pg_fetch_object($resultbsp);
$bsp_target =new beispiel($conn, $rowbsp->beispiel_id);
$bsp_target->new = false;
$new = null;
$bsp_target->insertamum = null;
$bsp_target->insertvon = null;
$bsp_target->updateamum = date('Y-m-d H:i:s');
$bsp_target->updatevon = $user;
$copy_update_bsp++;
}
else
{
$bsp_target =new beispiel($conn);
$bsp_target->new = true;
$new = true;
$bsp_target->insertamum = date('Y-m-d H:i:s');
$bsp_target->insertvon = $user;
$bsp_target->updateamum = null;
$bsp_target->updatevon = null;
$copy_insert_bsp++;
}
$bsp_target->uebung_id = $ueb_2_target->uebung_id;
$bsp_target->nummer = $nummer_source_bsp;
$bsp_target->bezeichnung = $bsp->bezeichnung;
$bsp_target->punkte = $bsp->punkte;
if (!$bsp_target->save($new))
{
$error = 1;
echo "<span class='error'>Beispiele konnten nicht angelegt werden</span>";
}
//Notenschlüssel synchronisieren
$clear = "delete from campus.tbl_notenschluesseluebung where uebung_id = '".$ueb_1_target->uebung_id."'";
pg_query($conn, $clear);
$qry_ns_source = "SELECT * from campus.tbl_notenschluesseluebung where uebung_id = '".$uebung_id_source."'";
$result_ns_source = pg_query($conn, $qry_ns_source);
while($row_ns = pg_fetch_object($result_ns_source))
{
$ns_insert = "INSERT INTO campus.tbl_notenschluesseluebung values ('".$ueb_1_target->uebung_id."','".$row_ns->note."', '".$row_ns->punkte."')";
pg_query($conn, $ns_insert);
}
}
}
}
}
}
}
else
echo "<span class='error'>Fehler beim Datenbankzugriff!</span>";
if ($error == 0)
{
echo "Übung erfolgreich kopiert! (Ü: ".$copy_insert."/".$copy_update."; B: ".$copy_insert_bsp."/".$copy_update_bsp.")";
echo '<br><br><a href="'.$_SERVER['PHP_SELF'].'" class="Item">noch eine Übung Kopieren</a>';
}
}
}
else
{
echo '
<h1>Kopieren von Übungen in eine andere Lehreinheit</h1>
Script zum Kopieren einer Übung in eine beliebige Lehreinheit:<br><br>
<form action="'.$_SERVER['PHP_SELF'].'" method="GET">
ÜbungID die Kopiert werden soll: <input type="text" name="uebung_id_source"><br>
Lehreinheit_id in welche diese Übung kopiert werden soll: <input type="text" name="lehreinheit_id_target"><br>
<input type="submit" value="Kopieren">
</form>';
}
@@ -1,6 +1,6 @@
<?php
//Filenamen für up-/downloads bauen
<?php
//Filenamen für up-/downloads bauen
// which kann sein angabe, abgabe oder zip
function makeUploadName($conn, $which, $lehreinheit_id=null, $uebung_id=null, $ss=null, $uid=null, $date=null)
{
@@ -12,20 +12,20 @@ function makeUploadName($conn, $which, $lehreinheit_id=null, $uebung_id=null, $s
if ($which == "angabe")
{
$name .= "_".$uebung_id;
}
else if ($which == "abgabe")
{
}
else if ($which == "abgabe")
{
$query = "SELECT nachname, vorname from tbl_person, tbl_benutzer where tbl_benutzer.person_id = tbl_person.person_id and tbl_benutzer.uid = '".$uid."'";
$result = pg_query($conn, $query);
$row = pg_fetch_object($result);
$name .= "_".$uebung_id."_".$row->nachname."_".$row->vorname."_".$uid."_".$date;
}
else if ($which == "zip")
{
$name .= "_".$uebung_id."_".$date;
$row = pg_fetch_object($result);
$name .= "_".$uebung_id."_".$row->nachname."_".$row->vorname."_".$uid."_".$date;
}
$name = str_replace(":","-",$name);
else if ($which == "zip")
{
$name .= "_".$uebung_id."_".$date;
}
$name = mb_ereg_replace(":","-",$name);
return $name;
}
}
?>
@@ -1,211 +1,211 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../../config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/lehreinheit.class.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/uebung.class.php');
require_once('../../../../include/beispiel.class.php');
require_once('../../../../include/studentnote.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/legesamtnote.class.php');
require_once('../../../../include/lvgesamtnote.class.php');
require_once('../../../../include/zeugnisnote.class.php');
require_once('../../../../include/person.class.php');
require_once('../../../../include/benutzer.class.php');
require_once('../../../../include/student.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim oeffnen der Datenbankverbindung');
$user = get_uid();
if(!check_lektor($user, $conn))
die('Sie haben keine Berechtigung fuer diesen Bereich');
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die('Fehlerhafte Parameteruebergabe');
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung($conn);
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($conn,$lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$response='';
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Kopfzeile
//Studiensemester laden
$stsem_obj = new studiensemester($conn);
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
//$note = $_REQUEST["note"];
if(!$rechte->isBerechtigt('admin',0) &&
!$rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) &&
!$rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT lehreinheit_id FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid='".addslashes($user)."'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)==0)
die('Sie haben keine Berechtigung für diese Seite');
}
else
{
die('Fehler beim Pruefen der Rechte');
}
}
function savenote($lvid, $student_uid, $note)
{
global $conn, $stsem, $user;
$jetzt = date("Y-m-d H:i:s");
//Ermitteln ob der Student diesem Kurs zugeteilt ist
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE uid='".addslashes($student_uid)."' AND lehrveranstaltung_id='".addslashes($lvid)."'";
if($result = pg_query($conn, $qry))
if(pg_num_rows($result)==0)
{
$student = new student($conn);
$student->load($student_uid);
die('Der Student '.$student->nachname.' '.$student->vorname.' ('.trim($student->matrikelnr).') ist dieser Lehrveranstaltung nicht zugeordnet. Die Note wird nicht uebernommen');
}
$lvgesamtnote = new lvgesamtnote($conn);
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = trim($note);
$lvgesamtnote->mitarbeiter_uid = $user;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->freigabedatum = null;
$lvgesamtnote->freigabevon_uid = null;
$lvgesamtnote->bemerkung = null;
$lvgesamtnote->updateamum = null;
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = trim($note);
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
if (!$lvgesamtnote->save($new))
return "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
return $response;
}
// lvgesamtnote für studenten speichern
if (isset($_REQUEST["submit"]))
{
$lvid = $_REQUEST["lvid"];
if(isset($_REQUEST["student_uid"]) && $_REQUEST["student_uid"] != '')
{
$student_uid = $_REQUEST["student_uid"];
$note = $_REQUEST["note"];
if((($note>0) && ($note < 6)) || ($note == 7) || ($note==8))
$response = savenote($lvid, $student_uid, $note);
else
$response = "Bitte geben Sie eine Note von 1 - 5 bzw. 7 (nicht beurteilt) oder 8 (teilgenommen) ein!";
echo $response;
}
else
{
foreach ($_POST as $row=>$val)
{
if(mb_strstr(mb_strtolower($row,'UTF-8'), 'matrikelnr_','UTF-8'))
{
$id=substr($row, mb_strlen('matrikelnr_','UTF-8'));
if(isset($_POST['matrikelnr_'.$id]) && isset($_POST['note_'.$id]))
{
$matrikelnummer = $_POST['matrikelnr_'.$id];
$note = $_POST['note_'.$id];
//UID ermitteln
$student = new student($conn);
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer))
{
$response.="\nStudent mit der Matrikelnummer ".$matrikelnummer.' existiert nicht';
continue;
}
if((($note>0) && ($note < 6)) || ($note == 7) || ($note==8))
{
$val=savenote($lvid, $student_uid, $note);
if($val!='neu' && $val!='update' && $val!='update_f')
$response.=$val;
}
else
{
$student->load($student_uid);
$response .= "\nFehlerhafte Note bei Student $student->nachname $student->vorname. Bitte geben Sie eine Note von 1 - 5 bzw. 7 (nicht beurteilt) oder 8 (teilgenommen) ein!";
}
}
else
{
$response.="\nFehler bei der Parameteruebergabe";
}
}
}
echo $response;
}
}
?>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../../config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/lehrveranstaltung.class.php');
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/studiensemester.class.php');
require_once('../../../../include/lehreinheit.class.php');
require_once('../../../../include/benutzerberechtigung.class.php');
require_once('../../../../include/uebung.class.php');
require_once('../../../../include/beispiel.class.php');
require_once('../../../../include/studentnote.class.php');
require_once('../../../../include/datum.class.php');
require_once('../../../../include/legesamtnote.class.php');
require_once('../../../../include/lvgesamtnote.class.php');
require_once('../../../../include/zeugnisnote.class.php');
require_once('../../../../include/person.class.php');
require_once('../../../../include/benutzer.class.php');
require_once('../../../../include/student.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim oeffnen der Datenbankverbindung');
$user = get_uid();
if(!check_lektor($user, $conn))
die('Sie haben keine Berechtigung fuer diesen Bereich');
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die('Fehlerhafte Parameteruebergabe');
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung($conn);
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($conn,$lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$response='';
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Kopfzeile
//Studiensemester laden
$stsem_obj = new studiensemester($conn);
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
//$note = $_REQUEST["note"];
if(!$rechte->isBerechtigt('admin',0) &&
!$rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) &&
!$rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT lehreinheit_id FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem)."' AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid='".addslashes($user)."'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)==0)
die('Sie haben keine Berechtigung für diese Seite');
}
else
{
die('Fehler beim Pruefen der Rechte');
}
}
function savenote($lvid, $student_uid, $note)
{
global $conn, $stsem, $user;
$jetzt = date("Y-m-d H:i:s");
//Ermitteln ob der Student diesem Kurs zugeteilt ist
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE uid='".addslashes($student_uid)."' AND lehrveranstaltung_id='".addslashes($lvid)."'";
if($result = pg_query($conn, $qry))
if(pg_num_rows($result)==0)
{
$student = new student($conn);
$student->load($student_uid);
die('Der Student '.$student->nachname.' '.$student->vorname.' ('.trim($student->matrikelnr).') ist dieser Lehrveranstaltung nicht zugeordnet. Die Note wird nicht uebernommen');
}
$lvgesamtnote = new lvgesamtnote($conn);
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = trim($note);
$lvgesamtnote->mitarbeiter_uid = $user;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->freigabedatum = null;
$lvgesamtnote->freigabevon_uid = null;
$lvgesamtnote->bemerkung = null;
$lvgesamtnote->updateamum = null;
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = trim($note);
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
if (!$lvgesamtnote->save($new))
return "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
return $response;
}
// lvgesamtnote für studenten speichern
if (isset($_REQUEST["submit"]))
{
$lvid = $_REQUEST["lvid"];
if(isset($_REQUEST["student_uid"]) && $_REQUEST["student_uid"] != '')
{
$student_uid = $_REQUEST["student_uid"];
$note = $_REQUEST["note"];
if((($note>0) && ($note < 6)) || ($note == 7) || ($note==8))
$response = savenote($lvid, $student_uid, $note);
else
$response = "Bitte geben Sie eine Note von 1 - 5 bzw. 7 (nicht beurteilt) oder 8 (teilgenommen) ein!";
echo $response;
}
else
{
foreach ($_POST as $row=>$val)
{
if(mb_strstr(mb_strtolower($row), 'matrikelnr_'))
{
$id=mb_substr($row, mb_strlen('matrikelnr_'));
if(isset($_POST['matrikelnr_'.$id]) && isset($_POST['note_'.$id]))
{
$matrikelnummer = $_POST['matrikelnr_'.$id];
$note = $_POST['note_'.$id];
//UID ermitteln
$student = new student($conn);
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer))
{
$response.="\nStudent mit der Matrikelnummer ".$matrikelnummer.' existiert nicht';
continue;
}
if((($note>0) && ($note < 6)) || ($note == 7) || ($note==8))
{
$val=savenote($lvid, $student_uid, $note);
if($val!='neu' && $val!='update' && $val!='update_f')
$response.=$val;
}
else
{
$student->load($student_uid);
$response .= "\nFehlerhafte Note bei Student $student->nachname $student->vorname. Bitte geben Sie eine Note von 1 - 5 bzw. 7 (nicht beurteilt) oder 8 (teilgenommen) ein!";
}
}
else
{
$response.="\nFehler bei der Parameteruebergabe";
}
}
}
echo $response;
}
}
?>
@@ -59,7 +59,10 @@ if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehr
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
$uid = (isset($_GET['uid'])?$_GET['uid']:''); //Uid
if(check_lektor($user, $conn) && (isset($_GET['uid']) && $_GET["uid"] != ""))
{
$rights = new benutzerberechtigung($conn);
@@ -482,13 +485,17 @@ if (!isset($_GET["notenuebersicht"]))
}
else
{
header("Location:studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&notenuebersicht=1&uid=$user");
$callURL="studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&notenuebersicht=1&uid=$user";
#header("Location:$callURL");
echo "<script language=\"JavaScript\">";
echo "window.location.href ='$callURL'";
echo "</script>";
exit;
//echo "Derzeit sind keine Kreuzerllisten oder Abgaben angelegt";
}
//******SPEICHERN DER DATEN*************
if(isset($_POST['submit']))
{
@@ -581,7 +588,7 @@ if (!isset($_GET["notenuebersicht"]))
{
$uebung_obj = new uebung($conn);
$uebung_obj->load($uebung_id);
$downloadname = str_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei);
$downloadname = mb_ereg_replace($uebung_id,mb_ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei);
echo "Freigegeben von ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))." bis ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis));
echo "<br><br><h3><u>$uebung_obj->bezeichnung</u></h3>";
if ($uebung_obj->angabedatei)
@@ -319,7 +319,7 @@ echo "<h3>Studentenaufgaben verwalten</h3>";
if(isset($_POST['submit']))
{
$error=false;
$punkte = (isset($_POST['punkte'])?str_replace(',','.',$_POST['punkte']):'');
$punkte = (isset($_POST['punkte'])?mb_ereg_replace(',','.',$_POST['punkte']):'');
if(isset($punkte) && is_numeric($punkte) && !isset($_POST['abgabe']))
{
$ueb_obj = new uebung($conn);
@@ -899,7 +899,7 @@ else
{
$date = date('Y-m-d_H:i:s');
$downloadname = makeUploadName($conn, $which="zip", $lehreinheit_id, $uebung_id, $stsem, $uid=null, $date);
$downloadname = str_replace($uebung_id, ereg_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname);
$downloadname = mb_ereg_replace($uebung_id, ereg_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname);
echo "<a href='zipdownload_benotungstool.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&downloadname=$downloadname'> [Abgaben downloaden]</a>";
}
else
@@ -141,7 +141,7 @@ $error_gewicht='';
$thema = (isset($_POST['thema'])?$_POST['thema']:'');
$anzahlderbeispiele = (isset($_POST['anzahlderbeispiele'])?$_POST['anzahlderbeispiele']:'');
$punkteprobeispiel = (isset($_POST['punkteprobeispiel'])?$_POST['punkteprobeispiel']:'');
$punkteprobeispiel = str_replace(',','.',$punkteprobeispiel);
$punkteprobeispiel = mb_ereg_replace(',','.',$punkteprobeispiel);
$freigabebis = (isset($_POST['freigabebis'])?$_POST['freigabebis']:'');
$freigabevon = (isset($_POST['freigabevon'])?$_POST['freigabevon']:'');
$gewicht = (isset($_POST['gewicht'])?$_POST['gewicht']:'');
@@ -425,7 +425,7 @@ if (isset($_REQUEST["copy_uebung"]))
{
$angabedatei_source = $subrow->angabedatei;
$angabedatei_target = makeUploadName($conn, 'angabe', $lehreinheit_id, $ueb_2_target->uebung_id, $stsem);
$angabedatei_target .= ".".substr($angabedatei_source, mb_strrpos($angabedatei_source, '.','UTF-8') + 1);
$angabedatei_target .= ".".mb_substr($angabedatei_source, mb_strrpos($angabedatei_source, '.') + 1);
echo $angabedatei_source."->".$angabedatei_target."<br>";
exec("cp ".BENOTUNGSTOOL_PATH."angabe/".$angabedatei_source." ".BENOTUNGSTOOL_PATH."angabe/".$angabedatei_target);
$angabeupdate = "update campus.tbl_uebung set angabedatei = '".$angabedatei_target."' where uebung_id = '".$ueb_2_target->uebung_id."'";
@@ -140,7 +140,7 @@ $thema = (isset($_POST['thema'])?$_POST['thema']:'');
$liste_id = (isset($_REQUEST['liste_id'])?$_REQUEST['liste_id']:'');
$anzahlderbeispiele = (isset($_POST['anzahlderbeispiele'])?$_POST['anzahlderbeispiele']:'');
$punkteprobeispiel = (isset($_POST['punkteprobeispiel'])?$_POST['punkteprobeispiel']:'');
$punkteprobeispiel = str_replace(',','.',$punkteprobeispiel);
$punkteprobeispiel = mb_ereg_replace(',','.',$punkteprobeispiel);
$freigabebis = (isset($_POST['freigabebis'])?$_POST['freigabebis']:'');
$freigabevon = (isset($_POST['freigabevon'])?$_POST['freigabevon']:'');
$maxstd = (isset($_POST['maxstd'])?$_POST['maxstd']:'');
@@ -787,7 +787,7 @@ if(isset($_POST['beispiel_neu']) || isset($_POST['beispiel_edit']))
if(isset($uebung_id) && $uebung_id!='' && is_numeric($uebung_id))
{
$punkte = (isset($_POST['punkte'])?$_POST['punkte']:'');
$punkte = str_replace(',','.',$punkte);
$punkte = mb_ereg_replace(',','.',$punkte);
$bezeichnung = $_REQUEST["bezeichnung"];
if(is_numeric($punkte) && $punkte!='')
{
@@ -846,7 +846,7 @@ if(isset($_GET["uebung_id"]) && $_GET["uebung_id"]!='')
$uebung_obj = new uebung($conn);
$uebung_obj->load($uebung_id);
$downloadname = str_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei);
$downloadname = mb_ereg_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei);
echo "
<tr><td>Thema</td><td align='right'><input type='text' name='thema' maxlength='32' value='$uebung_obj->bezeichnung'></td><td>$error_thema</td></tr>
File diff suppressed because it is too large Load Diff
+18 -18
View File
@@ -79,26 +79,26 @@
$lehrveranstaltung_id = $_POST['lv'];
// german content variables
//$titel_de = str_replace("\r\n","<br>",stripslashes($_POST['titel_de']));
$methodik_de = str_replace("\r\n","<br>",stripslashes($_POST['methodik_de']));
$kurzbeschreibung_de = str_replace("\r\n","<br>",stripslashes($_POST['kurzbeschreibung_de']));
$lehrziele_de = str_replace("\r\n","<br>",stripslashes($_POST['lehrziele_de']));
$lehrinhalte_de = str_replace("\r\n","<br>",stripslashes($_POST['lehrinhalte_de']));
$voraussetzungen_de = str_replace("\r\n","<br>",stripslashes($_POST['voraussetzungen_de']));
$unterlagen_de = str_replace("\r\n","<br>",stripslashes($_POST['unterlagen_de']));
$pruefungsordnung_de = str_replace("\r\n","<br>",stripslashes($_POST['pruefungsordnung_de']));
$anmerkungen_de = str_replace("\r\n","<br>",stripslashes($_POST['anmerkungen_de']));
//$titel_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['titel_de']));
$methodik_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['methodik_de']));
$kurzbeschreibung_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['kurzbeschreibung_de']));
$lehrziele_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrziele_de']));
$lehrinhalte_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrinhalte_de']));
$voraussetzungen_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['voraussetzungen_de']));
$unterlagen_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['unterlagen_de']));
$pruefungsordnung_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['pruefungsordnung_de']));
$anmerkungen_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['anmerkungen_de']));
// Englisch content variables
//$titel_en = str_replace("\r\n","<br>",stripslashes($_POST['titel_en']));
$methodik_en = str_replace("\r\n","<br>",stripslashes($_POST['methodik_en']));
$kurzbeschreibung_en = str_replace("\r\n","<br>",stripslashes($_POST['kurzbeschreibung_en']));
$lehrziele_en = str_replace("\r\n","<br>",stripslashes($_POST['lehrziele_en']));
$lehrinhalte_en = str_replace("\r\n","<br>",stripslashes($_POST['lehrinhalte_en']));
$voraussetzungen_en = str_replace("\r\n","<br>",stripslashes($_POST['voraussetzungen_en']));
$unterlagen_en = str_replace("\r\n","<br>",stripslashes($_POST['unterlagen_en']));
$pruefungsordnung_en = str_replace("\r\n","<br>",stripslashes($_POST['pruefungsordnung_en']));
$anmerkungen_en = str_replace("\r\n","<br>",stripslashes($_POST['anmerkungen_en']));
//$titel_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['titel_en']));
$methodik_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['methodik_en']));
$kurzbeschreibung_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['kurzbeschreibung_en']));
$lehrziele_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrziele_en']));
$lehrinhalte_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrinhalte_en']));
$voraussetzungen_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['voraussetzungen_en']));
$unterlagen_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['unterlagen_en']));
$pruefungsordnung_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['pruefungsordnung_en']));
$anmerkungen_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['anmerkungen_en']));
}
elseif(isset($_GET['lv'])) //LV Id wird uebergeben (zB bei Ansicht fuer alle von lesson.php)
{
@@ -226,7 +226,7 @@ echo "<h3>Studentenpunkte verwalten</h3>";
if(isset($_POST['submit']))
{
$error=false;
$punkte = (isset($_POST['punkte'])?str_replace(',','.',$_POST['punkte']):'');
$punkte = (isset($_POST['punkte'])?mb_ereg_replace(',','.',$_POST['punkte']):'');
if(isset($punkte) && is_numeric($punkte))
{
$ueb_obj = new uebung($conn);
@@ -110,7 +110,7 @@ $error_freigabevon='';
$thema = (isset($_POST['thema'])?$_POST['thema']:'');
$anzahlderbeispiele = (isset($_POST['anzahlderbeispiele'])?$_POST['anzahlderbeispiele']:'');
$punkteprobeispiel = (isset($_POST['punkteprobeispiel'])?$_POST['punkteprobeispiel']:'');
$punkteprobeispiel = str_replace(',','.',$punkteprobeispiel);
$punkteprobeispiel = mb_ereg_replace(',','.',$punkteprobeispiel);
$freigabebis = (isset($_POST['freigabebis'])?$_POST['freigabebis']:'');
$freigabevon = (isset($_POST['freigabevon'])?$_POST['freigabevon']:'');
@@ -472,7 +472,7 @@ if(isset($_POST['beispiel_neu']) || isset($_POST['beispiel_edit']))
if(isset($uebung_id) && $uebung_id!='' && is_numeric($uebung_id))
{
$punkte = (isset($_POST['punkte'])?$_POST['punkte']:'');
$punkte = str_replace(',','.',$punkte);
$punkte = mb_ereg_replace(',','.',$punkte);
if(is_numeric($punkte) && $punkte!='')
{
if($bezeichnung!='')
+387 -387
View File
@@ -1,388 +1,388 @@
<?php
/* Copyright (C) 2008 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/moodle_course.class.php');
require_once('../../../include/moodle_user.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/lehreinheit.class.php');
require_once('../../../include/lehreinheitgruppe.class.php');
require_once('../../../include/lehreinheitmitarbeiter.class.php');
require_once('../../../include/studiengang.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
//$conn_moodle='';
if(!$conn_moodle = pg_pconnect(CONN_STRING_MOODLE))
die('Fehler beim Connecten zur DB');
$user = get_uid();
if(isset($_GET['lvid']))
$lvid=$_GET['lvid'];
else
die('lvid muss uebergeben werden');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
die('Es wurde kein Studiensemester uebergeben');
$art = (isset($_POST['art'])?$_POST['art']:'lv');
$berechtigt = false;
//Pruefen ob Rechte fuer diese LV vorhanden sind
$qry = "SELECT distinct vorname, nachname, tbl_benutzer.uid as uid FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_benutzer, public.tbl_person WHERE tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND tbl_person.person_id=tbl_benutzer.person_id AND lehrveranstaltung_id='$lvid' AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND tbl_person.aktiv=true AND studiensemester_kurzbz='$stsem' ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
while($row_lector = pg_fetch_object($result))
{
if($user==$row_lector->uid)
$berechtigt=true;
}
}
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if($rechte->isBerechtigt('admin'))
$berechtigt=true;
$lv = new lehrveranstaltung($conn);
$lv->load($lvid);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="Javascript">
<!--
function togglediv()
{
var block = "table-row";
if (navigator.appName.indexOf("Microsoft") > -1)
block = "block";
if(document.getElementById("radiole").checked)
document.getElementById("lehreinheitencheckboxen").style.display = block;
else
document.getElementById("lehreinheitencheckboxen").style.display = "none";
}
-->
</script>
</head>
<body onload="togglediv()">
<table class="tabcontent" height="100%" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td class="ContentHeader"><font class="ContentHeader">'.$lv->bezeichnung.'&nbsp;('.$stsem.')</font></td>
</tr>
<tr>
<td class="tdvertical">&nbsp;</td>
<td></td>
</tr>
<tr>
<td class="tdvertical">&nbsp;</td>
<td class="tdvertical">
<table width="100%">
<tr>
<td>';
if(isset($_POST['neu']))
{
if($_POST['bezeichnung']=='')
{
echo '<span class="error">Bezeichnung muss angegeben werden</span><br>';
}
else
{
$lehrveranstaltung = new lehrveranstaltung($conn);
$lehrveranstaltung->load($lvid);
$studiengang = new studiengang($conn);
$studiengang->load($lehrveranstaltung->studiengang_kz);
//Kurzbezeichnung generieren Format: STSEM-STG-SEM-LV/LEID/LEID/LEID...
$shortname = $stsem.'-'.$studiengang->kuerzel.'-'.$lehrveranstaltung->semester.'-'.$lehrveranstaltung->kurzbz;
foreach ($_POST as $key=>$value)
{
if(strstr($key, 'lehreinheit_'))
{
$shortname.='/'.$value;
}
}
//Gesamte LV zu einem Moodle Kurs zusammenlegen
if($art=='lv')
{
$mdl_course = new moodle_course($conn, $conn_moodle);
$mdl_course->lehrveranstaltung_id = $lvid;
$mdl_course->studiensemester_kurzbz = $stsem;
$mdl_course->mdl_fullname = $_POST['bezeichnung'];
$mdl_course->mdl_shortname = $shortname;
$mdl_course->insertamum = date('Y-m-d H:i:s');
$mdl_course->insertvon = $user;
$mdl_course->gruppen = isset($_POST['gruppen']);
//Moodlekurs anlegen
if($mdl_course->create_moodle())
{
//Eintrag in der Vilesci DB
$mdl_course->create_vilesci();
$mdl_user = new moodle_user($conn, $conn_moodle);
//Lektoren Synchronisieren
if(!$mdl_user->sync_lektoren($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
$mdl_user = new moodle_user($conn, $conn_moodle);
//Studenten Synchronisieren
if(!$mdl_user->sync_studenten($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
}
}
elseif($art=='le') //Getrennte Kurse fuer die Lehreinheiten
{
$lehreinheiten=array();
foreach ($_POST as $key=>$value)
{
if(strstr($key, 'lehreinheit_'))
{
$lehreinheiten[]=$value;
}
}
if(count($lehreinheiten)>0)
{
$mdl_course = new moodle_course($conn, $conn_moodle);
$mdl_course->mdl_fullname = $_POST['bezeichnung'];
$mdl_course->mdl_shortname = $shortname;
$mdl_course->studiensemester_kurzbz = $stsem;
$mdl_course->insertamum = date('Y-m-d H:i:s');
$mdl_course->insertvon = $user;
$mdl_course->lehreinheit_id=$lehreinheiten[0];
//Kurs im Moodle anlegen
if($mdl_course->create_moodle())
{
//fuer jede Lehreinheit einen Eintrag in VilesciDB anlegen
foreach ($lehreinheiten as $value)
{
$mdl_course->lehreinheit_id = $value;
if(!$mdl_course->create_vilesci())
echo '<br>Fehler beim Anlegen:'.$mdl_course->errormsg;
}
$mdl_user = new moodle_user($conn, $conn_moodle);
//Lektoren Synchronisieren
if(!$mdl_user->sync_lektoren($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
$mdl_user = new moodle_user($conn, $conn_moodle);
//Studenten Synchronisieren
if(!$mdl_user->sync_studenten($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
}
}
else
{
echo '<span class="error">Es muss mindestens eine Lehreinheit markiert sein</span><br>';
}
}
else
die('art ist unbekannt');
}
}
//Gruppen Syncro ein/aus schalten
if(isset($_POST['changegruppe']))
{
if(isset($_POST['moodle_id']) && is_numeric($_POST['moodle_id']))
{
$mcourse = new moodle_course($conn, $conn_moodle);
if($mcourse->updateGruppenSync($_POST['moodle_id'], isset($_POST['gruppen'])))
echo '<b>Daten wurden aktualisiert</b><br>';
else
echo '<span class="error">Fehler beim Aktualiseren der Daten</span>';
}
else
{
echo '<span class="error">Es wurde keine oder eine ungueltige ID übergeben</span>';
}
}
//Anlegen eines Testkurses
if(isset($_GET['action']) && $_GET['action']=='createtestkurs')
{
$mdl_course = new moodle_course($conn, $conn_moodle);
if(!$mdl_course->loadTestkurs($lvid, $stsem))
{
$lehrveranstaltung = new lehrveranstaltung($conn);
$lehrveranstaltung->load($lvid);
$studiengang = new studiengang($conn);
$studiengang->load($lehrveranstaltung->studiengang_kz);
//Kurzbezeichnung generieren Format: STSEM-STG-SEM-LV/LEID/LEID/LEID...
$shortname = 'TK-'.$stsem.'-'.$studiengang->kuerzel.'-'.$lehrveranstaltung->semester.'-'.$lehrveranstaltung->kurzbz;
$mdl_course->lehrveranstaltung_id = $lvid;
$mdl_course->studiensemester_kurzbz = $stsem;
$mdl_course->mdl_fullname = 'Testkurs - '.$lehrveranstaltung->bezeichnung;
$mdl_course->mdl_shortname = $shortname;
//TestKurs erstellen
if($mdl_course->createTestkurs($lvid, $stsem))
{
$id=$mdl_course->mdl_course_id;
$errormsg='';
$mdl_user = new moodle_user($conn, $conn_moodle);
//Lektoren zuweisen
if(!$mdl_user->sync_lektoren($id, $lvid, $stsem))
$errormsg.='Fehler bei der Lektorenzuordnung:'.$mdl_user->errormsg.'<br>';
//Teststudenten zuweisen
if(!$mdl_user->createTestStudentenZuordnung($id))
$errormsg.='Fehler bei der Studentenzuordnung:'.$mdl_user->errormsg.'<br>';
if($errormsg!='')
echo $errormsg;
else
echo '<b>Der Testkurs wurde erfolgreich angelegt</b><br>';
}
}
else
{
echo '<span class="error">Es existiert bereits ein Testkurs</span><br>';
}
}
$mdl_course = new moodle_course($conn, $conn_moodle);
if($mdl_course->course_exists_for_lv($lvid, $stsem) || $mdl_course->course_exists_for_allLE($lvid, $stsem))
{
echo 'Es ist bereits ein Moodle Kurs für die Gesamt LV vorhanden';
}
else
{
//wenn bereits ein Moodle Kurs fuer eine Lehreinheit angelegt wurde, dann dass
//anlegen fuer die Lehrveranstaltung verhindern
$qry = "SELECT 1 FROM lehre.tbl_moodle
WHERE lehreinheit_id in(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id='".addslashes($lvid)."'
AND studiensemester_kurzbz='".addslashes($stsem)."')";
$disable_lv='';
if($result = pg_query($conn, $qry))
if(pg_num_rows($result)>0)
{
$disable_lv='disabled="true"';
//wenn schon ein Moodle Kurs zu einer Lehreinheit angelegt wurde,
//dann ist standardmaessig die Lehreinheit markiert
if($art=='lv')
$art='le';
}
echo '<b>Moodle Kurs anlegen: </b><br><br>
<form action="'.$_SERVER['PHP_SELF'].'?lvid='.$lvid.'&stsem='.$stsem.'" method="POST">
<input type="radio" '.$disable_lv.' name="art" value="lv" onclick="togglediv()" '.($art=='lv'?'checked':'').'>einen Moodle Kurs f&uuml;r die gesamte LV anlegen<br>
<input type="radio" id="radiole" name="art" value="le" onclick="togglediv()" '.($art=='le'?'checked':'').'>einen Moodle Kurs für einzelne Lehreinheiten anlegen
';
$le = new lehreinheit($conn);
$le->load_lehreinheiten($lv->lehrveranstaltung_id, $stsem);
echo '<div id="lehreinheitencheckboxen" style="display:none">';
foreach ($le->lehreinheiten as $row)
{
//Gruppen laden
$gruppen = '';
$lehreinheitgruppe = new lehreinheitgruppe($conn);
$lehreinheitgruppe->getLehreinheitgruppe($row->lehreinheit_id);
foreach ($lehreinheitgruppe->lehreinheitgruppe as $grp)
{
if($grp->gruppe_kurzbz=='')
$gruppen.=' '.$grp->semester.$grp->verband.$grp->gruppe;
else
$gruppen.=' '.$grp->gruppe_kurzbz;
}
//Lektoren laden
$lektoren = '';
$lehreinheitmitarbeiter = new lehreinheitmitarbeiter($conn);
$lehreinheitmitarbeiter->getLehreinheitmitarbeiter($row->lehreinheit_id);
foreach ($lehreinheitmitarbeiter->lehreinheitmitarbeiter as $ma)
{
$lektoren.= ' '.$ma->mitarbeiter_uid;
}
if($mdl_course->course_exists_for_le($row->lehreinheit_id))
$disabled='disabled';
else
$disabled='';
echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="checkbox" name="lehreinheit_'.$row->lehreinheit_id.'" value="'.$row->lehreinheit_id.'" '.$disabled.'>'.$row->lehrform_kurzbz.' '.$gruppen.' '.$lektoren;
echo '<br>';
}
echo '</div>';
echo '<br>Kursbezeichnung: <input type="text" name="bezeichnung" maxlength="254" size="40" value="'.$lv->bezeichnung.'">';
echo '<br>Gruppen übernehmen: <input type="checkbox" name="gruppen" checked>';
echo '<br><br><input type="submit" name="neu" value="Kurs anlegen">
</form>';
}
echo '</td>';
echo '<td valign="top">';
echo '<b>Vorhandene Moodle Kurse für diese LV</b>';
if(!$mdl_course->getAll($lvid, $stsem))
echo $mdl_course->errormsg;
echo '<table>';
foreach ($mdl_course->result as $course)
{
echo '<tr>';
echo '<td><a href="'.MOODLE_PATH.'course/view.php?id='.$course->mdl_course_id.'" class="Item" target="_blank">'.$course->mdl_fullname.'</a></td>';
echo "<td nowrap><form action='".$_SERVER['PHP_SELF']."?lvid=$lvid&stsem=$stsem' method='POST' style='margin:0px'><input type='hidden' name='moodle_id' value='$course->moodle_id'><input type='checkbox' name='gruppen' ".($course->gruppen?'checked':'').">Gruppen übernehmen <input type='submit' value='ok' name='changegruppe'></td>";
}
echo '</table>';
echo '</td></tr></table>';
echo '<br><br><br>';
echo '<b>Testkurse</b><br><br>';
$mdlcourse = new moodle_course($conn, $conn_moodle);
if($mdlcourse->loadTestkurs($lvid, $stsem))
{
echo '<a href="'.MOODLE_PATH.'course/view.php?id='.$mdlcourse->mdl_course_id.'" class="Item" target="_blank">'.$mdlcourse->mdl_fullname.'</a>';
}
else
{
echo "<a href='".$_SERVER['PHP_SELF']."?lvid=$lvid&stsem=$stsem&action=createtestkurs' class='Item'>klicken Sie hier um einen Testkurs zu erstellen</a>";
}
echo '</td>
</tr>
</table>
</body>
</html>';
<?php
/* Copyright (C) 2008 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/moodle_course.class.php');
require_once('../../../include/moodle_user.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/lehreinheit.class.php');
require_once('../../../include/lehreinheitgruppe.class.php');
require_once('../../../include/lehreinheitmitarbeiter.class.php');
require_once('../../../include/studiengang.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
//$conn_moodle='';
if(!$conn_moodle = pg_pconnect(CONN_STRING_MOODLE))
die('Fehler beim Connecten zur DB');
$user = get_uid();
if(isset($_GET['lvid']))
$lvid=$_GET['lvid'];
else
die('lvid muss uebergeben werden');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
die('Es wurde kein Studiensemester uebergeben');
$art = (isset($_POST['art'])?$_POST['art']:'lv');
$berechtigt = false;
//Pruefen ob Rechte fuer diese LV vorhanden sind
$qry = "SELECT distinct vorname, nachname, tbl_benutzer.uid as uid FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_benutzer, public.tbl_person WHERE tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND tbl_person.person_id=tbl_benutzer.person_id AND lehrveranstaltung_id='$lvid' AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND tbl_person.aktiv=true AND studiensemester_kurzbz='$stsem' ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
while($row_lector = pg_fetch_object($result))
{
if($user==$row_lector->uid)
$berechtigt=true;
}
}
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if($rechte->isBerechtigt('admin'))
$berechtigt=true;
$lv = new lehrveranstaltung($conn);
$lv->load($lvid);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="Javascript">
<!--
function togglediv()
{
var block = "table-row";
if (navigator.appName.indexOf("Microsoft") > -1)
block = "block";
if(document.getElementById("radiole").checked)
document.getElementById("lehreinheitencheckboxen").style.display = block;
else
document.getElementById("lehreinheitencheckboxen").style.display = "none";
}
-->
</script>
</head>
<body onload="togglediv()">
<table class="tabcontent" height="100%" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td class="ContentHeader"><font class="ContentHeader">'.$lv->bezeichnung.'&nbsp;('.$stsem.')</font></td>
</tr>
<tr>
<td class="tdvertical">&nbsp;</td>
<td></td>
</tr>
<tr>
<td class="tdvertical">&nbsp;</td>
<td class="tdvertical">
<table width="100%">
<tr>
<td>';
if(isset($_POST['neu']))
{
if($_POST['bezeichnung']=='')
{
echo '<span class="error">Bezeichnung muss angegeben werden</span><br>';
}
else
{
$lehrveranstaltung = new lehrveranstaltung($conn);
$lehrveranstaltung->load($lvid);
$studiengang = new studiengang($conn);
$studiengang->load($lehrveranstaltung->studiengang_kz);
//Kurzbezeichnung generieren Format: STSEM-STG-SEM-LV/LEID/LEID/LEID...
$shortname = $stsem.'-'.$studiengang->kuerzel.'-'.$lehrveranstaltung->semester.'-'.$lehrveranstaltung->kurzbz;
foreach ($_POST as $key=>$value)
{
if(mb_strstr($key, 'lehreinheit_'))
{
$shortname.='/'.$value;
}
}
//Gesamte LV zu einem Moodle Kurs zusammenlegen
if($art=='lv')
{
$mdl_course = new moodle_course($conn, $conn_moodle);
$mdl_course->lehrveranstaltung_id = $lvid;
$mdl_course->studiensemester_kurzbz = $stsem;
$mdl_course->mdl_fullname = $_POST['bezeichnung'];
$mdl_course->mdl_shortname = $shortname;
$mdl_course->insertamum = date('Y-m-d H:i:s');
$mdl_course->insertvon = $user;
$mdl_course->gruppen = isset($_POST['gruppen']);
//Moodlekurs anlegen
if($mdl_course->create_moodle())
{
//Eintrag in der Vilesci DB
$mdl_course->create_vilesci();
$mdl_user = new moodle_user($conn, $conn_moodle);
//Lektoren Synchronisieren
if(!$mdl_user->sync_lektoren($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
$mdl_user = new moodle_user($conn, $conn_moodle);
//Studenten Synchronisieren
if(!$mdl_user->sync_studenten($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
}
}
elseif($art=='le') //Getrennte Kurse fuer die Lehreinheiten
{
$lehreinheiten=array();
foreach ($_POST as $key=>$value)
{
if(mb_strstr($key, 'lehreinheit_'))
{
$lehreinheiten[]=$value;
}
}
if(count($lehreinheiten)>0)
{
$mdl_course = new moodle_course($conn, $conn_moodle);
$mdl_course->mdl_fullname = $_POST['bezeichnung'];
$mdl_course->mdl_shortname = $shortname;
$mdl_course->studiensemester_kurzbz = $stsem;
$mdl_course->insertamum = date('Y-m-d H:i:s');
$mdl_course->insertvon = $user;
$mdl_course->lehreinheit_id=$lehreinheiten[0];
//Kurs im Moodle anlegen
if($mdl_course->create_moodle())
{
//fuer jede Lehreinheit einen Eintrag in VilesciDB anlegen
foreach ($lehreinheiten as $value)
{
$mdl_course->lehreinheit_id = $value;
if(!$mdl_course->create_vilesci())
echo '<br>Fehler beim Anlegen:'.$mdl_course->errormsg;
}
$mdl_user = new moodle_user($conn, $conn_moodle);
//Lektoren Synchronisieren
if(!$mdl_user->sync_lektoren($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
$mdl_user = new moodle_user($conn, $conn_moodle);
//Studenten Synchronisieren
if(!$mdl_user->sync_studenten($mdl_course->mdl_course_id))
echo $mdl_user->errormsg;
}
}
else
{
echo '<span class="error">Es muss mindestens eine Lehreinheit markiert sein</span><br>';
}
}
else
die('art ist unbekannt');
}
}
//Gruppen Syncro ein/aus schalten
if(isset($_POST['changegruppe']))
{
if(isset($_POST['moodle_id']) && is_numeric($_POST['moodle_id']))
{
$mcourse = new moodle_course($conn, $conn_moodle);
if($mcourse->updateGruppenSync($_POST['moodle_id'], isset($_POST['gruppen'])))
echo '<b>Daten wurden aktualisiert</b><br>';
else
echo '<span class="error">Fehler beim Aktualiseren der Daten</span>';
}
else
{
echo '<span class="error">Es wurde keine oder eine ungueltige ID übergeben</span>';
}
}
//Anlegen eines Testkurses
if(isset($_GET['action']) && $_GET['action']=='createtestkurs')
{
$mdl_course = new moodle_course($conn, $conn_moodle);
if(!$mdl_course->loadTestkurs($lvid, $stsem))
{
$lehrveranstaltung = new lehrveranstaltung($conn);
$lehrveranstaltung->load($lvid);
$studiengang = new studiengang($conn);
$studiengang->load($lehrveranstaltung->studiengang_kz);
//Kurzbezeichnung generieren Format: STSEM-STG-SEM-LV/LEID/LEID/LEID...
$shortname = 'TK-'.$stsem.'-'.$studiengang->kuerzel.'-'.$lehrveranstaltung->semester.'-'.$lehrveranstaltung->kurzbz;
$mdl_course->lehrveranstaltung_id = $lvid;
$mdl_course->studiensemester_kurzbz = $stsem;
$mdl_course->mdl_fullname = 'Testkurs - '.$lehrveranstaltung->bezeichnung;
$mdl_course->mdl_shortname = $shortname;
//TestKurs erstellen
if($mdl_course->createTestkurs($lvid, $stsem))
{
$id=$mdl_course->mdl_course_id;
$errormsg='';
$mdl_user = new moodle_user($conn, $conn_moodle);
//Lektoren zuweisen
if(!$mdl_user->sync_lektoren($id, $lvid, $stsem))
$errormsg.='Fehler bei der Lektorenzuordnung:'.$mdl_user->errormsg.'<br>';
//Teststudenten zuweisen
if(!$mdl_user->createTestStudentenZuordnung($id))
$errormsg.='Fehler bei der Studentenzuordnung:'.$mdl_user->errormsg.'<br>';
if($errormsg!='')
echo $errormsg;
else
echo '<b>Der Testkurs wurde erfolgreich angelegt</b><br>';
}
}
else
{
echo '<span class="error">Es existiert bereits ein Testkurs</span><br>';
}
}
$mdl_course = new moodle_course($conn, $conn_moodle);
if($mdl_course->course_exists_for_lv($lvid, $stsem) || $mdl_course->course_exists_for_allLE($lvid, $stsem))
{
echo 'Es ist bereits ein Moodle Kurs für die Gesamt LV vorhanden';
}
else
{
//wenn bereits ein Moodle Kurs fuer eine Lehreinheit angelegt wurde, dann dass
//anlegen fuer die Lehrveranstaltung verhindern
$qry = "SELECT 1 FROM lehre.tbl_moodle
WHERE lehreinheit_id in(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit
WHERE lehrveranstaltung_id='".addslashes($lvid)."'
AND studiensemester_kurzbz='".addslashes($stsem)."')";
$disable_lv='';
if($result = pg_query($conn, $qry))
if(pg_num_rows($result)>0)
{
$disable_lv='disabled="true"';
//wenn schon ein Moodle Kurs zu einer Lehreinheit angelegt wurde,
//dann ist standardmaessig die Lehreinheit markiert
if($art=='lv')
$art='le';
}
echo '<b>Moodle Kurs anlegen: </b><br><br>
<form action="'.$_SERVER['PHP_SELF'].'?lvid='.$lvid.'&stsem='.$stsem.'" method="POST">
<input type="radio" '.$disable_lv.' name="art" value="lv" onclick="togglediv()" '.($art=='lv'?'checked':'').'>einen Moodle Kurs f&uuml;r die gesamte LV anlegen<br>
<input type="radio" id="radiole" name="art" value="le" onclick="togglediv()" '.($art=='le'?'checked':'').'>einen Moodle Kurs für einzelne Lehreinheiten anlegen
';
$le = new lehreinheit($conn);
$le->load_lehreinheiten($lv->lehrveranstaltung_id, $stsem);
echo '<div id="lehreinheitencheckboxen" style="display:none">';
foreach ($le->lehreinheiten as $row)
{
//Gruppen laden
$gruppen = '';
$lehreinheitgruppe = new lehreinheitgruppe($conn);
$lehreinheitgruppe->getLehreinheitgruppe($row->lehreinheit_id);
foreach ($lehreinheitgruppe->lehreinheitgruppe as $grp)
{
if($grp->gruppe_kurzbz=='')
$gruppen.=' '.$grp->semester.$grp->verband.$grp->gruppe;
else
$gruppen.=' '.$grp->gruppe_kurzbz;
}
//Lektoren laden
$lektoren = '';
$lehreinheitmitarbeiter = new lehreinheitmitarbeiter($conn);
$lehreinheitmitarbeiter->getLehreinheitmitarbeiter($row->lehreinheit_id);
foreach ($lehreinheitmitarbeiter->lehreinheitmitarbeiter as $ma)
{
$lektoren.= ' '.$ma->mitarbeiter_uid;
}
if($mdl_course->course_exists_for_le($row->lehreinheit_id))
$disabled='disabled';
else
$disabled='';
echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="checkbox" name="lehreinheit_'.$row->lehreinheit_id.'" value="'.$row->lehreinheit_id.'" '.$disabled.'>'.$row->lehrform_kurzbz.' '.$gruppen.' '.$lektoren;
echo '<br>';
}
echo '</div>';
echo '<br>Kursbezeichnung: <input type="text" name="bezeichnung" maxlength="254" size="40" value="'.$lv->bezeichnung.'">';
echo '<br>Gruppen übernehmen: <input type="checkbox" name="gruppen" checked>';
echo '<br><br><input type="submit" name="neu" value="Kurs anlegen">
</form>';
}
echo '</td>';
echo '<td valign="top">';
echo '<b>Vorhandene Moodle Kurse für diese LV</b>';
if(!$mdl_course->getAll($lvid, $stsem))
echo $mdl_course->errormsg;
echo '<table>';
foreach ($mdl_course->result as $course)
{
echo '<tr>';
echo '<td><a href="'.MOODLE_PATH.'course/view.php?id='.$course->mdl_course_id.'" class="Item" target="_blank">'.$course->mdl_fullname.'</a></td>';
echo "<td nowrap><form action='".$_SERVER['PHP_SELF']."?lvid=$lvid&stsem=$stsem' method='POST' style='margin:0px'><input type='hidden' name='moodle_id' value='$course->moodle_id'><input type='checkbox' name='gruppen' ".($course->gruppen?'checked':'').">Gruppen übernehmen <input type='submit' value='ok' name='changegruppe'></td>";
}
echo '</table>';
echo '</td></tr></table>';
echo '<br><br><br>';
echo '<b>Testkurse</b><br><br>';
$mdlcourse = new moodle_course($conn, $conn_moodle);
if($mdlcourse->loadTestkurs($lvid, $stsem))
{
echo '<a href="'.MOODLE_PATH.'course/view.php?id='.$mdlcourse->mdl_course_id.'" class="Item" target="_blank">'.$mdlcourse->mdl_fullname.'</a>';
}
else
{
echo "<a href='".$_SERVER['PHP_SELF']."?lvid=$lvid&stsem=$stsem&action=createtestkurs' class='Item'>klicken Sie hier um einen Testkurs zu erstellen</a>";
}
echo '</td>
</tr>
</table>
</body>
</html>';
?>
File diff suppressed because it is too large Load Diff
+459 -446
View File
@@ -1,446 +1,459 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Oeffnen der Datenbankverbindung');
$user = get_uid();
if(check_lektor($user,$conn))
$is_lector=true;
else
$is_lector=false;
if((!isset($_GET['course_id']) || !isset($_GET['term_id'])))
die('Fehlerhafte Parameteruebergabe');
else
{
$course_id = $_GET['course_id'];
$term_id = $_GET['term_id'];
}
if(isset($_GET['datum']))
$datum = $_GET['datum'];
if(isset($_GET['datum_bis']))
$datum_bis = $_GET['datum_bis'];
$stg_obj = new studiengang($conn, $course_id);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<?php
if(isset($_POST['news_submit']) && (!isset($_POST['message_sent']) || $_POST['message_sent'] == "no"))
{
$author = chop($_POST['txtAuthor']);
$title = chop($_POST['txtTitle']);
$news_message = chop(str_replace("\r\n", "<br>", $_POST['txtNewsMessage']));
if($author != "" && $title != "" && $news_message != "" && isset($course_id) && isset($term_id))
{
if(isset($news_id) && $news_id != "")
{
$news_obj = new news($conn);
$news_obj->verfasser = $author;
$news_obj->uid = $user;
$news_obj->studiengang_kz = $course_id;
$news_obj->semester = $term_id;
$news_obj->betreff = $title;
$news_obj->datum = $datum;
$news_obj->datum_bis = $datum_bis;
$news_obj->text = $news_message;
$news_obj->updatevon = $user;
$news_obj->updateamum = date('Y-m-d H:i:s');
$news_obj->news_id = $news_id;
$news_obj->new=false;
if($news_obj->save())
{
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=yes&changed=yes\";";
echo '</script>';
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=no\";";
echo "</script>";
}
}
else
{
$news_obj = new news($conn);
$news_obj->verfasser = $author;
$news_obj->uid = $user;
$news_obj->studiengang_kz = $course_id;
$news_obj->semester = $term_id;
$news_obj->betreff = $title;
$news_obj->datum = $datum;
$news_obj->datum_bis = $datum_bis;
$news_obj->text = $news_message;
$news_obj->updatevon = $user;
$news_obj->updateamum = date('Y-m-d H:i:s');
$news_obj->new=true;
if($news_obj->save())
{
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=yes\";";
echo '</script>';
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=no\";";
echo "</script>";
}
}
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=no\";";
echo "</script>";
}
exit;
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function focusFirstElement()
{
if(document.NewsEntry.txtAuthor != null)
{
document.NewsEntry.txtAuthor.focus();
}
}
</script>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
var help;
var zeilenumbruch = String.fromCharCode(10);
var msg;
var i;
help =targ + ".location='" + selObj.options[selObj.selectedIndex].value;
msg = document.NewsEntry.txtNewsMessage.value.replace(zeilenumbruch,'<br>');
for(i=0;i<20;i++)
msg=msg.replace(zeilenumbruch,'<br>')
help = help + "&txt=" + msg;
help = help + "&aut=" + document.NewsEntry.txtAuthor.value;
<?php
if(isset($news_id))
echo 'help = help + "&news_id='.$news_id.'";
';
?>
help = help + "&tit=" + document.NewsEntry.txtTitle.value + "'";
eval(help);
if(restore)
{
selObj.selectedIndex = 0;
}
}
//-->
</script>
<?php
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo "</script>";
?>
</head>
<body onLoad="focusFirstElement();">
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><form method="post" name="NewsEntry">
<table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">&nbsp;Lektorenbereich - Pinboardverwaltung
<?php
if(isset($course_id) && isset($term_id))
{
if($course_id == 0 && $term_id == 0)
{
echo 'Alle Studieng&auml;nge, Alle Semester';
}
else if($course_id == 0)
{
echo 'Alle Studieng&auml;nge, '.$term_id.'. Semester';
}
else if($term_id == 0)
{
echo $stg_obj->kuerzel.', Alle Semester';
}
else
{
echo $stg_obj->kuerzel.', '.$term_id.'. Semester';
}
}
?></font></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<?php
if(!$is_lector)
{
die('<td>Sie haben leider keine Berechtigung f&uuml;r diese Seite.</td>');
}
if(isset($message_sent) && $message_sent == "yes")
{
if(isset($changed) && $changed == "yes")
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><font class=\"headline\">Die Nachricht wurde erfolgreich ge&auml;ndert!</font></td>";
echo "</tr>";
}
else
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><font class=\"headline\">Die Neuigkeit wurde erfolgreich eingetragen!</font></td>";
echo "</tr>";
}
exit;
}
else if(isset($message_sent) && $message_sent == "no")
{
echo "<td>&nbsp;</td>";
echo "</tr>";
echo " <td><font class=\"headline\">Die Neuigkeit wurde nicht eingetragen!</font><br>";
echo "<font class=\"subline\">Es wurden nicht alle erforderlichen Felder ausgef&uuml;llt.</font></td>";
echo "</tr>";
exit;
}
echo '<td class="ContentHeader2">&nbsp;';
$verfasser = '';
$betreff = '';
$text = '';
$datum = '';
$datum_bis = '';
if(isset($news_id) && $news_id != "")
{
$news_obj = new news($conn, $news_id);
$verfasser = $news_obj->verfasser;
$betreff = $news_obj->betreff;
$text = $news_obj->text;
$datum = $news_obj->datum;
$datum_bis = $news_obj->datum_bis;
echo 'Eintrag &auml;ndern';
}
else
{
echo 'Neuen Eintrag erstellen';
}
echo '</td>';
?>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>
<table class="tabcontent">
<tr>
<td width="65">Verfasser:</td>
<?php
if (isset($aut) AND $aut!="")
$value='value="'.$aut.'"';
else
{
if(isset($news_id) && $news_id != "")
$value='value="'.$verfasser.'"';
else
$value='';
}
?>
<td width="218"><input type="text" class="TextBox" name="txtAuthor" size="30" <?php echo $value; ?>>
</td>
<td width="81">Studiengang: </td>
<td width="130">
<select name="course" onChange="MM_jumpMenu('self',this,0)" class="TextBox">
<?php
$studiengaenge = new studiengang($conn);
$studiengaenge->getAll('typ, kurzbz');
foreach($studiengaenge->result AS $row_course)
{
if(isset($course_id))
{
if($course_id == $row_course->studiengang_kz)
{
if($row_course->studiengang_kz != 0)
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'" selected>'.$row_course->kuerzel.' ('.$row_course->kurzbzlang.')</option>';
}
}
else
{
if($row_course->studiengang_kz != 0)
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'">'.$row_course->kuerzel.' ('.$row_course->kurzbzlang.')</option>';
}
}
}
else
{
if($row_course->studiengang_kz == 0)
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'">Alle Studieng&auml;nge</option>';
}
else
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'">'.$row_course->kuerzel.' ('.$row_course->kurzbzlang.')</option>';
}
}
}
?>
</select>
</td>
<td width="81">Sichtbar ab:</td>
<td>
<input type="text" class="TextBox" name="datum" size="10" value="<?php if(isset($news_id) && $news_id != "") echo date('d.m.Y',strtotime(strftime($datum))); else echo date('d.m.Y'); ?>">
</td>
</tr>
<tr>
<td>Titel:</td>
<?php
if (isset($tit) AND $tit!="")
$value='value="'.$tit.'"';
else
{
if(isset($news_id) && $news_id != "")
$value='value="'.$betreff.'"';
else
$value='';
}
?>
<td><input type="text" class="TextBox" name="txtTitle" size="30" <?php echo $value; ?>></td>
<td>Semester: </td>
<td width="130">
<select name="term" onChange="MM_jumpMenu('self',this,0)" class="TextBox">
<?php
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=1" '.($term_id==1?'selected':'').'>1. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=2" '.($term_id==2?'selected':'').'>2. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=3" '.($term_id==3?'selected':'').'>3. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=4" '.($term_id==4?'selected':'').'>4. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=5" '.($term_id==5?'selected':'').'>5. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=6" '.($term_id==6?'selected':'').'>6. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=7" '.($term_id==7?'selected':'').'>7. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=8" '.($term_id==8?'selected':'').'>8. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=0" '.($term_id==0?'selected':'').'>Alle Semester</option>';
?>
</select>
</td>
<td width="81">Sichtbar bis:</td>
<td>
<input type="text" class="TextBox" name="datum_bis" size="10" value="<?php if(isset($news_id) && $news_id != "" && $datum_bis!='') echo date('d.m.Y',strtotime(strftime($datum_bis))); else echo ''; ?>">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>Bitte geben Sie hier Ihre Nachricht ein:<br>
<?php
if (isset($txt) AND $txt!="")
$value=str_replace("<br>","\r\n",$txt);
else
{
if(isset($news_id) && $news_id != "")
$value=str_replace("<br>", "\r\n", $text);
else
$value='';
}
?>
<textarea class="TextBox" style="width: 99%; heigth: 166px" name="txtNewsMessage" rows="10" cols="70" maxlength="2000"><?php echo $value; ?></textarea></td>
</tr>
<tr>
<td nowrap>
<input type="hidden" name="news_submit">
<input type="submit" name="btnSend" value="Abschicken">&nbsp;
<?php
if(isset($news_id) && $news_id != "")
{
echo "<input type=\"reset\" name=\"btnCancel\" value=\"Abbrechen\" onClick=\"document.location.href='pinboard_entry.php?course_id=$course_id&term_id=$term_id';\"></td>";
}
else
{
echo '<input type="reset" name="btnCancel" value="Zur&uuml;cksetzen" onClick="document.NewsEntry.txtAuthor.focus();"></td>';
}
?>
</tr>
</table>
</form></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
</html>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Oeffnen der Datenbankverbindung');
$user = get_uid();
// POST/GET Parameter uebernehmen
if (isset($_GET))
{
while (list ($tmp_key, $tmp_val) = each($_GET))
{
$$tmp_key=$tmp_val;
}
}
if (isset($_POST))
{
while (list ($tmp_key, $tmp_val) = each($_POST))
{
$$tmp_key=$tmp_val;
}
}
if(check_lektor($user,$conn))
$is_lector=true;
else
$is_lector=false;
if((!isset($_GET['course_id']) || !isset($_GET['term_id'])))
die('Fehlerhafte Parameteruebergabe');
else
{
$course_id = $_GET['course_id'];
$term_id = $_GET['term_id'];
}
if(isset($_GET['datum']))
$datum = $_GET['datum'];
if(isset($_GET['datum_bis']))
$datum_bis = $_GET['datum_bis'];
$stg_obj = new studiengang($conn, $course_id);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<?php
if(isset($_POST['news_submit']) && (!isset($_POST['message_sent']) || $_POST['message_sent'] == "no"))
{
$author = chop($_POST['txtAuthor']);
$title = chop($_POST['txtTitle']);
$news_message = chop($_POST['txtNewsMessage']);
if($author != "" && $title != "" && $news_message != "" && isset($course_id) && isset($term_id))
{
$news_message = mb_ereg_replace("\r\n", "<br>", $news_message);
if(isset($news_id) && $news_id != "")
{
$news_obj = new news();
$news_obj->verfasser = $author;
$news_obj->uid = $user;
$news_obj->studiengang_kz = $course_id;
$news_obj->semester = $term_id;
$news_obj->betreff = $title;
$news_obj->datum = $datum;
$news_obj->datum_bis = $datum_bis;
$news_obj->text = $news_message;
$news_obj->updatevon = $user;
$news_obj->updateamum = date('Y-m-d H:i:s');
$news_obj->news_id = $news_id;
$news_obj->new=false;
if($news_obj->save())
{
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=yes&changed=yes\";";
echo '</script>';
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=no\";";
echo "</script>";
}
}
else
{
$news_obj = new news();
$news_obj->verfasser = $author;
$news_obj->uid = $user;
$news_obj->studiengang_kz = $course_id;
$news_obj->semester = $term_id;
$news_obj->betreff = $title;
$news_obj->datum = $datum;
$news_obj->datum_bis = $datum_bis;
$news_obj->text = $news_message;
$news_obj->updatevon = $user;
$news_obj->updateamum = date('Y-m-d H:i:s');
$news_obj->new=true;
if($news_obj->save())
{
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=yes\";";
echo '</script>';
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=no\";";
echo "</script>";
}
}
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'pinboard_entry.php?course_id=$course_id&term_id=$term_id' + \"&message_sent=no\";";
echo "</script>";
}
exit;
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function focusFirstElement()
{
if(document.NewsEntry.txtAuthor != null)
{
document.NewsEntry.txtAuthor.focus();
}
}
</script>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
var help;
var zeilenumbruch = String.fromCharCode(10);
var msg;
var i;
help =targ + ".location='" + selObj.options[selObj.selectedIndex].value;
msg = document.NewsEntry.txtNewsMessage.value.replace(zeilenumbruch,'<br>');
for(i=0;i<20;i++)
msg=msg.replace(zeilenumbruch,'<br>')
help = help + "&txt=" + msg;
help = help + "&aut=" + document.NewsEntry.txtAuthor.value;
<?php
if(isset($news_id))
echo 'help = help + "&news_id='.$news_id.'";
';
?>
help = help + "&tit=" + document.NewsEntry.txtTitle.value + "'";
eval(help);
if(restore)
{
selObj.selectedIndex = 0;
}
}
//-->
</script>
<?php
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo "</script>";
?>
</head>
<body onLoad="focusFirstElement();">
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><form method="post" name="NewsEntry">
<table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">&nbsp;Lektorenbereich - Pinboardverwaltung
<?php
if(isset($course_id) && isset($term_id))
{
if($course_id == 0 && $term_id == 0)
{
echo 'Alle Studieng&auml;nge, Alle Semester';
}
else if($course_id == 0)
{
echo 'Alle Studieng&auml;nge, '.$term_id.'. Semester';
}
else if($term_id == 0)
{
echo $stg_obj->kuerzel.', Alle Semester';
}
else
{
echo $stg_obj->kuerzel.', '.$term_id.'. Semester';
}
}
?></font></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<?php
if(!$is_lector)
{
die('<td>Sie haben leider keine Berechtigung f&uuml;r diese Seite.</td>');
}
if(isset($message_sent) && $message_sent == "yes")
{
if(isset($changed) && $changed == "yes")
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><font class=\"headline\">Die Nachricht wurde erfolgreich ge&auml;ndert!</font></td>";
echo "</tr>";
}
else
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><font class=\"headline\">Die Neuigkeit wurde erfolgreich eingetragen!</font></td>";
echo "</tr>";
}
#exit;
}
else if(isset($message_sent) && $message_sent == "no")
{
echo "<td>&nbsp;</td>";
echo "</tr>";
echo " <td><font class=\"headline\">Die Neuigkeit wurde nicht eingetragen!</font><br>";
echo "<font class=\"subline\">Es wurden nicht alle erforderlichen Felder ausgef&uuml;llt.</font></td>";
echo "</tr>";
exit;
}
echo '<td class="ContentHeader2">&nbsp;';
$verfasser = '';
$betreff = '';
$text = '';
$datum = '';
$datum_bis = '';
if(isset($news_id) && $news_id != "")
{
$news_obj = new news($news_id);
$verfasser = $news_obj->verfasser;
$betreff = $news_obj->betreff;
$text = $news_obj->text;
$datum = $news_obj->datum;
$datum_bis = $news_obj->datum_bis;
echo 'Eintrag &auml;ndern';
}
else
{
echo 'Neuen Eintrag erstellen';
}
echo '</td>';
?>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>
<table class="tabcontent">
<tr>
<td width="65">Verfasser:</td>
<?php
if (isset($aut) AND $aut!="")
$value='value="'.$aut.'"';
else
{
if(isset($news_id) && $news_id != "")
$value='value="'.$verfasser.'"';
else
$value='';
}
?>
<td width="218"><input type="text" class="TextBox" name="txtAuthor" size="30" <?php echo $value; ?>>
</td>
<td width="81">Studiengang: </td>
<td width="130">
<select name="course" onChange="MM_jumpMenu('self',this,0)" class="TextBox">
<?php
$studiengaenge = new studiengang($conn);
$studiengaenge->getAll('typ, kurzbz');
foreach($studiengaenge->result AS $row_course)
{
if(isset($course_id))
{
if($course_id == $row_course->studiengang_kz)
{
if($row_course->studiengang_kz != 0)
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'" selected>'.$row_course->kuerzel.' ('.$row_course->kurzbzlang.')</option>';
}
}
else
{
if($row_course->studiengang_kz != 0)
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'">'.$row_course->kuerzel.' ('.$row_course->kurzbzlang.')</option>';
}
}
}
else
{
if($row_course->studiengang_kz == 0)
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'">Alle Studieng&auml;nge</option>';
}
else
{
echo '<option value="pinboard_entry.php?course_id='.$row_course->studiengang_kz.'&term_id='.$term_id.'">'.$row_course->kuerzel.' ('.$row_course->kurzbzlang.')</option>';
}
}
}
?>
</select>
</td>
<td width="81">Sichtbar ab:</td>
<td>
<input type="text" class="TextBox" name="datum" size="10" value="<?php if(isset($news_id) && $news_id != "") echo date('d.m.Y',strtotime(strftime($datum))); else echo date('d.m.Y'); ?>">
</td>
</tr>
<tr>
<td>Titel:</td>
<?php
if (isset($tit) AND $tit!="")
$value='value="'.$tit.'"';
else
{
if(isset($news_id) && $news_id != "")
$value='value="'.$betreff.'"';
else
$value='';
}
?>
<td><input type="text" class="TextBox" name="txtTitle" size="30" <?php echo $value; ?>></td>
<td>Semester: </td>
<td width="130">
<select name="term" onChange="MM_jumpMenu('self',this,0)" class="TextBox">
<?php
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=1" '.($term_id==1?'selected':'').'>1. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=2" '.($term_id==2?'selected':'').'>2. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=3" '.($term_id==3?'selected':'').'>3. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=4" '.($term_id==4?'selected':'').'>4. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=5" '.($term_id==5?'selected':'').'>5. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=6" '.($term_id==6?'selected':'').'>6. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=7" '.($term_id==7?'selected':'').'>7. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=8" '.($term_id==8?'selected':'').'>8. Semester</option>';
echo '<option value="pinboard_entry.php?course_id='.$course_id.'&term_id=0" '.($term_id==0?'selected':'').'>Alle Semester</option>';
?>
</select>
</td>
<td width="81">Sichtbar bis:</td>
<td>
<input type="text" class="TextBox" name="datum_bis" size="10" value="<?php if(isset($news_id) && $news_id != "" && $datum_bis!='') echo date('d.m.Y',strtotime(strftime($datum_bis))); else echo ''; ?>">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>Bitte geben Sie hier Ihre Nachricht ein:<br>
<?php
if (isset($txt) AND $txt!="")
$value=mb_ereg_replace("<br>","\r\n",$txt);
else
{
if(isset($news_id) && $news_id != "")
$value=mb_ereg_replace("<br>", "\r\n", $text);
else
$value='';
}
?>
<textarea class="TextBox" style="width: 99%; heigth: 166px" name="txtNewsMessage" rows="10" cols="70" maxlength="2000"><?php echo $value; ?></textarea></td>
</tr>
<tr>
<td nowrap>
<input type="hidden" name="news_submit">
<input type="submit" name="btnSend" value="Abschicken">&nbsp;
<?php
if(isset($news_id) && $news_id != "")
{
echo "<input type=\"reset\" name=\"btnCancel\" value=\"Abbrechen\" onClick=\"document.location.href='pinboard_entry.php?course_id=$course_id&term_id=$term_id';\"></td>";
}
else
{
echo '<input type="reset" name="btnCancel" value="Zur&uuml;cksetzen" onClick="document.NewsEntry.txtAuthor.focus();"></td>';
}
?>
</tr>
</table>
</form></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
</html>
+164 -147
View File
@@ -1,148 +1,165 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim oeffnen der Datenbankverbindung');
$user = get_uid();
if(check_lektor($user,$conn))
$is_lector=true;
else
$is_lector=false;
if($is_lector)
{
if(isset($remove_id) && $remove_id != "")
{
$news_obj = new news($conn);
if($news_obj->delete($remove_id))
{
writeCISlog('DELETE PINBOARD','');
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo '</script>';
exit;
}
else
echo 'Fehler beim loeschen:'.$news_obj->errormsg;
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function deleteEntry(id, course_id, term_id)
{
if(confirm("Soll dieser Eintrag wirklich gelöscht werden?") == true)
{
document.location.href = 'pinboard_show.php?course_id=' + course_id + '&term_id=' + term_id + '&remove_id=' + id;
}
}
function editEntry(id, course_id, term_id)
{
parent.news_entry.location.href = 'pinboard_entry.php?course_id=' + course_id + '&term_id=' + term_id + '&news_id=' + id;
}
</script>
</head>
<body id="inhalt">
<table class="tabcontent">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><table class="tabcontent">
<tr>
<?php
if(!$is_lector || !isset($course_id) || !isset($term_id))
exit;
?>
<td>
<table class="tabcontent">
<?php
$news_obj = new news($conn);
$news_obj->getnews(MAXNEWSALTER,$course_id, $term_id, true, null, MAXNEWS);
$i=0;
foreach($news_obj->result as $row)
{
//Globale news hier nicht anzeigen
if(!($row->studiengang_kz==0 && $row->semester==0))
{
$i++;
echo "<tr>";
if($i % 2 != 0)
echo '<td class="MarkLine">';
else
echo '<td>';
if($row->datum!='')
$datum = date('d.m.Y',strtotime(strftime($row->datum)));
else
$datum='';
echo ' <table class="tabcontent">';
echo ' <tr>';
echo ' <td class="tdwrap">';
echo ' <small>'.$datum.'&nbsp;-&nbsp;'.$row->verfasser.'</small>';
echo ' </td>';
echo ' <td align="right" class="tdwrap">';
echo ' <a onClick="editEntry('.$row->news_id.', '.$row->studiengang_kz.', '.($row->semester==''?0:$row->semester).');">Editieren</a>, <a onClick="deleteEntry('.$row->news_id.', '.$row->studiengang_kz.',' .($row->semester==''?0:$row->semester).');">L&ouml;schen</a>';
echo ' </td>';
echo ' </tr>';
echo ' </table>';
echo ' <strong>'.$row->betreff.'</strong><br>'.$row->text.'</td>';
echo "</tr>";
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
}
}
if($i==0)
echo 'Zur Zeit gibt es keine aktuellen News!';
?>
</table>
</td>
</tr>
</table></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim oeffnen der Datenbankverbindung');
$user = get_uid();
if (isset($_GET))
{
while (list ($tmp_key, $tmp_val) = each ($_GET))
{
$$tmp_key=$tmp_val;
}
}
if (isset($_POST))
{
while (list ($tmp_key, $tmp_val) = each ($_POST))
{
$$tmp_key=$tmp_val;
}
}
if(check_lektor($user,$conn))
$is_lector=true;
else
$is_lector=false;
if($is_lector)
{
if(isset($remove_id) && $remove_id != "")
{
$news_obj = new news();
if($news_obj->delete($remove_id))
{
writeCISlog('DELETE PINBOARD','');
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'pinboard_show.php?course_id=$course_id&term_id=$term_id'";
echo '</script>';
exit;
}
else
echo 'Fehler beim loeschen:'.$news_obj->errormsg;
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function deleteEntry(id, course_id, term_id)
{
if(confirm("Soll dieser Eintrag wirklich gelöscht werden?") == true)
{
document.location.href = 'pinboard_show.php?course_id=' + course_id + '&term_id=' + term_id + '&remove_id=' + id;
}
}
function editEntry(id, course_id, term_id)
{
parent.news_entry.location.href = 'pinboard_entry.php?course_id=' + course_id + '&term_id=' + term_id + '&news_id=' + id;
}
</script>
</head>
<body id="inhalt">
<table class="tabcontent">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><table class="tabcontent">
<tr>
<?php
if(!$is_lector || !isset($course_id) || !isset($term_id))
exit;
?>
<td>
<table class="tabcontent">
<?php
$news_obj = new news();
$news_obj->getnews(MAXNEWSALTER,$course_id, $term_id, true, null, MAXNEWS);
$i=0;
foreach($news_obj->result as $row)
{
//Globale news hier nicht anzeigen
if(!($row->studiengang_kz==0 && $row->semester==0))
{
$i++;
echo "<tr>";
if($i % 2 != 0)
echo '<td class="MarkLine">';
else
echo '<td>';
if($row->datum!='')
$datum = date('d.m.Y',strtotime(strftime($row->datum)));
else
$datum='';
echo ' <table class="tabcontent">';
echo ' <tr>';
echo ' <td class="tdwrap">';
echo ' <small>'.$datum.'&nbsp;-&nbsp;'.$row->verfasser.'</small>';
echo ' </td>';
echo ' <td align="right" class="tdwrap">';
echo ' <a onClick="editEntry('.$row->news_id.', '.$row->studiengang_kz.', '.($row->semester==''?0:$row->semester).');">Editieren</a>, <a onClick="deleteEntry('.$row->news_id.', '.$row->studiengang_kz.',' .($row->semester==''?0:$row->semester).');">L&ouml;schen</a>';
echo ' </td>';
echo ' </tr>';
echo ' </table>';
echo ' <strong>'.$row->betreff.'</strong><br>'.$row->text.'</td>';
echo "</tr>";
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
}
}
if($i==0)
echo 'Zur Zeit gibt es keine aktuellen News!';
?>
</table>
</td>
</tr>
</table></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
</html>
+77 -74
View File
@@ -1,74 +1,77 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
//Connection Herstellen
if(!$sql_conn = pg_pconnect(CONN_STRING))
die('Fehler beim oeffnen der Datenbankverbindung');
$user = get_uid();
if(check_lektor($user,$sql_conn))
$is_lector=true;
$sql_query = "SELECT DISTINCT kurzbzlang FROM public.tbl_studiengang WHERE studiengang_kz='$course_id'";
$result = pg_query($sql_conn, $sql_query);
$row_stg_short = pg_fetch_object($result, 0);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
</head>
<frameset rows="375,*" cols="*" framespacing="0"" frameborder="NO" border="0">
<frame src="pinboard_entry.php?course_id=<?php echo $course_id; ?>&term_id=<?php echo $term_id; ?>" name="news_entry">
<frame src="pinboard_show.php" name="news_window">
</frameset>
<noframes><body id="inhalt">
<table class="tabcontent">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">&nbsp;Lektorenbereich - Pinboardverwaltung <?php echo $row_stg_short->kurzbzlang.', '.$term_id.'. Semester'; ?></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>
<?php
if(!$is_lector)
die('Sie haben leider keine Berechtigung f&uuml;r diese Seite.');
?>
&nbsp;</td>
</tr>
</table></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body></noframes>
</html>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
//Connection Herstellen
if(!$sql_conn = pg_pconnect(CONN_STRING))
die('Fehler beim oeffnen der Datenbankverbindung');
// Init Variable
$user = get_uid();
$course_id=(isset($_GET['course_id'])?$_GET['course_id']:(isset($_POST['course_id'])?$_POST['course_id']:0));
$term_id=(isset($_GET['term_id'])?$_GET['term_id']:(isset($_POST['term_id'])?$_POST['term_id']:0));
$news_id=(isset($_GET['news_id'])?$_GET['news_id']:(isset($_POST['news_id'])?$_POST['news_id']:0));
if(check_lektor($user,$sql_conn))
$is_lector=true;
$sql_query = "SELECT DISTINCT kurzbzlang FROM public.tbl_studiengang WHERE studiengang_kz='$course_id'";
$result = pg_query($sql_conn, $sql_query);
$row_stg_short = pg_fetch_object($result, 0);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
</head>
<frameset rows="375,*" cols="*" framespacing="0"" frameborder="NO" border="0">
<frame src="pinboard_entry.php?course_id=<?php echo $course_id; ?>&term_id=<?php echo $term_id; ?>" name="news_entry">
<frame src="pinboard_show.php" name="news_window">
</frameset>
<noframes><body id="inhalt">
<table class="tabcontent">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">&nbsp;Lektorenbereich - Pinboardverwaltung <?php echo $row_stg_short->kurzbzlang.', '.$term_id.'. Semester'; ?></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>
<?php
if(!$is_lector)
die('Sie haben leider keine Berechtigung f&uuml;r diese Seite.');
?>
&nbsp;</td>
</tr>
</table></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body></noframes>
</html>
+158 -158
View File
@@ -1,159 +1,159 @@
<?php
// ***************************************************
// *@author Andras Oesterreicher
// *@brief Formular zum Uploaden und Loeschen von
// * Semesterplaenen.
// *@date 31.Aug. 2005
// *@edit 19.Dez. 2006 Anpassung an neue DB
// ***************************************************/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
//Connection Herstellen
if(!$conn = pg_pconnect(CONN_STRING))
{
die('Fehler beim oeffnen der Datenbankverbindung');
}
$user = get_uid();
if(check_lektor($user,$conn))
$is_lector=true;
if(!isset($_GET['lvid']) || !is_numeric($_GET['lvid']))
{
die("Fehler bei der Parameteruebergabe");
}
else
$lvid = $_GET['lvid'];
$lv_obj = new lehrveranstaltung($conn);
if(!$lv_obj->load($lvid))
die('Fehler beim Laden der Lehrveranstaltung');
$stg_obj = new studiengang($conn);
if(!$stg_obj->load($lv_obj->studiengang_kz))
die('Fehler beim Laden des Studienganges');
$openpath = '../../../documents/'.strtolower($stg_obj->kuerzel).'/'.$lv_obj->semester.'/'.strtolower($lv_obj->lehreverzeichnis).'/semesterplan/';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
/****************************************************
* @brief Zeigt eine Sicherheitsabfrage ob die Datei
* wirklich gelöscht werden soll
****************************************************/
function ConfirmFile(handle)
{
return confirm('Wollen Sie die ausgewählten Dateien wirklich löschen? Dieser Vorgang ist unwiderruflich!');
}
</script>
</head>
<title>Upload Semesterplan</title>
<body id="inhalt">
<table class="tabcontent" >
<tr>
<td class="tdwidth10">&nbsp;</td>
<td class="ContentHeader"><font class="ContentHeader">Upload Semesterplan</font></td>
</tr>
<tr>
<td class="tdwidth10">&nbsp;</td>
<td class="tdwidth10">&nbsp;</td>
</tr>
<?php
if(!$is_lector)
die('<tr><td class="tdwidth10">&nbsp;</td><td>Sie haben keine Berechtigung für diesen Bereich</td></tr>');
echo "<tr><td class='tdwidth10'>&nbsp;</td><td>";
if(isset($_POST['inhalt']))
{
if($inhalt!="____Ordnerinhalt____")
{
if(!strstr($inhalt,'..'))
{
if(is_file($openpath . $inhalt))
{
writeCISlog('DELETE', "rm -r '$openpath$inhalt'");
exec("rm -r '$openpath$inhalt'");
echo "<center>Datei erfolgreich gelöscht</center>";
}
else
{
echo "<center>Die Datei $openpath$inhalt konnte nicht gefunden werden.</center>";
}
}
else
{
writeCISlog('REPORT', 'versuchter Loeschvorgang von '.$openpath.$inhalt);
echo "<center>Fehlerhafte Parameter</center>";
}
}
else
{
echo "<center>Bitte zuerst eine Datei auswählen</center>";
}
}
if(isset($userfile))
{
if(is_uploaded_file($userfile))
{
$fn = $_FILES['userfile']['name']; //Original Dateiname
if(!stristr($fn, '.php') && !stristr($fn, '.php3') &&
!stristr($fn,'.php4') && !stristr($fn, '.php5') &&
!stristr($fn, '.cgi') && !stristr($fn, '.pl'))
{
if(move_uploaded_file($userfile,$openpath . $fn))
echo "<center>Das File wurde erfolgreich hochgeladen</center>";
else
echo "<center>Fehler beim Upload! Bitte Versuchen Sie es erneut</center>";
}
else
{
echo "<center>Dieser Dateityp ist nicht erlaubt <center>";
}
}
else
echo "<center>Fehler beim Upload! Bitte Versuchen Sie es erneut</center>";
}
echo "</tr></td>";
echo "<tr><td class='tdwidth10'>&nbsp;</td><td><form accept-charset="UTF-8" name=\"form1\" method=\"POST\" action=\"semupload.php?lvid=".$lvid."\" onSubmit=\"return ConfirmFile(this);\">";
echo "<select name=\"inhalt\" size=5>";
echo "<option selected>____Ordnerinhalt____</option>";
//Inhalt des Semesterplan Ordners Auslesen
if(is_dir($openpath))
{
$dest_dir = dir($openpath);
while($entry = $dest_dir->read())
{
if(!is_dir($entry))
echo "<option>$entry</option>";
}
}
echo "</select>";
echo "<input type=\"submit\" value=\"Datei Löschen\">";
echo "</form></td><td>";
//FileAuswahlfeld
echo '<tr><td class="tdwidth10">&nbsp;</td><td><br><form accept-charset="UTF-8" enctype="multipart/form-data" method="POST" action="semupload.php?lvid='.$lvid.'">';
echo ' <input type="file" name="userfile" size="30">';
echo ' <input type="submit" name="upload" value="Upload">';
echo '</form></td><td>';
?>
</body>
<?php
// ***************************************************
// *@author Andras Oesterreicher
// *@brief Formular zum Uploaden und Loeschen von
// * Semesterplaenen.
// *@date 31.Aug. 2005
// *@edit 19.Dez. 2006 Anpassung an neue DB
// ***************************************************/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
//Connection Herstellen
if(!$conn = pg_pconnect(CONN_STRING))
{
die('Fehler beim oeffnen der Datenbankverbindung');
}
$user = get_uid();
if(check_lektor($user,$conn))
$is_lector=true;
if(!isset($_GET['lvid']) || !is_numeric($_GET['lvid']))
{
die("Fehler bei der Parameteruebergabe");
}
else
$lvid = $_GET['lvid'];
$lv_obj = new lehrveranstaltung($conn);
if(!$lv_obj->load($lvid))
die('Fehler beim Laden der Lehrveranstaltung');
$stg_obj = new studiengang($conn);
if(!$stg_obj->load($lv_obj->studiengang_kz))
die('Fehler beim Laden des Studienganges');
$openpath = '../../../documents/'.strtolower($stg_obj->kuerzel).'/'.$lv_obj->semester.'/'.strtolower($lv_obj->lehreverzeichnis).'/semesterplan/';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
/****************************************************
* @brief Zeigt eine Sicherheitsabfrage ob die Datei
* wirklich gelöscht werden soll
****************************************************/
function ConfirmFile(handle)
{
return confirm('Wollen Sie die ausgewählten Dateien wirklich löschen? Dieser Vorgang ist unwiderruflich!');
}
</script>
</head>
<title>Upload Semesterplan</title>
<body id="inhalt">
<table class="tabcontent" >
<tr>
<td class="tdwidth10">&nbsp;</td>
<td class="ContentHeader"><font class="ContentHeader">Upload Semesterplan</font></td>
</tr>
<tr>
<td class="tdwidth10">&nbsp;</td>
<td class="tdwidth10">&nbsp;</td>
</tr>
<?php
if(!$is_lector)
die('<tr><td class="tdwidth10">&nbsp;</td><td>Sie haben keine Berechtigung für diesen Bereich</td></tr>');
echo "<tr><td class='tdwidth10'>&nbsp;</td><td>";
if(isset($_POST['inhalt']))
{
if($inhalt!="____Ordnerinhalt____")
{
if(!mb_strstr($inhalt,'..'))
{
if(is_file($openpath . $inhalt))
{
writeCISlog('DELETE', "rm -r '$openpath$inhalt'");
exec("rm -r '$openpath$inhalt'");
echo "<center>Datei erfolgreich gelöscht</center>";
}
else
{
echo "<center>Die Datei $openpath$inhalt konnte nicht gefunden werden.</center>";
}
}
else
{
writeCISlog('REPORT', 'versuchter Loeschvorgang von '.$openpath.$inhalt);
echo "<center>Fehlerhafte Parameter</center>";
}
}
else
{
echo "<center>Bitte zuerst eine Datei auswählen</center>";
}
}
if(isset($userfile))
{
if(is_uploaded_file($userfile))
{
$fn = $_FILES['userfile']['name']; //Original Dateiname
if(!stristr($fn, '.php') && !stristr($fn, '.php3') &&
!stristr($fn,'.php4') && !stristr($fn, '.php5') &&
!stristr($fn, '.cgi') && !stristr($fn, '.pl'))
{
if(move_uploaded_file($userfile,$openpath . $fn))
echo "<center>Das File wurde erfolgreich hochgeladen</center>";
else
echo "<center>Fehler beim Upload! Bitte Versuchen Sie es erneut</center>";
}
else
{
echo "<center>Dieser Dateityp ist nicht erlaubt <center>";
}
}
else
echo "<center>Fehler beim Upload! Bitte Versuchen Sie es erneut</center>";
}
echo "</tr></td>";
echo "<tr><td class='tdwidth10'>&nbsp;</td><td><form accept-charset="UTF-8" name=\"form1\" method=\"POST\" action=\"semupload.php?lvid=".$lvid."\" onSubmit=\"return ConfirmFile(this);\">";
echo "<select name=\"inhalt\" size=5>";
echo "<option selected>____Ordnerinhalt____</option>";
//Inhalt des Semesterplan Ordners Auslesen
if(is_dir($openpath))
{
$dest_dir = dir($openpath);
while($entry = $dest_dir->read())
{
if(!is_dir($entry))
echo "<option>$entry</option>";
}
}
echo "</select>";
echo "<input type=\"submit\" value=\"Datei Löschen\">";
echo "</form></td><td>";
//FileAuswahlfeld
echo '<tr><td class="tdwidth10">&nbsp;</td><td><br><form accept-charset="UTF-8" enctype="multipart/form-data" method="POST" action="semupload.php?lvid='.$lvid.'">';
echo ' <input type="file" name="userfile" size="30">';
echo ' <input type="submit" name="upload" value="Upload">';
echo '</form></td><td>';
?>
</body>
</html>
+8 -8
View File
@@ -513,7 +513,7 @@ A:hover {
$short_short = $row_lesson->kuerzel;
}
$uploaddir =mb_strtolower ($course_short,'UTF-8').'/'.$term_id.'/'.strtolower($short_short).'/download';
$uploaddir =mb_strtolower($course_short).'/'.$term_id.'/'.mb_strtolower($short_short).'/download';
echo "\n</select>\n";
echo '</form>';
@@ -547,7 +547,7 @@ A:hover {
}
}
$row = pg_fetch_object($result_path_elements, 0);
$uploaddir = mb_strtolower($row->kurzbz,'UTF-8').'/'.$term_id.'/'.mb_strtolower($row->lehreverzeichnis,'UTF-8').'/upload';
$uploaddir = mb_strtolower($row->kurzbz).'/'.$term_id.'/'.mb_strtolower($row->lehreverzeichnis).'/upload';
}
?>
<tr>
@@ -560,7 +560,7 @@ A:hover {
{
if(!isset($link_cut))
$link_cut = '';
$link_path = substr(substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut,'UTF-8')), 0, mb_strlen(substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut,'UTF-8')),'UTF-8') - mb_strlen('download','UTF-8')).'upload';
$link_path = mb_substr(mb_substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut)), 0, mb_strlen(mb_substr($upload_root.'/'.$uploaddir, mb_strlen($link_cut))) - mb_strlen('download')).'upload';
}
$numoffile = 5;
@@ -889,11 +889,11 @@ A:hover {
if(isset($short))
{
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$short.'&subdir='.substr($subdir, 0, mb_strrpos($subdir, '/',0,'UTF-8')).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$short.'&subdir='.mb_substr($subdir, 0, mb_strrpos($subdir, '/',0)).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
}
else
{
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$row_lesson->kuerzel.'&subdir='.substr($subdir, 0, mb_strrpos($subdir, '/',0,'UTF-8')).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$row_lesson->kuerzel.'&subdir='.substr($subdir, 0, mb_strrpos($subdir, '/',0)).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
}
}
}
@@ -1169,11 +1169,11 @@ A:hover {
if(isset($short))
{
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$short.'&subdir='.substr($subdir, 0, mb_strrpos($subdir, '/',0,'UTF-8')).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$short.'&subdir='.substr($subdir, 0, mb_strrpos($subdir, '/',0)).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
}
else
{
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$row_lesson->kuerzel.'&subdir='.substr($subdir, 0, mb_strrpos($subdir, '/',0,'UTF-8')).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
echo '<a href="upload.php?course_id='.$course_id.'&term_id='.$term_id.'&short='.$row_lesson->kuerzel.'&subdir='.mb_substr($subdir, 0, mb_strrpos($subdir, '/',0)).'"><img src="../../../skin/images/folderup.gif" border="0"></a>';
}
}
}
@@ -1270,7 +1270,7 @@ A:hover {
}
if(!isset($link_cut))
$link_cut='';
$link_path = substr($dest_dir->path, mb_strlen($link_cut,'UTF-8')).'/'.urlencode($entry);
$link_path = mb_substr($dest_dir->path, mb_strlen($link_cut)).'/'.urlencode($entry);
//+ durch %20 ersetzten damit Files mit leerzeichen geoeffnet werden koennen
$link_path = str_replace("+","%20",$link_path);
echo "</b></td><td align=\"left\" class='MarkLine'><b><font face=\"Arial,Helvetica,sans-serif\" color=\"#000000\" size=\"2\"><a href=\"$link_path\" target=\"_blank\">&nbsp;<img src=\"../../../skin/images/file.gif\" border=\"0\">&nbsp;$entry&nbsp;</a></font>";
+2 -2
View File
@@ -46,7 +46,7 @@
die('Fehler bei der Parameteruebergabe');
}
if(!isset($_GET['short']) || mb_strstr("..",$_GET['short'],false,'UTF-8'))
if(!isset($_GET['short']) || mb_strstr("..",$_GET['short'],false))
{
die("Fehler bei der Parameteruebergabe");
}
@@ -59,7 +59,7 @@
$stg_obj = new studiengang($conn);
$stg_obj->load($stg);
$kurzbz = mb_strtolower($stg_obj->kuerzel,'UTF-8');
$kurzbz = mb_strtolower($stg_obj->kuerzel);
//Pfade bauen
$pfad = '../../../documents/'.$kurzbz.'/'.$sem.'/'.$short.'/download/';
+2 -2
View File
@@ -133,9 +133,9 @@ for ($i=0; $i<$num_rows_stpl; $i++)
<td title="<?php echo $ort->bezeichnung;?>"><?php echo $ortkurzbz.' '.$ort->planbezeichnung.' '.$ort->standort_kurzbz; ?></td>
<td><?php echo $lehrfachkurzbz; ?></td>
<td><?php echo $bezeichnung; ?></td>
<td><A class="Item" title="<?php echo $anzahl_lvb.' Studierende';?>" href="mailto:<?php echo $stgkurzbz.$semester.mb_strtolower($verband,'UTF-8').$gruppe.'@'.DOMAIN; ?>">
<td><A class="Item" title="<?php echo $anzahl_lvb.' Studierende';?>" href="mailto:<?php echo $stgkurzbz.$semester.mb_strtolower($verband).$gruppe.'@'.DOMAIN; ?>">
<?php echo $stgkurzbz.'-'.$semester.$verband.$gruppe; ?></A></td>
<td><A class="Item" title="<?php echo $anzahl_grp.' Studierende';?>" href="mailto:<?php echo mb_strtolower($gruppe_kurzbz,'UTF-8').'@'.DOMAIN; ?>">
<td><A class="Item" title="<?php echo $anzahl_grp.' Studierende';?>" href="mailto:<?php echo mb_strtolower($gruppe_kurzbz).'@'.DOMAIN; ?>">
<?php echo $gruppe_kurzbz; ?></A></td>
</tr>
+2 -2
View File
@@ -239,7 +239,7 @@
if(!$row1->aktiv && MAILVERTEILER_SPERRE)
{
//Studentenvertreter duerfen den Verteiler fuer alle Studenten oeffnen
if($is_lector || ($is_stdv && mb_strtolower($row1->gruppe_kurzbz,'UTF-8')=='tw_std'))
if($is_lector || ($is_stdv && mb_strtolower($row1->gruppe_kurzbz)=='tw_std'))
{
/* open a popup containing the final dispatcher address */
if(MAILVERTEILER_SPERRE)
@@ -352,7 +352,7 @@
}
$param = "kz=".$row->studiengang_kz."&amp;sem=".$row1->semester;
$strhelp = mb_strtolower($row->kuerzel.trim($row1->semester,'UTF-8').trim($row1->verband).trim($row1->gruppe));
$strhelp = mb_strtolower($row->kuerzel.trim($row1->semester).trim($row1->verband).trim($row1->gruppe));
echo "<tr ".$class.">\n";
echo " <td width=\"420\">&nbsp;&nbsp;&nbsp;&#8226; Semester $row1->semester";
if(trim($row1->verband)!='')
+2 -2
View File
@@ -18,7 +18,7 @@ function mail_id_generator()
//$valid_charset .= '!@_-';
}
$charset_length = mb_strlen($valid_charset,'UTF-8');
$charset_length = mb_strlen($valid_charset);
if ($charset_length == 0) return false;
@@ -78,7 +78,7 @@ if(!check_lektor($_SERVER["REMOTE_USER"],$conn))
$message= date("F j G:i:s") . " mailgroup: [" . $_REQUEST['grp'] . "] (using " . $mail_id . ") requested by [" . $_SERVER['PHP_AUTH_USER'] . "]\n";
$filet = fopen(LOG_PATH.'.htmlistopen.log', "a");
fwrite($filet, $message, mb_strlen($message,'UTF-8'));
fwrite($filet, $message, mb_strlen($message));
fclose($filet);
// for the users
+462 -462
View File
@@ -1,462 +1,462 @@
<?php
/* Copyright (C) 2008 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> and
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/globals.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/fckeditor/fckeditor.php');
require_once('../../../include/person.class.php');
require_once('../../../include/safehtml/safehtml.class.php');
$uid=get_uid();
$ansicht=false; //Wenn ein anderer User sich das Profil ansieht (Bei Personensuche)
if(isset($_GET['uid']))
{
$uid=stripslashes($_GET['uid']);
$ansicht=true;
}
$stg = '';
if (!$conn = @pg_pconnect(CONN_STRING))
die("Es konnte keine Verbindung zum Server aufgebaut werden.");
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
$stg_arr = array();
foreach ($stg_obj->result as $row)
$stg_arr[$row->studiengang_kz]=$row->kurzbzlang;
if(!($erg=pg_query($conn, "SELECT * FROM campus.vw_benutzer WHERE uid='$uid'")))
die(pg_last_error($conn));
$num_rows=pg_num_rows($erg);
if ($num_rows==1)
{
$person_id=pg_result($erg,0,"person_id");
$vorname=pg_result($erg,0,"vorname");
$vornamen=pg_result($erg,0,"vornamen");
$nachname=pg_result($erg,0,"nachname");
$gebdatum=pg_result($erg,0,"gebdatum");
$gebort=pg_result($erg,0,"gebort");
$titelpre=pg_result($erg,0,"titelpre");
$titelpost=pg_result($erg,0,"titelpost");
$email=pg_result($erg,0,"uid").'@'.DOMAIN;
$email_alias=pg_result($erg,0,"alias");
$hp=pg_result($erg,0,"homepage");
$aktiv=pg_result($erg,0,"aktiv");
$foto=pg_result($erg,0,"foto");
}
if(!($erg_stud=pg_query($conn, "SELECT studiengang_kz, semester, verband, gruppe, matrikelnr, typ::varchar(1) || kurzbz AS stgkz, tbl_studiengang.bezeichnung AS stgbz FROM public.tbl_student JOIN public.tbl_studiengang USING(studiengang_kz) WHERE student_uid='$uid'")))
die(pg_last_error($conn));
$stud_num_rows=pg_num_rows($erg_stud);
if ($stud_num_rows==1)
{
$stg=pg_result($erg_stud,0,"studiengang_kz");
$stgbez=pg_result($erg_stud,0,"stgbz");
$stgkz=pg_result($erg_stud,0,"stgkz");
$semester=pg_result($erg_stud,0,"semester");
$verband=pg_result($erg_stud,0,"verband");
$gruppe=pg_result($erg_stud,0,"gruppe");
$matrikelnr=pg_result($erg_stud,0,"matrikelnr");
}
if(!($erg_lekt=pg_query($conn, "SELECT * FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid='$uid'")))
die(pg_last_error($conn));
$lekt_num_rows=pg_num_rows($erg_lekt);
if ($lekt_num_rows==1)
{
$row=pg_fetch_object($erg_lekt,0);
$kurzbz=$row->kurzbz;
$tel=$row->telefonklappe;
$vorwahl = '';
if($tel != "")
{
$vorwahl = '+43 1 333 40 77-';
if($row->standort_kurzbz!='')
{
$qry = "SELECT telefon FROM public.tbl_standort, public.tbl_adresse, public.tbl_firma WHERE tbl_standort.standort_kurzbz='$row->standort_kurzbz' AND tbl_standort.adresse_id=tbl_adresse.adresse_id AND tbl_adresse.firma_id=tbl_firma.firma_id";
if($result_tel = pg_query($conn, $qry))
if($row_tel = pg_fetch_object($result_tel))
$vorwahl = $row_tel->telefon;
}
}
}
// Mail-Groups
if(!($erg_mg=pg_query($conn, "SELECT gruppe_kurzbz, beschreibung FROM campus.vw_persongruppe WHERE mailgrp AND uid='$uid' ORDER BY gruppe_kurzbz")))
die(pg_last_error($conn));
$nr_mg=pg_num_rows($erg_mg);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Profil</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="Javascript">
<!--
function RefreshImage()
{
window.location.reload();
}
-->
</script>
</head>
<body>
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td>
<table class="tabcontent">
<tr>
<td class='ContentHeader'><font class='ContentHeader'>&nbsp;Userprofil</font></td>
</tr>
</table>
<!--
Results: <?php echo $num_rows; ?><br>
Username: <?php echo $uid; ?><br><br>
-->
<?php
if(isset($_POST['savekurzbeschreibung']) && !$ansicht)
{
$person = new person($conn);
$person->load($person_id);
//Remove Script Tags and other stuff
$parser = new SafeHTML();
$result = $parser->parse($_POST['kurzbeschreibung']);
$person->kurzbeschreibung = $result;
$person->updateamum = date('Y-m-d H:i:s');
$person->udpatevon = $uid;
if($person->save())
echo '<b>Kurzbeschreibung wurde erfolgreich gespeichert</b>';
else
echo '<span class="error">Fehler beim Speichern der Kurzbeschreibung</span>';
}
if($aktiv=='f')
{
$message = "Ihr Benutzerdatensatz wurde von einem unserer Mitarbeiter deaktiviert. Was bedeutet das nun für Sie?<br><br>";
$message .= "Vorerst werden Sie aus allen Mail-Verteilern gelöscht.<br>";
$message .= "Wenn der Datensatz in den nächsten Tagen nicht mehr aktiviert wird, führt das System automatisch folgende Aktionen durch:<br>";
$message .= "- Ihr Account wird gelöscht.<br>";
$message .= "- Ihre Mailbox mit sämtlichen Mails wird gelöscht.<br>";
$message .= "- Ihr Home-Verzeichnis mit allen enthaltenen Dateien wird gelöscht.<br><br>";
$message .= "Sollte es sich hierbei um einen Irrtum handeln, wenden sie sich bitte an ihre Studiengangsassistenz.<br>";
echo "<span style='color: red;'>Achtung!<br>$message</span>";
}
if ($num_rows==1)
{
echo '
<table class="tabcontent">
<tr>
<td colspan="2" class="MarkLine" width="60%">
<table width="100%"><tr><td>
<P><br>
Username: '.$uid.'<br>
Titel: '.$titelpre.' <br>
Vornamen: '.$vorname.' '.$vornamen.'<br>
Nachname:'.$nachname.'<br>
Postnomen: '.$titelpost.'<br>';
if(!$ansicht)
{
echo " Geburtsdatum: $gebdatum<br>
Geburtsort: $gebort<br>";
}
echo '
</P>
</td>
<td align="right">';
//Foto anzeigen oder Upload Button
if($foto!='')
echo '<img id="personimage" src="../../public/bild.php?src=person&person_id='.$person_id.'" height="100px">';
else
{
if(!$ansicht)
echo "<a href='#BildUpload' onclick='window.open(\"../bildupload.php?person_id=$person_id\",\"BildUpload\", \"height=100,width=500,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\"); return false;'>Bild hochladen</a>";
}
echo '
</td></tr></table>
<P>
<b>eMail</b><br>
Intern: <a class="Item" href="mailto:'.$uid.'@'.DOMAIN.'">'.$uid.'@'.DOMAIN.'</a><br>';
if($email_alias!='' && !in_array($stg,$noalias))
{
echo "Alias: <a class='Item' href='mailto:$email_alias@".DOMAIN."'>$email_alias@".DOMAIN."</a>";
}
if($email!='')
echo "<br>Extern: $email";
echo '</P>';
if($hp!='')
echo "<P><b>Homepage</b><br><a href='$hp' target='_blank'>$hp</a></p>";
echo '<p>';
/*
$qry = "SELECT kompetenzen FROM public.tbl_person WHERE person_id='$person_id'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if($row->kompetenzen!='')
{
echo "<b>Kompetenzen</b><br>".str_replace(';','<br>', $row->kompetenzen);
}
}
}
*/
echo '
</p>
<br>
</td>
<td rowspan="2">';
echo '<P>';
if ($stud_num_rows==1)
{
echo "
<b>Student</b><br><br>
Studiengang: $stgbez<br>
Semester: $semester<br>
Verband: $verband<br>
Gruppe: $gruppe<br>
Matrikelnummer: $matrikelnr<br />";
if(!$ansicht)
{
echo "
<br />
<A class='Item' href='../lehre/notenliste.php'>Leistungsbeurteilung</a><br />";
}
}
if ($lekt_num_rows==1)
{
echo "
<P>
<b>Lektor</b><br><br>
Kurzzeichen: $kurzbz<BR>";
if($tel!='')
echo "Telefon TW: $vorwahl $tel<BR><BR>";
if(!$ansicht)
{
echo '
<A class="Item" href="zeitwunsch.php?uid='.$uid.'">Zeitw&uuml;nsche</A><BR>
<A class="Item" href="lva_liste.php?uid='.$uid.'">Lehrveranstaltungen</A>';
}
}
if(!$ansicht)
{
//Funktionen
$qry = "SELECT
*, tbl_benutzerfunktion.studiengang_kz as studiengang_kz,
tbl_fachbereich.bezeichnung as bezeichnung, tbl_benutzerfunktion.semester
FROM
public.tbl_benutzerfunktion JOIN public.tbl_funktion USING(funktion_kurzbz)
LEFT JOIN public.tbl_fachbereich USING(fachbereich_kurzbz)
LEFT JOIN public.tbl_studiengang ON(tbl_benutzerfunktion.studiengang_kz=tbl_studiengang.studiengang_kz)
WHERE
uid='$uid' AND
(tbl_fachbereich.aktiv=true OR fachbereich_kurzbz is null) AND
(tbl_studiengang.aktiv=true OR tbl_benutzerfunktion.studiengang_kz is null)";
if($result_funktion = pg_query($conn, $qry))
{
if(pg_num_rows($result_funktion)>0)
{
echo '<br><br><b>Funktionen</b><table><tr class="liste"><th>Funktion</th><th>Studiengang</th><th>Semester</th><th>Institut</th></tr>';
while($row_funktion = pg_fetch_object($result_funktion))
{
echo "<tr class='liste1'><td>$row_funktion->beschreibung</td><td>".($row_funktion->studiengang_kz!=0?$stg_arr[$row_funktion->studiengang_kz]:'')."</td><td>$row_funktion->semester</td><td>$row_funktion->bezeichnung</td></tr>";
}
echo '</table>';
}
}
//Betriebsmittel
$qry = "SELECT
tbl_betriebsmittel.betriebsmitteltyp as betriebsmitteltyp,
tbl_betriebsmittel.beschreibung as beschreibung, tbl_betriebsmittel.nummer as nummer,
tbl_betriebsmittelperson.ausgegebenam as ausgegebenam
FROM
public.tbl_betriebsmittelperson JOIN public.tbl_betriebsmittel USING(betriebsmittel_id)
WHERE
person_id=(SELECT person_id FROM public.tbl_benutzer WHERE uid='$uid' LIMIT 1) AND
retouram is null";
if($result_betriebsmittel = pg_query($conn, $qry))
{
if(pg_num_rows($result_betriebsmittel)>0)
{
echo '<br><br><b>Entlehnte Betriebsmittel</b><table><tr class="liste"><th>Betriebsmittel</th><th>Nummer</th><th>Ausgegeben am</th></tr>';
while($row_bm = pg_fetch_object($result_betriebsmittel))
{
echo "<tr class='liste1'><td>$row_bm->betriebsmitteltyp</td><td>$row_bm->nummer</td><td>$row_bm->ausgegebenam</td></tr>";
}
echo '</table>';
}
}
}
if(!$ansicht)
{
echo "";
echo "";
}
echo "</P>";
echo '
</td>
</tr>
<TR>
<TD colspan="2">
<P><B>Mail-Verteiler</B><BR><BR>
';
//Mailverteiler
if(!$ansicht)
echo "<SMALL>Sie sind Mitglied in folgenden Verteilern:</SMALL>";
else
echo "<SMALL>Der User $uid ist Mitglied in folgenden Verteilern:</SMALL>";
echo '
</P>
</TD>
<TD> </TD>
</TR>';
for($i=0;$i<$nr_mg;$i++)
{
$row=pg_fetch_object($erg_mg,$i);
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($row->gruppe_kurzbz).'@'.DOMAIN.'">'.strtolower($row->gruppe_kurzbz).'&nbsp;</TD>';
echo "<TD>&nbsp;$row->beschreibung</TD><TD></TD></TR>";
}
if (isset($matrikelnr))
{
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).'_std@'.DOMAIN.'">'.strtolower($stgkz).'_std&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgbez</TD><TD></TD></TR>";
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).$semester.'@'.DOMAIN.'">'.strtolower($stgkz).$semester.'&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgkz $semester</TD><TD></TD></TR>";
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).$semester.strtolower($verband).'@'.DOMAIN.'">'.strtolower($stgkz).$semester.strtolower($verband).'&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgkz $semester$verband</TD><TD></TD></TR>";
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).$semester.strtolower($verband).$gruppe.'@'.DOMAIN.'">'.strtolower($stgkz).$semester.strtolower($verband).$gruppe.'&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgkz $semester$verband$gruppe</TD><TD></TD></TR>";
}
$mail = MAIL_ADMIN;
if($stg=='')
{
$stg = 0;
}
//Wenn eine Assistentin fuer diesen Studiengang eingetragen ist,
//dann werden die aenderungswuesche an diese Adresse gesendet
$qry = "SELECT email FROM public.tbl_studiengang where studiengang_kz='$stg'";
if($row=pg_fetch_object(pg_query($conn,$qry)))
{
if($row->email!='')
$mail = $row->email;
else
$mail = MAIL_ADMIN;
}
if($stg=='0')
$mail = MAIL_GST;
echo '
</table>
<BR>';
if(!$ansicht)
{
//Wenn eine OEH Kandidatur vorhanden ist, WYSIWYG Editor anzeigen
$qry = "SELECT * FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oeh-kandidatur' AND uid='$uid'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)>0)
{
$person = new person($conn);
$person->load($person_id);
echo '<hr>';
echo '<b>Kurzbeschreibung für die &Ouml;H-Kandidatur:</b><br>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
// Automatically calculates the editor base path based on the _samples directory.
// This is usefull only for these samples. A real application should use something like this:
// $oFCKeditor->BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
$sBasePath = $_SERVER['PHP_SELF'] ;
$sBasePath = '../../../include/fckeditor/';
$oFCKeditor = new FCKeditor('kurzbeschreibung') ;
$oFCKeditor->BasePath = $sBasePath ;
$oFCKeditor->Value = $person->kurzbeschreibung;
$oFCKeditor->Create() ;
echo '
<br>
<input type="submit" value="Speichern" name="savekurzbeschreibung">
</form>';
}
}
echo "
<HR>
Sollten ihre Daten nicht stimmen, wenden sie sich bitte an die <a class='Item' href=\"mailto:$mail?subject=Datenkorrektur&body=Die%20Profildaten%20fuer%20User%20'$uid'%20sind%20nicht%20korrekt.%0D
Hier die richtigen Daten:%0DNachname:%20$nachname%0DVorname:%20$vorname%0DGeburtsdatum:%20$gebdatum
%0DGeburtsort:%20$gebort%0DTitelPre:%20$titelpre%0DTitelPost:%20$titelpost
%0D%0D***%0DPlatz fuer weitere (nicht angefuehrte Daten)%0D***\">zuständige Assistenz</a>";
}
}
else
{
echo '
<br><br>
Es wurden keine oder mehrere Profile f&uuml;r ihren Useraccount gefunden.
<br>
Bitte wenden sie sich an die <a class="Item" href="mailto:'.MAIL_ADMIN.'?subject=Profilfehler&body=Es wurden zuviele oder zuwenige Profile fuer User '.$uid.' gefunden. %0DBitte kontrollieren sie die Datenbank!%0D%0DMeine Daten sind:%0DNachname:%0DVornamen:%0D...">Administration</a>
';
}
?>
</body>
</html>
<?php
/* Copyright (C) 2008 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> and
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/globals.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/fckeditor/fckeditor.php');
require_once('../../../include/person.class.php');
require_once('../../../include/safehtml/safehtml.class.php');
$uid=get_uid();
$ansicht=false; //Wenn ein anderer User sich das Profil ansieht (Bei Personensuche)
if(isset($_GET['uid']))
{
$uid=stripslashes($_GET['uid']);
$ansicht=true;
}
$stg = '';
if (!$conn = @pg_pconnect(CONN_STRING))
die("Es konnte keine Verbindung zum Server aufgebaut werden.");
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
$stg_arr = array();
foreach ($stg_obj->result as $row)
$stg_arr[$row->studiengang_kz]=$row->kurzbzlang;
if(!($erg=pg_query($conn, "SELECT * FROM campus.vw_benutzer WHERE uid='$uid'")))
die(pg_last_error($conn));
$num_rows=pg_num_rows($erg);
if ($num_rows==1)
{
$person_id=pg_result($erg,0,"person_id");
$vorname=pg_result($erg,0,"vorname");
$vornamen=pg_result($erg,0,"vornamen");
$nachname=pg_result($erg,0,"nachname");
$gebdatum=pg_result($erg,0,"gebdatum");
$gebort=pg_result($erg,0,"gebort");
$titelpre=pg_result($erg,0,"titelpre");
$titelpost=pg_result($erg,0,"titelpost");
$email=pg_result($erg,0,"uid").'@'.DOMAIN;
$email_alias=pg_result($erg,0,"alias");
$hp=pg_result($erg,0,"homepage");
$aktiv=pg_result($erg,0,"aktiv");
$foto=pg_result($erg,0,"foto");
}
if(!($erg_stud=pg_query($conn, "SELECT studiengang_kz, semester, verband, gruppe, matrikelnr, typ::varchar(1) || kurzbz AS stgkz, tbl_studiengang.bezeichnung AS stgbz FROM public.tbl_student JOIN public.tbl_studiengang USING(studiengang_kz) WHERE student_uid='$uid'")))
die(pg_last_error($conn));
$stud_num_rows=pg_num_rows($erg_stud);
if ($stud_num_rows==1)
{
$stg=pg_result($erg_stud,0,"studiengang_kz");
$stgbez=pg_result($erg_stud,0,"stgbz");
$stgkz=pg_result($erg_stud,0,"stgkz");
$semester=pg_result($erg_stud,0,"semester");
$verband=pg_result($erg_stud,0,"verband");
$gruppe=pg_result($erg_stud,0,"gruppe");
$matrikelnr=pg_result($erg_stud,0,"matrikelnr");
}
if(!($erg_lekt=pg_query($conn, "SELECT * FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid='$uid'")))
die(pg_last_error($conn));
$lekt_num_rows=pg_num_rows($erg_lekt);
if ($lekt_num_rows==1)
{
$row=pg_fetch_object($erg_lekt,0);
$kurzbz=$row->kurzbz;
$tel=$row->telefonklappe;
$vorwahl = '';
if($tel != "")
{
$vorwahl = '+43 1 333 40 77-';
if($row->standort_kurzbz!='')
{
$qry = "SELECT telefon FROM public.tbl_standort, public.tbl_adresse, public.tbl_firma WHERE tbl_standort.standort_kurzbz='$row->standort_kurzbz' AND tbl_standort.adresse_id=tbl_adresse.adresse_id AND tbl_adresse.firma_id=tbl_firma.firma_id";
if($result_tel = pg_query($conn, $qry))
if($row_tel = pg_fetch_object($result_tel))
$vorwahl = $row_tel->telefon;
}
}
}
// Mail-Groups
if(!($erg_mg=pg_query($conn, "SELECT gruppe_kurzbz, beschreibung FROM campus.vw_persongruppe WHERE mailgrp AND uid='$uid' ORDER BY gruppe_kurzbz")))
die(pg_last_error($conn));
$nr_mg=pg_num_rows($erg_mg);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Profil</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="Javascript">
<!--
function RefreshImage()
{
window.location.reload();
}
-->
</script>
</head>
<body>
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td>
<table class="tabcontent">
<tr>
<td class='ContentHeader'><font class='ContentHeader'>&nbsp;Userprofil</font></td>
</tr>
</table>
<!--
Results: <?php echo $num_rows; ?><br>
Username: <?php echo $uid; ?><br><br>
-->
<?php
if(isset($_POST['savekurzbeschreibung']) && !$ansicht)
{
$person = new person($conn);
$person->load($person_id);
//Remove Script Tags and other stuff
$parser = new SafeHTML();
$result = $parser->parse($_POST['kurzbeschreibung']);
$person->kurzbeschreibung = $result;
$person->updateamum = date('Y-m-d H:i:s');
$person->udpatevon = $uid;
if($person->save())
echo '<b>Kurzbeschreibung wurde erfolgreich gespeichert</b>';
else
echo '<span class="error">Fehler beim Speichern der Kurzbeschreibung</span>';
}
if($aktiv=='f')
{
$message = "Ihr Benutzerdatensatz wurde von einem unserer Mitarbeiter deaktiviert. Was bedeutet das nun für Sie?<br><br>";
$message .= "Vorerst werden Sie aus allen Mail-Verteilern gelöscht.<br>";
$message .= "Wenn der Datensatz in den nächsten Tagen nicht mehr aktiviert wird, führt das System automatisch folgende Aktionen durch:<br>";
$message .= "- Ihr Account wird gelöscht.<br>";
$message .= "- Ihre Mailbox mit sämtlichen Mails wird gelöscht.<br>";
$message .= "- Ihr Home-Verzeichnis mit allen enthaltenen Dateien wird gelöscht.<br><br>";
$message .= "Sollte es sich hierbei um einen Irrtum handeln, wenden sie sich bitte an ihre Studiengangsassistenz.<br>";
echo "<span style='color: red;'>Achtung!<br>$message</span>";
}
if ($num_rows==1)
{
echo '
<table class="tabcontent">
<tr>
<td colspan="2" class="MarkLine" width="60%">
<table width="100%"><tr><td>
<P><br>
Username: '.$uid.'<br>
Titel: '.$titelpre.' <br>
Vornamen: '.$vorname.' '.$vornamen.'<br>
Nachname:'.$nachname.'<br>
Postnomen: '.$titelpost.'<br>';
if(!$ansicht)
{
echo " Geburtsdatum: $gebdatum<br>
Geburtsort: $gebort<br>";
}
echo '
</P>
</td>
<td align="right">';
//Foto anzeigen oder Upload Button
if($foto!='')
echo '<img id="personimage" src="../../public/bild.php?src=person&person_id='.$person_id.'" alt="'.$person_id.'" height="100px">';
else
{
if(!$ansicht)
echo "<a href='#BildUpload' onclick='window.open(\"../bildupload.php?person_id=$person_id\",\"BildUpload\", \"height=100,width=500,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\"); return false;'>Bild hochladen</a>";
}
echo '
</td></tr></table>
<P>
<b>eMail</b><br>
Intern: <a class="Item" href="mailto:'.$uid.'@'.DOMAIN.'">'.$uid.'@'.DOMAIN.'</a><br>';
if($email_alias!='' && !in_array($stg,$noalias))
{
echo "Alias: <a class='Item' href='mailto:$email_alias@".DOMAIN."'>$email_alias@".DOMAIN."</a>";
}
if($email!='')
echo "<br>Extern: $email";
echo '</P>';
if($hp!='')
echo "<P><b>Homepage</b><br><a href='$hp' target='_blank'>$hp</a></p>";
echo '<p>';
/*
$qry = "SELECT kompetenzen FROM public.tbl_person WHERE person_id='$person_id'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if($row->kompetenzen!='')
{
echo "<b>Kompetenzen</b><br>".mb_eregi_replace(';','<br>', $row->kompetenzen);
}
}
}
*/
echo '
</p>
<br>
</td>
<td rowspan="2">';
echo '<P>';
if ($stud_num_rows==1)
{
echo "
<b>Student</b><br><br>
Studiengang: $stgbez<br>
Semester: $semester<br>
Verband: $verband<br>
Gruppe: $gruppe<br>
Matrikelnummer: $matrikelnr<br />";
if(!$ansicht)
{
echo "
<br />
<A class='Item' href='../lehre/notenliste.php'>Leistungsbeurteilung</a><br />";
}
}
if ($lekt_num_rows==1)
{
echo "
<P>
<b>Lektor</b><br><br>
Kurzzeichen: $kurzbz<BR>";
if($tel!='')
echo "Telefon TW: $vorwahl $tel<BR><BR>";
if(!$ansicht)
{
echo '
<A class="Item" href="zeitwunsch.php?uid='.$uid.'">Zeitw&uuml;nsche</A><BR>
<A class="Item" href="lva_liste.php?uid='.$uid.'">Lehrveranstaltungen</A>';
}
}
if(!$ansicht)
{
//Funktionen
$qry = "SELECT
*, tbl_benutzerfunktion.studiengang_kz as studiengang_kz,
tbl_fachbereich.bezeichnung as bezeichnung, tbl_benutzerfunktion.semester
FROM
public.tbl_benutzerfunktion JOIN public.tbl_funktion USING(funktion_kurzbz)
LEFT JOIN public.tbl_fachbereich USING(fachbereich_kurzbz)
LEFT JOIN public.tbl_studiengang ON(tbl_benutzerfunktion.studiengang_kz=tbl_studiengang.studiengang_kz)
WHERE
uid='$uid' AND
(tbl_fachbereich.aktiv=true OR fachbereich_kurzbz is null) AND
(tbl_studiengang.aktiv=true OR tbl_benutzerfunktion.studiengang_kz is null)";
if($result_funktion = pg_query($conn, $qry))
{
if(pg_num_rows($result_funktion)>0)
{
echo '<br><br><b>Funktionen</b><table><tr class="liste"><th>Funktion</th><th>Studiengang</th><th>Semester</th><th>Institut</th></tr>';
while($row_funktion = pg_fetch_object($result_funktion))
{
echo "<tr class='liste1'><td>$row_funktion->beschreibung</td><td>".($row_funktion->studiengang_kz!=0?$stg_arr[$row_funktion->studiengang_kz]:'')."</td><td>$row_funktion->semester</td><td>$row_funktion->bezeichnung</td></tr>";
}
echo '</table>';
}
}
//Betriebsmittel
$qry = "SELECT
tbl_betriebsmittel.betriebsmitteltyp as betriebsmitteltyp,
tbl_betriebsmittel.beschreibung as beschreibung, tbl_betriebsmittel.nummer as nummer,
tbl_betriebsmittelperson.ausgegebenam as ausgegebenam
FROM
public.tbl_betriebsmittelperson JOIN public.tbl_betriebsmittel USING(betriebsmittel_id)
WHERE
person_id=(SELECT person_id FROM public.tbl_benutzer WHERE uid='$uid' LIMIT 1) AND
retouram is null";
if($result_betriebsmittel = pg_query($conn, $qry))
{
if(pg_num_rows($result_betriebsmittel)>0)
{
echo '<br><br><b>Entlehnte Betriebsmittel</b><table><tr class="liste"><th>Betriebsmittel</th><th>Nummer</th><th>Ausgegeben am</th></tr>';
while($row_bm = pg_fetch_object($result_betriebsmittel))
{
echo "<tr class='liste1'><td>$row_bm->betriebsmitteltyp</td><td>$row_bm->nummer</td><td>$row_bm->ausgegebenam</td></tr>";
}
echo '</table>';
}
}
}
if(!$ansicht)
{
echo "";
echo "";
}
echo "</P>";
echo '
</td>
</tr>
<TR>
<TD colspan="2">
<P><B>Mail-Verteiler</B><BR><BR>
';
//Mailverteiler
if(!$ansicht)
echo "<SMALL>Sie sind Mitglied in folgenden Verteilern:</SMALL>";
else
echo "<SMALL>Der User $uid ist Mitglied in folgenden Verteilern:</SMALL>";
echo '
</P>
</TD>
<TD> </TD>
</TR>';
for($i=0;$i<$nr_mg;$i++)
{
$row=pg_fetch_object($erg_mg,$i);
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($row->gruppe_kurzbz).'@'.DOMAIN.'">'.strtolower($row->gruppe_kurzbz).'&nbsp;</TD>';
echo "<TD>&nbsp;$row->beschreibung</TD><TD></TD></TR>";
}
if (isset($matrikelnr))
{
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).'_std@'.DOMAIN.'">'.strtolower($stgkz).'_std&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgbez</TD><TD></TD></TR>";
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).$semester.'@'.DOMAIN.'">'.strtolower($stgkz).$semester.'&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgkz $semester</TD><TD></TD></TR>";
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).$semester.strtolower($verband).'@'.DOMAIN.'">'.strtolower($stgkz).$semester.strtolower($verband).'&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgkz $semester$verband</TD><TD></TD></TR>";
echo '<TR><TD><A class="Item" href="mailto:'.strtolower($stgkz).$semester.strtolower($verband).$gruppe.'@'.DOMAIN.'">'.strtolower($stgkz).$semester.strtolower($verband).$gruppe.'&nbsp;</TD>';
echo "<TD>&nbsp;Alle Studenten von $stgkz $semester$verband$gruppe</TD><TD></TD></TR>";
}
$mail = MAIL_ADMIN;
if($stg=='')
{
$stg = 0;
}
//Wenn eine Assistentin fuer diesen Studiengang eingetragen ist,
//dann werden die aenderungswuesche an diese Adresse gesendet
$qry = "SELECT email FROM public.tbl_studiengang where studiengang_kz='$stg'";
if($row=pg_fetch_object(pg_query($conn,$qry)))
{
if($row->email!='')
$mail = $row->email;
else
$mail = MAIL_ADMIN;
}
if($stg=='0')
$mail = MAIL_GST;
echo '
</table>
<BR>';
if(!$ansicht)
{
//Wenn eine OEH Kandidatur vorhanden ist, WYSIWYG Editor anzeigen
$qry = "SELECT * FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oeh-kandidatur' AND uid='$uid'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)>0)
{
$person = new person($conn);
$person->load($person_id);
echo '<hr>';
echo '<b>Kurzbeschreibung für die &Ouml;H-Kandidatur:</b><br>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
// Automatically calculates the editor base path based on the _samples directory.
// This is usefull only for these samples. A real application should use something like this:
// $oFCKeditor->BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
$sBasePath = $_SERVER['PHP_SELF'] ;
$sBasePath = '../../../include/fckeditor/';
$oFCKeditor = new FCKeditor('kurzbeschreibung') ;
$oFCKeditor->BasePath = $sBasePath ;
$oFCKeditor->Value = $person->kurzbeschreibung;
$oFCKeditor->Create() ;
echo '
<br>
<input type="submit" value="Speichern" name="savekurzbeschreibung">
</form>';
}
}
echo "
<HR>
Sollten ihre Daten nicht stimmen, wenden sie sich bitte an die <a class='Item' href=\"mailto:$mail?subject=Datenkorrektur&body=Die%20Profildaten%20fuer%20User%20'$uid'%20sind%20nicht%20korrekt.%0D
Hier die richtigen Daten:%0DNachname:%20$nachname%0DVorname:%20$vorname%0DGeburtsdatum:%20$gebdatum
%0DGeburtsort:%20$gebort%0DTitelPre:%20$titelpre%0DTitelPost:%20$titelpost
%0D%0D***%0DPlatz fuer weitere (nicht angefuehrte Daten)%0D***\">zuständige Assistenz</a>";
}
}
else
{
echo '
<br><br>
Es wurden keine oder mehrere Profile f&uuml;r ihren Useraccount gefunden.
<br>
Bitte wenden sie sich an die <a class="Item" href="mailto:'.MAIL_ADMIN.'?subject=Profilfehler&body=Es wurden zuviele oder zuwenige Profile fuer User '.$uid.' gefunden. %0DBitte kontrollieren sie die Datenbank!%0D%0DMeine Daten sind:%0DNachname:%0DVornamen:%0D...">Administration</a>
';
}
?>
</body>
</html>
File diff suppressed because it is too large Load Diff
+326 -320
View File
@@ -1,321 +1,327 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$sql_conn = pg_pconnect(CONN_STRING))
die("Fehler beim öffnen der Datenbankverbindung");
$user = get_uid();
$rechte = new benutzerberechtigung($sql_conn);
$rechte->getBerechtigungen($user);
if(check_lektor($user,$sql_conn))
$is_lector=true;
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz') || $rechte->isBerechtigt('lehre') || $rechte->isBerechtigt('news'))
$berechtigt=true;
else
$berechtigt=false;
if(isset($_GET['news_id']))
$news_id=$_GET['news_id'];
if(isset($_GET['message_sent']))
$message_sent=$_GET['message_sent'];
if(isset($_GET['changed']))
$changed=$_GET['changed'];
if(isset($_POST['news_id']))
$news_id=$_POST['news_id'];
if(isset($_POST['news_submit']))
$news_submit=$_POST['news_submit'];
if(isset($_POST['txtNewsMessage']))
$txtNewsMessage=$_POST['txtNewsMessage'];
if(isset($_POST['txtAuthor']))
$txtAuthor=$_POST['txtAuthor'];
if(isset($_POST['datum']))
$datum=$_POST['datum'];
if(isset($_POST['datum_bis']))
$datum_bis=$_POST['datum_bis'];
if(isset($_POST['txtTitle']))
$txtTitle=$_POST['txtTitle'];
if(isset($_POST['btnSend']))
$btnSend=$_POST['btnSend'];
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<?php
//var_dump($_POST);
//echo '<BR>';
//var_dump($_GET);
if($berechtigt && isset($news_submit) && (!isset($message_sent) || $message_sent == "no"))
{
$author = chop($txtAuthor);
$title = chop($txtTitle);
$news_message = chop(str_replace("\r\n", "<br>", $txtNewsMessage));
if($author != "" && $title != "" && $news_message != "")
{
if(isset($news_id) && $news_id != "")
{
$news = new news($sql_conn);
$news->news_id = $news_id;
$news->betreff = $title;
$news->verfasser = $author;
$news->text = $news_message;
$news->studiengang_kz = '0';
$news->semester = null;
if(isset($chksenat))
$news->fachbereich_kurzbz = 'Senat';
else
$news->fachbereich_kurzbz = '';
$news->datum = $datum;
$news->datum_bis = $datum_bis;
$news->uid=$user;
$news->updatevon=$user;
$news->updateamum=date('Y-m-d H:i:s');
$news->new=false;
if($news->save())
{
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'news_entry.php?message_sent=yes&changed=yes';";
echo "</script>";
}
else
{
//echo $news->errormsg;
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php?message_sent=no';";
echo "</script>";
}
}
else
{
$news = new news($sql_conn);
$news->betreff = $title;
$news->verfasser = $author;
$news->text = $news_message;
$news->studiengang_kz = '0';
$news->updatevon=$user;
$news->semester = null;
if(isset($chksenat))
$news->fachbereich_kurzbz = 'Senat';
else
$news->fachbereich_kurzbz = '';
$news->uid = $user;
$news->updateamum=date('Y-m-d H:i:s');
$news->datum=$datum;
$news->datum_bis=$datum_bis;
$news->new=true;
if($news->save())
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php' + \"?message_sent=yes&changed=yes\";";
echo "</script>";
}
else
{
//echo "test:".$news->errormsg;
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php' + \"?message_sent=no\";";
echo "</script>";
}
}
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php' + \"?message_sent=no\";";
echo "</script>";
}
exit;
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function focusFirstElement()
{
if(document.NewsEntry.txtAuthor != null)
{
document.NewsEntry.txtAuthor.focus();
}
}
</script>
</head>
<body onLoad="focusFirstElement();">
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td>
<form action="" method="POST" name="NewsEntry">
<table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">&nbsp;Verwaltungstools - Newsverwaltung</font></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<?php
if(!$berechtigt)
{
die("<td>Sie haben keine Berechtigung f&uuml;r diese Seite.</td>");
}
if(isset($message_sent) && $message_sent == "yes")
{
if(isset($changed) && $changed == "yes")
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'news_show.php'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><h3>Die Nachricht wurde erfolgreich ge&auml;ndert!<h3></td>";
echo "</tr>";
}
else
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'news_show.php'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><h3>Die Neuigkeit wurde erfolgreich eingetragen!</h3></td>";
echo "</tr>";
}
exit;
}
else if(isset($message_sent) && $message_sent == "no")
{
echo "<td>&nbsp;</td>";
echo "</tr>";
echo " <td><h3>Die Neuigkeit wurde NICHT eingetragen!</h3>";
echo "<h3>Bitte versuchen Sie es erneut</h3></td>";
echo "</tr>";
exit;
}
echo '<td class="ContentHeader2">&nbsp;';
if(isset($news_id) && $news_id != "")
{
$news = new news($sql_conn, $news_id);
echo 'Eintrag &auml;ndern';
}
else
{
echo 'Neuen Eintrag erstellen';
}
echo '</td>';
?>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>
<table class="tabcontent">
<tr>
<td width="65">Verfasser:</td>
<td><input type="text" class="TextBox" name="txtAuthor" size="30"<?php if(isset($news_id) && $news_id != "") echo ' value="'.$news->verfasser.'"'; ?>></td>
<td>Sichtbar ab:</td>
<td><input type="text" class="TextBox" name="datum" size="10" value="<?php if(isset($news_id) && $news_id != "") echo date('d.m.Y',strtotime(strftime($news->datum))); else echo date('d.m.Y'); ?>"></td>
</tr>
<tr>
<td>Titel:</td>
<td><input type="text" class="TextBox" name="txtTitle" size="30"<?php if(isset($news_id) && $news_id != "") echo ' value="'.$news->betreff.'"'; ?>></td>
<td>Sichtbar bis (optional):</td>
<td><input type="text" class="TextBox" name="datum_bis" size="10" value="<?php if(isset($news_id) && $news_id != "" && $news->datum_bis!='') echo date('d.m.Y',strtotime(strftime($news->datum_bis))); else echo ''; ?>"></td>
</tr>
<tr>
<td colspan='2'>Bitte geben Sie hier Ihre Nachricht ein:</td>
<?php
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('assistenz',0))
{
?>
<td>Senat:</td>
<td><input type="checkbox" name="chksenat"<?php if(isset($news_id) && $news_id!="" && $news->fachbereich_kurzbz=='Senat') echo ' checked'?>></td>
<?php
}
?>
</tr>
</table>
</td>
</tr>
<!-- <tr>
<td>&nbsp;</td>
</tr>-->
<tr>
<td><!--Bitte geben Sie hier Ihre Nachricht ein:<br>-->
<textarea class="TextBox" style="width: 99%; heigth: 166px" name="txtNewsMessage" rows="10" cols="70" maxlength="2000"><?php if(isset($news_id) && $news_id != "") echo str_replace("<br>", "\r\n", $news->text); ?></textarea></td>
</tr>
<tr>
<td nowrap>
<input type="hidden" name="news_submit" value="true">
<input type="submit" name="btnSend" value="Abschicken">&nbsp;
<?php
if(isset($news_id) && $news_id != "")
{
echo "<input type='hidden' name='news_id' value='$news_id'>
<input type=\"reset\" name=\"btnCancel\" value=\"Abbrechen\" onClick=\"document.location.href='news_entry.php';\"></td>";
}
else
{
echo '<input type="reset" name="btnCancel" value="Zur&uuml;cksetzen" onClick="document.NewsEntry.txtAuthor.focus();"></td>';
}
?>
</tr>
</table>
</form></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$sql_conn = pg_pconnect(CONN_STRING))
die("Fehler beim öffnen der Datenbankverbindung");
$user = get_uid();
$rechte = new benutzerberechtigung($sql_conn);
$rechte->getBerechtigungen($user);
if(check_lektor($user,$sql_conn))
$is_lector=true;
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz') || $rechte->isBerechtigt('lehre') || $rechte->isBerechtigt('news'))
$berechtigt=true;
else
$berechtigt=false;
if(isset($_GET['news_id']))
$news_id=$_GET['news_id'];
if(isset($_GET['message_sent']))
$message_sent=$_GET['message_sent'];
if(isset($_POST['message_sent']))
$message_sent=$_POST['message_sent'];
if(isset($_GET['changed']))
$changed=$_GET['changed'];
if(isset($_POST['news_id']))
$news_id=$_POST['news_id'];
if(isset($_POST['news_submit']))
$news_submit=$_POST['news_submit'];
if(isset($_POST['txtNewsMessage']))
$txtNewsMessage=$_POST['txtNewsMessage'];
if(isset($_POST['txtAuthor']))
$txtAuthor=$_POST['txtAuthor'];
if(isset($_POST['datum']))
$datum=$_POST['datum'];
if(isset($_POST['datum_bis']))
$datum_bis=$_POST['datum_bis'];
if(isset($_POST['txtTitle']))
$txtTitle=$_POST['txtTitle'];
if(isset($_POST['btnSend']))
$btnSend=$_POST['btnSend'];
if(isset($_POST['news_submit']))
$news_submit=$_POST['news_submit'];
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<?php
//var_dump($_POST);
//echo '<BR>';
//var_dump($_GET);
if($berechtigt && isset($btnSend) && (!isset($message_sent) || $message_sent == "no"))
{
$author = chop($txtAuthor);
$title = chop($txtTitle);
$news_message = chop($txtNewsMessage);
if($author != "" && $title != "" && $news_message != "")
{
$news_message = mb_eregi_replace("\r\n", "<br>", $news_message);
if(isset($news_id) && $news_id != "")
{
$news = new news();
$news->news_id = $news_id;
$news->betreff = $title;
$news->verfasser = $author;
$news->text = $news_message;
$news->studiengang_kz = '0';
$news->semester = null;
if(isset($chksenat))
$news->fachbereich_kurzbz = 'Senat';
else
$news->fachbereich_kurzbz = '';
$news->datum = $datum;
$news->datum_bis = $datum_bis;
$news->uid=$user;
$news->updatevon=$user;
$news->updateamum=date('Y-m-d H:i:s');
$news->new=false;
if($news->save())
{
echo '<script language="JavaScript" type="text/javascript">';
echo " document.location.href = 'news_entry.php?message_sent=yes&changed=yes';";
echo "</script>";
}
else
{
//echo $news->errormsg;
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php?message_sent=no';";
echo "</script>";
}
}
else
{
$news = new news();
$news->betreff = $title;
$news->verfasser = $author;
$news->text = $news_message;
$news->studiengang_kz = '0';
$news->updatevon=$user;
$news->semester = null;
if(isset($chksenat))
$news->fachbereich_kurzbz = 'Senat';
else
$news->fachbereich_kurzbz = '';
$news->uid = $user;
$news->updateamum=date('Y-m-d H:i:s');
$news->datum=$datum;
$news->datum_bis=$datum_bis;
$news->new=true;
if($news->save())
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php' + \"?message_sent=yes&changed=no\";";
echo "</script>";
}
else
{
//echo "test:".$news->errormsg;
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php' + \"?message_sent=no\";";
echo "</script>";
}
}
}
else
{
echo "<script language=\"JavaScript\">";
echo " document.location.href = 'news_entry.php' + \"?message_sent=no\";";
echo "</script>";
}
exit;
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function focusFirstElement()
{
if(document.NewsEntry.txtAuthor != null)
{
document.NewsEntry.txtAuthor.focus();
}
}
</script>
</head>
<body onLoad="focusFirstElement();">
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td>
<form action="" method="POST" name="NewsEntry">
<table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">&nbsp;Verwaltungstools - Newsverwaltung</font></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<?php
if(!$berechtigt)
{
die("<td>Sie haben keine Berechtigung f&uuml;r diese Seite.</td>");
}
if(isset($message_sent) && $message_sent == "yes")
{
if(isset($changed) && $changed == "yes")
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'news_show.php'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><h3>Die Nachricht wurde erfolgreich ge&auml;ndert!<h3></td>";
echo "</tr>";
}
else
{
echo " <td>";
echo "<script language=\"JavaScript\">";
echo " parent.news_window.location.href = 'news_show.php'";
echo "</script>";
echo "</td>";
echo "</tr>";
echo " <td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo " <td><h3>Die Neuigkeit wurde erfolgreich eingetragen!</h3></td>";
echo "</tr>";
}
#exit;
}
else if(isset($message_sent) && $message_sent == "no")
{
echo "<td>&nbsp;</td>";
echo "</tr>";
echo " <td><h3>Die Neuigkeit wurde NICHT eingetragen!</h3>";
echo "<h3>Bitte versuchen Sie es erneut</h3></td>";
echo "</tr>";
exit;
}
echo '<td class="ContentHeader2">&nbsp;';
if(isset($news_id) && $news_id != "")
{
$news = new news($news_id);
echo 'Eintrag &auml;ndern';
}
else
{
echo 'Neuen Eintrag erstellen';
}
echo '</td>';
?>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>
<table class="tabcontent">
<tr>
<td width="65">Verfasser:</td>
<td><input type="text" class="TextBox" name="txtAuthor" size="30"<?php if(isset($news_id) && $news_id != "") echo ' value="'.$news->verfasser.'"'; ?>></td>
<td>Sichtbar ab:</td>
<td><input type="text" class="TextBox" name="datum" size="10" value="<?php if(isset($news_id) && $news_id != "") echo date('d.m.Y',strtotime(strftime($news->datum))); else echo date('d.m.Y'); ?>"></td>
</tr>
<tr>
<td>Titel:</td>
<td><input type="text" class="TextBox" name="txtTitle" size="30"<?php if(isset($news_id) && $news_id != "") echo ' value="'.$news->betreff.'"'; ?>></td>
<td>Sichtbar bis (optional):</td>
<td><input type="text" class="TextBox" name="datum_bis" size="10" value="<?php if(isset($news_id) && $news_id != "" && $news->datum_bis!='') echo date('d.m.Y',strtotime(strftime($news->datum_bis))); else echo ''; ?>"></td>
</tr>
<tr>
<td colspan='2'>Bitte geben Sie hier Ihre Nachricht ein:</td>
<?php
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('assistenz',0))
{
?>
<td>Senat:</td>
<td><input type="checkbox" name="chksenat"<?php if(isset($news_id) && $news_id!="" && $news->fachbereich_kurzbz=='Senat') echo ' checked'?>></td>
<?php
}
?>
</tr>
</table>
</td>
</tr>
<!-- <tr>
<td>&nbsp;</td>
</tr>-->
<tr>
<td><!--Bitte geben Sie hier Ihre Nachricht ein:<br>-->
<textarea class="TextBox" style="width: 99%; heigth: 166px" name="txtNewsMessage" rows="10" cols="70" maxlength="2000"><?php if(isset($news_id) && $news_id != "") echo mb_eregi_replace("<br>", "\r\n", $news->text); ?></textarea></td>
</tr>
<tr>
<td nowrap>
<input type="hidden" name="message_sent" value="no">
<input type="hidden" name="news_submit" value="true">
<input type="submit" name="btnSend" value="Abschicken">&nbsp;
<?php
if(isset($news_id) && $news_id != "")
{
echo "<input type='hidden' name='news_id' value='$news_id'>
<input type=\"reset\" name=\"btnCancel\" value=\"Abbrechen\" onClick=\"document.location.href='news_entry.php';\"></td>";
}
else
{
echo '<input type="reset" name="btnCancel" value="Zur&uuml;cksetzen" onClick="document.NewsEntry.txtAuthor.focus();"></td>';
}
?>
</tr>
</table>
</form></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
</html>
+172 -156
View File
@@ -1,156 +1,172 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function deleteEntry(id)
{
if(confirm("Soll dieser Eintrag wirklich gelöscht werden?") == true)
{
document.location.href = 'news_show.php?remove_id=' + id;
}
}
function editEntry(id)
{
parent.news_entry.location.href = 'news_entry.php?news_id=' + id;
}
</script>
</head>
<body>
<?php
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$sql_conn = pg_pconnect(CONN_STRING))
die('Fehler beim öffnen der Datenbankverbindung');
$user = get_uid();
$rechte = new benutzerberechtigung($sql_conn);
$rechte->getBerechtigungen($user);
if(check_lektor($user,$sql_conn))
$is_lector=true;
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz') || $rechte->isBerechtigt('news') || $rechte->isBerechtigt('lehre'))
$berechtigt=true;
else
$berechtigt=false;
if($berechtigt)
{
if(isset($remove_id) && $remove_id != "")
{
$news = new news($sql_conn);
if($news->delete($remove_id))
{
writeCISlog('DELETE NEWS','');
echo '<script language="JavaScript" type="text/javascript">';
echo ' document.location.href = "news_show.php"';
echo '</script>';
exit;
}
else
echo 'Fehler beim L&ouml;schen des Eintrages';
}
}
?>
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><table class="tabcontent">
<tr>
<?php
if(!$berechtigt)
exit;
?>
<td>
<table class="tabcontent">
<?php
$news = new news($sql_conn);
$news->getnews(0,0,null, true, '*', 0);
$zaehler=0;
$i=0;
foreach($news->result as $row)
{
$i++;
$zaehler++;
$datum = date('d.m.Y',strtotime(strftime($row->datum)));
echo "<tr>";
if($i % 2 != 0)
{
echo '<td class="MarkLine">';
}
else
{
echo '<td>';
}
echo ' <table class="tabcontent">';
echo ' <tr>';
echo ' <td nowarp>';
echo $datum.'&nbsp;'.$row->verfasser;
echo ' </td>';
echo ' <td align="right" nowrap>';
echo ' <a onClick="editEntry('.$row->news_id.');">Editieren</a>, <a onClick="deleteEntry('.$row->news_id.');">L&ouml;schen</a>';
echo ' </td>';
echo ' </tr>';
echo ' <tr>';
echo ' <td>&nbsp;</td>';
echo ' </tr>';
echo ' </table>';
echo ' <strong>'.$row->betreff.'</strong><br>'.$row->text.'</td>';
echo '</tr>';
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
}
if($zaehler==0)
echo 'Zur Zeit gibt es keine aktuellen News!';
?>
</table>
</td>
</tr>
</table></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
</html>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/javascript">
function deleteEntry(id)
{
if(confirm("Soll dieser Eintrag wirklich gelöscht werden?") == true)
{
document.location.href = 'news_show.php?remove_id=' + id;
}
}
function editEntry(id)
{
parent.news_entry.location.href = 'news_entry.php?news_id=' + id;
}
</script>
</head>
<body>
<?php
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/news.class.php');
//Connection Herstellen
if(!$sql_conn = pg_pconnect(CONN_STRING))
die('Fehler beim öffnen der Datenbankverbindung');
$user = get_uid();
// POST/GET Parameter uebernehmen
if (isset($_GET))
{
while (list ($tmp_key, $tmp_val) = each($_GET))
{
$$tmp_key=$tmp_val;
}
}
if (isset($_POST))
{
while (list ($tmp_key, $tmp_val) = each($_POST))
{
$$tmp_key=$tmp_val;
}
}
$rechte = new benutzerberechtigung($sql_conn);
$rechte->getBerechtigungen($user);
if(check_lektor($user,$sql_conn))
$is_lector=true;
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz') || $rechte->isBerechtigt('news') || $rechte->isBerechtigt('lehre'))
$berechtigt=true;
else
$berechtigt=false;
if($berechtigt)
{
if(isset($remove_id) && $remove_id != "")
{
$news = new news();
if($news->delete($remove_id))
{
writeCISlog('DELETE NEWS','');
echo '<script language="JavaScript" type="text/javascript">';
echo ' document.location.href = "news_show.php"';
echo '</script>';
exit;
}
else
echo 'Fehler beim L&ouml;schen des Eintrages';
}
}
?>
<table class="tabcontent" id="inhalt">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td><table class="tabcontent">
<tr>
<?php
if(!$berechtigt)
exit;
?>
<td>
<table class="tabcontent">
<?php
$news = new news();
$news->getnews(0,0,null, true, '*', 0);
$zaehler=0;
$i=0;
foreach($news->result as $row)
{
$i++;
$zaehler++;
$datum = date('d.m.Y',strtotime(strftime($row->datum)));
echo "<tr>";
if($i % 2 != 0)
{
echo '<td class="MarkLine">';
}
else
{
echo '<td>';
}
echo ' <table class="tabcontent">';
echo ' <tr>';
echo ' <td nowarp>';
echo $datum.'&nbsp;'.$row->verfasser;
echo ' </td>';
echo ' <td align="right" nowrap>';
echo ' <a onClick="editEntry('.$row->news_id.');">Editieren</a>, <a onClick="deleteEntry('.$row->news_id.');">L&ouml;schen</a>';
echo ' </td>';
echo ' </tr>';
echo ' <tr>';
echo ' <td>&nbsp;</td>';
echo ' </tr>';
echo ' </table>';
echo ' <strong>'.$row->betreff.'</strong><br>'.$row->text.'</td>';
echo '</tr>';
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
echo '<tr>';
echo ' <td>&nbsp;</td>';
echo '</tr>';
}
if($zaehler==0)
echo 'Zur Zeit gibt es keine aktuellen News!';
?>
</table>
</td>
</tr>
</table></td>
<td class="tdwidth30">&nbsp;</td>
</tr>
</table>
</body>
</html>
+2 -2
View File
@@ -117,7 +117,7 @@
else
die('Fehler beim ermitteln der UID');
$mac = str_replace(":", "", str_replace("-", "", mb_strtoupper($txtMAC,'UTF-8')));
$mac = mb_eregi_replace(":", "", mb_eregi_replace("-", "", mb_strtoupper($txtMAC)));
$filename_dat = '../../../../system/dhcp.dat';
$filename_ip = '../../../../system/dhcp.ip';
@@ -158,7 +158,7 @@
$mfiles->setSearchFunction('preg');
if(preg_match("/[A-Fa-f0-9]{12}/", $mac) && $mac != '' && mb_strlen($mac,'UTF-8') == 12)
if(preg_match("/[A-Fa-f0-9]{12}/", $mac) && $mac != '' && mb_strlen($mac) == 12)
{
$mfiles->doSearch();
+389 -389
View File
@@ -1,390 +1,390 @@
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/person.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/fachbereich.class.php');
require_once('../../../include/zeitaufzeichnung.class.php');
require_once('../../../include/datum.class.php');
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Zeitaufzeichnung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" 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>
<script language="JavaScript" type="text/javascript">
function setbisdatum()
{
var now = new Date();
var ret = "";
var monat = now.getMonth();
monat++;
ret = foo(now.getDate());
ret = ret + "." + foo(monat);
ret = ret + "." + now.getFullYear();
ret = ret + " " + foo(now.getHours());
ret = ret + ":" + foo(now.getMinutes());
//ret = ret + ":" + foo(now.getSeconds());
document.getElementById("bis").value=ret;
}
function foo(val)
{
if(val<10)
return "0"+val;
else
return val;
}
function confdel()
{
return confirm("Wollen Sie diesen Datensatz wirklich loeschen?");
}
function loaduebersicht()
{
projekt = document.getElementById("projekt").value;
document.location.href="'.$_SERVER['PHP_SELF'].'?filter="+projekt;
}
function uebernehmen()
{
document.getElementById("bis").value=document.getElementById("von").value;
}
</script>
</head>
<body>
';
echo '<table class="tabcontent">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td>
<table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">Zeitaufzeichnung</font></td>
</tr>
</table>
<br>';
//Variablen initialisieren
if(!$conn = pg_pconnect(CONN_STRING))
die('Datenbankverbindung fehlgeschlagen');
$user = get_uid();
$datum = new datum();
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
$stg_arr = array();
foreach ($studiengang->result as $stg)
{
$stg_arr[$stg->studiengang_kz]=$stg->kuerzel;
}
$zeitaufzeichnung_id = (isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
$projekt_kurzbz = (isset($_POST['projekt'])?$_POST['projekt']:'');
$studiengang_kz = (isset($_POST['studiengang'])?$_POST['studiengang']:'');
$fachbereich_kurzbz = (isset($_POST['fachbereich'])?$_POST['fachbereich']:'');
$aktivitaet_kurzbz = (isset($_POST['aktivitaet'])?$_POST['aktivitaet']:'');
$von = (isset($_POST['von'])?$_POST['von']:date('d.m.Y H:i'));
$bis = (isset($_POST['bis'])?$_POST['bis']:date('d.m.Y H:i', mktime(date('H'), date('i')+10, 0, date('m'),date('d'),date('Y'))));
$beschreibung = (isset($_POST['beschreibung'])?$_POST['beschreibung']:'');
//Speichern der Daten
if(isset($_POST['save']) || isset($_POST['edit']))
{
$zeit = new zeitaufzeichnung($conn);
if(isset($_POST['edit']))
{
if(!$zeit->load($zeitaufzeichnung_id))
die('Fehler beim Laden des Datensatzes');
$zeit->new = false;
}
else
{
$zeit->new = true;
$zeit->insertamum = date('Y-m-d H:i:s');
$zeit->insertvon = $user;
}
$zeit->uid = $user;
$zeit->aktivitaet_kurzbz = $aktivitaet_kurzbz;
$zeit->start = $von;
$zeit->ende = $bis;
$zeit->beschreibung = $beschreibung;
$zeit->studiengang_kz = $studiengang_kz;
$zeit->fachbereich_kurzbz = $fachbereich_kurzbz;
$zeit->updateamum = date('Y-m-d H:i:s');
$zeit->updatevon = $user;
$zeit->projekt_kurzbz = $projekt_kurzbz;
if(!$zeit->save())
{
echo '<b>Fehler beim Speichern der Daten:'.$zeit->errormsg.'</b><br>';
}
else
{
echo '<b>Daten wurden gespeichert</b><br>';
$zeitaufzeichnung_id = $zeit->zeitaufzeichnung_id;
}
}
//Datensatz loeschen
if(isset($_GET['type']) && $_GET['type']=='delete')
{
$zeit = new zeitaufzeichnung($conn);
if($zeit->load($zeitaufzeichnung_id))
{
if($zeit->uid==$user)
{
if($zeit->delete($zeitaufzeichnung_id))
echo '<b>Eintrag wurde geloescht</b><br>';
else
echo '<b>Fehler beim Loeschen des Eintrages</b><br>';
}
else
echo '<b>Keine Berechtigung!</b><br>';
}
else
echo '<b>Datensatz wurde nicht gefunden</b><br>';
}
//Laden der Daten zum aendern
if(isset($_GET['type']) && $_GET['type']=='edit')
{
$zeit = new zeitaufzeichnung($conn);
if($zeit->load($zeitaufzeichnung_id))
{
if($zeit->uid==$user)
{
$uid = $zeit->uid;
$aktivitaet_kurzbz = $zeit->aktivitaet_kurzbz;
$von = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->start));
$bis = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->ende));
$beschreibung = $zeit->beschreibung;
$studiengang_kz = $zeit->studiengang_kz;
$fachbereich_kurzbz = $zeit->fachbereich_kurzbz;
$projekt_kurzbz = $zeit->projekt_kurzbz;
}
else
{
echo "<b> Keine Berechtigung zum Aendern des Datensatzes</b>";
$zeitaufzeichnung_id='';
}
}
}
//Projekte holen fuer zu denen der Benutzer zugeteilt ist
$qry_projekt = "SELECT distinct tbl_projekt.* FROM fue.tbl_projektbenutzer JOIN fue.tbl_projekt USING(projekt_kurzbz) WHERE beginn<=now() AND (ende>=now() OR ende is null) AND uid='$user'";
if($result_projekt = pg_query($conn, $qry_projekt))
{
if(pg_num_rows($result_projekt)>0)
{
$bn = new benutzer($conn);
if(!$bn->load($user))
die("Benutzer $user wurde nicht gefunden");
echo "<table width='100%'><tr><td>Zeitaufzeichnung von <b>$bn->vorname $bn->nachname</b></td>
<td align='right'><a href='".$_SERVER['PHP_SELF']."' class='Item'>NEU</a></td></tr></table>";
//Formular
echo '<br><br><form action="'.$_SERVER['PHP_SELF'].'?zeitaufzeichnung_id='.$zeitaufzeichnung_id.'" method="POST">';
echo '<table>';
//Projekt
echo '<tr><td>Projekt</td><td><SELECT name="projekt" id="projekt">';
while($row_projekt = pg_fetch_object($result_projekt))
{
if($projekt_kurzbz == $row_projekt->projekt_kurzbz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row_projekt->projekt_kurzbz' $selected>$row_projekt->titel</option>";
}
echo '</SELECT><input type="button" value="Uebersicht" onclick="loaduebersicht();"></td>';
//Studiengang
echo '<td>Studiengang</td><td><SELECT name="studiengang">';
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz',false);
echo "<option value=''>-- keine Auswahl --</option>";
foreach ($stg_obj->result as $stg)
{
if($stg->studiengang_kz == $studiengang_kz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$stg->studiengang_kz' $selected>$stg->kuerzel ($stg->kurzbzlang)</option>";
}
echo '</SELECT>';
echo '</td>';
echo '</tr>';
//Aktivitaet
echo '<tr>';
echo '<td>Aktivit&auml;t</td><td>';
$qry = "SELECT * FROM fue.tbl_aktivitaet ORDER by beschreibung";
if($result = pg_query($conn, $qry))
{
echo '<SELECT name="aktivitaet">';
while($row = pg_fetch_object($result))
{
if($aktivitaet_kurzbz == $row->aktivitaet_kurzbz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row->aktivitaet_kurzbz' $selected>$row->beschreibung</option>";
}
echo '</SELECT>';
}
//Fachbereich
echo '</td><td>Fachbereich</td><td><SELECT name="fachbereich">';
echo '<option value="">-- keine Auswahl --</option>';
$fb_obj = new fachbereich($conn);
$fb_obj->getAll();
foreach ($fb_obj->result as $fb)
{
if($fachbereich_kurzbz == $fb->fachbereich_kurzbz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$fb->fachbereich_kurzbz' $selected>$fb->bezeichnung</option>";
}
echo '</SELECT></td></tr>';
echo '<tr><td>&nbsp;</td><td>&nbsp;</td></tr>';
//Start/Ende
echo '
<tr>
<td>Von</td><td><input type="text" id="von" name="von" value="'.$von.'"><input type="button" value="->" onclick="uebernehmen()"></td>
<td>Bis</td><td><input type="text" id="bis" name="bis" value="'.$bis.'">&nbsp;&nbsp;<img src="../../../skin/images/refresh.png" onclick="setbisdatum()"></td>
<tr>';
//Beschreibung
echo '<tr><td>Beschreibung</td><td colspan="3"><textarea name="beschreibung" cols="60">'.$beschreibung.'</textarea></td></tr>';
echo '<tr><td></td><td></td><td></td><td align="right">';
//SpeichernButton
if($zeitaufzeichnung_id=='')
echo '<input type="submit" value="Speichern" name="save"></td></tr>';
else
echo '<input type="submit" value="&Auml;ndern" name="edit"></td></tr>';
echo '</table>';
echo '</form>';
echo '<br><hr>';
//Uebersichtstabelle
echo "<table id='t1' class='liste table-autosort:4 table-stripeclass:alternate table-autostripe'>\n";
echo " <thead><tr class='liste'>\n";
echo " <th class='table-sortable:numeric'>ID</th><th class='table-sortable:default'>Projekt</th>";
echo "<th class='table-sortable:default'>Aktivitaet</th><th class='table-sortable:default'>User</th>";
echo "<th class='table-sortable:default'>Start</th>";
echo "<th class='table-sortable:default'>Ende</th>";
echo "<th class='table-sortable:default'>Dauer</th>";
echo "<th class='table-sortable:default'>Beschreibung</th><th class='table-sortable:default'>Stg</th>";
echo "<th class='table-sortable:default'>FB</th><th colspan='2'>Aktion</th>";
echo " </tr></thead><tbody>\n";
if(isset($_GET['filter']))
$where = "projekt_kurzbz='".addslashes($_GET['filter'])."'";
else
$where = "uid='$user' AND ende>(now() - INTERVAL '40 days')";
//(SELECT to_char(sum(ende-start),'HH:MI:SS')
$qry = "SELECT
*, to_char ((ende-start),'HH24:MI') as diff,
(SELECT (to_char(sum(ende-start),'DD')::integer)*24+to_char(sum(ende-start),'HH24')::integer || ':' || to_char(sum(ende-start),'MI')
FROM campus.tbl_zeitaufzeichnung
WHERE $where ) as summe
FROM campus.tbl_zeitaufzeichnung WHERE $where
ORDER BY start DESC";
//AND ende>(now() - INTERVAL '40 days')
//echo $qry;
if($result = pg_query($conn, $qry))
{
$i = 0;
$summe=0;
while($row=pg_fetch_object($result))
{
$summe = $row->summe;
echo " <tr>\n";
echo " <td>".$row->zeitaufzeichnung_id."</td>\n";
echo " <td>".$row->projekt_kurzbz."</td>\n";
echo " <td>$row->aktivitaet_kurzbz</td>\n";
echo " <td>$row->uid</td>\n";
echo " <td nowrap><div style='display: none;'>$row->start</div>".date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->start))."</td>\n";
echo " <td nowrap><div style='display: none;'>$row->ende</div>".date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->ende))."</td>\n";
echo " <td align='right'>".$row->diff."</td>\n";
echo " <td title='".str_replace("\r\n",' ',$row->beschreibung)."'>".$row->beschreibung."</td>\n";
echo " <td>".(isset($stg_arr[$row->studiengang_kz])?$stg_arr[$row->studiengang_kz]:$row->studiengang_kz)."</td>\n";
echo " <td>$row->fachbereich_kurzbz</td>\n";
echo " <td>";
if(!isset($_GET['filter']) || $row->uid==$user)
echo "<a href='".$_SERVER['PHP_SELF']."?type=edit&zeitaufzeichnung_id=$row->zeitaufzeichnung_id' class='Item'>edit</a>";
echo "</td>\n";
echo " <td>";
if(!isset($_GET['filter']) || $row->uid==$user)
echo "<a href='".$_SERVER['PHP_SELF']."?type=delete&zeitaufzeichnung_id=$row->zeitaufzeichnung_id' class='Item' onclick='return confdel()'>delete</a>";
echo "</td>\n";
echo " </tr>\n";
$i++;
}
}
echo "</tbody></table>\n";
echo "Gesamtdauer: $summe";
}
else
{
echo 'Sie sind derzeit keinen Projekten zugeordnet';
}
}
else
{
echo 'Fehler beim Ermitteln der Projekte';
}
?>
</td>
</tr>
</table>
</body>
<?php
/* Copyright (C) 2006 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> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once('../../config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/person.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/fachbereich.class.php');
require_once('../../../include/zeitaufzeichnung.class.php');
require_once('../../../include/datum.class.php');
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Zeitaufzeichnung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" rel="stylesheet" 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>
<script language="JavaScript" type="text/javascript">
function setbisdatum()
{
var now = new Date();
var ret = "";
var monat = now.getMonth();
monat++;
ret = foo(now.getDate());
ret = ret + "." + foo(monat);
ret = ret + "." + now.getFullYear();
ret = ret + " " + foo(now.getHours());
ret = ret + ":" + foo(now.getMinutes());
//ret = ret + ":" + foo(now.getSeconds());
document.getElementById("bis").value=ret;
}
function foo(val)
{
if(val<10)
return "0"+val;
else
return val;
}
function confdel()
{
return confirm("Wollen Sie diesen Datensatz wirklich loeschen?");
}
function loaduebersicht()
{
projekt = document.getElementById("projekt").value;
document.location.href="'.$_SERVER['PHP_SELF'].'?filter="+projekt;
}
function uebernehmen()
{
document.getElementById("bis").value=document.getElementById("von").value;
}
</script>
</head>
<body>
';
echo '<table class="tabcontent">
<tr>
<td class="tdwidth10">&nbsp;</td>
<td>
<table class="tabcontent">
<tr>
<td class="ContentHeader"><font class="ContentHeader">Zeitaufzeichnung</font></td>
</tr>
</table>
<br>';
//Variablen initialisieren
if(!$conn = pg_pconnect(CONN_STRING))
die('Datenbankverbindung fehlgeschlagen');
$user = get_uid();
$datum = new datum();
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
$stg_arr = array();
foreach ($studiengang->result as $stg)
{
$stg_arr[$stg->studiengang_kz]=$stg->kuerzel;
}
$zeitaufzeichnung_id = (isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
$projekt_kurzbz = (isset($_POST['projekt'])?$_POST['projekt']:'');
$studiengang_kz = (isset($_POST['studiengang'])?$_POST['studiengang']:'');
$fachbereich_kurzbz = (isset($_POST['fachbereich'])?$_POST['fachbereich']:'');
$aktivitaet_kurzbz = (isset($_POST['aktivitaet'])?$_POST['aktivitaet']:'');
$von = (isset($_POST['von'])?$_POST['von']:date('d.m.Y H:i'));
$bis = (isset($_POST['bis'])?$_POST['bis']:date('d.m.Y H:i', mktime(date('H'), date('i')+10, 0, date('m'),date('d'),date('Y'))));
$beschreibung = (isset($_POST['beschreibung'])?$_POST['beschreibung']:'');
//Speichern der Daten
if(isset($_POST['save']) || isset($_POST['edit']))
{
$zeit = new zeitaufzeichnung($conn);
if(isset($_POST['edit']))
{
if(!$zeit->load($zeitaufzeichnung_id))
die('Fehler beim Laden des Datensatzes');
$zeit->new = false;
}
else
{
$zeit->new = true;
$zeit->insertamum = date('Y-m-d H:i:s');
$zeit->insertvon = $user;
}
$zeit->uid = $user;
$zeit->aktivitaet_kurzbz = $aktivitaet_kurzbz;
$zeit->start = $von;
$zeit->ende = $bis;
$zeit->beschreibung = $beschreibung;
$zeit->studiengang_kz = $studiengang_kz;
$zeit->fachbereich_kurzbz = $fachbereich_kurzbz;
$zeit->updateamum = date('Y-m-d H:i:s');
$zeit->updatevon = $user;
$zeit->projekt_kurzbz = $projekt_kurzbz;
if(!$zeit->save())
{
echo '<b>Fehler beim Speichern der Daten:'.$zeit->errormsg.'</b><br>';
}
else
{
echo '<b>Daten wurden gespeichert</b><br>';
$zeitaufzeichnung_id = $zeit->zeitaufzeichnung_id;
}
}
//Datensatz loeschen
if(isset($_GET['type']) && $_GET['type']=='delete')
{
$zeit = new zeitaufzeichnung($conn);
if($zeit->load($zeitaufzeichnung_id))
{
if($zeit->uid==$user)
{
if($zeit->delete($zeitaufzeichnung_id))
echo '<b>Eintrag wurde geloescht</b><br>';
else
echo '<b>Fehler beim Loeschen des Eintrages</b><br>';
}
else
echo '<b>Keine Berechtigung!</b><br>';
}
else
echo '<b>Datensatz wurde nicht gefunden</b><br>';
}
//Laden der Daten zum aendern
if(isset($_GET['type']) && $_GET['type']=='edit')
{
$zeit = new zeitaufzeichnung($conn);
if($zeit->load($zeitaufzeichnung_id))
{
if($zeit->uid==$user)
{
$uid = $zeit->uid;
$aktivitaet_kurzbz = $zeit->aktivitaet_kurzbz;
$von = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->start));
$bis = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->ende));
$beschreibung = $zeit->beschreibung;
$studiengang_kz = $zeit->studiengang_kz;
$fachbereich_kurzbz = $zeit->fachbereich_kurzbz;
$projekt_kurzbz = $zeit->projekt_kurzbz;
}
else
{
echo "<b> Keine Berechtigung zum Aendern des Datensatzes</b>";
$zeitaufzeichnung_id='';
}
}
}
//Projekte holen fuer zu denen der Benutzer zugeteilt ist
$qry_projekt = "SELECT distinct tbl_projekt.* FROM fue.tbl_projektbenutzer JOIN fue.tbl_projekt USING(projekt_kurzbz) WHERE beginn<=now() AND (ende>=now() OR ende is null) AND uid='$user'";
if($result_projekt = pg_query($conn, $qry_projekt))
{
if(pg_num_rows($result_projekt)>0)
{
$bn = new benutzer($conn);
if(!$bn->load($user))
die("Benutzer $user wurde nicht gefunden");
echo "<table width='100%'><tr><td>Zeitaufzeichnung von <b>$bn->vorname $bn->nachname</b></td>
<td align='right'><a href='".$_SERVER['PHP_SELF']."' class='Item'>NEU</a></td></tr></table>";
//Formular
echo '<br><br><form action="'.$_SERVER['PHP_SELF'].'?zeitaufzeichnung_id='.$zeitaufzeichnung_id.'" method="POST">';
echo '<table>';
//Projekt
echo '<tr><td>Projekt</td><td><SELECT name="projekt" id="projekt">';
while($row_projekt = pg_fetch_object($result_projekt))
{
if($projekt_kurzbz == $row_projekt->projekt_kurzbz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row_projekt->projekt_kurzbz' $selected>$row_projekt->titel</option>";
}
echo '</SELECT><input type="button" value="Uebersicht" onclick="loaduebersicht();"></td>';
//Studiengang
echo '<td>Studiengang</td><td><SELECT name="studiengang">';
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz',false);
echo "<option value=''>-- keine Auswahl --</option>";
foreach ($stg_obj->result as $stg)
{
if($stg->studiengang_kz == $studiengang_kz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$stg->studiengang_kz' $selected>$stg->kuerzel ($stg->kurzbzlang)</option>";
}
echo '</SELECT>';
echo '</td>';
echo '</tr>';
//Aktivitaet
echo '<tr>';
echo '<td>Aktivit&auml;t</td><td>';
$qry = "SELECT * FROM fue.tbl_aktivitaet ORDER by beschreibung";
if($result = pg_query($conn, $qry))
{
echo '<SELECT name="aktivitaet">';
while($row = pg_fetch_object($result))
{
if($aktivitaet_kurzbz == $row->aktivitaet_kurzbz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row->aktivitaet_kurzbz' $selected>$row->beschreibung</option>";
}
echo '</SELECT>';
}
//Fachbereich
echo '</td><td>Fachbereich</td><td><SELECT name="fachbereich">';
echo '<option value="">-- keine Auswahl --</option>';
$fb_obj = new fachbereich($conn);
$fb_obj->getAll();
foreach ($fb_obj->result as $fb)
{
if($fachbereich_kurzbz == $fb->fachbereich_kurzbz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$fb->fachbereich_kurzbz' $selected>$fb->bezeichnung</option>";
}
echo '</SELECT></td></tr>';
echo '<tr><td>&nbsp;</td><td>&nbsp;</td></tr>';
//Start/Ende
echo '
<tr>
<td>Von</td><td><input type="text" id="von" name="von" value="'.$von.'"><input type="button" value="->" onclick="uebernehmen()"></td>
<td>Bis</td><td><input type="text" id="bis" name="bis" value="'.$bis.'">&nbsp;&nbsp;<img src="../../../skin/images/refresh.png" onclick="setbisdatum()"></td>
<tr>';
//Beschreibung
echo '<tr><td>Beschreibung</td><td colspan="3"><textarea name="beschreibung" cols="60">'.$beschreibung.'</textarea></td></tr>';
echo '<tr><td></td><td></td><td></td><td align="right">';
//SpeichernButton
if($zeitaufzeichnung_id=='')
echo '<input type="submit" value="Speichern" name="save"></td></tr>';
else
echo '<input type="submit" value="&Auml;ndern" name="edit"></td></tr>';
echo '</table>';
echo '</form>';
echo '<br><hr>';
//Uebersichtstabelle
echo "<table id='t1' class='liste table-autosort:4 table-stripeclass:alternate table-autostripe'>\n";
echo " <thead><tr class='liste'>\n";
echo " <th class='table-sortable:numeric'>ID</th><th class='table-sortable:default'>Projekt</th>";
echo "<th class='table-sortable:default'>Aktivitaet</th><th class='table-sortable:default'>User</th>";
echo "<th class='table-sortable:default'>Start</th>";
echo "<th class='table-sortable:default'>Ende</th>";
echo "<th class='table-sortable:default'>Dauer</th>";
echo "<th class='table-sortable:default'>Beschreibung</th><th class='table-sortable:default'>Stg</th>";
echo "<th class='table-sortable:default'>FB</th><th colspan='2'>Aktion</th>";
echo " </tr></thead><tbody>\n";
if(isset($_GET['filter']))
$where = "projekt_kurzbz='".addslashes($_GET['filter'])."'";
else
$where = "uid='$user' AND ende>(now() - INTERVAL '40 days')";
//(SELECT to_char(sum(ende-start),'HH:MI:SS')
$qry = "SELECT
*, to_char ((ende-start),'HH24:MI') as diff,
(SELECT (to_char(sum(ende-start),'DD')::integer)*24+to_char(sum(ende-start),'HH24')::integer || ':' || to_char(sum(ende-start),'MI')
FROM campus.tbl_zeitaufzeichnung
WHERE $where ) as summe
FROM campus.tbl_zeitaufzeichnung WHERE $where
ORDER BY start DESC";
//AND ende>(now() - INTERVAL '40 days')
//echo $qry;
if($result = pg_query($conn, $qry))
{
$i = 0;
$summe=0;
while($row=pg_fetch_object($result))
{
$summe = $row->summe;
echo " <tr>\n";
echo " <td>".$row->zeitaufzeichnung_id."</td>\n";
echo " <td>".$row->projekt_kurzbz."</td>\n";
echo " <td>$row->aktivitaet_kurzbz</td>\n";
echo " <td>$row->uid</td>\n";
echo " <td nowrap><div style='display: none;'>$row->start</div>".date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->start))."</td>\n";
echo " <td nowrap><div style='display: none;'>$row->ende</div>".date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->ende))."</td>\n";
echo " <td align='right'>".$row->diff."</td>\n";
echo " <td title='".mb_eregi_replace("\r\n",' ',$row->beschreibung)."'>".$row->beschreibung."</td>\n";
echo " <td>".(isset($stg_arr[$row->studiengang_kz])?$stg_arr[$row->studiengang_kz]:$row->studiengang_kz)."</td>\n";
echo " <td>$row->fachbereich_kurzbz</td>\n";
echo " <td>";
if(!isset($_GET['filter']) || $row->uid==$user)
echo "<a href='".$_SERVER['PHP_SELF']."?type=edit&zeitaufzeichnung_id=$row->zeitaufzeichnung_id' class='Item'>edit</a>";
echo "</td>\n";
echo " <td>";
if(!isset($_GET['filter']) || $row->uid==$user)
echo "<a href='".$_SERVER['PHP_SELF']."?type=delete&zeitaufzeichnung_id=$row->zeitaufzeichnung_id' class='Item' onclick='return confdel()'>delete</a>";
echo "</td>\n";
echo " </tr>\n";
$i++;
}
}
echo "</tbody></table>\n";
echo "Gesamtdauer: $summe";
}
else
{
echo 'Sie sind derzeit keinen Projekten zugeordnet';
}
}
else
{
echo 'Fehler beim Ermitteln der Projekte';
}
?>
</td>
</tr>
</table>
</body>
</html>