- Notenspiegel

- Tool zum Lehreinheiten zusammenlegen
This commit is contained in:
Andreas Österreicher
2007-08-13 15:45:57 +00:00
parent 1427c37c5f
commit 18308c8042
11 changed files with 250 additions and 22 deletions
+7
View File
@@ -82,6 +82,7 @@ echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
<command id="menu-statistic-lehrauftragsliste:command" oncommand="StatistikPrintLehrauftragsliste();"/>
<command id="menu-statistic-projektarbeit:command" oncommand="StatistikPrintProjektarbeit();"/>
<command id="menu-statistic-abschlusspruefung:command" oncommand="StatistikPrintAbschlusspruefung();"/>
<command id="menu-statistic-notenspiegel:command" oncommand="StatistikPrintNotenspiegel();"/>
<command id="menu-dokumente-inskriptionsbestaetigung:command" oncommand="StudentPrintInskriptionsbestaetigung();"/>
<command id="menu-dokumente-zeugnis:command" oncommand="StudentCreateZeugnis();"/>
<command id="menu-dokumente-diplsupplement:command" oncommand="StudentCreateDiplSupplement();"/>
@@ -208,6 +209,12 @@ echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
label = "&menu-statistic-abschlusspruefung.label;"
command = "menu-statistic-abschlusspruefung:command"
accesskey = "&menu-statistic-abschlusspruefung.accesskey;"/>
<menuitem
id = "menu-statistic-notenspiegel"
key = "menu-statistic-notenspiegel:key"
label = "&menu-statistic-notenspiegel.label;"
command = "menu-statistic-notenspiegel:command"
accesskey = "&menu-statistic-notenspiegel.accesskey;"/>
</menupopup>
</menu>
<menu id="menu-dokumente" label="&menu-dokumente.label;" accesskey="&menu-dokumente.accesskey;">
+24
View File
@@ -701,6 +701,30 @@ function StatistikPrintAbschlusspruefung()
alert('Bitte zuerst Studiengang / Semester auswaehlen');
}
// ****
// * Liefert eine HTML Liste mit Uebersicht ueber die eingetragenen Noten
// * Studiengang und optional Semester muss gewaehlt sein.
// ****
function StatistikPrintNotenspiegel()
{
tree = document.getElementById('tree-verband');
if(tree.currentIndex==-1)
{
alert('Bitte zuerst einen Studiengang auswaehlen');
return;
}
//Studiengang und Semester holen
var col;
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["sem"] : "sem";
var semester=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT ?>content/statistik/notenspiegel.php?studiengang_kz='+studiengang_kz+'&semester='+semester,'Notenspiegel');
}
// ****
// * Oeffnet den About Dialog
// ****
+167
View File
@@ -0,0 +1,167 @@
<?php
/* Copyright (C) 2007 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('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/note.class.php');
require_once('../../include/lehrveranstaltung.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur Datenbank');
$user = get_uid();
loadVariables($conn, $user);
if(!isset($_GET['studiengang_kz']))
die('Falsche Parameteruebergabe');
else
$studiengang_kz = $_GET['studiengang_kz'];
$semester = isset($_GET['semester'])?$_GET['semester']:'';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Lehreinheit</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<style type="text/css">
td, th
{
border: 1px solid black;
text-align: center;
}
</style>
</head>
<body class="Background_main">
<?php
$stg = new studiengang($conn);
$stg->load($studiengang_kz);
echo "<h2>Notenspiegel $stg->kuerzel $semester</h2>";
$student = new student($conn);
$result_student = $student->getStudents($studiengang_kz,$semester,null,null,null, $semester_aktuell);
$lehrveranstaltung = new lehrveranstaltung($conn);
$lehrveranstaltung->load_lva($studiengang_kz, $semester, null, null, true);
$noten = new note($conn);
$noten->getAll();
$noten_arr = array();
foreach ($noten->result as $row)
$noten_arr[$row->note]=$row->anmerkung;
echo '<table class="liste" style="border: 1px solid black" cellspacing="0"><tr class="liste"><th>Nr</th><th>Name</th><th>Matrikelnr</th>';
foreach ($lehrveranstaltung->lehrveranstaltungen as $row_lva)
{
echo "<th>$row_lva->bezeichnung</th>";
}
echo '<th>Notendurchschnitt</td>';
echo '</tr>';
$i=0;
$anzahl_lv=array();
$summe_lv=array();
foreach ($result_student as $row_student)
{
$i++;
echo "<tr><td>$i</td><td>$row_student->vorname $row_student->nachname</td><td>$row_student->matrikelnr</td>";
$noten = array();
$qry = "SELECT * FROM lehre.tbl_zeugnisnote WHERE student_uid='$row_student->uid' AND studiensemester_kurzbz='$semester_aktuell'";
if($result = pg_query($conn, $qry))
while($row = pg_fetch_object($result))
$noten[$row->lehrveranstaltung_id] = $row->note;
$anzahl=0;
$summe=0;
foreach ($lehrveranstaltung->lehrveranstaltungen as $row_lva)
{
if(isset($noten[$row_lva->lehrveranstaltung_id]))
{
if($noten[$row_lva->lehrveranstaltung_id]=='5')
echo "<td style='background-color: red'>".$noten_arr[$noten[$row_lva->lehrveranstaltung_id]]."</td>";
else
echo "<td>".$noten_arr[$noten[$row_lva->lehrveranstaltung_id]]."</td>";
if(is_numeric($noten_arr[$noten[$row_lva->lehrveranstaltung_id]]))
{
if(!isset($summe_lv[$row_lva->lehrveranstaltung_id]))
{
$summe_lv[$row_lva->lehrveranstaltung_id]=0;
$anzahl_lv[$row_lva->lehrveranstaltung_id]=0;
}
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten[$row_lva->lehrveranstaltung_id];
$anzahl_lv[$row_lva->lehrveranstaltung_id]++;
$summe+=$noten[$row_lva->lehrveranstaltung_id];
$anzahl++;
}
}
else
echo '<td style="background-color: lightgreen">&nbsp;</td>';
}
if($anzahl!=0)
$schnitt = $summe/$anzahl;
else
$schnitt=0;
echo "<td>".($schnitt==0?'&nbsp;':sprintf("%.2f", $schnitt))."</td>";
echo '</tr>';
}
echo '<tr><td>&nbsp;</td><td>&nbsp;</td><td>Notendurchschnitt</td>';
$summe_schnitt=0;
$anzahl_schnitt=0;
foreach ($lehrveranstaltung->lehrveranstaltungen as $row_lva)
{
if(isset($summe_lv[$row_lva->lehrveranstaltung_id]))
{
if($anzahl_lv[$row_lva->lehrveranstaltung_id]!=0)
$schnitt = $summe_lv[$row_lva->lehrveranstaltung_id]/$anzahl_lv[$row_lva->lehrveranstaltung_id];
else
$schnitt = 0;
}
else
$schnitt=0;
if($schnitt!=0)
{
$summe_schnitt +=$schnitt;
$anzahl_schnitt++;
}
echo "<td>".($schnitt==0?'&nbsp;':sprintf("%.2f",$schnitt))."</td>";
}
if($anzahl_schnitt!=0)
$schnitt = $summe_schnitt/$anzahl_schnitt;
else
$schnitt=0;
echo "<td>".($schnitt==0?'&nbsp;':sprintf("%.2f",$schnitt))."</td>";
echo '</table>';
?>
</body>
</html>
+1 -1
View File
@@ -55,7 +55,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/student/interessentdokumenteoverla
<vbox id="studentenEditor" persist="height">
<popupset>
<popup id="student-tree-popup">
<menuitem label="Student aus dieser Gruppe Entfernen" oncommand="StudentGruppeDel();" id="student-tree-popup-gruppedel" hidden="false"/>
<menuitem label="Student aus dieser Gruppe entfernen" oncommand="StudentGruppeDel();" id="student-tree-popup-gruppedel" hidden="false"/>
<menuitem label="EMail senden (intern)" oncommand="StudentSendMail();" id="student-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (privat)" oncommand="StudentSendMailPrivat();" id="student-tree-popup-mailprivat" hidden="false"/>
</popup>
+4
View File
@@ -63,6 +63,10 @@
<!ENTITY menu-statistic-abschlusspruefung.label "Abschlusspruefung">
<!ENTITY menu-statistic-abschlusspruefung.accesskey "B">
<!ENTITY menu-statistic-notenspiegel.key "N">
<!ENTITY menu-statistic-notenspiegel.label "Notenspiegel">
<!ENTITY menu-statistic-notenspiegel.accesskey "N">
<!ENTITY menu-dokumente.label "Dokumente">
<!ENTITY menu-dokumente.accesskey "D">
+1
View File
@@ -230,6 +230,7 @@ elseif ($xmlformat=='xml')
<nachname><![CDATA[".$pers->nachname."]]></nachname>
<vorname><![CDATA[".$pers->vorname."]]></vorname>
<vornamen><![CDATA[".$pers->vornamen."]]></vornamen>
<name_gesamt><![CDATA[".trim($pers->anrede.' '.$pers->titelpre.' '.$pers->vorname.' '.$pers->nachname.' '.$pers->titelpost)."]]></name_gesamt>
<geburtsdatum><![CDATA[".$datum->convertISODate($pers->gebdatum)."]]></geburtsdatum>
<sozialversicherungsnummer><![CDATA[".$pers->svnr."]]></sozialversicherungsnummer>
<ersatzkennzeichen><![CDATA[".$pers->ersatzkennzeichen."]]></ersatzkennzeichen>
+1
View File
@@ -156,6 +156,7 @@ function drawLehrauftrag($uid)
<familienname>'.$row->nachname.'</familienname>
<titelpost>'.$row->titelpost.'</titelpost>
<anschrift>'.$row->strasse.'</anschrift>
<name_gesamt>'.trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost).'</name_gesamt>
<plz>'.$row->plz.'</plz>
<ort>'.$row->ort.'</ort>
<svnr>'.$row->svnr.'</svnr>
+2 -8
View File
@@ -32,10 +32,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<fo:block font-size="10pt">
\n\nAn
\n<fo:inline font-weight="bold" font-size="12pt">
<xsl:value-of select="mitarbeiter/titelpre" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/vorname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/familienname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/titelpost" />
<xsl:value-of select="mitarbeiter/name_gesamt" />
\n<xsl:value-of select="mitarbeiter/anschrift" />
\n<xsl:value-of select="mitarbeiter/plz" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/ort" />
@@ -46,10 +43,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
\n\n\n\n\n\n<fo:block font-size="8pt">
<fo:inline font-weight="bold">
<xsl:value-of select="mitarbeiter/titelpre" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/vorname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/familienname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/titelpost" />
<xsl:value-of select="mitarbeiter/name_gesamt" />
</fo:inline>
\n<xsl:text>SV.Nr.: </xsl:text><xsl:value-of select="mitarbeiter/svnr" />
\n<xsl:text>Personalnummer: </xsl:text><xsl:value-of select="mitarbeiter/personalnummer" />
+4 -6
View File
@@ -15,7 +15,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<fo:flow flow-name="xsl-region-body" >
<!-- Logo -->
<fo:block>
<fo:external-graphic src="../skin/images/TWLogo_klein.jpg" posx="140" posy="15" />
<fo:external-graphic src="../skin/images/logo.jpg" posx="140" posy="15" width="60mm" height="20mm"/>
</fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
@@ -65,7 +65,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:text></fo:block>
<!-- Zahlungsbestätigung -->
<fo:block text-align="center" font-size="20pt">
ZAHLUNGSBESTÄTIGUNG
ZAHLUNGSBESTÄTIGUNG
</fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
@@ -82,9 +82,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<fo:block><xsl:text>
</xsl:text></fo:block>
<fo:block text-align="left" font-size="10pt">
Die Studiengangsleitung bestätigt hiermit, dass <xsl:value-of select="person/anrede" /><xsl:text> </xsl:text>
<xsl:value-of select="person/titelpre" /><xsl:text> </xsl:text><xsl:value-of select="person/vorname" /><xsl:text> </xsl:text><xsl:value-of select="person/nachname" />
<xsl:text> </xsl:text><xsl:value-of select="person/titelpost" />, geboren am <xsl:value-of select="person/geburtsdatum" />, folgende Einzahlungen getätigt hat:
\nDie Studiengangsleitung bestätigt hiermit, dass <xsl:value-of select="person/name_gesamt" />, geboren am <xsl:value-of select="person/geburtsdatum" />, folgende Einzahlungen getätigt hat:
</fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
@@ -148,7 +146,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- Unterschrift -->
<fo:block text-align="left" font-size="10pt">
Fachhochschule Technikum\nWien\nHöchstädtplatz 5\nA-1200 Wien\nZVR-Nr.: 074476526\nDVR-Nr.: 0928381
\nFachhochschule Technikum\nWien\nHöchstädtplatz 5\nA-1200 Wien\nZVR-Nr.: 074476526\nDVR-Nr.: 0928381
</fo:block>
</fo:flow>
</fo:page-sequence>
+4
View File
@@ -315,6 +315,10 @@
<td width="10" nowrap>&nbsp;</td>
<td nowrap><a class="MenuItem2" href="stammdaten/lv_wartung.php" target="main"><img src="../skin/images/menu_item.gif" width="7" height="9">&nbsp;LV-Zusammenlegung</a></td>
</tr>
<tr>
<td width="10" nowrap>&nbsp;</td>
<td nowrap><a class="MenuItem2" href="stammdaten/le_wartung.php" target="main"><img src="../skin/images/menu_item.gif" width="7" height="9">&nbsp;LE-Zusammenlegung</a></td>
</tr>
<tr><td width="10" nowrap>&nbsp;</td></tr>
</table>
+35 -7
View File
@@ -36,6 +36,10 @@
$semester = (isset($_GET['semester'])?$_GET['semester']:'');
$stsem = (isset($_GET['stsem'])?$_GET['stsem']:'');
$check = (isset($_GET['check'])?true:false);
if(isset($_GET['mitcheck']) && $_GET['mitcheck']=='false')
$mitcheck = false;
else
$mitcheck = true;
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
@@ -59,7 +63,7 @@
{
if($stg_kz=='')
$stg_kz=$row->studiengang_kz;
echo "<OPTION onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$row->studiengang_kz&semester=$semester&stsem=$stsem'\" ".($row->studiengang_kz==$stg_kz?'selected':'').">$row->kuerzel - $row->bezeichnung</OPTION>";
echo "<OPTION onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$row->studiengang_kz&semester=$semester&mitcheck=".($mitcheck?'true':'false')."&stsem=$stsem'\" ".($row->studiengang_kz==$stg_kz?'selected':'').">$row->kuerzel - $row->bezeichnung</OPTION>";
$s[$row->studiengang_kz]=$row->max_semester;
}
@@ -70,7 +74,11 @@
echo " Semester: <SELECT name='semester'>";
for ($i=0;$i<=$s[$stg_kz];$i++)
echo "<OPTION onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$i&stsem=$stsem'\" ".($i==$semester?'selected':'').">$i</OPTION>";
{
if($semester=='')
$semester=$i;
echo "<OPTION onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$i&mitcheck=".($mitcheck?'true':'false')."&stsem=$stsem'\" ".($i==$semester?'selected':'').">$i</OPTION>";
}
echo '</SELECT>';
$studiensem = new studiensemester($conn);
@@ -80,9 +88,10 @@
echo " StSem: <SELECT name='stsem'>";
foreach ($studiensem->studiensemester as $row)
{
echo "<OPTION onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&stsem=$row->studiensemester_kurzbz'\" ".($row->studiensemester_kurzbz==$stsem?'selected':'').">$row->studiensemester_kurzbz</OPTION>";
echo "<OPTION onclick=\"window.location.href = '".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&mitcheck=".($mitcheck?'true':'false')."&stsem=$row->studiensemester_kurzbz'\" ".($row->studiensemester_kurzbz==$stsem?'selected':'').">$row->studiensemester_kurzbz</OPTION>";
}
echo '</SELECT>';
echo 'Mit Check?<input type="checkbox" name="mitcheck" onchange="window.location.href = \''.$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&stsem=$stsem&mitcheck=".($mitcheck?'false':'true')."'\" ".($mitcheck?'checked':'').'>';
echo '</td><td align="right" style="font-size: small;">';
echo '<a href="'.$_SERVER['PHP_SELF'].'?check=true">CHECK</a>';
echo '</td></tr></table>';
@@ -254,10 +263,24 @@
$qry .= "UPDATE lehre.tbl_projektarbeit SET lehreinheit_id='$le_id_bleibt' WHERE lehreinheit_id='$le_id_delete';\n";
$qry .= "UPDATE lehre.tbl_pruefung SET lehreinheit_id='$le_id_bleibt' WHERE lehreinheit_id='$le_id_delete';\n";
$qry .= "UPDATE lehre.tbl_lehreinheitmitarbeiter SET lehreinheit_id='$le_id_bleibt' WHERE lehreinheit_id='$le_id_delete';\n";
$qry .= "UPDATE sync.tbl_synclehreinheit SET lehreinheit_id='$le_id_bleibt' WHERE lehreinheit_id='$le_id_delete';\n";
pg_query($conn, $qry);
echo nl2br($qry);
//Wenn der Synclehreinheit Eintrag schon existiert dann den anderen loeschen sonst umbiegen
$qry = "SELECT * FROM sync.tbl_synclehreinheit WHERE lehreinheit_id='$le_id_bleibt' AND lehreinheit_pk=(SELECT lehreinheit_pk FROM sync.tbl_synclehreinheit WHERE lehreinheit_id='$le_id_delete')";
if($result = pg_query($conn, $qry))
{
if(pg_numrows($result)==0)
{
$qry = "UPDATE sync.tbl_synclehreinheit SET lehreinheit_id='$le_id_bleibt' WHERE lehreinheit_id='$le_id_delete';";
}
else
$qry = "DELETE FROM sync.tbl_synclehreinheit WHERE lehreinheit_id='$le_id_bleibt' AND lehreinheit_pk=(SELECT lehreinheit_pk FROM sync.tbl_synclehreinheit WHERE lehreinheit_id='$le_id_delete');";
pg_query($conn, $qry);
echo $qry.'<br>';
}
$qry = "DELETE FROM lehre.tbl_lehreinheit WHERE lehreinheit_id='$le_id_delete'\n";
pg_query($conn, $qry);
echo nl2br($qry);
@@ -285,9 +308,14 @@
echo '<br><br><h3>Das wird geloescht:</h3>';
if($check)
$qry = "SELECT distinct a.* FROM lehre.tbl_lehreinheit a, lehre.tbl_lehreinheit b WHERE a.lehreinheit_id!=b.lehreinheit_id AND a.unr=b.unr AND a.unr!=0 ORDER BY unr DESC LIMIT 10";
$qry = "SELECT distinct a.* FROM lehre.tbl_lehreinheit a, lehre.tbl_lehreinheit b WHERE a.lehreinheit_id!=b.lehreinheit_id AND a.unr=b.unr AND a.unr!=0 AND a.studiensemester_kurzbz=b.studiensemester_kurzbz ORDER BY unr DESC LIMIT 10";
else
$qry = "SELECT * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE studiengang_kz='$stg_kz' AND semester='$semester' AND studiensemester_kurzbz='$stsem'";
{
if($mitcheck)
$qry = "SELECT a.* FROM (Select * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE studiengang_kz='$stg_kz' AND semester='$semester' AND studiensemester_kurzbz='$stsem') as a, lehre.tbl_lehreinheit as b WHERE a.lehreinheit_id!=b.lehreinheit_id AND a.unr=b.unr AND a.studiensemester_kurzbz=b.studiensemester_kurzbz ORDER BY unr DESC";
else
$qry = "SELECT * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE studiengang_kz='$stg_kz' AND semester='$semester' AND studiensemester_kurzbz='$stsem'";
}
echo "<form method='POST' action='".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$semester&stsem=$stsem".($check?'&check=true':'')."'>";