bisio mit allen nötigen Abhängigkeiten für "eine UID" geändert

This commit is contained in:
Andreas Moik
2016-01-14 09:59:23 +01:00
parent 2bfe0ee98e
commit dbe6746abe
29 changed files with 3944 additions and 3939 deletions
@@ -27,7 +27,7 @@
require_once('../../../config/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
@@ -39,7 +39,7 @@
require_once('../../../include/lehrveranstaltung.class.php');
error_reporting(E_ALL);
ini_set('display_errors','1');
//Uebergabeparameter abpruefen
if(isset($_GET['stg'])) //Studiengang
{
@@ -48,21 +48,21 @@
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$stg='';
if(isset($_GET['sem'])) //Semester
{
if(is_numeric($_GET['sem']))
$sem=$_GET['sem'];
else
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$sem='';
if(isset($_GET['verband'])) //Verband
$verband=$_GET['verband'];
else
else
$verband='';
if(isset($_GET['gruppe'])) //Gruppe
$gruppe=$_GET['gruppe'];
@@ -70,17 +70,17 @@
$gruppe='';
if(isset($_GET['gruppe_kurzbz'])) //Einheit
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
else
$gruppe_kurzbz='';
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid = $_GET['lvid'];
else
else
die('Fehler bei der Parameteruebergabe');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
else
die('Studiensemester wurde nicht uebergeben');
$lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:'');
@@ -93,7 +93,7 @@
</head>
<body>
';
$stgobj=new studiengang();
$stgobj->load($stg);
//Logo
@@ -107,7 +107,7 @@ echo '<span style="font-size:17px; font-weight:bold;">Anwesenheitsliste '.$lvobj
$qry = "SELECT distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel, semester, verband, gruppe, gruppe_kurzbz from campus.vw_lehreinheit WHERE lehrveranstaltung_id='".addslashes($lvid)."' AND studiensemester_kurzbz='".addslashes($stsem)."'";
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'";
$gruppen='';
if($result = $db->db_query($qry))
{
@@ -124,7 +124,7 @@ if($result = $db->db_query($qry))
echo "<br>Gruppe: $gruppen";
echo "<br>Studiensemester: $stsem";
echo "
</td>
<td align='right'><img src='../../../skin/images/logo.jpg' width='130px'></td>
@@ -145,25 +145,25 @@ $stsem_obj = new studiensemester();
$stsem_obj->load($stsem);
$stsemdatumvon = $stsem_obj->start;
$stsemdatumbis = $stsem_obj->ende;
$qry = "SELECT
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von,
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
LEFT JOIN bis.tbl_bisio ON(public.tbl_student.prestudent_id=tbl_bisio.prestudent_id)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."'";
if($lehreinheit_id!='')
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id='".addslashes($lehreinheit_id)."'";
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
if($result = $db->db_query($qry))
@@ -178,15 +178,15 @@ if($result = $db->db_query($qry))
{
if($elem->status=='Incoming')
$inc=' (i)';
else
else
$inc='';
if($elem->bisio_id!='' && $elem->status!='Incoming' && ($elem->bis > $stsemdatumvon || $elem->bis=='') && $elem->von < $stsemdatumbis) //Outgoing
$inc.=' (o)';
if($elem->note==6) //angerechnet
$inc.=' (ar)';
echo "<td>$elem->nachname $elem->vorname</td>";
echo "<td>".trim($elem->matrikelnr)."</td>";
echo '<td>'.$elem->semester.$elem->verband.$elem->gruppe.'</td>';
@@ -203,4 +203,4 @@ Fachhochschulstudiengang ('.strtoupper($stgobj->typ).') '.$stgobj->bezeichnung;
echo '</body>';
echo '</html>';
?>
?>
@@ -29,17 +29,17 @@
require_once('../../../config/cis.config.inc.php');
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
require_once('../../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
// Pfad zu fpdf
define('FPDF_FONTPATH','../../../include/pdf/font/');
// library einbinden
require_once('../../../include/pdf/fpdf.php');
require_once('../../../include/person.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/studiensemester.class.php');
@@ -54,21 +54,21 @@
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$stg='';
if(isset($_GET['sem'])) //Semester
{
if(is_numeric($_GET['sem']))
$sem=$_GET['sem'];
else
else
die('Fehler bei der Parameteruebergabe');
}
else
else
$sem='';
if(isset($_GET['verband'])) //Verband
$verband=$_GET['verband'];
else
else
$verband='';
if(isset($_GET['gruppe'])) //Gruppe
$gruppe=$_GET['gruppe'];
@@ -76,17 +76,17 @@
$gruppe='';
if(isset($_GET['gruppe_kurzbz'])) //Einheit
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
else
$gruppe_kurzbz='';
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid = $_GET['lvid'];
else
else
die('Fehler bei der Parameteruebergabe');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
else
die('Studiensemester wurde nicht uebergeben');
$lehreinheit_id = (isset($_GET['lehreinheit_id'])?$_GET['lehreinheit_id']:'');
+59 -59
View File
@@ -45,47 +45,47 @@ if(!check_lektor($uid))
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
$lvid=$_GET['lvid'];
else
die("Fehlerhafte Parameteruebergabe");
if(isset($_GET['stg']) && is_numeric($_GET['stg']))
$stg=$_GET['stg'];
else
else
die("Fehlerhafte Parameteruebergabe");
if(isset($_GET['gruppe_kurzbz']))
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
else
else
$gruppe_kurzbz = '';
if(isset($_GET['sem']) && is_numeric($_GET['sem']))
$sem = $_GET['sem'];
else
else
$sem = '';
if(isset($_GET['verband']))
$verband = $_GET['verband'];
else
else
$verband = '';
if(isset($_GET['gruppe']) && is_numeric($_GET['gruppe']))
$gruppe = $_GET['gruppe'];
else
$gruppe = '';
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
die('Studiensemester muss uebergeben werden');
if(isset($_GET['lehreinheit_id']))
$lehreinheit_id = $_GET['lehreinheit_id'];
else
else
$lehreinheit_id = '';
/*
* Create Excel File
*/
@@ -93,7 +93,7 @@ else
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
// sending HTTP headers
$workbook->send($p->t('anwesenheitsliste/notenliste'). "_" . date("d_m_Y") . ".xls");
$workbook->setCustomColor (15,192,192,192); //Setzen der HG-Farbe Hellgrau
@@ -105,12 +105,12 @@ else
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_highlight =& $workbook->addFormat();
$format_highlight->setFgColor(15);
$format_highlight->setBorder(1);
$format_highlight->setBorderColor('white');
$format_border_bottom =& $workbook->addFormat();
$format_border_bottom ->setBottom(2);
$format_border_bottom->setBold();
@@ -124,17 +124,17 @@ else
$format_title->setAlign('merge');
$lvobj = new lehrveranstaltung($lvid);
$worksheet->write(0,0,$p->t('anwesenheitsliste/notenliste')." ".($sprache=='English'?$lvobj->bezeichnung_english:$lvobj->bezeichnung),$format_bold);
$stg_obj = new studiengang($stg);
$qry = "SELECT
distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel,
semester, verband, gruppe, gruppe_kurzbz
distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel,
semester, verband, gruppe, gruppe_kurzbz
FROM
campus.vw_lehreinheit
WHERE
campus.vw_lehreinheit
WHERE
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
@@ -152,26 +152,26 @@ else
$gruppen.=$row->gruppe_kurzbz;
}
}
$worksheet->write(1,0,$p->t('global/studiengang').": $stg_obj->bezeichnung $gruppen");
$lines=2;
//Lektoren ermitteln
$qry = "SELECT
distinct vorname, nachname
FROM
campus.vw_benutzer, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter
WHERE
uid=mitarbeiter_uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
$qry = "SELECT
distinct vorname, nachname
FROM
campus.vw_benutzer, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter
WHERE
uid=mitarbeiter_uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$qry.=' ORDER BY nachname, vorname';
if($result = $db->db_query($qry))
{
while($row=$db->db_fetch_object($result))
@@ -196,29 +196,29 @@ else
$stsem_obj = new studiensemester();
$stsem_obj->load($stsem);
$stsemdatumvon = $stsem_obj->start;
$stsemdatumbis = $stsem_obj->ende;
$qry = "SELECT
$stsemdatumbis = $stsem_obj->ende;
$qry = "SELECT
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id, tbl_student.student_uid as uid,
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von,
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
tbl_zeugnisnote.note
FROM
campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid)
JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid)
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
LEFT JOIN bis.tbl_bisio ON(public.tbl_student.prestudent_id=tbl_bisio.prestudent_id)
WHERE
vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
vw_student_lehrveranstaltung.studiensemester_kurzbz=".$db->db_add_param($stsem);
if($lehreinheit_id!='')
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
if($result = $db->db_query($qry))
{
$i=1;
@@ -226,23 +226,23 @@ else
while($elem = $db->db_fetch_object($result))
{
if(!preg_match('*dummy*',$elem->uid) && $elem->semester!=10)
{
{
if($elem->status!='Abbrecher' && $elem->status!='Unterbrecher')
{
$worksheet->write($lines,0,$i);
if($elem->status=='Incoming')
$inc=' (i)';
else
else
$inc='';
if($elem->bisio_id!='' && $elem->status!='Incoming' && ($elem->bis > $stsemdatumvon || $elem->bis=='') && $elem->von < $stsemdatumbis) //Outgoing
$inc.=' (o)';
if($elem->note==6) //angerechnet
{
$inc.=' (ar)';
$note='ar';
}
else
else
$note='';
$worksheet->write($lines,1,$elem->nachname.$inc);
$worksheet->write($lines,2,$elem->vorname);
@@ -255,7 +255,7 @@ else
}
}
}
//Noten
$note = new note();
$note->getAll();
@@ -266,8 +266,8 @@ else
$aufteilung = array();
foreach($notenschluessel->result as $row)
$aufteilung[$row->note]=$row->punkte;
$aufteilung[$row->note]=$row->punkte;
$worksheet->write(++$lines,0,$p->t('benotungstool/note').":");
foreach($note->result as $row)
{
@@ -285,15 +285,15 @@ else
$worksheet->write(++$lines,0,$row->bezeichnung.' ('.$row->anmerkung.')');
}
}
$worksheet->writeBlank(++$lines,0,0);
$worksheet->writeBlank(++$lines,0,$format_highlight);
$worksheet->write($lines,1,'...'.$p->t('anwesenheitsliste/anleitungImportFunktion'));
$lines++;
$worksheet->write(++$lines,0,'(i) ... Incoming');
$worksheet->write(++$lines,0,'(i) ... Incoming');
$worksheet->write(++$lines,0,'(o) ... Outgoing');
$worksheet->write(++$lines,0,'(ar) ... '.$p->t('anwesenheitsliste/angerechnet'));
$worksheet->setColumn(0, 0, 5);
$worksheet->setColumn(1, 1, 25);
$worksheet->setColumn(2, 2, 25);
+18 -18
View File
@@ -1,22 +1,22 @@
<?php
/*
* Copyright 2013 fhcomplete.org
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*
@@ -76,7 +76,7 @@ if(isset($_GET['getAnmeldung']))
// Die Anmeldung ist zur Lehrveranstaltung selbst und zu den dazu kompatiblen Lehrveranstaltungen moeglich
$kompatibel = $lehrveranstaltung->loadLVkompatibel($lehrveranstaltung_id);
$datum = new datum();
$kompatibel[]=$lehrveranstaltung_id;
$kompatibel = array_unique($kompatibel);
@@ -121,7 +121,7 @@ if(isset($_GET['getAnmeldung']))
}*/
}
}
if($anzahl>0)
echo '<br><br><input type="submit" value="'.$p->t('studienplan/anmelden').'" /></form>';
else
@@ -231,7 +231,7 @@ $tree = $lehrveranstaltung->getLehrveranstaltungTree();
/*
Vom Semesterstart des Studierenden ausgehend werden die Studiensemester geladen.
Vom Semesterstart des Studierenden ausgehend werden die Studiensemester geladen.
Es werden mindestens so viele Studiensemester geladen wie die Regelstudiendauer des
Studienplanes angibt.
*/
@@ -269,7 +269,7 @@ if(!in_array($stsemToShow,$stsem_arr))
// Noten des Studierenden holen
$noten_arr=array();
$zeugnisnote = new zeugnisnote();
if($zeugnisnote->getZeugnisnoten('',$uid,''))
if($zeugnisnote->getZeugnisnoten('',$student->prestudent_id,''))
{
foreach($zeugnisnote->result as $row_note)
{
@@ -307,7 +307,7 @@ echo '<table style="border: 1px solid black">
if(CIS_STUDIENPLAN_SEMESTER_ANZEIGEN)
echo '<th>'.$p->t('global/semester').'</th>';
echo '<th>'.$p->t('studienplan/ects').'</th>
<th>'.$p->t('studienplan/status').'</th>';
@@ -362,7 +362,7 @@ function drawTree($tree, $depth)
default:
$icon='';
}
echo '<tr'.$style.'>
<td>'.$bstart;
@@ -402,14 +402,14 @@ function drawTree($tree, $depth)
// Bezeichnung der Lehrveranstaltung
echo $icon." ".$termine." ".$row_tree->kurzbz.' - '.$row_tree->bezeichnung;
echo $bende.'</td>';
// Semester
if(CIS_STUDIENPLAN_SEMESTER_ANZEIGEN)
echo '<td>'.$row_tree->semester.'</td>';
// ECTS Punkte
echo '<td>'.$row_tree->ects.'</td>';
// Status der LV (absolviert, offen)
echo '<td>';
@@ -440,11 +440,11 @@ function drawTree($tree, $depth)
}
echo '</td>';
// Spalten für die einzelnen Studiensemester
// Spalten für die einzelnen Studiensemester
foreach($stsem_arr as $key=>$stsem)
{
$semester=$key+1;
$tdclass=array();
//Empfehlung holen
// if(isset($lv_arr[$row_tree->lehrveranstaltung_id]))
@@ -495,7 +495,7 @@ function drawTree($tree, $depth)
// Angebot der LV pruefen
if(isset($lvangebot_arr[$row_lvid])
&& isset($lvangebot_arr[$row_lvid][$stsem]))
{
{
$angebot_vorhanden=true;
// LV findet statt
$angebot = $lvangebot_arr[$row_lvid][$stsem];
@@ -537,7 +537,7 @@ function drawTree($tree, $depth)
}
else
{
if($anmeldungmoeglich)
if($anmeldungmoeglich)
$tdinhalt.= '<a href="#" onclick="OpenAnmeldung(\''.$row_tree->lehrveranstaltung_id.'\',\''.$stsem.'\'); return false;"><img src="../../../skin/images/anmelden.png" title="'.$p->t('studienplan/anmelden').'" height="15px" /></a>';
else
$tdinhalt.= '<span title="'.$anmeldeinformation.'">-</a>';
@@ -559,7 +559,7 @@ function drawTree($tree, $depth)
echo '</td>';
}
echo '</tr>';
// Wenn Subtree vorhanden, dann anzeigen
if(!empty($row_tree->childs))
drawTree($row_tree->childs, $depth+1);