This commit is contained in:
hainberg
2020-01-30 17:10:28 +01:00
22 changed files with 13 additions and 7767 deletions
@@ -184,14 +184,14 @@ class LehrauftragAkzeptieren extends Auth_Controller
}
/**
* Check if lectors latest active Verwendung has inkludierte Lehre
* Check if lectors latest Verwendung has inkludierte Lehre
* - inkludierte_lehre is null OR 0: freelancer lector -> has NO inkludierte Lehre
* - inkludierte_lehre -1: fix employed lector -> has inkludierte Lehre (all inclusive)
* - inkludierte_lehre > 0: fix employed lector -> has inkludierte Lehre (value is amount of hours included)
*/
public function checkInkludierteLehre()
{
$result = $this->BisverwendungModel->getLast($this->_uid);
$result = $this->BisverwendungModel->getLast($this->_uid, false);
if (hasData($result))
{
@@ -15,7 +15,7 @@ class Bisverwendung_model extends DB_Model
/**
* Get latest (active) Verwendung of the user.
* @param string $uid
* @param bool $active If false, returns latest Verwendung no matter if actual or not (ignores ending/beginning date).
* @param bool $active If false, returns latest Verwendung no matter if it is still actual.
* @return array
*/
public function getLast($uid, $active = true)
@@ -28,14 +28,14 @@ class Bisverwendung_model extends DB_Model
mitarbeiter_uid = '. $this->escape($uid). '
AND ( beginn <= NOW() OR beginn IS NULL )
AND ( ende >= NOW() OR ende IS NULL )
ORDER BY ende DESC NULLS LAST, beginn DESC NULLS LAST
ORDER BY ende DESC NULLS FIRST, beginn DESC NULLS LAST
';
}
else
{
$condition = '
mitarbeiter_uid = '. $this->escape($uid). '
ORDER BY ende DESC NULLS LAST, beginn DESC NULLS LAST
ORDER BY ende DESC NULLS FIRST, beginn DESC NULLS LAST
';
}
@@ -182,7 +182,8 @@ FROM
(SELECT
uid
FROM
public.tbl_benutzer
public.tbl_benutzer JOIN public.tbl_mitarbeiter ma
ON tbl_benutzer.uid = ma.mitarbeiter_uid
WHERE
person_id = tmp_projektbetreuung.person_id
ORDER BY aktiv DESC, updateaktivam DESC -- accept inactive as some person_ids have no active, but order them last
@@ -187,7 +187,8 @@ FROM
(SELECT
uid
FROM
public.tbl_benutzer
public.tbl_benutzer JOIN public.tbl_mitarbeiter ma
ON tbl_benutzer.uid = ma.mitarbeiter_uid
WHERE
person_id = tmp_projektbetreuung.person_id
ORDER BY aktiv DESC, updateaktivam DESC -- accept inactive as some person_ids have no active, but order them last
@@ -219,7 +219,8 @@ FROM
(SELECT
uid
FROM
public.tbl_benutzer
public.tbl_benutzer JOIN public.tbl_mitarbeiter ma
ON tbl_benutzer.uid = ma.mitarbeiter_uid
WHERE
person_id = tmp_projektbetreuung.person_id
ORDER BY aktiv DESC, updateaktivam DESC -- accept inactive as some person_ids have no active, but order them last
+2 -2
View File
@@ -70,7 +70,7 @@ if(defined('CIS_CHECK_PASSWORD_CHANGE') && CIS_CHECK_PASSWORD_CHANGE==true)
*/
function validURLCheck($param)
{
if(strstr($param,'://'))
if(strstr($param,':'))
{
// Der APP_ROOT muss in der URL vorkommen, sonfern es kein relativer Pfad ist
// HTTPS und HTTP
@@ -170,7 +170,7 @@ $db = new basis_db();
<script type="text/javascript" src="../vendor/components/jqueryui/jquery-ui.min.js"></script>
<script type="text/javascript" src="../include/js/jquery.ui.datepicker.translation.js"></script>
<script type="text/javascript" src="../vendor/jquery/sizzle/sizzle.js"></script>
<link rel="stylesheet" type="text/css" href="../vendor/twbs/bootstrap/dist/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="../vendor/twbs/bootstrap/dist/css/bootstrap.min.css">
</head>
<script type="text/javascript">
function changeSprache(sprache)
@@ -1,832 +0,0 @@
<?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/cis.config.inc.php');
require_once('../../../../include/basis_db.class.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');
include_once('../../../../include/Excel/excel.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
$user = get_uid();
if(!check_lektor($user))
die('Sie haben keine Berechtigung fuer diesen Bereich');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
if(isset($_GET['uebung_id']) && is_numeric($_GET['uebung_id']))
{
$uebung_id = $_GET['uebung_id'];
$uebung_obj = new uebung($uebung_id);
$lehreinheit_obj = new lehreinheit($uebung_obj->lehreinheit_id);
}
else
{
if(!isset($_GET['all']))
die('Fehlerhafte Parameteruebergabe');
else
{
$lehreinheit_id = $_GET['lehreinheit_id'];
$lehreinheit_obj = new lehreinheit($lehreinheit_id);
}
}
//Abgabedatei ausliefern
if (isset($_GET["download_abgabe"])){
$file=$_GET["download_abgabe"];
$uebung_id = $_GET["uebung_id"];
$uid = $_GET['uid'];
$ueb = new uebung();
$ueb->load_studentuebung($uid, $uebung_id);
$ueb->load_abgabe($ueb->abgabe_id);
$filename = BENOTUNGSTOOL_PATH."abgabe/".$ueb->abgabedatei;
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="'.$file.'"');
readfile($filename);
exit;
}
/*
$qry = "SELECT * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE
tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($lehreinheit_obj->lehreinheit_id, FHC_INTEGER)." AND
mitarbeiter_uid=".$db->db_add_param($user);
*/
$qry = "SELECT * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE
tbl_lehreinheit.lehrveranstaltung_id in(Select lehrveranstaltung_id from lehre.tbl_lehreinheit where lehreinheit_id=".$db->db_add_param($lehreinheit_obj->lehreinheit_id, FHC_INTEGER).") AND
mitarbeiter_uid=".$db->db_add_param($user);
if(!$result = $db->db_query($qry))
die('Fehler beim laden der Berechtigung');
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!($db->db_num_rows($result)>0 || $rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lehreinheit_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lehreinheit_obj->studiengang_kz)))
die('Sie haben keine Berechtigung f&uuml;r diesen Bereich');
// Beteiligte Gruppen laden
$gruppen = '';
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_obj->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$i=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$i++;
if($i<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
if(isset($_GET['output']) && $_GET['output']=='xls')
{
if(isset($_GET['all']))
{
//EXCEL VERSION / ALLE Kreuzerllisten
$le_obj = new lehreinheit();
$le_obj->load($lehreinheit_id);
$lv_obj = new lehrveranstaltung();
$lv_obj->load($le_obj->lehrveranstaltung_id);
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send("Kreuzerlliste_Gesamt_".$lv_obj->lehreverzeichnis. "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Kreuzerltool");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
$worksheet->write(0,0,'Gesamtübersicht '.$lv_obj->bezeichnung.' vom '.date('d.m.Y'), $format_bold);
$maxlength = array();
//Ueberschrift
$i=0;
$worksheet->write(1,$i,"Vorname", $format_title);
$maxlength[$i]=strlen('Vorname');
$worksheet->write(1,++$i,"Nachname", $format_title);
$maxlength[$i]=strlen('Nachname');
$worksheet->write(1,++$i,"Matrikelnr", $format_title);
$maxlength[$i]=strlen('Matrikelnr');
$worksheet->write(1,++$i,"Gruppe", $format_title);
$maxlength[$i]=strlen('Gruppe');
$ueb_obj = new uebung();
$ueb_obj->load_uebung($lehreinheit_id);
foreach($ueb_obj->uebungen as $row_ueb)
{
$worksheet->write(1,++$i,$row_ueb->bezeichnung, $format_title);
$maxlength[$i]=strlen($row_ueb->bezeichnung);
}
$worksheet->write(1,++$i,"Summe", $format_title);
$maxlength[$i]=8;
$worksheet->write(1,++$i,"Mitarbeit insgesamt", $format_title);
$maxlength[$i]=strlen('Mitarbeit insgesamt');
$worksheet->write(1,++$i,"Punkte insgesamt", $format_title);
$maxlength[$i]=strlen('Punkte insgesamt');
$worksheet->write(1,++$i,"Unterschrift", $format_title);
$maxlength[$i]=strlen('Unterschrift')+5;
if(isset($_GET['gruppe']) && $_GET['gruppe']!='')
{
$gruppe = $_GET['gruppe'];
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$db->db_add_param($gruppe);
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
{
if($row->gruppe_kurzbz!='')
{
$gruppe_bez = 'Gruppe '.$row->gruppe_kurzbz;
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz=".$db->db_add_param($row->gruppe_kurzbz)." AND studiensemester_kurzbz = ".$db->db_add_param($stsem)." ORDER BY nachname, vorname";
}
else
{
$gruppe_bez = 'Gruppe '.$row->verband.$row->gruppe;
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)."
AND semester=".$db->db_add_param($row->semester).
($row->verband!=''?" AND verband=".$db->db_add_param($row->verband):'').
($row->gruppe!=''?" AND gruppe=".$db->db_add_param($row->gruppe):'').
" ORDER BY nachname, vorname";
}
}
else
die('Gruppe konnte nicht ermittelt werden');
}
else
die('Gruppe konnte nicht ermittelt werden');
}
else
{
if(isset($_GET['lehreinheit_id']) && $_GET['lehreinheit_id']!='')
{
$lehreinheit_id = $_GET['lehreinheit_id'];
$gruppe_bez = 'Alle Studienrende';
//Alle Studenten die dieser Lehreinheit zugeordnet sind
$qry_stud = "SELECT
vw_student.uid, vorname, nachname, matrikelnr,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe
FROM
campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe,
public.tbl_studentlehrverband, lehre.tbl_lehreinheit
WHERE
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitgruppe.lehreinheit_id AND
vw_student.uid = tbl_benutzergruppe.uid AND
tbl_benutzergruppe.gruppe_kurzbz = tbl_lehreinheitgruppe.gruppe_kurzbz AND
vw_student.uid=tbl_studentlehrverband.student_uid AND
tbl_studentlehrverband.studiensemester_kurzbz=tbl_lehreinheit.studiensemester_kurzbz
UNION
SELECT
vw_student.uid, vorname, nachname, matrikelnr, tbl_studentlehrverband.semester,
tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe
FROM
campus.vw_student, lehre.tbl_lehreinheitgruppe, public.tbl_studentlehrverband, lehre.tbl_lehreinheit
WHERE
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
tbl_lehreinheitgruppe.studiengang_kz=tbl_studentlehrverband.studiengang_kz AND
tbl_lehreinheitgruppe.semester = tbl_studentlehrverband.semester AND
tbl_studentlehrverband.student_uid=vw_student.uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitgruppe.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz AND
((tbl_lehreinheitgruppe.verband<>'' AND
tbl_lehreinheitgruppe.gruppe<>'' AND
trim(tbl_lehreinheitgruppe.verband) = trim(tbl_studentlehrverband.verband) AND
trim(tbl_lehreinheitgruppe.gruppe) = trim(tbl_studentlehrverband.gruppe))
OR
(tbl_lehreinheitgruppe.verband<>'' AND
(trim(tbl_lehreinheitgruppe.gruppe)='' OR tbl_lehreinheitgruppe.gruppe is null) AND
trim(tbl_lehreinheitgruppe.verband) = trim(tbl_studentlehrverband.verband))
OR (tbl_lehreinheitgruppe.verband is null AND tbl_lehreinheitgruppe.gruppe is null)
)
ORDER BY nachname, vorname";
}
else
die('Fehler bei der Parameteruebergabe');
$gruppe='';
}
if($result_stud = $db->db_query($qry_stud))
{
$zeile=3;
while($row_stud = $db->db_fetch_object($result_stud))
{
$spalte=0;
$summe=0;
//vorname
$worksheet->write($zeile,$spalte,$row_stud->vorname);
if(strlen($row_stud->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->vorname);
//nachname
$worksheet->write($zeile,++$spalte,$row_stud->nachname);
if(strlen($row_stud->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->nachname);
//matrikelnr
$worksheet->write($zeile,++$spalte,'="'.$row_stud->matrikelnr.'"');
if(strlen($row_stud->matrikelnr)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->matrikelnr);
//Gruppe
$worksheet->write($zeile,++$spalte,$row_stud->semester.$row_stud->verband.$row_stud->gruppe);
if(strlen($row_stud->semester.$row_stud->verband.$row_stud->gruppe)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->semester.$row_stud->verband.$row_stud->gruppe);
foreach($ueb_obj->uebungen as $row_ueb)
{
$qry = "SELECT sum(punkte) as punkte FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id)
WHERE uebung_id=".$db->db_add_param($row_ueb->uebung_id)." AND student_uid=".$db->db_add_param($row_stud->uid)." AND vorbereitet=true";
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
{
$punkte = $row->punkte;
$summe +=$punkte;
}
else
$punkte = 'failed';
}
else
$punkte='failed';
//punkte auf uebung
$worksheet->write($zeile,++$spalte,($punkte!=''?$punkte:'0'));
}
//summe
$worksheet->write($zeile,++$spalte,$summe);
//mitarbeit
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($row_stud->uid);
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$mitarbeit=$row->mitarbeit;
else
$mitarbeit='failed';
else
$mitarbeit='failed';
$worksheet->write($zeile,++$spalte,($row->mitarbeit!=''?$mitarbeit:'0'));
//punkte insgesamt
$worksheet->write($zeile,++$spalte,($summe+$mitarbeit), $format_bold);
$zeile++;
}
for($i=0;$i<count($maxlength);$i++)
{
$worksheet->setColumn(0, $i, $maxlength[$i]);
}
}
$workbook->close();
}
else
{
//EXCEL VERSION / Einzelne Kreuzerlliste
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send("Kreuzerltool". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Kreuzerltool");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
$worksheet->write(0,0,$uebung_obj->bezeichnung.' am '.date('d.m.Y').' '.$gruppen, $format_bold);
$maxlength = array();
//Ueberschrift
$i=0;
$worksheet->write(1,$i,"Vorname", $format_title);
$maxlength[$i]=strlen('Vorname');
$worksheet->write(1,++$i,"Nachname", $format_title);
$maxlength[$i]=strlen('Nachname');
$worksheet->write(1,++$i,"Matrikelnr", $format_title);
$maxlength[$i]=strlen('Matrikelnr');
//$worksheet->write(1,++$i,"Gruppe", $format_title);
//$maxlength[$i]=strlen('Gruppe');
$beispiel_obj = new beispiel();
$beispiel_obj->load_beispiel($uebung_id);
foreach($beispiel_obj->beispiele as $row_bsp)
{
$worksheet->write(1,++$i,$row_bsp->bezeichnung, $format_title);
$maxlength[$i]=strlen($row_bsp->bezeichnung);
}
$worksheet->write(1,++$i,"Punkte heute", $format_title);
$maxlength[$i]=strlen('Punkte heute');
$worksheet->write(1,++$i,"Mitarbeit heute", $format_title);
$maxlength[$i]=strlen('Mitarbeit_heute');
$worksheet->write(1,++$i,"Punkte insgesamt", $format_title);
$maxlength[$i]=strlen('Punkte insgesamt');
$worksheet->write(1,++$i,"Mitarbeit insgesamt", $format_title);
$maxlength[$i]=strlen('Mitarbeit insgesamt');
$worksheet->write(1,++$i,"Unterschrift", $format_title);
$maxlength[$i]=strlen('Unterschrift')+5;
if(isset($_GET['gruppe']) && $_GET['gruppe']!='')
{
$gruppe = $_GET['gruppe'];
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$db->db_add_param($gruppe);
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
{
if($row->gruppe_kurzbz!='')
{
$gruppe_bez = 'Gruppe '.$row->gruppe_kurzbz;
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe
FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid)
WHERE gruppe_kurzbz=".$db->db_add_param($row->gruppe_kurzbz)." AND studiensemester_kurzbz=".$db->db_add_param($stsem)." ORDER BY nachname, vorname";
}
else
{
$gruppe_bez = 'Gruppe '.$row->verband.$row->gruppe;
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe FROM campus.vw_student
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)."
AND semester=".$db->db_add_param($row->semester).
($row->verband!=''?" AND verband=".$db->db_add_param($row->verband):'').
($row->gruppe!=''?" AND gruppe=".$db->db_add_param($row->gruppe):'').
" ORDER BY nachname, vorname";
}
}
else
die('Gruppe konnte nicht ermittelt werden');
}
else
die('Gruppe konnte nicht ermittelt werden');
$lehreinheit_id = $uebung_obj->lehreinheit_id;
}
else
{
if(isset($_GET['lehreinheit_id']) && $_GET['lehreinheit_id']!='')
{
$lehreinheit_id = $_GET['lehreinheit_id'];
$gruppe_bez = 'Alle Studienrende';
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
//Alle Studenten die dieser Lehreinheit zugeordnet sind
/*
$qry_stud = "SELECT vw_student.uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe
FROM campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe
WHERE tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND
vw_student.uid = tbl_benutzergruppe.uid AND
tbl_benutzergruppe.gruppe_kurzbz = tbl_lehreinheitgruppe.gruppe_kurzbz
UNION
SELECT vw_student.uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe
FROM campus.vw_student, lehre.tbl_lehreinheitgruppe WHERE
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
tbl_lehreinheitgruppe.studiengang_kz=vw_student.studiengang_kz AND
tbl_lehreinheitgruppe.semester = vw_student.semester AND
((tbl_lehreinheitgruppe.verband<>'' AND
tbl_lehreinheitgruppe.gruppe<>'' AND
trim(tbl_lehreinheitgruppe.verband) = trim(vw_student.verband) AND
trim(tbl_lehreinheitgruppe.gruppe) = trim(vw_student.gruppe))
OR
(tbl_lehreinheitgruppe.verband<>'' AND
(trim(tbl_lehreinheitgruppe.gruppe)='' OR tbl_lehreinheitgruppe.gruppe is null) AND
trim(tbl_lehreinheitgruppe.verband) = trim(vw_student.verband))
OR (tbl_lehreinheitgruppe.verband is null AND tbl_lehreinheitgruppe.gruppe is null)
)
ORDER BY nachname, vorname";
*/
}
else
die('Fehler bei der Parameteruebergabe');
$gruppe='';
}
if($result_stud = $db->db_query($qry_stud))
{
$zeile=3;
while($row_stud = $db->db_fetch_object($result_stud))
{
$spalte=0;
$punkte_heute=0;
//vorname
$worksheet->write($zeile,$spalte,$row_stud->vorname);
if(strlen($row_stud->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->vorname);
//nachname
$worksheet->write($zeile,++$spalte,$row_stud->nachname);
if(strlen($row_stud->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->nachname);
//matrikelnr
$worksheet->write($zeile,++$spalte,'="'.$row_stud->matrikelnr.'"');
if(strlen($row_stud->matrikelnr)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->matrikelnr);
//Gruppe
/*
$worksheet->write($zeile,++$spalte,$row_stud->semester.$row_stud->verband.$row_stud->gruppe);
if(strlen($row_stud->semester.$row_stud->verband.$row_stud->gruppe)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row_stud->semester.$row_stud->verband.$row_stud->gruppe);
*/
foreach($beispiel_obj->beispiele as $row_bsp)
{
$studentbeispiel_obj = new beispiel();
$studentbeispiel_obj->load_studentbeispiel($row_stud->uid, $row_bsp->beispiel_id);
if($studentbeispiel_obj->vorbereitet)
$punkte = $row_bsp->punkte;
else
$punkte = 0;
$punkte_heute +=$punkte;
//punkte auf uebung
$worksheet->write($zeile,++$spalte,$punkte);
}
//punkte heute
$worksheet->write($zeile,++$spalte,$punkte_heute);
//mitarbeit heute
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($row_stud->uid);
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$worksheet->write($zeile,++$spalte,($row->mitarbeit_heute!=''?$row->mitarbeit_heute:'0'));
else
$worksheet->write($zeile,++$spalte,'failed');
else
$worksheet->write($zeile,++$spalte,'failed');
//punkte insgesamt
$qry = "SELECT sum(tbl_beispiel.punkte) AS gesamt_ohne_mitarbeit FROM campus.tbl_uebung, campus.tbl_beispiel, campus.tbl_studentbeispiel WHERE
tbl_studentbeispiel.student_uid=".$db->db_add_param($row_stud->uid)." AND
tbl_studentbeispiel.vorbereitet=true AND
tbl_uebung.lehreinheit_id=".$db->db_add_param($uebung_obj->lehreinheit_id, FHC_INTEGER)." AND
tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
tbl_beispiel.beispiel_id=tbl_studentbeispiel.beispiel_id
";
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$worksheet->write($zeile,++$spalte,($row->gesamt_ohne_mitarbeit!=''?$row->gesamt_ohne_mitarbeit:'0'));
else
$worksheet->write($zeile,++$spalte,'failed');
else
$worksheet->write($zeile,++$spalte,'failed');
//mitarbeit insgesamt
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE student_uid=".$db->db_add_param($row_stud->uid)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
if($result = $db->db_query($qry))
if($row = $db->db_fetch_object($result))
$worksheet->write($zeile,++$spalte,($row->mitarbeit_heute!=''?$row->mitarbeit_heute:'0'));
else
$worksheet->write($zeile,++$spalte,'failed');
else
$worksheet->write($zeile,++$spalte,'failed');
$zeile++;
}
for($i=0;$i<count($maxlength);$i++)
$worksheet->setColumn(0, $i, $maxlength[$i]);
}
$workbook->close();
}
}
else
{
//HTML VERSION
?>
<!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">
<title>Kreuzerltool</title>
<script language="Javascript">
function addUser(student_uid)
{
var upd, upd_f;
upd = document.forms[0].update_ids;
upd_f = "update_" + student_uid;
if (document.forms[0].elements[upd_f].checked != true)
{
document.forms[0].elements[upd_f].checked = true;
upd.value += student_uid + "#";
}
}
</script>
</head>
<body>
<?php
if(isset($_POST['submit']))
{
//Update der Daten
$uids = explode('#',$_POST['update_ids']);
$uebung_obj = new uebung($uebung_id);
$beispiel_obj = new beispiel();
$beispiel_obj->load_beispiel($uebung_id);
$error=false;
foreach($uids as $uid)
{
if($uid!='')
{
if ($uebung_obj->beispiele)
{
foreach($beispiel_obj->beispiele as $bsp)
{
if(isset($_POST['update_'.$uid.'_'.$bsp->beispiel_id]))
$vorbereitet=true;
else
$vorbereitet=false;
$bsp_obj = new beispiel();
if(!$bsp_obj->studentbeispiel_exists($uid,$bsp->beispiel_id))
{
$new=true;
$bsp_obj->insertamum = date('Y-m-d H:i:s');
$bsp_obj->insertvon = $user;
}
else
{
$bsp_obj->load_studentbeispiel($uid, $bsp->beispiel_id);
$new=false;
}
$bsp_obj->student_uid = $uid;
$bsp_obj->beispiel_id = $bsp->beispiel_id;
$bsp_obj->vorbereitet = $vorbereitet;
$bsp_obj->updateamum = date('Y-m-d H:i:s');
$bsp_obj->updatevon = $user;
if(!$bsp_obj->studentbeispiel_save($new))
$error=true;
}
}
else
{
if (!$uebung_obj->load_studentuebung($uid,$uebung_id))
{
$uebung_obj->student_uid = $uid;
$uebung_obj->mitarbeiter_uid = $user;
$uebung_obj->abgabe_id = null;
$uebung_obj->note = $_POST['update_'.$uid.'_note'];
$uebung_obj->mitarbeitspunkte = null;
$uebung_obj->punkte = null;
$uebung_obj->anmerkung = null;
$uebung_obj->benotungsdatum = date("Y-m-d H:i:s");
$uebung_obj->updateamum = null;
$uebung_obj->updatevon = null;
$uebung_obj->insertamum = date("Y-m-d H:i:s");
$uebung_obj->insertvon = $user;
$new = true;
}
else
{
$uebung_obj->load_studentuebung($uid,$uebung_id);
$uebung_obj->mitarbeiter_uid = $user;
$uebung_obj->note = $_POST['update_'.$uid.'_note'];
$uebung_obj->benotungsdatum = date("Y-m-d H:i:s");
$uebung_obj->updateamum = date("Y-m-d H:i:s");
$uebung_obj->updatevon = $user;
$new = false;
}
$uebung_obj->studentuebung_save($new);
}
}
}
if(!$error)
echo "Die &Auml;nderungen wurden erfolgreich gespeichert";
else
echo "<span class='error'>Fehler beim Speichern der &Auml;nderungen</span>";
}
$uebung_obj = new uebung($uebung_id);
$lehreinheit_obj = new lehreinheit($uebung_obj->lehreinheit_id);
$beispiel_obj = new beispiel();
$lehrveranstaltung_obj = new lehrveranstaltung($lehreinheit_obj->lehrveranstaltung_id);
$stg_obj = new studiengang($lehrveranstaltung_obj->studiengang_kz);
$beispiel_obj->load_beispiel($uebung_id);
if ($uebung_obj->beispiele)
$anzahl = count($beispiel_obj->beispiele);
else
$anzahl = 1;
if(isset($_GET['gruppe']) && $_GET['gruppe']!='')
{
$gruppe = $_GET['gruppe'];
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$db->db_add_param($gruppe);
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
{
if($row->gruppe_kurzbz!='')
{
$gruppe_bez = 'Gruppe '.$row->gruppe_kurzbz;
$qry_stud = "SELECT uid, vorname, nachname FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid)
WHERE gruppe_kurzbz=".$db->db_add_param($row->gruppe_kurzbz)." AND studiensemester_kurzbz = ".$db->db_add_param($stsem)."
ORDER BY nachname, vorname";
}
else
{
$gruppe_bez = 'Gruppe '.$row->verband.$row->gruppe;
$qry_stud = "SELECT uid, vorname, nachname FROM campus.vw_student
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)."
AND semester=".$db->db_add_param($row->semester).
($row->verband!=''?" AND verband=".$db->db_add_param($row->verband):'').
($row->gruppe!=''?" AND gruppe=".$db->db_add_param($row->gruppe):'').
" ORDER BY nachname, vorname";
}
}
else
die('Gruppe konnte nicht ermittelt werden');
}
else
die('Gruppe konnte nicht ermittelt werden');
$lehreinheit_id = '';
}
else
{
if(isset($_GET['lehreinheit_id']) && $_GET['lehreinheit_id']!='')
{
$lehreinheit_id = $_GET['lehreinheit_id'];
$gruppe_bez = 'Alle Studierende';
//Alle Studenten die dieser lehreinheit zugeordnet sind
// studentenquery
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
/*
$qry_stud = "SELECT vw_student.uid, vorname, nachname FROM campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe
WHERE tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
vw_student.uid = tbl_benutzergruppe.uid AND
tbl_benutzergruppe.gruppe_kurzbz = tbl_lehreinheitgruppe.gruppe_kurzbz AND
tbl_benutzergruppe.studiensemester_kurzbz = '$stsem'
UNION
SELECT vw_student.uid, vorname, nachname FROM campus.vw_student, lehre.tbl_lehreinheitgruppe WHERE
tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
tbl_lehreinheitgruppe.studiengang_kz=vw_student.studiengang_kz AND
tbl_lehreinheitgruppe.semester = vw_student.semester AND
((tbl_lehreinheitgruppe.verband<>'' AND
tbl_lehreinheitgruppe.gruppe<>'' AND
tbl_lehreinheitgruppe.verband is not null AND
tbl_lehreinheitgruppe.gruppe is not null AND
trim(tbl_lehreinheitgruppe.verband) = trim(vw_student.verband) AND
trim(tbl_lehreinheitgruppe.gruppe) = trim(vw_student.gruppe))
OR
(tbl_lehreinheitgruppe.verband<>'' AND tbl_lehreinheitgruppe.verband is not null AND
(trim(tbl_lehreinheitgruppe.gruppe)='' OR tbl_lehreinheitgruppe.gruppe is null) AND
trim(tbl_lehreinheitgruppe.verband) = trim(vw_student.verband))
OR (tbl_lehreinheitgruppe.verband is null AND tbl_lehreinheitgruppe.gruppe is null)
)
ORDER BY nachname, vorname";
*/
}
else
die('Fehler bei der Parameteruebergabe');
$gruppe='';
}
echo "<form method='POST' action='anwesenheitsliste.php?output=html&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&gruppe=$gruppe&stsem=$stsem'>";
echo "<input type='hidden' name='update_ids' value=''>";
echo "<table border='1'>
<tr>
<td colspan='".($anzahl+3)."' width='100%'>
<table width='100%'>
<tr>
<td><font class='headline'>$lehrveranstaltung_obj->semester.Semester</font></td>
<td align='center'><font class='headline'>$stg_obj->kuerzel - $lehrveranstaltung_obj->bezeichnung - $uebung_obj->bezeichnung - $gruppe_bez - $gruppen</font></td>
<td align='right'><font class='headline'>".date('d.m.Y')."</font></td>
</tr>
</table>
</td>
</tr>";
echo "<tr><td align='center'><b>Name</b></td>";
if (!$uebung_obj->beispiele)
echo "<td>Note</td>";
else
{
foreach($beispiel_obj->beispiele as $row)
{
echo "<td>$row->bezeichnung</td>";
}
}
echo "<td align='center' width='200'><b>Unterschrift</b></td><td></td></tr>\n";
if($result = $db->db_query($qry_stud))
{
while($row_stud = $db->db_fetch_object($result))
{
$filename = '';
$su_obj = new uebung($uebung_id);
$su_obj->load_studentuebung($row_stud->uid, $uebung_id);
if ($su_obj->abgabe_id)
{
$su_obj->load_abgabe($su_obj->abgabe_id);
$filename = $su_obj->abgabedatei;
}
else
$filename='';
echo "<tr onMouseOver=\"this.style.backgroundColor='#c7dfe8'\" onMouseOut=\"this.style.backgroundColor='#ffffff'\">
<td nowrap><input type='checkbox' name='update_$row_stud->uid' disabled>&nbsp;<b>$row_stud->nachname</b>&nbsp;$row_stud->vorname $row_stud->uid</td>";
if (!$uebung_obj->beispiele)
{
$studentuebung_obj = new uebung();
$studentuebung_obj->load_studentuebung($row_stud->uid,$uebung_id);
echo "<td align='center'><input type='text' name='update_".$row_stud->uid."_note' onchange=\"addUser('$row_stud->uid');\" value='".$studentuebung_obj->note."' size='3'></td>\n";
}
else
{
foreach($beispiel_obj->beispiele as $row_bsp)
{
$studentbeispiel_obj = new beispiel();
$studentbeispiel_obj->load_studentbeispiel($row_stud->uid, $row_bsp->beispiel_id);
echo "<td align='center'><input type='checkbox' name='update_".$row_stud->uid."_".$row_bsp->beispiel_id."' onClick=\"addUser('$row_stud->uid');\" ".($studentbeispiel_obj->vorbereitet?'checked':'').">".($studentbeispiel_obj->probleme?'<i><small>P</small></i>':'')."</td>\n";
}
}
echo "<td>&nbsp;</td>";
if ($filename != "")
echo "<td><a href='anwesenheitsliste.php?uid=$row_stud->uid&output=html&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&stsem=$stsem&download_abgabe=$filename'>Abgabe</a></td>\n";
else if ($uebung_obj->abgabe)
echo "<td><span style='color:red;'>Fehlt!</span></td>";
else
echo "<td></td>";
echo "</tr>\n";
}
}
echo '</table>';
echo "<br><br><table width='100%'><tr><td align='right'><input type='submit' name='submit' value='Änderungen Speichern'></td></tr></table>";
echo '</form>'
?>
</body>
</html>
<?php
}
@@ -1,392 +0,0 @@
<?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/cis.config.inc.php');
require_once('../../../../include/basis_db.class.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');
require_once('../../../../include/phrasen.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
$sprache = getSprache();
$p = new phrasen($sprache);
?>
<!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">
<title><?php echo $p->t('benotungstool/benotungstool');?></title>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
//-->
</script>
</head>
<body>
<?php
$user = get_uid();
if(!check_lektor($user))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$show_excel_link = false;
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
//Kopfzeile
echo '<table width="100%">';
echo ' <tr><td>';
echo '<h1>&nbsp;'.$p->t('benotungstool/benotungstool');
echo '</h1></td><td align="right">'."\n";
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
$stsem_obj->getAll();
//Studiensemester DropDown
$stsem_content = $p->t('global/studiensemester').": <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">\n";
foreach($stsem_obj->studiensemester as $studiensemester)
{
$selected = ($stsem == $studiensemester->studiensemester_kurzbz?'selected':'');
$stsem_content.= "<OPTION value='anwesenheitstabelle.php?lvid=$lvid&stsem=$studiensemester->studiensemester_kurzbz' $selected>$studiensemester->studiensemester_kurzbz</OPTION>\n";
}
$stsem_content.= "</SELECT>\n";
//Lehreinheiten laden
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
else
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE mitarbeiter_uid=".$db->db_add_param($user).") AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>1)
{
//Lehreinheiten DropDown
echo $p->t('global/lehreinheit').": <SELECT name='lehreinheit_id' onChange=\"MM_jumpMenu('self',this,0)\">\n";
while($row = $db->db_fetch_object($result))
{
if($lehreinheit_id=='')
$lehreinheit_id=$row->lehreinheit_id;
$selected = ($row->lehreinheit_id == $lehreinheit_id?'selected':'');
$qry_lektoren = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_lektoren = $db->db_query($qry_lektoren))
{
$lektoren = '( ';
$i=0;
while($row_lektoren = $db->db_fetch_object($result_lektoren))
{
$lektoren .= $row_lektoren->kurzbz;
$i++;
if($i<$db->db_num_rows($result_lektoren))
$lektoren.=', ';
else
$lektoren.=' ';
}
$lektoren .=')';
}
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$gruppen = '';
$i=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$i++;
if($i<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
echo "<OPTION value='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->lfbez-$row->lehrform_kurzbz - $gruppen $lektoren</OPTION>\n";
}
echo '</SELECT> ';
}
else
{
if($row = $db->db_fetch_object($result))
$lehreinheit_id = $row->lehreinheit_id;
}
}
else
{
echo $p->t('benotungstool/fehlerBeimAuslesen');
}
echo $stsem_content;
echo '</td><tr></table>';
echo '<table width="100%"><tr>';
echo '<td class="tdwidth10">&nbsp;</td>';
echo "<td>\n";
echo "<b>".$lv_obj->bezeichnung_arr[$sprache]."</b><br>";
if($lehreinheit_id=='')
die($p->t('benotungstool/keinePassendeLehreinheitGefunden'));
//Menue
include("menue.inc.php");
/*
echo "\n<!--Menue-->\n";
echo "<br>
<a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Verwaltung</font>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Anwesenheits- und Übersichtstabelle</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Studentenpunkte verwalten</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Statistik</font></a>
<br><br>
<!--Menue Ende-->\n";
*/
echo "<h3>".$p->t('benotungstool/anwesenheitstabelle')."</h3>";
/*
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id);
if(count($uebung_obj->uebungen)>0)
{
echo "<table width='100%'><tr><td valign='top'>";
echo "Wählen Sie bitte eine Kreuzerlliste aus: <SELECT name='uebung' onChange=\"MM_jumpMenu('self',this,0)\">\n";
foreach ($uebung_obj->uebungen as $row)
{
if($uebung_id=='')
$uebung_id=$row->uebung_id;
if($uebung_id == $row->uebung_id)
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id' $selected>";
//Freigegeben = +
//Nicht Freigegeben = -
if($datum_obj->mktime_fromtimestamp($row->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($row->freigabebis)>time())
echo '+ ';
else
echo '- ';
echo $row->bezeichnung;
echo '</OPTION>';
}
echo '</SELECT>';
echo "</td>
<td>
<table>
<tr>
<td><b>+</b>...</td>
<td>Kreuzerlliste ist <u>freigeschalten</u>.</td>
</tr>
<tr>
<td><b>-</b>...</td>
<td>Kreuzerlliste ist <u>nicht freigeschalten</u>.</td>
</tr>
</table>
</td>
</tr></table>";
}
else
die("Derzeit gibt es keine Uebungen");
*/
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,1);
if(count($uebung_obj->uebungen)>0)
{
echo "<table width='100%'><tr><td valign='top'>";
echo "<br>".$p->t('benotungstool/waehlenSieEineAufgabeAus').": <SELECT name='uebung' onChange=\"MM_jumpMenu('self',this,0)\">\n";
echo "<option value='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=' selected></option>";
foreach ($uebung_obj->uebungen as $row)
{
if($uebung_id == $row->uebung_id)
$selected = 'selected';
else
$selected = '';
if($uebung_id=='')
$uebung_id=$row->uebung_id;
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id);
if(count($subuebung_obj->uebungen)>0)
{
$disabled = 'disabled';
$selected = '';
}
else
$disabled = '';
echo "<OPTION style='background-color:#cccccc;' value='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id' $selected $disabled>";
echo $row->bezeichnung;
echo '</OPTION>';
if(count($subuebung_obj->uebungen)>0)
{
foreach ($subuebung_obj->uebungen as $subrow)
{
if($uebung_id=='')
$uebung_id=$subrow->uebung_id;
if($uebung_id == $subrow->uebung_id)
{
$selected = 'selected';
if ($subrow->beispiele)
$show_excel_link = true;
}
else
{
$selected = '';
}
echo "<OPTION value='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id' $selected>";
//Freigegeben = +
//Nicht Freigegeben = -
if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($subrow->freigabebis)>time())
echo ' + ';
else
echo ' - ';
echo $subrow->bezeichnung;
echo '</OPTION>';
}
}
}
echo '</SELECT>';
echo '</td>';
echo "<td>
<table>
<tr>
<td><b>+</b>...</td>
<td><u>".$p->t('benotungstool/freigeschaltet')."</u>.</td>
</tr>
<tr>
<td><b>-</b>...</td>
<td><u>".$p->t('benotungstool/nichtFreigeschaltet')."</u>.</td>
</tr>
</table>
</td>
</tr></table>";
}
else
die($p->t('benotungstool/derzeitSindKeineUebungenAngelegt'));
$uebung_obj = new uebung();
$uebung_obj->load($uebung_id);
echo "<h3><u>$uebung_obj->bezeichnung</u></h3>";
echo '<table width="100%"><tr><td>';
echo "<ul><li><a href='anwesenheitsliste.php?output=html&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&stsem=$stsem' target='_blank'>".$p->t('benotungstool/alleStudierenden')."</a>&nbsp;";
if ($show_excel_link)
echo "<a href='anwesenheitsliste.php?output=xls&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&stsem=$stsem'><img src='../../../../skin/images/excel.gif' width=16 height=16></a>";
echo "</li>";
echo '</ul>';
echo "</td><!--<td valign='top'>
<ul><li>
<a href='anwesenheitsliste.php?output=xls&lehreinheit_id=$lehreinheit_id&all'>Gesamt&uuml;bersicht&nbsp;<img src='../../../../skin/images/excel.gif' width=16 height=16></a>
</li></ul>
</td>--></tr></table>";
?>
</td></tr>
</table>
</body>
</html>
@@ -1,874 +0,0 @@
<?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/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
// ---------------- Standart Include Dateien einbinden
require_once('../../../../include/studiengang.class.php');
require_once('../../../../include/studiensemester.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/functions.inc.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');
// ***********************************************************************************************
// Datenbankverbindungen zu Classen
// ***********************************************************************************************
if (!$le_obj = new lehreinheit())
die('Fehler beim Oeffnen der Lehreinheit');
if (!$legrp_obj = new lehreinheitgruppe())
die('Fehler beim Oeffnen der Lehreinheitgruppe');
if (!$lv_obj = new lehrveranstaltung())
die('Fehler beim Oeffnen der Lehrveranstaltung');
if (!$stg_obj = new studiengang())
die('Fehler beim Oeffnen der Studieng&auml;nge');
if (!$stsem = new studiensemester())
die('Fehler beim Oeffnen der Studiensemester');
// @$studiensemester_kurzbz Studiensemester xxJJJJ - xx fuer SS Sommer oder WW Winter
if (!$stsem_aktuell = $stsem->getakt())
$stsem_aktuell = $stsem->getaktorNext();
##echo "<hr> GET <br> ";
#var_dump($_GET);
#echo "<hr> POST <br> ";
#var_dump($_POST);
$errormsg=array();
$error=0;
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Rechte f&uuml;r diese Seite');
// @studiensemester_kurzbz Studiensemester WSxxxx SSxxxx
$studiensemester_kurzbz=(isset($_GET['studiensemester_kurzbz'])?trim($_GET['studiensemester_kurzbz']):$stsem_aktuell);
// $lehrveranstaltung_id Lehrveranstaltung zur Lehreinheit
$lehrveranstaltung_id=(isset($_GET['lvid'])?trim($_GET['lvid']):(isset($_GET['lehrveranstaltung_id'])?trim($_GET['lehrveranstaltung_id']):''));
// @$studiengang_kz Studiengang
$studiengang_kz=(isset($_GET['studiengang_kz'])?trim($_GET['studiengang_kz']):227);
// @$semester Semester des Studienganges
$semester=(isset($_GET['semester'])?trim($_GET['semester']):1);
// @$lehreinheit_id Lehreinheit
$lehreinheit_id=(isset($_GET['leid'])?trim($_GET['leid']):(isset($_GET['lehreinheit_id'])?trim($_GET['lehreinheit_id']):''));
$uebung_id_source=(isset($_GET['uebung_id_source'])?$_GET['uebung_id_source']:(isset($_GET['uebung_id'])?trim($_GET['uebung_id']):''));
// ------------- Target
// @studiensemester_kurzbz Studiensemester WSxxxx SSxxxx
$studiensemester_kurzbz_target=(isset($_GET['studiensemester_kurzbz_target'])?trim($_GET['studiensemester_kurzbz_target']):$stsem_aktuell);
// $lehrveranstaltung_id Lehrveranstaltung zur Lehreinheit
$lehrveranstaltung_id_target=(isset($_GET['lvid_target'])?trim($_GET['lvid_target']):(isset($_GET['lehrveranstaltung_id_target'])?trim($_GET['lehrveranstaltung_id_target']):''));
// @$studiengang_kz Studiengang
$studiengang_kz_target=(isset($_GET['studiengang_kz_target'])?trim($_GET['studiengang_kz_target']):227);
// @$semester Semester des Studienganges
$semester_target=(isset($_GET['semester_target'])?trim($_GET['semester_target']):$semester);
// @$lehreinheit_id_target Lehreinheit
$lehreinheit_id_target=(isset($_GET['lehreinheit_id_target'])?trim($_GET['lehreinheit_id_target']):'');
// @$lehreinheit_id_sel Lehreinheit
$lehreinheit_id_sel=(isset($_GET['lehreinheit_id_sel'])?trim($_GET['lehreinheit_id_sel']):'');
// @$lehreinheit_id_sel Lehreinheit
$uebung_id_sel=(isset($_GET['uebung_id_sel'])?trim($_GET['uebung_id_sel']):'');
if ($uebung_id_sel!='' && !is_array($uebung_id_sel))
$uebung_id_sel=array($uebung_id_sel);
if ($uebung_id_source!='' && !is_array($uebung_id_source))
$uebung_id_source=array($uebung_id_source);
#var_dump($uebung_id_source);
if (!empty($lehreinheit_id_sel))
{
if ($le_obj->load($lehreinheit_id_sel))
{
$studiensemester_kurzbz=$le_obj->studiensemester_kurzbz;
$lehrveranstaltung_id=$le_obj->lehrveranstaltung_id;
$lehreinheit_id=$lehreinheit_id_sel;
if ($lv_obj->load($lehrveranstaltung_id))
{
$studiengang_kz=$lv_obj->studiengang_kz;
$semester=$lv_obj->semester;
}
else
{
$errormsg[]='Lehrveranstaltung '.$lehrveranstaltung_id.' wurden nicht gefunden! '.$lv_obj->errormsg;
}
}
else
{
$errormsg[]='Lehreinheit '.$lehreinheit_id_sel.' wurden nicht gefunden! '.$le_obj->errormsg;
}
}
else if(!isset($_GET['kopieren']) && $uebung_id_source=='' && $uebung_id_sel!='' )
{
#var_dump($uebung_id_sel);
$uebung_id_source=$uebung_id_sel;
}
#var_dump($uebung_id_source);
// Es wurde nur eine Uebungsid uebergeben, und noch keine Aktion gedrueckt
if(!isset($_GET['kopieren']) && $uebung_id_source!='')
{
if (!is_array($uebung_id_source) && !empty($uebung_id_source))
$uebung_id_source=array($uebung_id_source);
$ueb_0 = new uebung($uebung_id_source[0]);
#var_dump($ueb_0);
if ($lehreinheit_id=$ueb_0->lehreinheit_id)
{
if ($le_obj->load($lehreinheit_id))
{
$lehrveranstaltung_id = $le_obj->lehrveranstaltung_id;
$studiensemester_kurzbz = $le_obj->studiensemester_kurzbz;
// @$lehrveranstaltung_id Lehrveranstaltung
if ($lehrveranstaltung_id)
{
if ($lv_obj->load($lehrveranstaltung_id))
{
$studiengang_kz = $lv_obj->studiengang_kz;
$semester = $lv_obj->semester;
}
else
{
$bAnzeige=false;
$errormsg[]='Lehrveranstaltung wurde nicht gefunden '.addslashes($lehreinheit_id).' '.$lv_obj->errormsg;
}
}
}
else
{
$bAnzeige=false;
$errormsg[]='Lehreinheit wurde nicht gefunden '.addslashes($lehreinheit_id).' '.$le_obj->errormsg;
}
}
else
{
$errormsg[]='&Uuml;bung wurde nicht gefunden '.addslashes($uebung_id_source).' '.$ueb_0->errormsg;
}
}
// Aktion wurde gedruckt
if(isset($_GET['kopieren']))
{
if (!is_array($uebung_id_source) && !empty($uebung_id_source) )
$uebung_id_source=array($uebung_id_source);
if (!is_array($uebung_id_source) || count($uebung_id_source)<1 )
{
$error=true;
$errormsg[]="<span class='error'>&Uuml;bung muss ausgew&auml;hlt sein!</span>";
}
if (!is_numeric($lehreinheit_id_target))
{
$error=true;
$errormsg[]="<span class='error'>Lehreinheit muss ausgew&auml;hlt sein!</span>";
}
if (!$error)
{
$db->db_query('BEGIN;');
reset($uebung_id_source);
foreach ($uebung_id_source as $ueb)
{
$copy_insert = 0;
$copy_update = 0;
$copy_insert_bsp = 0;
$copy_update_bsp = 0;
$error=false;
$ueb_1 = new uebung($ueb);
$lehreinheit_id_unterord=$ueb_1->lehreinheit_id;
$nummer_source = $ueb_1->nummer;
$qry = "SELECT * from campus.tbl_uebung where nummer = ".myaddslashes($nummer_source)." and lehreinheit_id = ".myaddslashes($lehreinheit_id_target).";";
//echo $qry;
if($result1 = $db->db_query($qry))
{
if ($db->db_num_rows($result1) >0)
{
$row1 = $db->db_fetch_object($result1);
$ueb_1_target =new uebung($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();
$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;
$errormsg[]="<span class='error'>Haupt&uuml;bung konnte nicht kopiert werden!</span>";
}
else
{
// Subübungen durchlaufen
$ueb_2 = new uebung();
$ueb_2->load_uebung($lehreinheit_id_unterord,2,$ueb);
$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 = $db->db_query($qry2);
if ($db->db_num_rows($result2) >0)
{
$row2 = $db->db_fetch_object($result2);
$ueb_2_target =new uebung($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();
$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;
$errormsg[]="<span class='error'>&Uuml;bung konnte nicht kopiert werden!</span>";
}
//angabedatei syncen
if (($error == 0) and $subrow->angabedatei != "")
{
$angabedatei_source = $subrow->angabedatei;
$angabedatei_target = makeUploadName($db,'angabe', $lehreinheit_id_target, $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."'";
$db->db_query($angabeupdate);
}
if (($error == 0) and $ueb_2_target->beispiele)
{
// beispiele synchronisieren
$bsp_obj = new beispiel();
$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 = $db->db_query($qrybsp);
if ($db->db_num_rows($resultbsp) >0)
{
$rowbsp = $db->db_fetch_object($resultbsp);
$bsp_target =new beispiel($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();
$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;
$errormsg[]="<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."'";
$db->db_query($clear);
$qry_ns_source = "SELECT * from campus.tbl_notenschluesseluebung where uebung_id = '".$ueb."'";
$result_ns_source = $db->db_query($qry_ns_source);
while($row_ns = $db->db_fetch_object($result_ns_source))
{
$ns_insert = "INSERT INTO campus.tbl_notenschluesseluebung values ('".$ueb_1_target->uebung_id."','".$row_ns->note."', '".$row_ns->punkte."')";
$db->db_query($ns_insert);
}
}
}
}
}
}
}
else
{
$errormsg[]="<span class='error'>Fehler beim Datenbankzugriff!</span>";
}
if ($error == 0)
{
$errormsg[]="&Uuml;bung ".$ueb." erfolgreich kopiert! (&Uuml;: ".$copy_insert."/".$copy_update."; B: ".$copy_insert_bsp."/".$copy_update_bsp.")";
}
else
{
$errormsg[]="&Uuml;bung ".$ueb." wurde nicht kopiert! (&Uuml;: ".$copy_insert."/".$copy_update."; B: ".$copy_insert_bsp."/".$copy_update_bsp.")";
break;
}
}
}
// Nun alle An Felder - Lehreinheit zum Von kopieren (neue Anzeige)
if ($error == 0)
{
$db->db_query('COMMIT');
}
else
{
$db->db_query('ROLLBACK');
}
$errormsg[]='<br><br><a href="'.$_SERVER['PHP_SELF'].'" class="Item">noch eine &Uuml;bung kopieren</a>';
}
// ***********************************************************************************************
// Datenbankfeld - Variable
// ***********************************************************************************************
function myaddslashes($var)
{
return ($var!=''?"'".addslashes($var)."'":'null');
}
?>
<!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">
<title>Kreuzerltool - Copy </title>
</head>
<body>
<?php
$cFormName='copy_uebung';
$content='';
$content.='
<h1>Kopieren von &Uuml;bungen in eine andere Lehreinheit</h1>
<form title="Script zum Kopieren einer &Uuml;bung in eine beliebige Lehreinheit." accept-charset="UTF-8" name="'.$cFormName.'" method="GET" target="_self" action="'.$_SERVER['PHP_SELF'].'" >
Direkt Eingabe : LE ID:<input name="lehreinheit_id_sel" onchange="document.'.$cFormName.'.studiengang_kz.selectedIndex = -1;document.'.$cFormName.'.semester.selectedIndex = -1;document.'.$cFormName.'.lehrveranstaltung_id.selectedIndex = -1;document.'.$cFormName.'.lehreinheit_id.selectedIndex = -1;document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();">&nbsp;,&nbsp;
&Uuml;bung ID:<input name="uebung_id_sel" onchange="document.'.$cFormName.'.studiengang_kz.selectedIndex = -1;document.'.$cFormName.'.semester.selectedIndex = -1;document.'.$cFormName.'.lehrveranstaltung_id.selectedIndex = -1;document.'.$cFormName.'.lehreinheit_id.selectedIndex = -1;document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();">&nbsp;&nbsp;oder<br><br>
<table class="liste">
<tr>
<th>Studiensem</th>
<th>StgKz</th>
<th>Sem</th>
<th>Lehrveranstaltung</th>
<th>Lehreinheiten</th>
<th>&Uuml;bungID die kopiert werden soll:</th>
</tr>
<tr>
';
//---------------------------------------------------------------------------
// Auswahlfelder
$content.='<tr>';
// Studiensemester public.tbl_studiensemester_kurzbz
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.studiengang_kz.selectedIndex = -1;document.'.$cFormName.'.semester.selectedIndex = -1;document.'.$cFormName.'.lehrveranstaltung_id.selectedIndex = -1;document.'.$cFormName.'.lehreinheit_id.selectedIndex = -1;document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();" name="studiensemester_kurzbz">';
# $content.='<option value="">&nbsp;Alle&nbsp;</option>';
$stsem->studiensemester=array();
if ($stsem->getAll())
{
foreach ($stsem->studiensemester as $row)
{
$content.='<option value="'.$row->studiensemester_kurzbz.'" '.(("$studiensemester_kurzbz"=="$row->studiensemester_kurzbz")?' selected="selected" ':'').'>&nbsp;'.$row->studiensemester_kurzbz.'&nbsp;</option>';
}
}
else
{
$errormsg[]='Studiensemester wurden nicht gefunden! '.$stsem->errormsg;
}
$content.='</select></td>';
//---------------------------------------------------------------------------
// Studiengang public.tbl_studiengang_kz
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.semester.selectedIndex = -1;document.'.$cFormName.'.lehrveranstaltung_id.selectedIndex = -1;document.'.$cFormName.'.lehreinheit_id.selectedIndex = -1;document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();" name="studiengang_kz">';
# $content.='<option value="" '.(empty($studiengang_kz)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$stsem->result=array();
if ($stg_obj->getAll('typ, kurzbz',true))
{
$max_semester=0;
$arrStudiengang='';
foreach ($stg_obj->result as $row)
{
if (empty($studiengang_kz) && !isset($_REQUEST['studiengang_kz']) )
{
$studiengang_kz=$row->studiengang_kz;
$semester=1;
}
if ($studiengang_kz==$row->studiengang_kz)
{
$arrStudiengang=$row;
$max_semester=$row->max_semester;
}
$content.='<option value="'.$row->studiengang_kz.'" '.(("$studiengang_kz"=="$row->studiengang_kz")?' selected="selected" ':'').'>&nbsp;'.$row->kuerzel.'&nbsp;('.$row->kurzbzlang.')&nbsp;</option>';
}
}
else
{
$content.='<option value="" '.(empty($studiengang_kz)?' selected="selected" ':'').'>&nbsp;'.$stg_obj->errormsg.'&nbsp;</option>';
$errormsg[]='Studieng&auml;nge wurden nicht gefunden! '.$stg_obj->errormsg;
}
$content.='</select></td>';
//---------------------------------------------------------------------------
// Semster public.tbl_studiengang_kz - max Semester des Selektierten Studiengangs
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.lehrveranstaltung_id.selectedIndex = -1;document.'.$cFormName.'.lehreinheit_id.selectedIndex = -1;document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();" name="semester">';
# $content.='<option value="" '.(empty($semester)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
if ($studiengang_kz!='')
{
for($i=0;$i<=$max_semester;$i++)
{
$content.='<option value="'.($i).'" '.(("$semester"=="$i")?' selected="selected" ':'').'>&nbsp;'.($i).'&nbsp;</option>';
}
}
else
{
for($i=0;$i<=9;$i++)
{
$content.='<option value="'.($i).'" '.(("$semester"=="$i")?' selected="selected" ':'').'>&nbsp;'.($i).'&nbsp;</option>';
}
}
$content.='</select></td>';
//---------------------------------------------------------------------------
// Lehrveranstaltungen
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.lehreinheit_id.selectedIndex = -1;document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();" name="lehrveranstaltung_id">';
# $content.='<option value="" '.(empty($lehrveranstaltung_id)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$lv_obj->lehrveranstaltungen=array();
if (!empty($studiengang_kz))
{
if ($lv_obj->load_lva_le($studiengang_kz, $studiensemester_kurzbz, $semester,null,null,null,'bezeichnung'))
{
foreach ($lv_obj->lehrveranstaltungen as $row)
{
if (empty($lehrveranstaltung_id))
$lehrveranstaltung_id=$row->lehrveranstaltung_id;
$content.='<option value="'.$row->lehrveranstaltung_id.'" '.(("$lehrveranstaltung_id"=="$row->lehrveranstaltung_id")?' selected="selected" ':'').'>&nbsp;'.CutString($row->bezeichnung, 30, '...').' '.$row->lehrform_kurzbz.'&nbsp;('.$row->lehrveranstaltung_id.')</option>';
}
}
else
{
$content.='<option value="" '.(empty($studiengang_kz)?' selected="selected" ':'').'>&nbsp;'.$stg_obj->errormsg.'&nbsp;</option>';
$errormsg[]='Lehrveranstaltungen wurden nicht gefunden! '.$lv_obj->errormsg;
}
}
$content.='</select>
</td>';
//---------------------------------------------------------------------------
// Lehreinheit
$content.='<td valign="top"><select onchange="document.'.$cFormName.'[7].selectedIndex = -1;document.'.$cFormName.'.submit();" name="lehreinheit_id">';
# $content.='<option value="" '.(empty($lehreinheit_id)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$le_obj->lehreinheiten=array();
if (!empty($lehrveranstaltung_id))
{
$le_obj->load_lehreinheiten($lehrveranstaltung_id, $studiensemester_kurzbz);
foreach ($le_obj->lehreinheiten as $row)
{
if (empty($lehreinheit_id))
$lehreinheit_id=$row->lehreinheit_id;
//Gruppen laden
$gruppen = '';
if (!$legrp_obj = new lehreinheitgruppe())
die('Fehler beim Oeffnen der Lehreinheitgruppe');
if ($legrp_obj->getLehreinheitgruppe($row->lehreinheit_id))
{
foreach ($legrp_obj->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();
$lehreinheitmitarbeiter->getLehreinheitmitarbeiter($row->lehreinheit_id);
foreach ($lehreinheitmitarbeiter->lehreinheitmitarbeiter as $ma)
{
$lektoren.= ($lektoren?',':'').'&nbsp;'.$ma->mitarbeiter_uid;
}
$lektoren=CutString($lektoren, 30, '...');
$content.='<option value="'.$row->lehreinheit_id.'" '.($lehreinheit_id==$row->lehreinheit_id?' selected="selected" ':'').'>&nbsp;'.$row->lehrform_kurzbz.' '.$gruppen.'&nbsp;'.$lektoren.'&nbsp;('.$row->lehreinheit_id.')</option>';
}
}
$content.='</select></td>';
#var_dump($uebung_id_source);
$submitOK=false;
if (!$ueb = new uebung())
{
die('Fehler beim Oeffnen der &Uuml;bungen');
}
else
{
$ueb->uebungen=array();
$ueb->errormsg ='';
if (!$lehreinheit_ueb=$ueb->load_uebung($lehreinheit_id))
{
$errormsg[]=$ueb->errormsg;
}
}
$content.='<td valign="top"><select multiple size="'.count($ueb->uebungen).'" name="uebung_id_source[]">';
if (is_array($ueb->uebungen) && count($ueb->uebungen)>0)
{
foreach ($ueb->uebungen as $row)
{
if (!is_array($uebung_id_source) && !empty($uebung_id_source) )
$uebung_id_source=array($uebung_id_source);
$selected='';
if (is_array($uebung_id_source) && count($uebung_id_source)>0 )
{
reset($uebung_id_source);
foreach ($uebung_id_source as $ueb)
{
if ($row->uebung_id==$ueb)
$selected=' selected="selected" ';
}
}
$submitOK=true;
$content.='<option value="'.$row->uebung_id.'" '.$selected.'>&nbsp;'.$row->bezeichnung.'&nbsp;('.$row->uebung_id.')</option>';
}
}
if (!$submitOK)
$content.='<option value="">&nbsp;<span class="error">keine &Uuml;bung zur LE</span></option>';
$content.='</select></td>';
$content.='
</tr>
<tr><td colspan="6"><hr></td></tr>
';
if ($submitOK)
$content.='<tr><th colspan="5">Lehreinheit ID in welche diese &Uuml;bung kopiert werden soll</th><td><input type="submit" value="Kopieren" name="kopieren"></td></tr>';
else
$content.='<tr><th colspan="6">Lehreinheit ID in welche diese &Uuml;bung kopiert werden soll</th></tr>';
$content.='
<tr><td colspan="6">&nbsp;</td></tr>
';
$content.='
<tr>
';
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.semester_target.value=\'\';document.'.$cFormName.'.lehrveranstaltung_id_target.value=\'\';document.'.$cFormName.'.lehreinheit_id_target.value=\'\';document.'.$cFormName.'.submit();" name="studiensemester_kurzbz_target">';
# $content.='<option value="">&nbsp;Alle&nbsp;</option>';
$stsem->studiensemester=array();
if ($stsem->getAll())
{
foreach ($stsem->studiensemester as $row)
{
$content.='<option value="'.$row->studiensemester_kurzbz.'" '.(("$studiensemester_kurzbz_target"=="$row->studiensemester_kurzbz")?' selected="selected" ':'').'>&nbsp;'.$row->studiensemester_kurzbz.'&nbsp;</option>';
}
}
else
{
$errormsg[]='Studiensemester wurden nicht gefunden! '.$stsem->errormsg;
}
$content.='</select></td>';
//---------------------------------------------------------------------------
// Studiengang public.tbl_studiengang_kz
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.semester_target.value=\'\';document.'.$cFormName.'.lehrveranstaltung_id_target.value=\'\';document.'.$cFormName.'.lehreinheit_id_target.value=\'\';document.'.$cFormName.'.submit();" name="studiengang_kz_target">';
# $content.='<option value="" '.(empty($studiengang_kz)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$stsem->result=array();
if ($stg_obj->getAll('typ, kurzbz',true))
{
$max_semester=0;
$arrStudiengang='';
foreach ($stg_obj->result as $row)
{
if (empty($studiengang_kz_target) && !isset($_REQUEST['studiengang_kz_target']) )
{
$studiengang_kz_target=$row->studiengang_kz;
$semester_target=1;
}
if ($studiengang_kz_target==$row->studiengang_kz)
{
$arrStudiengang=$row;
$max_semester=$row->max_semester;
}
$content.='<option value="'.$row->studiengang_kz.'" '.(("$studiengang_kz_target"=="$row->studiengang_kz")?' selected="selected" ':'').'>&nbsp;'.$row->kuerzel.'&nbsp;('.$row->kurzbzlang.')&nbsp;</option>';
}
}
else
{
$content.='<option value="" '.(empty($studiengang_kz_target)?' selected="selected" ':'').'>&nbsp;'.$stg_obj->errormsg.'&nbsp;</option>';
$errormsg[]='Studieng&auml;nge wurden nicht gefunden! '.$stg_obj->errormsg;
}
$content.='</select></td>';
//---------------------------------------------------------------------------
// Semster public.tbl_studiengang_kz - max Semester des Selektierten Studiengangs
// document.'.$cFormName.'.uebung_id_source_target.value=\'\';
// $content.='<td valign="top"><select onchange="document.'.$cFormName.'.lehrveranstaltung_id_target.value=\'\';document.'.$cFormName.'.lehreinheit_id_target.value=\'\';document.'.$cFormName.'.submit();" name="semester_target">';
# $content.='<option value="" '.(empty($semester)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.lehrveranstaltung_id_target.value=\'\';document.'.$cFormName.'.lehreinheit_id_target.value=\'\';document.'.$cFormName.'.submit();" name="semester_target">';
if ($studiengang_kz_target!='')
{
for($i=0;$i<=$max_semester;$i++)
{
$content.='<option value="'.($i).'" '.(("$semester_target"=="$i")?' selected="selected" ':'').'>&nbsp;'.($i).'&nbsp;</option>';
}
}
else
{
for($i=0;$i<=9;$i++)
{
$content.='<option value="'.($i).'" '.(("$semester_target"=="$i")?' selected="selected" ':'').'>&nbsp;'.($i).'&nbsp;</option>';
}
}
$content.='</select></td>';
##echo "<br> $studiengang_kz_target, $studiensemester_kurzbz_target, $semester_target , $lehrveranstaltung_id_target <br>";
//---------------------------------------------------------------------------
// Lehrveranstaltungen
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.lehreinheit_id_target.value=\'\';document.'.$cFormName.'.submit();" name="lehrveranstaltung_id_target">';
# $content.='<option value="" '.(empty($lehrveranstaltung_id)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$lv_obj->lehrveranstaltungen=array();
if (!empty($studiengang_kz))
{
if ($lv_obj->load_lva_le($studiengang_kz_target, $studiensemester_kurzbz_target, $semester_target,null,null,null,'bezeichnung'))
{
foreach ($lv_obj->lehrveranstaltungen as $row)
{
if (empty($lehrveranstaltung_id_target))
$lehrveranstaltung_id_target=$row->lehrveranstaltung_id;
$content.='<option value="'.$row->lehrveranstaltung_id.'" '.(("$lehrveranstaltung_id_target"=="$row->lehrveranstaltung_id")?' selected="selected" ':'').'>&nbsp;'.CutString($row->bezeichnung, 30, '...').' '.$row->lehrform_kurzbz.'&nbsp;('.$row->lehrveranstaltung_id.')</option>';
}
}
else
{
$content.='<option value="" '.(empty($studiengang_kz_target)?' selected="selected" ':'').'>&nbsp;'.$stg_obj->errormsg.'&nbsp;</option>';
$errormsg[]='Lehrveranstaltungen wurden nicht gefunden! '.$lv_obj->errormsg;
}
}
$content.='</select>
</td>';
#echo "<br> $studiengang_kz_target, $studiensemester_kurzbz_target, $semester_target , $lehrveranstaltung_id_target <br>";
//---------------------------------------------------------------------------
// Lehreinheit
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.submit();" name="lehreinheit_id_target">';
# $content.='<option value="" '.(empty($lehreinheit_id)?' selected="selected" ':'').'>&nbsp;Alle&nbsp;</option>';
$le_obj->lehreinheiten=array();
if (!empty($lehrveranstaltung_id_target))
{
$le_obj->load_lehreinheiten($lehrveranstaltung_id_target, $studiensemester_kurzbz_target);
foreach ($le_obj->lehreinheiten as $row)
{
//Gruppen laden
$gruppen = '';
if (!$legrp_obj = new lehreinheitgruppe())
die('Fehler beim Oeffnen der Lehreinheitgruppe');
if ($legrp_obj->getLehreinheitgruppe($row->lehreinheit_id))
{
foreach ($legrp_obj->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();
$lehreinheitmitarbeiter->getLehreinheitmitarbeiter($row->lehreinheit_id);
foreach ($lehreinheitmitarbeiter->lehreinheitmitarbeiter as $ma)
{
$lektoren.= ($lektoren?',':'').'&nbsp;'.$ma->mitarbeiter_uid;
}
$lektoren=CutString($lektoren, 30, '...');
$content.='<option value="'.$row->lehreinheit_id.'" '.($lehreinheit_id_target==$row->lehreinheit_id?' selected="selected" ':'').'>&nbsp;'.$row->lehrform_kurzbz.' '.$gruppen.'&nbsp;'.$lektoren.'&nbsp;('.$row->lehreinheit_id.')</option>';
}
}
$content.='</select></td>';
$content.='<td valign="top" align="right">';
#echo "<br> $studiengang_kz_target, $studiensemester_kurzbz_target, $semester_target , $lehrveranstaltung_id_target <br>";
if (!$ueb = new uebung())
{
die('Fehler beim Oeffnen der &Uuml;bungen');
}
else if (!empty($lehreinheit_id_target))
{
$ueb->uebungen=array();
$ueb->errormsg ='';
if (!$lehreinheit_ueb=$ueb->load_uebung($lehreinheit_id_target))
{
$errormsg[]=$ueb->errormsg;
}
else if (count($ueb->uebungen))
{
$content.='<select disabled multiple size="'.count($ueb->uebungen) .'">';
foreach ($ueb->uebungen as $row)
{
$submitOK=true;
if (!is_array($uebung_id_source) && !empty($uebung_id_source) )
$uebung_id_source=array($uebung_id_source);
$selected='';
$content.='<option value="'.$row->uebung_id.'" '.$selected.'>&nbsp;'.$row->bezeichnung.'&nbsp;('.$row->uebung_id.')</option>';
}
$content.='</select>';
}
else if (!empty($lehreinheit_id_target))
{
$content.='<span class="error">keine &Uuml;bungen vorhanden</span>';
}
}
$content.='</td>';
$content.='</tr>';
$content.='</table>';
$content.='</form><hr>'.implode('<br>',$errormsg);
print_r($content);
?>
</body>
</html>
@@ -1,31 +0,0 @@
<?php
//Filenamen für up-/downloads bauen
// which kann sein angabe, abgabe oder zip
function makeUploadName($db, $which, $lehreinheit_id=null, $uebung_id=null, $ss=null, $uid=null, $date=null)
{
$query = "SELECT tbl_studiengang.kurzbzlang, lehrfach.semester, lehrfach.kurzbz from public.tbl_studiengang, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit where tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id and tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id and tbl_lehrveranstaltung.studiengang_kz = tbl_studiengang.studiengang_kz and tbl_lehreinheit.lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$result = $db->db_query($query);
$row = $db->db_fetch_object($result);
$name = $row->kurzbzlang."_".$row->semester."_".$row->kurzbz."_".$ss;
if ($which == "angabe")
{
$name .= "_".$uebung_id;
}
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 = ".$db->db_add_param($uid);
$result = $db->db_query($query);
$row = $db->db_fetch_object($result);
$name .= "_".$uebung_id."_".$row->nachname."_".$row->vorname."_".$uid."_".$date;
}
else if ($which == "zip")
{
$name .= "_".$uebung_id."_".$date;
}
$name = str_replace(":","-",$name);
return $name;
}
?>
@@ -1,129 +0,0 @@
<?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/cis.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');
$user = get_uid();
if(!check_lektor($user))
die('Sie haben keine Berechtigung fuer diesen Bereich');
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die('Fehlerhafte Parameteruebergabe');
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Kopfzeile
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
if($lehreinheit_id=='')
die('Es wurde keine passende Lehreinheit in diesem Studiensemester gefunden');
$note = $_REQUEST["note"];
// lvgesamtnote für studenten speichern
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') && ((($note>0) && ($note < 6)) || ($note == 7) || ($note==8) || ($note==16)) ){
$jetzt = date("Y-m-d H:i:s");
$student_uid = $_REQUEST["student_uid"];
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($student_uid,$lehreinheit_id))
{
$legesamtnote->student_uid = $student_uid;
$legesamtnote->lehreinheit_id = $lehreinheit_id;
$legesamtnote->note = $_REQUEST["note"];
$legesamtnote->benotungsdatum = $jetzt;
$legesamtnote->updateamum = null;
$legesamtnote->updatevon = null;
$legesamtnote->insertamum = $jetzt;
$legesamtnote->insertvon = $user;
$legesamtnote->new = true;
$response = "neu";
}
else
{
$legesamtnote->note = $_REQUEST["note"];
$legesamtnote->benotungsdatum = $jetzt;
$legesamtnote->updateamum = $jetzt;
$legesamtnote->updatevon = $user;
$legesamtnote->new = false;
$response = "update";
}
if (!$legesamtnote->save())
echo "<span class='error'>".$legesamtnote->errormsg."</span>";
else
echo $response;
}
else
echo "Bitte geben Sie eine Note von 1 - 5 bzw. 7 (nicht beurteilt) oder 8 (teilgenommen) ein!";
?>
@@ -1,488 +0,0 @@
<?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 >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
require_once('../../../../config/cis.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/phrasen.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$user = get_uid();
if(!check_lektor($user))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
if($stsem!='' && !check_stsem($stsem))
die($p->t('global/studiensemesterKonnteNichtGefundenWerden'));
//Vars
$datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
?>
<!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">
<title>Kreuzerltool</title>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
function confirmdelete()
{
return confirm('<?php echo $p->t('gesamtnote/wollenSieWirklichLoeschen');?>');
}
var anfrage = null;
function erzeugeAnfrage()
{
try
{
anfrage = new XMLHttpRequest();
}
catch (versuchmicrosoft)
{
try
{
anfrage = new ActiveXObject("Msxml12.XMLHTTP");
}
catch (anderesmicrosoft)
{
try
{
anfrage = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (fehlschlag)
{
anfrage = null;
}
}
}
if (anfrage == null)
alert("Fehler beim Erstellen des Anfrageobjekts!");
}
function saveLENote(uid)
{
note = document.getElementById(uid).note.value;
if ((note < 0) || (note > 5 && note != 8 && note != 7 && note!=16))
{
alert("<?php echo $p->t('benotungstool/noteEingeben');?>");
document.getElementById(uid).note.value="";
}
else
{
erzeugeAnfrage();
//note = document.getElementById(uid).note.value;
stud_uid = uid;
var jetzt = new Date();
var ts = jetzt.getTime();
var url= '<?php echo "legesamtnoteeintragen.php?lvid=".addslashes($lvid)."&lehreinheit_id=".addslashes($lehreinheit_id)."&stsem=".addslashes($stsem); ?>';
url += '&submit=1&student_uid='+uid+"&note="+note+"&"+ts;
anfrage.open("GET", url, true);
anfrage.onreadystatechange = updateSeite;
anfrage.send(null);
}
}
function updateSeite()
{
if (anfrage.readyState == 4)
{
if (anfrage.status == 200)
{
uid = stud_uid;
var note = document.getElementById(uid).note.value;
var resp = anfrage.responseText;
if (resp == "neu" || resp == "update")
{
notentd = document.getElementById("note_"+uid);
while (notentd.childNodes.length>0)
{
notentd.removeChild(notentd.lastChild);
}
notenode = document.createTextNode(note);
notentd.appendChild(notenode);
}
else
{
alert(resp);
document.getElementById(uid).note.value="";
}
}
else
alert("Request status:" + anfrage.status);
}
}
//-->
</script>
</head>
<body>
<?php
//Kopfzeile
echo '<table width="100%">';
echo ' <tr>';
echo '<td><h1>'.$p->t('benotungstool/benotungstool');
echo '</h1></td><td align="right">'."\n";
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
$stsem_obj->getAll();
//Studiensemester DropDown
$stsem_content = $p->t('global/studiensemester').": <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">\n";
foreach($stsem_obj->studiensemester as $studiensemester)
{
$selected = ($stsem == $studiensemester->studiensemester_kurzbz?'selected':'');
$stsem_content.= "<OPTION value='legesamtnoteeintragen.php?lvid=$lvid&stsem=$studiensemester->studiensemester_kurzbz' $selected>$studiensemester->studiensemester_kurzbz</OPTION>\n";
}
$stsem_content.= "</SELECT>\n";
//Lehreinheiten laden
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
else
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE mitarbeiter_uid=".$db->db_add_param($user).") AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
//Lehreinheiten DropDown
echo $p->t('global/lehreinheit')." : <SELECT name='lehreinheit_id' onChange=\"MM_jumpMenu('self',this,0)\">\n";
while($row = $db->db_fetch_object($result))
{
if($lehreinheit_id=='')
$lehreinheit_id=$row->lehreinheit_id;
$selected = ($row->lehreinheit_id == $lehreinheit_id?'selected':'');
$qry_lektoren = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_lektoren = $db->db_query($qry_lektoren))
{
$lektoren = '( ';
$i=0;
while($row_lektoren = $db->db_fetch_object($result_lektoren))
{
$lektoren .= $row_lektoren->kurzbz;
$i++;
if($i<$db->db_num_rows($result_lektoren))
$lektoren.=', ';
else
$lektoren.=' ';
}
$lektoren .=')';
}
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$gruppen = '';
$i=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$i++;
if($i<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
echo "<OPTION value='legesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->lfbez-$row->lehrform_kurzbz - $gruppen $lektoren</OPTION>\n";
}
echo '</SELECT> ';
}
else
{
if($row = $db->db_fetch_object($result))
$lehreinheit_id = $row->lehreinheit_id;
}
}
else
{
echo $p->t('benotungstool/fehlerBeimAuslesen');
}
echo $stsem_content;
echo '</td><tr></table>';
echo '<table class="tabcontent"><tr>';
echo '<td class="tdwidth10">&nbsp;</td>';
echo "<td>\n";
echo "<b>".$lv_obj->bezeichnung_arr[$sprache]."</b><br>";
if($lehreinheit_id=='')
die($p->t('benotungstool/keinePassendeLehreinheitGefunden'));
//Menue
include("menue.inc.php");
/*
echo "\n<!--Menue-->\n";
echo "<br><a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Verwaltung</font>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Anwesenheits- und Übersichtstabelle</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Studentenpunkte verwalten</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Statistik</font></a>
<br><br>
<!--Menue Ende-->\n";
*/
// legesamtnote für studenten speichern
if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != '')){
$jetzt = date("Y-m-d H:i:s");
$student_uid = $_POST["student_uid"];
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($student_uid,$lehreinheit_id))
{
$legesamtnote->student_uid = $student_uid;
$legesamtnote->lehreinheit_id = $lehreinheit_id;
$legesamtnote->note = $_POST["note"];
$legesamtnote->benotungsdatum = $jetzt;
$legesamtnote->updateamum = null;
$legesamtnote->updatevon = null;
$legesamtnote->insertamum = $jetzt;
$legesamtnote->insertvon = $user;
$legesamtnote->new = true;
}
else
{
$legesamtnote->note = $_POST["note"];
$legesamtnote->benotungsdatum = $jetzt;
$legesamtnote->updateamum = $jetzt;
$legesamtnote->updatevon = $user;
}
if (!$legesamtnote->save())
echo "<span class='error'>".$legesamtnote->errormsg."</span>";
}
echo "<h3>".$p->t('benotungstool/leGesamtnotenVerwalten')."</h3>";
echo $p->t('benotungstool/noten');
//Studentenliste
echo "
<table>
";
echo "<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td class='ContentHeader2'>".$p->t('global/uid')."</td>
<td class='ContentHeader2'>".$p->t('global/nachname')."</td>
<td class='ContentHeader2'>".$p->t('global/vorname')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/gesamtnote')."</td>
<td class='ContentHeader2'>&nbsp;</td>
<td class='ContentHeader2'></td>
<td class='ContentHeader2'></td>
<td class='ContentHeader2'>".$p->t('benotungstool/leGesamtnote')."</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>";
/*
if($row_grp->gruppe_kurzbz!='')
{
echo "
<tr>
<td colspan='8' align='center'><b>$row_grp->gruppe_kurzbz</b></td>
</tr>";
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz='".addslashes($row_grp->gruppe_kurzbz)."' AND studiensemester_kurzbz = '".$stsem."' ORDER BY nachname, vorname";
}
else
{
echo "
<tr>
<td colspan='8' align='center'><b>Verband $row_grp->verband ".($row_grp->gruppe!=''?"Gruppe $row_grp->gruppe":'')."</b></td>
</tr>";
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung
WHERE studiengang_kz='$row_grp->studiengang_kz' AND
semester='$row_grp->semester' ".
($row_grp->verband!=''?" AND trim(verband)=trim('$row_grp->verband')":'').
($row_grp->gruppe!=''?" AND trim(gruppe)=trim('$row_grp->gruppe')":'').
" ORDER BY nachname, vorname";
}
*/
// studentenquery
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
$studentnote = new studentnote();
$studentnote->calc_gesamtnote($lehreinheit_id,$stsem,$row_stud->uid);
//echo $studentnote->debug;
$legesamtnote = new legesamtnote($lehreinheit_id);
if (!$legesamtnote->load($row_stud->uid,$lehreinheit_id))
{
$note = null;
}
else
{
$note = $legesamtnote->note;
}
if ($studentnote->studentgesamtnote!=0)
$note_calc = round($studentnote->studentgesamtnote,2);
else
$note_calc = null;
echo "
<tr class='liste".($i%2)."'>
<td><a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item'>$row_stud->uid</a></td>
<td><a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item'>$row_stud->nachname</a></td>
<td><a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item'>$row_stud->vorname</a></td>";
echo "<td>$note_calc</td>";
echo "<td align='center'>";
if ($studentnote->negativ)
echo "<span class='negativ'>neg</span>";
echo "</td>";
echo "<td align='center'>";
if ($studentnote->fehlt)
echo "<span class='negativ'>X</span>";
else
echo "ok";
echo "</td>";
if ($note)
$note_final = $note;
else
{
if ($studentnote->negativ)
$note_final = 5;
else
{
$note_final = round($studentnote->studentgesamtnote);
if ($note_final == 0)
$note_final = null;
}
}
echo "<form accept-charset='UTF-8' name='$row_stud->uid' id='$row_stud->uid' method='POST' action='legesamtnoteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem'><td><input type='hidden' name='student_uid' value='$row_stud->uid'><input type='text' size='1' value='$note_final' name='note'><input type='button' value='->' onclick='saveLENote(\"$row_stud->uid\")'></td></form>";
if ($note == 5)
$negmarkier = " style='color:red; font-weight:bold;'";
else
$negmarkier = "";
echo "<td align='center' id='note_$row_stud->uid'><span".$negmarkier.">$note</span></td>";
echo "</tr>";
$i++;
}
}
echo "</table>";
?>
</td></tr>
</table>
</body>
</html>
@@ -1,63 +0,0 @@
<?php
$class_uebung = 'benotungstool_tabs';
$class_benotung = 'benotungstool_tabs';
$class_anwesenheit = 'benotungstool_tabs';
$class_statistik = 'benotungstool_tabs';
$file = $_SERVER["SCRIPT_NAME"];
$break = Explode('/', $file);
$pfile = $break[count($break) - 1];
if ($pfile == 'verwaltung.php' or $pfile == 'verwaltung_listen.php')
$class_uebung = 'benotungstool_tabs_active';
else if ($pfile == 'studentenpunkteverwalten.php' or $pfile == 'legesamtnoteverwalten.php' or $pfile == 'lvgesamtnoteverwalten.php')
$class_benotung = 'benotungstool_tabs_active';
else if ($pfile == 'anwesenheitstabelle.php')
$class_anwesenheit = 'benotungstool_tabs_active';
else if ($pfile == 'statistik.php')
$class_statistik = 'benotungstool_tabs_active';
echo "\n\n<!--Menue-->\n";
echo "<div><ul><li><a href='lvgesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'>".$p->t('benotungstool/lehrveranstaltungBenoten')."</font></a></li><li><a href=".APP_ROOT."cms/dms.php?id=".$p->t('dms_link/benotungstoolHandbuch')." class='Item' target='_blank'><font size='3'>".$p->t('benotungstool/handbuchBenotungstool')."</font></a></li></ul></div>";
echo "<br>\n";
echo "<table cellpadding='3' width='100%'>\n";
echo " <tr>\n";
echo " <td class='$class_uebung'><a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'>".$p->t('benotungstool/uebungen')."</font></a></td>\n";
echo " <td class='$class_benotung'><a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'>".$p->t('benotungstool/benotung')."</font></a></td>\n";
echo " <td class='$class_anwesenheit'><a href='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' class='Item'><font size='3'>".$p->t('benotungstool/anwesenheitstabelle')."</font></a></td>\n";
echo " <td class='$class_statistik'><a href='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'>".$p->t('benotungstool/statistik')."</font></a></td>\n";
echo " </tr>\n";
echo " <tr>\n";
echo " <td colspan='4' class='benotungstool_subtab'>";
if ($pfile == "verwaltung.php")
echo "<b>".$p->t('benotungstool/uebersicht')."</b>";
else if ($pfile == "verwaltung_listen.php")
{
echo "<a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/uebersicht')."</a> \n";
if (isset($_GET["liste_id"]) && !isset($_GET["uebung_id"]))
echo " | <b>".$p->t('benotungstool/uebung')."</b> \n";
if (isset($_GET["liste_id"]) && isset($_GET["uebung_id"]))
echo " | <a href='verwaltung_listen.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&liste_id=$liste_id'>".$p->t('benotungstool/uebung')."</a> | <b>".$p->t('benotungstool/liste')."</b> \n";
}
if ($pfile == "studentenpunkteverwalten.php" && (!isset($_GET["uid"]) || $_GET["uid"]==""))
echo "<b>".$p->t('benotungstool/uebungsnotenVerwalten').": ".$p->t('benotungstool/uebersicht')."</b> | <a href='legesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/leNotenVerwalten')."</a> | <a href='lvgesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/lvNotenVerwalten')."</a>";
else if ($pfile == "studentenpunkteverwalten.php")
echo "<b>".$p->t('benotungstool/uebungsnotenVerwalten').": ".$p->t('benotungstool/detail')."</b> / <a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'>".$p->t('benotungstool/uebersicht')."</a> | <a href='legesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/leNotenVerwalten')."</a> | <a href='lvgesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/lvNotenVerwalten')."</a>";
else if ($pfile == "legesamtnoteverwalten.php")
echo "<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'>".$p->t('benotungstool/uebungsnotenVerwalten')."</a> | <b>".$p->t('benotungstool/leNotenVerwalten')."</b> | <a href='lvgesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/lvNotenVerwalten')."</a>";
else if ($pfile == "lvgesamtnoteverwalten.php")
echo "<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'>".$p->t('benotungstool/uebungsnotenVerwalten')."</a> | <a href='legesamtnoteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id'>".$p->t('benotungstool/leNotenVerwalten')."</a> | <b>".$p->t('benotungstool/lvNotenVerwalten')."</b>";
if ($pfile == 'anwesenheitstabelle.php')
echo "&nbsp;";
if ($pfile == 'statistik.php')
echo "&nbsp;";
echo " </td>\n";
echo " </tr>\n";
echo "</table>\n";
echo "<!--Menue Ende--><br>\n\n";
?>
@@ -1,398 +0,0 @@
<?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 >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/basis_db.class.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');
require_once('../../../../include/phrasen.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
$sprache = getSprache();
$p = new phrasen($sprache);
?>
<!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">
<title><?php echo $p->t('benotungstool/kreuzerltool');?></title>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
function confirmdelete()
{
return confirm('<?php echo $p->t('gesamtnote/wollenSieWirklichLoeschen');?>');
}
//-->
</script>
</head>
<body>
<?php
$user = get_uid();
if(!check_lektor($user))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
//Kopfzeile
echo '<table width="100%">';
echo ' <tr><td>';
echo '<h1>'.$p->t('benotungstool/benotungstool');
echo '</h1></td><td align="right">'."\n";
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
$stsem_obj->getAll();
//Studiensemester DropDown
$stsem_content = $p->t('global/studiensemester').": <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">\n";
foreach($stsem_obj->studiensemester as $studiensemester)
{
$selected = ($stsem == $studiensemester->studiensemester_kurzbz?'selected':'');
$stsem_content.= "<OPTION value='statistik.php?lvid=$lvid&stsem=$studiensemester->studiensemester_kurzbz' $selected>$studiensemester->studiensemester_kurzbz</OPTION>\n";
}
$stsem_content.= "</SELECT>\n";
//Lehreinheiten laden
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
else
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE mitarbeiter_uid=".$db->db_add_param($user).") AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>1)
{
//Lehreinheiten DropDown
echo $p->t('global/lehreinheit').": <SELECT name='lehreinheit_id' onChange=\"MM_jumpMenu('self',this,0)\">\n";
while($row = $db->db_fetch_object($result))
{
if($lehreinheit_id=='')
$lehreinheit_id=$row->lehreinheit_id;
$selected = ($row->lehreinheit_id == $lehreinheit_id?'selected':'');
$qry_lektoren = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_lektoren = $db->db_query($qry_lektoren))
{
$lektoren = '( ';
$i=0;
while($row_lektoren = $db->db_fetch_object($result_lektoren))
{
$lektoren .= $row_lektoren->kurzbz;
$i++;
if($i<$db->db_num_rows($result_lektoren))
$lektoren.=', ';
else
$lektoren.=' ';
}
$lektoren .=')';
}
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$gruppen = '';
$i=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$i++;
if($i<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
echo "<OPTION value='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->lfbez-$row->lehrform_kurzbz - $gruppen $lektoren</OPTION>\n";
}
echo '</SELECT> ';
}
else
{
if($row = $db->db_fetch_object($result))
$lehreinheit_id = $row->lehreinheit_id;
}
}
else
{
echo $p->t('benotungstool/fehlerBeimAuslesen');
}
echo $stsem_content;
echo '</td><tr></table>';
echo '<table width="100%"><tr>';
echo '<td class="tdwidth10">&nbsp;</td>';
echo "<td>\n";
echo "<b>".$lv_obj->bezeichnung_arr[$sprache]."</b><br>";
if($lehreinheit_id=='')
die($p->t('benotungstool/keinePassendeLehreinheitGefunden'));
//Menue
include("menue.inc.php");
/*
echo "\n<!--Menue-->\n";
echo "<br>
<a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Verwaltung</font>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Anwesenheits- und Übersichtstabelle</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Studentenpunkte verwalten</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Statistik</font></a>
<br><br>
<!--Menue Ende-->\n";
*/
echo "<h3>".$p->t('benotungstool/statistikFuerKreuzerllisten')."</h3>";
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,1);
if(count($uebung_obj->uebungen)>0)
{
echo "<table width='100%'><tr><td valign='top'>";
echo "<br>".$p->t('benotungstool/waehlenSieEineKreuzerlliste').": <SELECT name='uebung' onChange=\"MM_jumpMenu('self',this,0)\">\n";
echo "<option value='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=' selected></option>";
foreach ($uebung_obj->uebungen as $row)
{
if($uebung_id == $row->uebung_id)
$selected = 'selected';
else
$selected = '';
if($uebung_id=='')
$uebung_id=$row->uebung_id;
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id);
if(count($subuebung_obj->uebungen)>0)
{
$disabled = 'disabled';
$selected = '';
}
else
$disabled = '';
echo "<OPTION style='background-color:#cccccc;' value='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id' $selected $disabled>";
echo $row->bezeichnung;
echo '</OPTION>';
if(count($subuebung_obj->uebungen)>0)
{
foreach ($subuebung_obj->uebungen as $subrow)
{
//if($uebung_id=='')
// $uebung_id=$subrow->uebung_id;
if($uebung_id == $subrow->uebung_id)
$selected = 'selected';
else
$selected = '';
if ($subrow->beispiele)
echo "<OPTION value='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id' $selected>";
//Freigegeben = +
//Nicht Freigegeben = -
if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($subrow->freigabebis)>time())
echo ' + ';
else
echo ' - ';
echo $subrow->bezeichnung;
echo '</OPTION>';
}
}
}
echo '</SELECT>';
echo '</td>';
echo "<td>
<table>
<tr>
<td><b>+</b>...</td>
<td><u>".$p->t('benotungstool/freigeschaltet')."</u>.</td>
</tr>
<tr>
<td><b>-</b>...</td>
<td><u>".$p->t('benotungstool/nichtFreigeschaltet')."</u>.</td>
</tr>
</table>
</td>
</tr></table>";
}
else
die($p->t('benotungstool/derzeitSindKeineUebungenAngelegt'));
echo "<br><br><br>";
if(isset($uebung_id) && $uebung_id!='')
{
$beispiel_obj = new beispiel();
if($beispiel_obj->load_beispiel($uebung_id))
{
if(count($beispiel_obj->beispiele)>0)
{
echo '<table border="0" cellpadding="0" cellspacing="0" width="600">
<tr>
<td>&nbsp;</td>
<td height="19" width="339" valign="bottom">
<table border="0" cellpadding="0" cellspacing="0" width="339" background="../../../../skin/images/bg.gif">
<tr>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>';
$i=0;
$qry_cnt = "SELECT distinct student_uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." GROUP BY student_uid";
if($result_cnt = $db->db_query($qry_cnt))
$gesamt=$db->db_num_rows($result_cnt);
foreach ($beispiel_obj->beispiele as $row)
{
$i++;
$solved = 0;
$psolved = 0;
$qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id=".$db->db_add_param($row->beispiel_id, FHC_INTEGER)." AND vorbereitet=true";
if($result_cnt = $db->db_query($qry_cnt))
if($row_cnt = $db->db_fetch_object($result_cnt))
$solved = $row_cnt->anzahl;
if($solved>0)
$psolved = $solved/$gesamt*100;
echo '<tr>
<td '.($i%2?'class="MarkLine"':'').' valign="top" height="10" width="200"><font size="2" face="Arial, Helvetica, sans-serif">
'.$row->bezeichnung.'
</font></td>
<td '.($i%2?'class="MarkLine"':'').'>
<table width="339" border="0" cellpadding="0" cellspacing="0" background="../../../../skin/images/bg_.gif">
<tr>
<td valign="top">
<table class="tabcontent">
<tr>
<td nowrap><font size="2" face="Arial, Helvetica, sans-serif">
<img src="../../../../skin/images/entry.gif" width="'.($psolved*3).'" height="5" alt="" border="1" />
<span class="smallb"><b>&nbsp;'.$solved.'</b> ['.number_format($psolved,1,'.','').'%]</span></font>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>';
}
echo "</table>";
echo "<br><br>Es haben insgesamt <u>$gesamt Studenten</u> eingetragen.";
}
}
else
echo "<span class='error'>$beispiel_obj->errormsg</span>";
}
?>
</td></tr>
</table>
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -1,978 +0,0 @@
<?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/cis.config.inc.php');
require_once('../../../../include/basis_db.class.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('functions.inc.php');
require_once('../../../../include/phrasen.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
$user = get_uid();
if(!check_lektor($user))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Abgabedatei ausliefern
if (isset($_GET["download_abgabe"])){
$file=$_GET["download_abgabe"];
$uebung_id = $_GET["uebung_id"];
$ueb = new uebung();
$ueb->load_studentuebung($uid, $uebung_id);
$ueb->load_abgabe($ueb->abgabe_id);
$filename = BENOTUNGSTOOL_PATH."abgabe/".$ueb->abgabedatei;
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="'.$file.'"');
readfile($filename);
exit;
}
//Handbuch ausliefern
if (isset($_GET["handbuch"])){
$filename = BENOTUNGSTOOL_PATH."handbuch_benotungstool.pdf";
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="handbuch_benotungstool.pdf"');
readfile($filename);
exit;
}
if (isset($_FILES["abgabedatei"]))
{
//echo $_FILES["abgabedatei"];
$abgabedatei_up = $_FILES["abgabedatei"]["tmp_name"];
if ($abgabedatei_up)
{
$student_uid = $uid;
$datum = date('Y-m-d H:i:s');
$datumstr = ereg_replace(" ","_",$datum);
$name_up = pathinfo($_FILES["abgabedatei"]["name"]);
$name_neu = makeUploadName($db, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$student_uid, $date=$datumstr);
$name_neu = preg_replace('/[^A-Za-z0-9\-_]/', '',$name_neu);
$abgabedatei = $name_neu.".".$name_up["extension"];
$abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei;
$uebung_obj = new uebung();
$uebung_obj->load_studentuebung($student_uid, $uebung_id);
if ($uebung_obj->errormsg != "")
{
$uebung_obj->student_uid = $student_uid;
$uebung_obj->mitarbeiter_uid = null;
$uebung_obj->abgabe_id = null;
$uebung_obj->uebung_id = $uebung_id;
$uebung_obj->note = null;
$uebung_obj->mitarbeitspunkte = null;
$uebung_obj->punkte = null;
$uebung_obj->anmerkung = null;
$uebung_obj->benotungsdatum = null;
$uebung_obj->updateamum = null;
$uebung_obj->updatevon = null;
$uebung_obj->insertamum = $datum;
$uebung_obj->insertvon = $user;
$uebung_obj->new = true;
$uebung_obj->studentuebung_save($new=true);
echo $uebung_obj->errormsg;
}
if ($uebung_obj->abgabe_id != null)
{
$uebung_obj->load_abgabe($uebung_obj->abgabe_id);
unlink(BENOTUNGSTOOL_PATH."abgabe/".$uebung_obj->abgabedatei);
$uebung_obj->abgabedatei = $abgabedatei;
$uebung_obj->abgabezeit = $datum;
$uebung_obj->abgabe_anmerkung = "";
$uebung_obj->abgabe_save(false);
}
else
{
$uebung_obj->abgabedatei = $abgabedatei;
$uebung_obj->abgabezeit = $datum;
$uebung_obj->abgabe_anmerkung = "";
$uebung_obj->abgabe_save(true);
}
$uebung_obj->studentuebung_save(false);
//Abgabedatei ablegen
move_uploaded_file($_FILES['abgabedatei']['tmp_name'], $abgabepfad);
}
}
else
$abgabedatei_up = null;
?>
<!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">
<title><?php echo $p->t('benotungstool/benotungstool');?></title>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
function confirmdelete()
{
return confirm('<?php echo $p->t('gesamtnote/wollenSieWirklichLoeschen');?>');
}
//-->
</script>
</head>
<body>
<?php
//Kopfzeile
echo '<table width="100%"><tr><td><h1>'.$p->t('benotungstool/benotungstool');
echo '</h1></td><td align="right">'."\n";
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
$stsem_obj->getAll();
//Studiensemester DropDown
$stsem_content = $p->t('global/studiensemester').": <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">\n";
foreach($stsem_obj->studiensemester as $studiensemester)
{
$selected = ($stsem == $studiensemester->studiensemester_kurzbz?'selected':'');
$stsem_content.= "<OPTION value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$studiensemester->studiensemester_kurzbz' $selected>$studiensemester->studiensemester_kurzbz</OPTION>\n";
}
$stsem_content.= "</SELECT>\n";
//Lehreinheiten laden
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
else
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE mitarbeiter_uid=".$db->db_add_param($user).") AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
//Lehreinheiten DropDown
echo $p->t('global/lehreinheit').": <SELECT name='lehreinheit_id' onChange=\"MM_jumpMenu('self',this,0)\">\n";
while($row = $db->db_fetch_object($result))
{
if($lehreinheit_id=='')
$lehreinheit_id=$row->lehreinheit_id;
$selected = ($row->lehreinheit_id == $lehreinheit_id?'selected':'');
$qry_lektoren = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_lektoren = $db->db_query($qry_lektoren))
{
$lektoren = '( ';
$i=0;
while($row_lektoren = $db->db_fetch_object($result_lektoren))
{
$lektoren .= $row_lektoren->kurzbz;
$i++;
if($i<$db->db_num_rows($result_lektoren))
$lektoren.=', ';
else
$lektoren.=' ';
}
$lektoren .=')';
}
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$gruppen = '';
$i=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$i++;
if($i<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
echo "<OPTION value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->lfbez-$row->lehrform_kurzbz - $gruppen $lektoren</OPTION>\n";
}
echo '</SELECT> ';
}
else
{
if($row = $db->db_fetch_object($result))
$lehreinheit_id = $row->lehreinheit_id;
}
}
else
{
echo $p->t('benotungstool/fehlerBeimAuslesen');
}
echo $stsem_content;
echo '</td><tr></table>';
echo '<table width="100%"><tr>';
echo '<td class="tdwidth10">&nbsp;</td>';
echo "<td>\n";
echo "<b>".$lv_obj->bezeichnung_arr[$sprache]."</b><br>";
if($lehreinheit_id=='')
die($p->t('benotungstool/keinePassendeLehreinheitGefunden'));
//Menue
include("menue.inc.php");
/*
echo "\n<!--Menue-->\n";
echo "<br><a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Verwaltung</font>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Anwesenheits- und Übersichtstabelle</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Studentenpunkte verwalten</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Statistik</font></a>
<br><br>
<!--Menue Ende-->\n";
*/
echo "<h3>".$p->t('benotungstool/studentenaufgabenVerwalten')."</h3>";
if(isset($_POST['submit']))
{
$error=false;
$punkte = (isset($_POST['punkte'])?mb_ereg_replace(',','.',$_POST['punkte']):'');
if(isset($punkte) && is_numeric($punkte) && !isset($_POST['abgabe']))
{
$ueb_obj = new uebung();
if($ueb_obj->load_studentuebung($uid, $uebung_id))
$ueb_obj->new = false;
else
{
$ueb_obj->new = true;
$ueb_obj->insertamum = date('Y-m-d H:i:s');
$ueb_obj->insertvon = $user;
}
$ueb_obj->mitarbeitspunkte = $punkte;
$ueb_obj->anmerkung = $_POST['anmerkung'];
$ueb_obj->updateamum = date('Y-m-d H:i:s');
$ueb_obj->updatevon = $user;
$ueb_obj->mitarbeiter_uid = $user;
$ueb_obj->uebung_id = $uebung_id;
$ueb_obj->student_uid = $uid;
if(!$ueb_obj->studentuebung_save())
$error = true;
$bsp_obj = new beispiel();
if($bsp_obj->load_beispiel($uebung_id))
{
foreach ($bsp_obj->beispiele as $row)
{
$stud_bsp_obj = new beispiel();
if($stud_bsp_obj->load_studentbeispiel($uid, $row->beispiel_id))
{
$stud_bsp_obj->new=false;
}
else
{
$stud_bsp_obj->new=true;
$stud_bsp_obj->insertamum = date('Y-m-d H:i:s');
$stud_bsp_obj->insertvon = $user;
}
$stud_bsp_obj->vorbereitet = ($_POST['solved_'.$row->beispiel_id]==1?true:false);
$stud_bsp_obj->probleme = (isset($_POST['problem_'.$row->beispiel_id])?true:false);
$stud_bsp_obj->updateamum = date('Y-m-d H:i:s');
$stud_bsp_obj->updatevon = $user;
$stud_bsp_obj->student_uid = $uid;
$stud_bsp_obj->beispiel_id = $row->beispiel_id;
if(!$stud_bsp_obj->studentbeispiel_save())
{
echo $stud_bsp_obj->errormsg;
$error=true;
}
}
}
if($error)
echo "<span class='error'>".$p->t('benotungstool/esKonntenNichtAlleDatenGespeichertWerden')."</span>";
else
echo $p->t('global/erfolgreichgespeichert')."<br>";
}
else if (!isset($_POST['abgabe']))
{
echo "<span class='error'>".$p->t('benotungstool/punkteSindUngueltig')."</span>";
}
if(isset($_POST['abgabe']) && is_numeric($_POST['note']))
{
$note = $_POST['note'];
$ueb_obj = new uebung();
if($ueb_obj->load_studentuebung($uid, $uebung_id))
$ueb_obj->new = false;
else
{
$ueb_obj->new = true;
$ueb_obj->insertamum = date('Y-m-d H:i:s');
$ueb_obj->insertvon = $user;
}
$ueb_obj->note = $note;
$ueb_obj->anmerkung = $_POST['anmerkung'];
$ueb_obj->updateamum = date('Y-m-d H:i:s');
$ueb_obj->updatevon = $user;
$ueb_obj->mitarbeiter_uid = $user;
$ueb_obj->uebung_id = $uebung_id;
$ueb_obj->student_uid = $uid;
if(!$ueb_obj->studentuebung_save())
$error = true;
if($error)
echo "<span class='error'>".$p->t('benotungstool/esKonntenNichtAlleDatenGespeichertWerden')."</span>";
else
echo $p->t('global/erfolgreichgespeichert')."<br>";
}
else if (isset($_POST['abgabe']))
echo "<span class='error'>".$p->t('benotungstool/noteIstUngueltig')."<br></span>";
}
if(isset($_GET['uid']) && $_GET['uid']!='')
{
//Punkte eintragen
$uid = addslashes($_GET['uid']);
$qry_stud = "SELECT vorname, nachname, uid FROM campus.vw_student WHERE uid='$uid'";
if(!$result_stud = $db->db_query($qry_stud))
die($p->t('benotungstool/fehlerBeimLadenDesStudenten'));
if(!$row_stud = $db->db_fetch_object($result_stud))
die($p->t('benotungstool/studentWurdeNichtGefunden'));
//echo "<b>$row_stud->vorname $row_stud->nachname</b><br>\n";
$uid_arr = Array();
$vorname_arr = Array();
$nachname_arr = Array();
// studentenquery
$qry_stud_dd = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
if($result_stud_dd = $db->db_query($qry_stud_dd))
{
$i=1;
while($row_stud_dd = $db->db_fetch_object($result_stud_dd))
{
$uid_arr[] = $row_stud_dd->uid;
$vorname_arr[] = $row_stud_dd->vorname;
$nachname_arr[] = $row_stud_dd->nachname;
}
}
// }
// }
echo $p->t('benotungstool/studentenAuswaehlen').": ";
$key = array_search($uid,$uid_arr);
$prev = $key-1;
$next = $key+1;
if ($key > 0)
echo "<a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$prev]&stsem=$stsem'> &lt;&lt; </a>";
echo "<SELECT name='stud_dd' onChange=\"MM_jumpMenu('self',this,0)\">\n";
for ($j = 0; $j < count($uid_arr); $j++)
{
if ($uid_arr[$j] == $uid)
$selected = " selected";
else
$selected = "";
echo "<option value='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$j]&stsem=$stsem'$selected>$vorname_arr[$j] $nachname_arr[$j]</option>";
}
echo "</select>";
if ($key < count($uid_arr)-1)
echo "<a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid_arr[$next]&stsem=$stsem'> &gt;&gt; </a>";
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,1);
if(count($uebung_obj->uebungen)>0)
{
echo "<table width='100%'><tr><td valign='top'>";
echo "<br>".$p->t('benotungstool/waehlenSieEineAufgabeAus').": <SELECT name='uebung' onChange=\"MM_jumpMenu('self',this,0)\">\n";
echo "<option value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=&uid=$uid' selected></option>";
foreach ($uebung_obj->uebungen as $row)
{
if($uebung_id == $row->uebung_id)
$selected = 'selected';
else
$selected = '';
if($uebung_id=='')
$uebung_id=$row->uebung_id;
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id);
if(count($subuebung_obj->uebungen)>0)
{
$disabled = 'disabled';
$selected = '';
}
else
$disabled = '';
echo "<OPTION style='background-color:#cccccc;' value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id&uid=$uid' $selected $disabled>";
echo $row->bezeichnung;
echo '</OPTION>';
if(count($subuebung_obj->uebungen)>0)
{
foreach ($subuebung_obj->uebungen as $subrow)
{
if($uebung_id=='')
$uebung_id=$subrow->uebung_id;
if($uebung_id == $subrow->uebung_id)
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id&uid=$uid' $selected>";
//Freigegeben = +
//Nicht Freigegeben = -
if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($subrow->freigabebis)>time())
echo ' + ';
else
echo ' - ';
echo $subrow->bezeichnung;
echo '</OPTION>';
}
}
}
echo '</SELECT>';
echo '</td>';
echo "<td>
<table>
<tr>
<td><b>+</b>...</td>
<td><u>".$p->t('benotungstool/freigeschaltet')."</u>.</td>
</tr>
<tr>
<td><b>-</b>...</td>
<td><u>".$p->t('benotungstool/nichtFreigeschaltet')."</u>.</td>
</tr>
</table>
</td>
</tr></table>";
}
else
die($p->t('benotungstool/derzeitSindKeineUebungenAngelegt'));
$ueb_obj = new uebung();
$ueb_obj->load($uebung_id);
if($ueb_obj->load_studentuebung($uid, $uebung_id))
{
$anmerkung = $ueb_obj->anmerkung;
$mitarbeit = $ueb_obj->mitarbeitspunkte;
$note = $ueb_obj->note;
}
else
{
$anmerkung = '';
$mitarbeit = 0;
$note = '';
}
if ($ueb_obj->beispiele && is_numeric($_GET['uebung_id']))
{
echo "
<form accept-charset='UTF-8' method='POST' action='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid'>
<table width='100%'><tr><td valign='top'>
".$p->t('global/anmerkung').":<br>
<textarea name='anmerkung' cols=50 rows=5>".$anmerkung."</textarea>
<br><br>
<table border='1'>
<tr>
<td class='ContentHeader2'>".$p->t('benotungstool/beispiel')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/vorbereitet')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/nichtVorbereitet')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/probleme')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/punkte')."</td>
</tr>";
$bsp_obj = new beispiel();
$bsp_obj->load_beispiel($uebung_id);
foreach ($bsp_obj->beispiele as $row)
{
$stud_bsp_obj = new beispiel();
if($stud_bsp_obj->load_studentbeispiel($uid, $row->beispiel_id))
{
$vorbereitet = $stud_bsp_obj->vorbereitet;
$probleme = $stud_bsp_obj->probleme;
}
else
{
$vorbereitet = false;
$probleme = false;
}
echo "<tr>
<td>$row->bezeichnung</td>
<td align='center'><input type='radio' name='solved_$row->beispiel_id' value='1' ".($vorbereitet?'checked':'')."></td>
<td align='center'><input type='radio' name='solved_$row->beispiel_id' value='0' ".(!$vorbereitet?'checked':'')."></td>
<td align='center'><input type='checkbox' name='problem_$row->beispiel_id' ".($probleme?'checked':'')."></td>
<td align='center'>$row->punkte</td>
</tr>";
}
echo "</table>";
$ueb_obj->load_studentuebung($uid, $uebung_id);
if ($ueb_obj->abgabe_id)
{
$ueb_obj->load_abgabe($ueb_obj->abgabe_id);
$filename = $ueb_obj->abgabedatei;
}
else
$filename='';
if ($filename != '')
echo "<br>".$p->t('benotungstool/abgabedatei').": <a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid&download_abgabe=$filename'>".$filename."</a><br><br>";
echo "
</td><td valign='top' algin='right'>";
//Gesamtpunkte diese Kreuzerlliste
$qry = "SELECT sum(punkte) as punktegesamt FROM campus.tbl_beispiel WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER);
$punkte_gesamt=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_gesamt = $row->punktegesamt;
//Eingetragen diese Kreuzerlliste
$qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid)." AND vorbereitet=true";
$punkte_eingetragen=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_eingetragen = ($row->punkteeingetragen!=''?$row->punkteeingetragen:0);
//Gesamtpunkte alle Kreuzerllisten in dieser Übung
$ueb_help = new uebung($uebung_id);
$liste_id = $ueb_help->liste_id;
$qry = "SELECT sum(tbl_beispiel.punkte) as punktegesamt_alle FROM campus.tbl_beispiel, campus.tbl_uebung
WHERE tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
tbl_uebung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." and tbl_uebung.liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER);
$punkte_gesamt_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_gesamt_alle = $row->punktegesamt_alle;
//Eingetragen alle Kreuzerllisten
$qry = "SELECT sum(tbl_beispiel.punkte) as punkteeingetragen_alle FROM campus.tbl_beispiel, campus.tbl_studentbeispiel, campus.tbl_uebung
WHERE tbl_beispiel.beispiel_id = tbl_studentbeispiel.beispiel_id AND
tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
tbl_uebung.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
tbl_uebung.liste_id = ".$db->db_add_param($liste_id)." AND
tbl_studentbeispiel.student_uid=".$db->db_add_param($uid)." AND vorbereitet=true";
$punkte_eingetragen_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$punkte_eingetragen_alle = ($row->punkteeingetragen_alle!=''?$row->punkteeingetragen_alle:0);
//Mitarbeitspunkte
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeitspunkte FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid)." and liste_id=".$db->db_add_param($liste_id);
$mitarbeit_alle=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$mitarbeit_alle = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0);
//Mitarbeitspunkte
$qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid);
$mitarbeit=0;
if($result=$db->db_query($qry))
if($row = $db->db_fetch_object($result))
$mitarbeit = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0);
echo "
<br>
<table border='1' width='210'>
<tr>
<td colspan='2' class='ContentHeader2'>Diese Kreuzerlliste:</td>
</tr>
<tr>
<td width='180'>".$p->t('benotungstool/punkteInsgesamtMoeglich').":</td>
<td width='30'>$punkte_gesamt</td>
</tr>
<tr>
<td>".$p->t('benotungstool/punkteEingetragen').":</td>
<td>$punkte_eingetragen</td>
</tr>
</table>
<br><br>
<table border='1' width='210'>
<tr>
<td colspan='2' class='ContentHeader2'>".$p->t('benotungstool/alleKreuzerllistenDieserUebung').":</td>
</tr>
<tr>
<td width='180'>".$p->t('benotungstool/punkteInsgesamtMoeglich').":</td>
<td width='30'>$punkte_gesamt_alle</td>
</tr>
<tr>
<td>".$p->t('benotungstool/punkteEingetragen').":</td>
<td>$punkte_eingetragen_alle</td>
</tr>
</table>
<br><br>
<table border='1' width='210'>
<tr>
<td colspan='2' class='ContentHeader2'>".$p->t('benotungstool/mitarbeitspunkte').":</td>
</tr>
<tr>
<td width='180'>".$p->t('benotungstool/bisherInsgesamt').":</td>
<td width='30'>$mitarbeit_alle</td>
</tr>
<tr>
<td>".$p->t('benotungstool/dieseKreuzerlliste').":</td>
<td><input type='text' size=2 name='punkte' value='$mitarbeit'></td>
</tr>
</table>
";
echo "
</td></tr>
<tr>
<td>&nbsp;</td>
<td>
<input type='button' value='".$p->t('global/zurueck')."' onclick='history.back();'>
<input type='submit' value='".$p->t('global/speichern')."' name='submit'>
</td>
</tr>
</table>
</form>
";
}
else if (is_numeric($_GET['uebung_id']))
{
$ueb_obj->load_studentuebung($uid, $uebung_id);
if ($ueb_obj->abgabe_id)
{
$ueb_obj->load_abgabe($ueb_obj->abgabe_id);
$filename = $ueb_obj->abgabedatei;
}
else
$filename='';
//Abgaben benoten
$studentnote = new studentnote($lehreinheit_id,$stsem,$uid,$uebung_id);
$studentnote->calc_note($uebung_id, $uid);
echo "<span class='studentnote'>".$p->t('benotungstool/note').": ".$studentnote->note." (Gewicht: ".$ueb_obj->gewicht.")</span><br><br>";
if ($filename != '')
echo $p->t('benotungstool/abgabedatei').": <a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid&download_abgabe=$filename'>".$filename."</a><br><br>";
echo "
<form accept-charset='UTF-8' method='POST' action='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$uid'>
<table width='100%'><tr><td valign='top'>
".$p->t('global/anmerkung').":<br>
<textarea name='anmerkung' cols=50 rows=5>".$anmerkung."</textarea>
</td><td>
<table border='1'>
<tr>
<td class='ContentHeader2'>Note</td>
<td><input type='text' name='note' value='$note'><input type='hidden' name='abgabe' value='1'></td>
</tr>";
echo "
<tr>
<td colspan='2'>
<input type='button' value='".$p->t('global/zurueck')."' onclick='history.back();'>
<input type='submit' value='".$p->t('global/speichern')."' name='submit'>
</td>
</tr>
</table>
</form>";
}
echo "</td></tr></table>";
echo "<table>\n";
echo " <tr>\n";
echo " <form accept-charset='UTF-8' method='POST' action='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&stsem=$stsem&uid=$uid' enctype='multipart/form-data'>\n";
echo " <td>\n";
echo " <b>".$p->t('benotungstool/studentenabgabedatei').":</b><br><input type='file' name='abgabedatei'> <input type='submit' name='abgabe' value='".$p->t('benotungstool/abgeben')."'>";
echo " </td>\n";
echo " </form>\n";
echo "</tr>\n";
echo "</table>";
}
else
{
//Übungen benoten
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,1);
if(count($uebung_obj->uebungen)>0)
{
echo "<table width='100%'><tr><td valign='top'>";
echo "<br>".$p->t('benotungstool/aufgabeKreuzerllistenAbgaben').": <SELECT name='uebung' onChange=\"MM_jumpMenu('self',this,0)\">\n";
echo "<option value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=&uid=$uid' selected></option>";
foreach ($uebung_obj->uebungen as $row)
{
if($uebung_id == $row->uebung_id)
$selected = 'selected';
else
$selected = '';
if($uebung_id=='')
$uebung_id=$row->uebung_id;
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id);
if(count($subuebung_obj->uebungen)>0)
{
$disabled = 'disabled';
$selected = '';
}
else
$disabled = '';
echo "<OPTION style='background-color:#cccccc;' value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$row->uebung_id&uid=$uid' $selected $disabled>";
echo $row->bezeichnung;
echo '</OPTION>';
if(count($subuebung_obj->uebungen)>0)
{
foreach ($subuebung_obj->uebungen as $subrow)
{
if($uebung_id=='')
$uebung_id=$subrow->uebung_id;
if($uebung_id == $subrow->uebung_id)
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id&uid=$uid' $selected>";
//Freigegeben = +
//Nicht Freigegeben = -
if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)<time() && $datum_obj->mktime_fromtimestamp($subrow->freigabebis)>time())
echo ' + ';
else
echo ' - ';
echo $subrow->bezeichnung;
echo '</OPTION>';
}
}
}
echo '</SELECT>';
echo "<a href='anwesenheitsliste.php?output=html&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&stsem=$stsem' target='_blank'> [".$p->t('benotungstool/benoten')."]</a>";
$abgabe_obj = new uebung($uebung_id);
if ($abgabe_obj->abgabe && glob(BENOTUNGSTOOL_PATH."abgabe/*_[WS]S[0-9][0-9][0-9][0-9]_".$uebung_id."_*"))
{
$date = date('Y-m-d_H:i:s');
$downloadname = makeUploadName($db, $which="zip", $lehreinheit_id, $uebung_id, $stsem, $uid=null, $date);
$downloadname = str_replace($uebung_id, str_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname);
$downloadname = preg_replace('/[^A-Za-z0-9\-_]/', '',$downloadname);
echo "<a href='zipdownload_benotungstool.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&downloadname=$downloadname'> [".$p->t('benotungstool/abgabenDownloaden')."]</a>";
}
else
echo "[".$p->t('benotungstool/keineAbgabenVerfuegbar')."]";
echo '</td></tr></table>';
}
echo "<br><hr><br>";
//Studentenliste
echo $p->t('benotungstool/bitteWaehlenSieDenStudentenAus')."<br>";
echo "
<table width='80%'>
";
echo "<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td class='ContentHeader2'>".$p->t('global/uid')."</td>
<td class='ContentHeader2'>".$p->t('global/nachname')."</td>
<td class='ContentHeader2'>".$p->t('global/vorname')."</td>
<td class='ContentHeader2'>".$p->t('benotungstool/studentenansicht')."</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>";
/*
if($row_grp->gruppe_kurzbz!='')
{
echo "
<tr>
<td colspan='4' align='center'><b>$row_grp->gruppe_kurzbz</b></td>
</tr>";
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz='".addslashes($row_grp->gruppe_kurzbz)."' AND studiensemester_kurzbz = '".$stsem."' ORDER BY nachname, vorname";
}
else
{
echo "
<tr>
<td colspan='4' align='center'><b>Verband $row_grp->verband ".($row_grp->gruppe!=''?"Gruppe $row_grp->gruppe":'')."</b></td>
</tr>";
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student
WHERE studiengang_kz='$row_grp->studiengang_kz' AND
semester='$row_grp->semester' ".
($row_grp->verband!=''?" AND trim(verband)=trim('$row_grp->verband')":'').
($row_grp->gruppe!=''?" AND trim(gruppe)=trim('$row_grp->gruppe')":'').
" ORDER BY nachname, vorname";
}
*/
// studentenquery
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehreinheit_id = '".$lehreinheit_id."' ORDER BY nachname, vorname";
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
echo "
<tr class='liste".($i%2)."'>
<td><a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item'>$row_stud->uid</a></td>
<td><a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item'>$row_stud->nachname</a></td>
<td><a href='studentenpunkteverwalten.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item'>$row_stud->vorname</a></td>
<td><a href='studentenansicht.php?lvid=$lvid&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id&uid=$row_stud->uid&stsem=$stsem' class='Item' target='_blank'>".$p->t('benotungstool/studentenansicht')."</a></td>
</tr>";
$i++;
}
}
// }
// }
echo "</table>";
}
?>
</td></tr>
</table>
</body>
</html>
@@ -1,941 +0,0 @@
<?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/cis.config.inc.php');
require_once('../../../../include/basis_db.class.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');
require_once('functions.inc.php');
require_once('../../../../include/phrasen.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
function microtime_float()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
$time = microtime_float();
?>
<!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">
<title>Kreuzerltool</title>
<script language="JavaScript" type="text/javascript">
<!--
function MM_jumpMenu(targ, selObj, restore)
{
eval(targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
if(restore)
{
selObj.selectedIndex = 0;
}
}
function confirmdelete()
{
return confirm('<?php echo $p->t('gesamtnote/wollenSieWirklichLoeschen');?>');
}
//Aus- und Einblenden der Listen
__js_page_array = new Array();
function js_toggle_container(conid)
{
if (document.getElementById)
{
var block = "table-row";
if (navigator.appName.indexOf('Microsoft') > -1)
block = 'block';
var status = __js_page_array[conid];
if (status == null)
status=document.getElementById(conid).style.display; //status = "none";
if (status == "none")
{
document.getElementById(conid).style.display = block;
__js_page_array[conid] = "visible";
}
else
{
document.getElementById(conid).style.display = 'none';
__js_page_array[conid] = "none";
}
return false;
}
else
return true;
}
//-->
</script>
</head>
<body>
<?php
$user = get_uid();
if(!check_lektor($user))
die($p->t('global/keineBerechtigungFuerDieseSeite'));
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id
$lvid = $_GET['lvid'];
else
die($p->t('global/fehlerBeiDerParameteruebergabe'));
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
else
$lehreinheit_id = '';
//Laden der Lehrveranstaltung
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lvid))
die($lv_obj->errormsg);
//Studiengang laden
$stg_obj = new studiengang($lv_obj->studiengang_kz);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
//Vars
$datum_obj = new datum();
$global_msg ='';
$error_thema='';
$error_anzahlderbeispiele='';
$error_punkteprobeispiel='';
$error_freigabebis='';
$error_freigabevon='';
$error_gewicht='';
$thema = (isset($_POST['thema'])?$_POST['thema']:'');
$anzahlderbeispiele = (isset($_POST['anzahlderbeispiele'])?$_POST['anzahlderbeispiele']:'');
$punkteprobeispiel = (isset($_POST['punkteprobeispiel'])?$_POST['punkteprobeispiel']:'');
$punkteprobeispiel = mb_ereg_replace(',','.',$punkteprobeispiel);
$freigabebis = (isset($_POST['freigabebis'])?$_POST['freigabebis']:'');
$freigabevon = (isset($_POST['freigabevon'])?$_POST['freigabevon']:'');
$gewicht = (isset($_POST['gewicht'])?$_POST['gewicht']:'');
$positiv = (isset($_POST['positiv'])?$_POST['positiv']:'');
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$copy_content = '';
$copy_dropdown = '';
//Kopfzeile
echo '<table width="100%"><tr><td><h1>'.$p->t('benotungstool/benotungstool');
echo '</h1></td><td align="right">'."\n";
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
$stsem = $stsem_obj->getaktorNext();
$stsem_obj->getAll();
//Studiensemester DropDown
$stsem_content = $p->t('global/studiensemester').": <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">\n";
foreach($stsem_obj->studiensemester as $studiensemester)
{
$selected = ($stsem == $studiensemester->studiensemester_kurzbz?'selected':'');
$stsem_content.= "<OPTION value='verwaltung.php?lvid=$lvid&stsem=$studiensemester->studiensemester_kurzbz' $selected>$studiensemester->studiensemester_kurzbz</OPTION>\n";
}
$stsem_content.= "</SELECT>\n";
//Lehreinheiten laden
if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
else
{
$qry = "SELECT
distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz
FROM
lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter
WHERE
tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE mitarbeiter_uid=".$db->db_add_param($user).") AND
tbl_lehreinheit.studiensemester_kurzbz = ".$db->db_add_param($stsem);
}
if($result = $db->db_query($qry))
{
$result_alle_lehreinheiten = $result;
if($db->db_num_rows($result)>1)
{
//Lehreinheiten DropDown
echo $p->t('global/lehreinheit').": <SELECT name='lehreinheit_id' onChange=\"MM_jumpMenu('self',this,0)\">\n";
$copy_dropdown = "<select name='lehreinheit_id_target'><option></option>";
while($row = $db->db_fetch_object($result))
{
if($lehreinheit_id=='')
$lehreinheit_id=$row->lehreinheit_id;
$selected = ($row->lehreinheit_id == $lehreinheit_id?'selected':'');
//Zugeteilte Lektoren
$qry_lektoren = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter using(mitarbeiter_uid) WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_lektoren = $db->db_query($qry_lektoren))
{
$lektoren = '( ';
$i=0;
while($row_lektoren = $db->db_fetch_object($result_lektoren))
{
$lektoren .= $row_lektoren->kurzbz;
$i++;
if($i<$db->db_num_rows($result_lektoren))
$lektoren.=', ';
else
$lektoren.=' ';
}
$lektoren .=')';
}
//Zugeteilte Gruppen
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$gruppen = '';
$i=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$i++;
if($i<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
echo "<OPTION value='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->lfbez-$row->lehrform_kurzbz - $gruppen $lektoren</OPTION>\n";
if ($lehreinheit_id != $row->lehreinheit_id)
$copy_dropdown .= "<option value='".$row->lehreinheit_id."'>$row->lfbez-$row->lehrform_kurzbz - $gruppen</option>";
}
echo '</SELECT> ';
$copy_dropdown .="</select>";
}
else
{
if($row = $db->db_fetch_object($result))
$lehreinheit_id = $row->lehreinheit_id;
}
}
else
{
echo $p->t('benotungstool/fehlerBeimAuslesen');
}
echo $stsem_content;
echo '</td><tr></table>';
echo '<table width="100%"><tr>';
echo '<td class="tdwidth10">&nbsp;</td>';
echo "<td>\n";
echo "<h2>".$lv_obj->bezeichnung_arr[$sprache]."</h2>";
if($lehreinheit_id=='')
die($p->t('benotungstool/esGibtKeineLehreinheiten'));
//Menue
include("menue.inc.php");
/*
echo "\n<!--Menue-->\n";
echo "<br>
<a href='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Verwaltung</font>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='anwesenheitstabelle.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Anwesenheits- und Übersichtstabelle</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='studentenpunkteverwalten.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Studentenpunkte verwalten</font></a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href='statistik.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' class='Item'><font size='3'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'>&nbsp;Statistik</font></a>
<br><br>
<!--Menue Ende-->\n";
*/
//echo "studiensemester: $stsem<br>";
//echo "lehrveranstaltung: $lvid<br>";
//echo "lehreinheit: $lehreinheit_id<br>";
//Übung in andere LE kopieren
if (isset($_REQUEST["copy_uebung"]))
{
$copy_insert = 0;
$copy_update = 0;
$copy_insert_bsp = 0;
$copy_update_bsp = 0;
$uebung_id_source = $_REQUEST["uebung_id_source"];
$lehreinheit_id_target = $_REQUEST["lehreinheit_id_target"];
if (!is_numeric($uebung_id_source) or !is_numeric($lehreinheit_id_target))
echo "<span class='error'>".$p->t('benotungstool/uebungUndLehreinheit')."!</span>";
else
{
$ueb_1 = new uebung($uebung_id_source);
$nummer_source = $ueb_1->nummer;
$qry = "SELECT * from campus.tbl_uebung where nummer = ".$db->db_add_param($nummer_source)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id_target, FHC_INTEGER);
//echo $qry;
if($result1 = $db->db_query($qry))
{
if ($db->db_num_rows($result1) >0)
{
$row1 = $db->db_fetch_object($result1);
$ueb_1_target =new uebung($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();
$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'>".$p->t('benotungstool/hauptuebungKonnteNichtKopiertWerden')."!</span>";
}
else
{
// Subübungen durchlaufen
$error = 0;
$ueb_2 = new uebung();
$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 = ".$db->db_add_param($nummer_source2)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id_target, FHC_INTEGER);
$result2 = $db->db_query($qry2);
if ($db->db_num_rows($result2) >0)
{
$row2 = $db->db_fetch_object($result2);
$ueb_2_target =new uebung($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();
$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'>".$p->t('benotungstool/uebungKonnteNichtKopiertWerden')."!</span>";
}
//angabedatei syncen
if ($subrow->angabedatei != "")
{
$angabedatei_source = $subrow->angabedatei;
$angabedatei_target = makeUploadName($db, 'angabe', $lehreinheit_id, $ueb_2_target->uebung_id, $stsem);
$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 = ".$db->db_add_param($angabedatei_target)." where uebung_id = ".$db->db_add_param($ueb_2_target->uebung_id, FHC_INTEGER);
$db->db_query($angabeupdate);
}
if (($error == 0) and $ueb_2_target->beispiele)
{
// beispiele synchronisieren
$bsp_obj = new beispiel();
$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 = ".$db->db_add_param($nummer_source_bsp)." and uebung_id = ".$db->db_add_param($ueb_2_target->uebung_id, FHC_INTEGER);
$resultbsp = $db->db_query($qrybsp);
if ($db->db_num_rows($resultbsp) >0)
{
$rowbsp = $db->db_fetch_object($resultbsp);
$bsp_target =new beispiel($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();
$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'>".$p->t('benotungstool/beispieleKonntenNichtAngelegtWerden')."</span>";
}
//Notenschlüssel synchronisieren
$clear = "delete from campus.tbl_notenschluesseluebung where uebung_id = ".$db->db_add_param($ueb_1_target->uebung_id, FHC_INTEGER);
$db->db_query($clear);
$qry_ns_source = "SELECT * from campus.tbl_notenschluesseluebung where uebung_id = ".$db->db_add_param($uebung_id_source, FHC_INTEGER);
$result_ns_source = $db->db_query($qry_ns_source);
while($row_ns = $db->db_fetch_object($result_ns_source))
{
$ns_insert = "INSERT INTO campus.tbl_notenschluesseluebung values (".$db->db_add_param($ueb_1_target->uebung_id).",".$db->db_add_param($row_ns->note).", ".$db->db_add_param($row_ns->punkte).")";
$db->db_query($ns_insert);
}
}
}
}
}
}
}
else
echo "<span class='error'>".$p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')."!</span>";
if ($error == 0)
echo $p->t('benotungstool/uebungErfolgreichKopiert')."! (Ü: ".$copy_insert."/".$copy_update."; B: ".$copy_insert_bsp."/".$copy_update_bsp.")";
}
}
echo "<h3>".$p->t('benotungstool/uebungenAnlegenUndVerwalten')."</h3>";
echo "</tr></table>";
//Anlegen einer neuen Uebung
if(isset($_POST['uebung_neu']))
{
if(isset($thema))
{
//pruefen ob alle Daten eingegeben wurden
$error=false;
$error_msg = '';
if($thema=='')
{
//$error_thema .= "<span class='error'>Thema muss eingegeben werden</span>";
echo "<span class='error'>".$p->t('benotungstool/themaMussEingegebenWerden')."</span>";
$error=true;
}
if(!is_numeric($gewicht))
{
echo "<span class='error'>".$p->t('benotungstool/gewichtMussEineZahlSein')."</span>";
$error = true;
}
if(!$error)
{
//Uebung anlegen
$datum_obj = new datum();
$uebung_obj = new uebung();
$uebung_obj->gewicht=$gewicht;
$uebung_obj->punkte='';
$uebung_obj->angabedatei='';
$uebung_obj->freigabevon = null;
$uebung_obj->freigabebis = null;
$uebung_obj->abgabe=false;
$uebung_obj->beispiele=false;
$uebung_obj->bezeichnung=$thema;
$uebung_obj->positiv=isset($_POST['positiv']);
$uebung_obj->defaultbemerkung='';
$uebung_obj->lehreinheit_id=$lehreinheit_id;
$uebung_obj->updateamum = date('Y-m-d H:i:s');
$uebung_obj->updatevon = $user;
$uebung_obj->insertamum = date('Y-m-d H:i:s');
$uebung_obj->insertvon = $user;
$uebung_obj->statistik = false;
$uebung_obj->liste_id = null;
$uebung_obj->get_next_nummer();
$uebung_obj->nummer = $uebung_obj->next_nummer;
if($uebung_obj->save(true))
{
if($error_msg!='')
echo "<span class='error'>$error_msg</span>";
//else
// header("Location: verwaltung_listen.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&liste_id=$uebung_obj->uebung_id");
}
else
echo "<span class='error'>$uebung_obj->errormsg</span>";
}
}
else
echo "<span class='error'>".$p->t('benotungstool/uebungKonnteNichtAngelegtWerden')."!</span><br>";
}
//Loeschen einer Uebung
if(isset($_POST['delete_uebung']))
{
if(isset($_POST['uebung']))
{
$ueb_obj = new uebung();
$error_msg='';
//Ausgewaehlte Beispiele holen
$delete_ids = $_POST['uebung'];
foreach($delete_ids as $id)
{
//Beispiel loeschen
if(!$ueb_obj->delete($id))
$error_msg=$ueb_obj->errormsg;
}
if($error_msg!='')
echo "<span class='error'>$error_msg</span>";
}
}
//Editieren einer Uebung
if(isset($_POST['uebung_edit']))
{
$error = false;
if($thema=='')
{
echo "<span class='error'>".$p->t('benotungstool/themaMussEingegebenWerden')."'</span>";
$error = true;
}
if(!$error)
{
$uebung_obj = new uebung($uebung_id);
$uebung_obj->gewicht='';
$uebung_obj->punkte='';
$uebung_obj->angabedatei='';
$uebung_obj->freigabevon = null;
$uebung_obj->freigabebis = null;
$uebung_obj->abgabe=false;
$uebung_obj->beispiele=false;
$uebung_obj->bezeichnung=$thema;
$uebung_obj->positiv=true;
$uebung_obj->defaultbemerkung='';
$uebung_obj->lehreinheit_id=$lehreinheit_id;
$uebung_obj->updateamum = date('Y-m-d H:i:s');
$uebung_obj->updatevon = $user;
$uebung_obj->uebung_id = $uebung_id;
$uebung_obj->statistik = false;
if($uebung_obj->save(false))
header("Location: verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id");
//echo "Die &Auml;nderung wurde gespeichert!";
else
echo "<span class='error'>$uebung_obj->errormsg</span>";
}
}
//Eine Uebung in eine andere Lehreinheit kopieren
if(isset($_GET['kopieren']) && $_GET['kopieren']=='true')
{
//echo "Kopiere Uebung ".$_GET['uebung_copy_id']." to ".$_POST['lehreinheit_copy_id'];
//Laden der zu kopierenden Uebung
if(is_numeric($_GET['uebung_copy_id']) && is_numeric($_POST['lehreinheit_copy_id']))
{
//Source Uebung Laden
$qry = "SELECT * FROM campus.tbl_uebung WHERE uebung_id=".$db->db_add_param($_GET['uebung_copy_id'], FHC_INTEGER);
if($result_source = $db->db_query($qry))
{
if($row_source = $db->db_fetch_object($result_source))
{
//Berechtigung Checken
$qry = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehreinheit_id=".$db->db_add_param($_POST['lehreinheit_copy_id'], FHC_INTEGER)." AND mitarbeiter_uid=".$db->db_add_param($user);
if($row_berechtigt = $db->db_query($qry))
{
if($db->db_num_rows($row_berechtigt)>0 ||
$rechte->isBerechtigt('admin',0) ||
$rechte->isBerechtigt('admin',$lv_obj->studiengang_kz)
|| $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
{
//Schauen ob bereits eine uebung mit diesem Namen vorhanden ist
$qry = "SELECT * FROM campus.tbl_uebung WHERE lehreinheit_id=".$db->db_add_param($_POST['lehreinheit_copy_id'], FHC_INTEGER)." AND bezeichnung=".$db->db_add_param($row_source->bezeichnung);
$result_bezeichnung_exists = $db->db_query($qry);
if($db->db_num_rows($result_bezeichnung_exists)==0)
{
//Uebung einfuegen
$uebung_dest = new uebung();
$uebung_dest->gewicht = $row_source->punkte;
$uebung_dest->punkte = $row_source->punkte;
$uebung_dest->angabedatei = $row_source->angabedatei;
$uebung_dest->freigabevon = $row_source->freigabevon;
$uebung_dest->freigabebis = $row_source->freigabebis;
$uebung_dest->abgabe = ($row_source->abgabe=='t'?true:false);
$uebung_dest->beispiele = ($row_source->beispiele=='t'?true:false);
$uebung_dest->bezeichnung = $row_source->bezeichnung;
$uebung_dest->positiv = ($row_source->positiv=='t'?true:false);
$uebung_dest->statistik = ($row_source->statistik=='t'?true:false);
$uebung_dest->defaultbemerkung = $row_source->defaultbemerkung;
$uebung_dest->lehreinheit_id = $_POST['lehreinheit_copy_id'];
$ubeung_dest->updateamum = date('Y-m-d H:i:s');
$uebung_dest->updatevon = $user;
$uebung_dest->insertamum = date('Y-m-d H:i:s');
$uebung_dest->insertvon = $user;
if($uebung_dest->save(true))
{
//Beispiel laden
$qry = "SELECT * FROM campus.tbl_beispiel WHERE uebung_id=".$db->db_add_param($_GET['uebung_copy_id'], FHC_INTEGER);
if($result_bsp_source = $db->db_query($qry))
{
$error_bsp_save=false;
while($row_bsp_source = $db->db_fetch_object($result_bsp_source))
{
//Beispiel speichern
$beispiel_dest = new beispiel();
$beispiel_dest->uebung_id = $uebung_dest->uebung_id;
$beispiel_dest->bezeichnung = $row_bsp_source->bezeichnung;
$beispiel_dest->punkte = $row_bsp_source->punkte;
$beispiel_dest->updateamum = date('Y-m-d H:i:s');
$beispiel_dest->updatevon = $user;
$beispiel_dest->insertamum = date('Y-m-d H:i:s');
$beispiel_dest->insertvon = $user;
if(!$beispiel_dest->save(true))
$error_bsp_save=true;
}
if($error_bsp_save)
echo "<span class='error'>".$p->t('benotungstool/fehlerNichtAlleBeispieleKopiert')."</span>";
else
echo $p->t('benotungstool/datenErfolgreichKopiert');
}
}
else
{
echo "<span class='error'>".$p->t('benotungstool/fehlerKopierenDerDaten').": $uebung_dest->errormsg</span>";
}
}
else
echo "<span class='error'>".$p->t('benotungstool/fehlerBeimKopieren')."!</span>";
}
else
echo "<span class='error'>".$p->t('global/keineBerechtigungFuerDieseSeite')."</span>";
}
}
else
echo "<span class='error'>".$p->t('benotungstool/uebung')." ".$_GET['uebung_copy_id']." ".$p->t('benotungstool/wurdeNichtGefunden')."</span>";
}
else
echo "<span class='error'>".$p->t('benotungstool/uebung')." ".$_GET['uebung_copy_id']." ".$p->t('benotungstool/wurdeNichtGefunden')."</span>";
}
else
echo "<span class='error'>".$p->t('global/fehlerBeiDerParameteruebergabe')."</span>";
}
//Uebersichtstabelle
if(isset($uebung_id) && $uebung_id!='')
{
echo "<table><tr><td valign='top'>";
//Bearbeiten der ausgewaehlten Uebung
echo "<form action='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$uebung_id' method=POST>\n";
echo "<table><tr><td colspan='2' width='340' class='ContentHeader3'>".$p->t('benotungstool/ausgewaehlteUebungBearbeiten')."</td><td>&nbsp;</td></tr>\n";
echo "<tr><td>&nbsp;</td><td></td></tr>";
$uebung_obj = new uebung();
$uebung_obj->load($uebung_id);
echo "
<tr><td>".$p->t('benotungstool/thema')."</td><td align='right'><input type='text' name='thema' maxlength='32' value='$uebung_obj->bezeichnung'></td><td>$error_thema</td></tr>
<!--
<tr><td>".$p->t('benotungstool/freigabe')."</td><td align='right'>von <input type='text' size='16' name='freigabevon' value='".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))."'></td></tr>
<tr><td>".$p->t('benotungstool/format')."</td><td align='right'>bis <input type='text' size='16' name='freigabebis' value='".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis))."'></td></tr>
<tr><td>".$p->t('benotungstool/statistikFuerStudentenAnzeigen')." <input type='checkbox' name='statistik' ".($uebung_obj->statistik?'checked':'')."></td><td></td></tr>
-->
<tr><td colspan=2 align='right'><input type='submit' name='uebung_edit' value='".$p->t('global/speichern')."'></td></tr>
</table>
</form>";
$beispiel_obj = new beispiel();
$beispiel_obj->load_beispiel($uebung_id);
$anzahl = count($beispiel_obj->beispiele);
echo "</td><td valign='top'>";
echo "</td></tr><tr><td valign='top'>";
echo "</td><td valign='top'>";
}
else
{
//Gesamtuebersicht ueber alle Uebungen
echo "<table><tr><td valign='top'>";
echo "<form accept-charset='UTF-8' name='del' action='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' method='POST'>";
echo "<table width='440'><tr><td colspan='3' class='ContentHeader3'>".$p->t('benotungstool/vorhandeneUebungenBearbeiten')."</td></tr>";
$uebung_obj = new uebung();
$uebung_obj->load_uebung($lehreinheit_id,$level=1,$uebung_id=null);
$anzahl = count($uebung_obj->uebungen);
//$copy_content="<table cellpadding=0><tr><td class='ContentHeader3'>&Uuml;bung in andere LE kopieren</td></tr><tr><td></td><td></td><td>&nbsp;</td></tr><tr><th>&nbsp;</th></tr>";
$has_copy_content=false;
if($anzahl>0)
{
echo "<tr><td></td><td></td><td>&nbsp;</td><td></td></tr><tr><th>".$p->t('benotungstool/thema')."</th><th>".$p->t('benotungstool/freigeschalten')."</th><th>".$p->t('benotungstool/auswahl')."</th></tr>";
//Alle Lehreinheiten holen die zu dieser lehrveranstaltung gehoeren
//und der angemeldete User berechtigt ist
$copy_option_content = array();
for($i=0;$i<$db->db_num_rows($result_alle_lehreinheiten);$i++)
{
$row_alle_lehreinheiten = $db->db_fetch_object($result_alle_lehreinheiten,$i);
if($lehreinheit_id!=$row_alle_lehreinheiten->lehreinheit_id)
{
//zugeteilte Lektoren holen
$qry_lektoren = "SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter using(mitarbeiter_uid) WHERE lehreinheit_id=".$db->db_add_param($row_alle_lehreinheiten->lehreinheit_id,FHC_INTEGER);
if($result_lektoren = $db->db_query($qry_lektoren))
{
$lektoren = '( ';
$j=0;
while($row_lektoren = $db->db_fetch_object($result_lektoren))
{
$lektoren .= $row_lektoren->kurzbz;
$j++;
if($j<$db->db_num_rows($result_lektoren))
$lektoren.=', ';
else
$lektoren.=' ';
}
$lektoren .=')';
}
//zugeteilte Gruppen holen
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($row_alle_lehreinheiten->lehreinheit_id, FHC_INTEGER);
if($result_gruppen = $db->db_query($qry_gruppen))
{
$gruppen = '';
$j=0;
while($row_gruppen = $db->db_fetch_object($result_gruppen))
{
if($row_gruppen->gruppe_kurzbz=='')
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
else
$gruppen.=$row_gruppen->gruppe_kurzbz;
$j++;
if($j<$db->db_num_rows($result_gruppen))
$gruppen.=', ';
else
$gruppen.=' ';
}
}
//$copy_option_content.= "<OPTION value='$row_alle_lehreinheiten->lehreinheit_id'>$row_alle_lehreinheiten->lfbez - $gruppen $lektoren</OPTION>\n";
$copy_le_content[$row_alle_lehreinheiten->lehreinheit_id] = "$row_alle_lehreinheiten->lfbez-$row_alle_lehreinheiten->lehrform_kurzbz - $gruppen $lektoren";
}
}
$uebung_id_source_dropdown = "<select name='uebung_id_source'><option></option>";
//Uebungen durchlaufen
foreach ($uebung_obj->uebungen as $row)
{
$uebung_id_source_dropdown .= "<option value='$row->uebung_id'>$row->bezeichnung</option>";
$has_option_content=false;
echo "<tr height=23><td align='left'>";
echo "<a onClick='return(js_toggle_container(\"submenu_$row->uebung_id\"));' class='MenuItem'><img src='../../../../skin/images/menu_item.gif' width='7' height='9'></a>&nbsp;<a href='verwaltung_listen.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&liste_id=$row->uebung_id' class='Item'><u>".$row->bezeichnung."</u></a>";
echo "</td><td align='center'>";
//if((strtotime(strftime($row->freigabevon))<=time()) && (strtotime(strftime($row->freigabebis))>=time()))
// echo 'Ja';
//else
// echo 'Nein';
echo "</td><td align='center'><input type='Checkbox' name='uebung[]' value='$row->uebung_id'></td>";
echo "<!--<form name='copy' action='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' method='POST'><td><input type='hidden' name='uebung_id_source' value='".$row->uebung_id."'>".$copy_dropdown."<input type='submit' name='copy_uebung' value='>'></td></form>-->";
echo "</tr>";
$subuebung_obj = new uebung();
$subuebung_obj->load_uebung($lehreinheit_id,$level=2,$uebung_id=$row->uebung_id);
$subanzahl = count($subuebung_obj->uebungen);
echo "<tr><td colspan='3'>";
echo "<table id='submenu_".$row->uebung_id."' style='display:none;' width='400'>";
//echo "<ul style='margin-top: 0px; margin-bottom: 0px;'>";
foreach ($subuebung_obj->uebungen as $subrow)
{
echo "<tr><td width='200'><li style='margin-left:20px;'><a href='verwaltung_listen.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id&uebung_id=$subrow->uebung_id&liste_id=$row->uebung_id'>".$subrow->bezeichnung."</a></li></td><td width='150'>";
if((strtotime(strftime($subrow->freigabevon))<=time()) && (strtotime(strftime($subrow->freigabebis))>=time()))
echo $p->t('global/ja');
else
echo $p->t('global/nein');
echo "</td><td align='center'><input type='Checkbox' name='uebung[]' value='$subrow->uebung_id'></td></tr>";
}
//echo "</ul>";
echo "</table>";
echo "</td></tr>";
}
echo "<tr><td colspan='3' align='right'><input type='Submit' value='".$p->t('benotungstool/auswahlLoeschen')."' name='delete_uebung' onclick='return confirmdelete();'></td><td></td></tr>";
echo "</form>";
if ($copy_dropdown != '')
{
echo "<tr><td colspan='3'>&nbsp;</td></tr>";
echo "<tr><td colspan='3' class='ContentHeader3'>".$p->t('benotungstool/vorhandeneUebungenKopieren')."</td></tr>";
$uebung_id_source_dropdown .= "</select>";
echo "<tr><td colspan='3'>";
echo "<form name='copy' action='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' method='POST'><table><tr><td>".$p->t('benotungstool/uebung')."</td><td></td><td>".$p->t('global/lehreinheit')."</td><td></td></tr><tr><td>".$uebung_id_source_dropdown."</td><td>-></td><td>".$copy_dropdown."</td><td><input type='submit' name='copy_uebung' value='".$p->t('global/kopieren')."'></td></tr></table></form>";
echo "</td></tr>";
}
}
else
echo "<tr><td colspan='3'>".$p->t('benotungstool/derzeitSindKeineUebungenAngelegt')."</td><td></td></tr>";
echo "</table>
<br><br>";
//Kopier-Buttons anzeigen
//$copy_content.='</table>';
//echo "</td><td valign='top'>";
//if($has_copy_content)
// echo $copy_content;
//echo "</td></tr></table>";
//Uebung neu anlegen
if(!isset($_POST['uebung_neu']))
{
$thema = $p->t('benotungstool/uebung')." ".($anzahl<9?'0'.($anzahl+1):($anzahl+1));
$anzahlderbeispiele = 10;
$punkteprobeispiel = 1;
$freigabevon = date('d.m.Y H:i');
$freigabebis = date('d.m.Y H:i');
}
echo "</td><td valign='top'>";
echo "
<form action='verwaltung.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id' method=POST>
<table >
<tr><td width='440' colspan=2 class='ContentHeader3'>".$p->t('benotungstool/neueUebungAnlegen')."</td><td></td></tr>
<tr><td>".$p->t('benotungstool/thema')."</td><td align='right'><input type='text' name='thema' maxlength='32' value='$thema'></td><td><span class='error'>$error_thema</td></tr>
<tr><td>".$p->t('benotungstool/gewicht')."</td><td align='right'><input type='text' size='16' name='gewicht' value='1'></td><td>$error_gewicht</td></tr>
<tr><td>".$p->t('benotungstool/positiv')." </td><td><input type='checkbox' name='positiv'></td></tr>
<!--
<tr><td>".$p->t('benotungstool/anzahlDerBeispiele')."</td><td align='right'><input type='text' name='anzahlderbeispiele' maxlength='2' size='2' value='$anzahlderbeispiele'></td><td>$error_anzahlderbeispiele</td></tr>
<tr><td>".$p->t('benotungstool/anzahlPunkteProBeispiel')."</td><td align='right'><input type='text' name='punkteprobeispiel' value='$punkteprobeispiel'></td><td>$error_punkteprobeispiel</td></tr>
<tr><td>".$p->t('benotungstool/freigabe')."</td><td align='right'>von <input type='text' size='16' name='freigabevon' value='$freigabevon'></td><td>$error_freigabevon</td></tr>
<tr><td>".$p->t('benotungstool/format')."</td><td align='right'>bis <input type='text' size='16' name='freigabebis' value='$freigabebis'></td><td>$error_freigabebis</td></tr>
<tr><td>".$p->t('benotungstool/statistikFuerStudentenAnzeigen')." <input type='checkbox' name='statistik'></td><td></td></tr>
-->
<tr><td colspan=2 align='right'><input type='submit' name='uebung_neu' value='".$p->t('benotungstool/anlegen')."'></td></tr>
</table>
</form>
";
}
?>
</td></tr>
</table>
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -1,91 +0,0 @@
<?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>
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
/**
* Erstellt ein Zip Archiv des Download-Bereichs und leitet dann zum Download weiter
* @create 20-03-2006
* Aufruf: zipdownload.php?stg=255&sem=1$short=eng
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../include/functions.inc.php');
$user = get_uid();
if(!check_lektor($user))
die('Sie haben keine Berechtigung fuer diese Seite');
//Gueltigkeit der Parameter pruefen
if(!isset($_GET['uebung_id']) || !is_numeric($_GET['uebung_id']))
{
die('Fehler bei der Parameteruebergabe');
}
if(!isset($_GET['lehreinheit_id']) || !is_numeric($_GET['lehreinheit_id']))
{
die('Fehler bei der Parameteruebergabe');
}
if(!isset($_GET['stsem']))
{
die('Fehler bei der Parameteruebergabe');
}
if(!isset($_GET['downloadname']))
{
die('Fehler bei der Parameteruebergabe');
}
$uebung_id = $_GET['uebung_id'];
$lehreinheit_id = $_GET['lehreinheit_id'];
$stsem = $_GET['stsem'];
$downloadname = $_GET['downloadname'];
if(mb_strstr($downloadname,'..'))
die('Ungueltiger Parameter gefunden');
//Pfade bauen
$pfad = BENOTUNGSTOOL_PATH.'abgabe/';
$filename = 'download_'.$user.'_'.$downloadname.'.zip';
$filename_tmp = 'download_'.$user.'_'.$uebung_id.'.zip';
if(!check_filename($filename) || !check_filename($filename_tmp))
die('Ungueltiger Parameter gefunden');
//Pfad wechseln
if(chdir($pfad))
{
//File loeschen falls es existiert
//if(file_exists("download_".$user."*"))
exec('rm download_'.$user.'*');
//Zip File erstellen
exec("zip -r ".escapeshellarg($filename_tmp).' *_[WS]S[0-9][0-9][0-9][0-9]_'.$uebung_id.'_*');
//Auf Zip File Verweisen
//header("Location: $pfad$filename");
header('Content-Type: application/octet-stream');
header('Content-disposition: attachment; filename="'.$filename.'"');
readfile($filename_tmp);
unlink($filename_tmp);
}
else
{
die('Path change failed');
}
?>
-77
View File
@@ -1,77 +0,0 @@
<?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>
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
/**
* Erstellt ein Zip Archiv des Download-Bereichs und leitet dann zum Download weiter
* @create 20-03-2006
* Aufruf: zipdownload.php?stg=255&sem=1$short=eng
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/functions.inc.php');
//Gueltigkeit der Parameter pruefen
if(!isset($_GET['stg']) || !is_numeric($_GET['stg']))
{
die('Fehler bei der Parameteruebergabe');
}
if(!isset($_GET['sem']) || !is_numeric($_GET['sem']))
{
die('Fehler bei der Parameteruebergabe');
}
if(!isset($_GET['short']) || mb_strstr("..",$_GET['short'],false))
{
die("Fehler bei der Parameteruebergabe");
}
$stg = $_GET['stg'];
$sem = $_GET['sem'];
$short = $_GET['short'];
//Studiengangskuerzel holen
$stg_obj = new studiengang();
$stg_obj->load($stg);
$kurzbz = mb_strtolower($stg_obj->kuerzel);
//Pfade bauen
$pfad = '../../../documents/'.$kurzbz.'/'.$sem.'/'.$short.'/download/';
$filename = $kurzbz.'_'.$sem.'_'.$short.'_download.zip';
$pfad2 = '../../../documents/'.$kurzbz.'/'.$sem.'/'.$short.'/';
//Pfad wechseln
chdir($pfad);
//File loeschen falls es existiert
if(file_exists('../'.$filename))
exec("rm ../$filename");
//Zip File erstellen
exec("zip -r ../".$filename." ./*");
//Auf Zip File Verweisen
header("Location: $pfad2$filename");
?>
-1
View File
@@ -16,7 +16,6 @@ define('DEFAULT_MITARBEITER_FIXANGESTELLT', true);
define('CIS_LEHRVERANSTALTUNG_NEWSGROUPS_ANZEIGEN',true);
define('CIS_LEHRVERANSTALTUNG_FEEDBACK_ANZEIGEN',true);
define('CIS_LEHRVERANSTALTUNG_DOWNLOAD_ANZEIGEN',true);
define('CIS_LEHRVERANSTALTUNG_UEBUNGSTOOL_ANZEIGEN',true);
define('CIS_LEHRVERANSTALTUNG_PINBOARD_ANZEIGEN',true);
define('CIS_LEHRVERANSTALTUNG_MAILSTUDIERENDE_ANZEIGEN',true);
define('CIS_LEHRVERANSTALTUNG_STUDENTENUPLOAD_ANZEIGEN',true);
-39
View File
@@ -189,10 +189,6 @@ function checkZeilenUmbruch()
$text.= '<br>';
$text.= "<a class='Item' target='_blank' href='upload.php?course_id=$studiengang_kz&term_id=$semester&short=$short'>".$p->t('lehre/upload')."</a>";
$text.= '&nbsp;&nbsp;&nbsp;';
if(isset($dir_empty) && $dir_empty == false)
$text.= "<a class='Item' title='".$p->t('lehre/ziparchivTitle')."' href='zipdownload.php?stg=$studiengang_kz&sem=$semester&short=$short' target='_blank'>".$p->t('lehre/ziparchiv')."</a>";
else
$text.= $p->t('lehre/ziparchiv');
}
$menu[]=array
@@ -279,41 +275,6 @@ function checkZeilenUmbruch()
);
}
// Uebungstool
if((!defined('CIS_LEHRVERANSTALTUNG_UEBUNGSTOOL_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_UEBUNGSTOOL_ANZEIGEN) && $angemeldet)
{
$link='';
$link_onclick='';
$text='';
if(isset($angezeigtes_stsem))
$studiensem = '&stsem='.urlencode($angezeigtes_stsem);
else
$studiensem = '';
//Kreuzerltool
if($is_lector)
{
$link='benotungstool/verwaltung.php?lvid='.urlencode($lvid).$studiensem;
$text.='<a href="'.APP_ROOT.'cms/dms.php?id='.$p->t('dms_link/benotungstoolHandbuch').'" class="Item" target="_blank">'.$p->t('lehre/benotungstoolHandbuch').' [PDF]</a>';
}
else
{
$link='benotungstool/studentenansicht.php?lvid='.urlencode($lvid).$studiensem;
}
$menu[]=array
(
'id'=>'core_menu_uebungstool',
'position'=>'60',
'name'=>$p->t('lehre/kreuzerltool'),
'icon'=>'../../../skin/images/button_kreuzerltool.png',
'link'=>$link,
'link_onclick'=>$link_onclick,
'text'=>$text
);
}
//Gesamtnote
if($is_lector && ((!defined('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN) && $angemeldet))
{