diff --git a/content/ToDo_FASo.html b/content/ToDo_FASo.html
index 84af349d1..d833fc0aa 100644
--- a/content/ToDo_FASo.html
+++ b/content/ToDo_FASo.html
@@ -40,17 +40,9 @@
Priorität |
- | Pruefungsprotokoll und Urkunde sollen für mehrere Studenten auf einmal druckbar sein |
+ Feld zum Ändern des Alias von Studenten |
2 |
-
- | Feld zum ändern des Alias von Studenten |
- 2 |
-
-
- | Beim Filtern nach bezahlter Studiengebühr sollen Incoming nicht aufscheinen da diese keine Studiengebühr zahlen müssen |
- 1 |
-
| Wunsch: SVNR 4stellig: gesamte Nummer wird dann aus dem Geburtsdatum konstruiert. |
1 |
@@ -92,7 +84,7 @@
1 |
- | Beim anlegen vom 2. Termin wird automatisch ein 1.Termin mit alter Zeugnisnote angelegt. |
+ Beim Anlegen vom 2. Termin wird automatisch ein 1.Termin mit alter Zeugnisnote angelegt. |
1 |
@@ -184,6 +176,10 @@
Erledigte Anforderungen
+- Beim Filtern nach bezahlter Studiengebühr sollen Incoming nicht aufscheinen da diese keine Studiengebühr zahlen müssen
+25.10.2007 oesi
+- Pruefungsprotokoll und Urkunde sollen für mehrere Studenten auf einmal druckbar sein
+25.10.2007 oesi
- Berechtigungsfehler beim Zuordnen eines Lektors zu einem Studiengang und beim Anlegen von Firmenbetreuern
24.10.2007 oesi
- Beim Zuordnen eines Interessenten/Bewerbers zu einer Spezialgruppe erscheint nun eine Fehlermeldung
@@ -194,7 +190,7 @@
22.10.2007 oesi
- Mail an Mitarbeiter senden wenn das aktiv-Feld veraendert wird
19.10.2007 oesi
-- Bei Notenverwaltung die Unterschiedlichen Noten markieren
+ - Bei Notenverwaltung die Unterschiedlichen Noten markieren (Studenten und LVA)
19.10.2007 oesi
- ALVS Statistik
18.10.2007 oesi
diff --git a/content/fas.xul.php b/content/fas.xul.php
index 855a3f156..84a85b9e5 100644
--- a/content/fas.xul.php
+++ b/content/fas.xul.php
@@ -96,7 +96,11 @@ echo '';
-
+
+
+
+
+
@@ -117,9 +121,10 @@ echo '';
observes = "menu-file-close:command"
modifiers = "accel" />
-
+
+
+
+
+
+
diff --git a/content/student/studentabschlusspruefung.js.php b/content/student/studentabschlusspruefung.js.php
index ef57e9961..1b837cd2a 100644
--- a/content/student/studentabschlusspruefung.js.php
+++ b/content/student/studentabschlusspruefung.js.php
@@ -542,7 +542,70 @@ function StudentAbschlusspruefungLoeschen()
}
// ***** AUSDRUCKE ***** //
+// ****
+// * Druckt das Pruefungsprotokoll fuer mehrere Studenten auf einmal aus.
+// * wenn mehrere Abschlusspruefungen angelegt sind, dann wird fuer jede Abschlusspruefung
+// * ein Protokoll gedruckt.
+// * Den Typ (Bakk/Dipl) des Protokolls bestimmt der zuletzt markierte.
+// ****
+function StudentAbschlusspruefungPrintPruefungsprotokollMultiple()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var tree = document.getElementById('student-abschlusspruefung-tree');
+ //Typ der ersten Abschlusspruefung des zuletzt markierten Studenten (der von dem die Daten geladen wurden) holen
+ try
+ {
+ var col = tree.columns ? tree.columns["student-abschlusspruefung-treecol-pruefungstyp_kurzbz"] : "student-abschlusspruefung-treecol-pruefungstyp_kurzbz";
+ var pruefungstyp_kurzbz=tree.view.getCellText(0,col);
+ }
+ catch(e)
+ {
+ alert('Der zuletzt markierte Student hat keine Abschlusspruefungen');
+ return false;
+ }
+
+ if(pruefungstyp_kurzbz=='')
+ {
+ alert('Der zuletzt markierte Student hat keine Abschlusspruefungen');
+ return false;
+ }
+
+ if(pruefungstyp_kurzbz=='Bachelor')
+ xsl='PrProtokollBakk';
+ else
+ xsl='PrProtokollDipl';
+
+ var tree = document.getElementById('student-tree');
+
+ if (tree.currentIndex==-1)
+ return;
+
+ //Uids aller markierten Studenten holen
+ var start = new Object();
+ var end = new Object();
+ var numRanges = tree.view.selection.getRangeCount();
+ var paramList= '';
+ var anzahl=0;
+ var uids='';
+ for (var t = 0; t < numRanges; t++)
+ {
+ tree.view.selection.getRangeAt(t,start,end);
+ for (var v = start.value; v <= end.value; v++)
+ {
+ col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
+ uid = ';'+tree.view.getCellText(v,col);
+ uids = uids + uid;
+ anzahl++;
+ }
+ }
+
+ window.open('/content/pdfExport.php?xml=abschlusspruefung.rdf.php&xsl='+xsl+'&uid='+uids,'Pruefungsprotokoll', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
+}
+
+// ****
+// * Druckt das Pruefungsprotokoll fuer eine bestimmte Abschlusspruefung
+// ****
function StudentAbschlusspruefungPrintPruefungsprotokoll()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
@@ -569,6 +632,70 @@ function StudentAbschlusspruefungPrintPruefungsprotokoll()
window.open('/content/pdfExport.php?xml=abschlusspruefung.rdf.php&xsl='+xsl+'&abschlusspruefung_id='+abschlusspruefung_id,'Pruefungsprotokoll', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
+// ****
+// * Druckt das Pruefungszeugnis fuer mehrere Studenten auf einmal aus.
+// * wenn mehrere Abschlusspruefungen angelegt sind, dann wird fuer jede Abschlusspruefung
+// * ein Zeugnis gedruckt.
+// * Den Typ (Bakk/Dipl) des Zeugnisses bestimmt der zuletzt markierte.
+// ****
+function StudentAbschlusspruefungPrintPruefungszeugnisMultiple()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var tree = document.getElementById('student-abschlusspruefung-tree');
+
+ //Typ der ersten Abschlusspruefung des zuletzt markierten Studenten (der von dem die Daten geladen wurden) holen
+ try
+ {
+ var col = tree.columns ? tree.columns["student-abschlusspruefung-treecol-pruefungstyp_kurzbz"] : "student-abschlusspruefung-treecol-pruefungstyp_kurzbz";
+ var pruefungstyp_kurzbz=tree.view.getCellText(0,col);
+ }
+ catch(e)
+ {
+ alert('Der zuletzt markierte Student hat keine Abschlusspruefungen');
+ return false;
+ }
+
+ if(pruefungstyp_kurzbz=='')
+ {
+ alert('Der zuletzt markierte Student hat keine Abschlusspruefungen');
+ return false;
+ }
+
+ if(pruefungstyp_kurzbz=='Bachelor')
+ xsl='Bakkzeugnis';
+ else
+ xsl='Diplomzeugnis';
+
+ var tree = document.getElementById('student-tree');
+
+ if (tree.currentIndex==-1)
+ return;
+
+ //Uids aller markierten Studenten holen
+ var start = new Object();
+ var end = new Object();
+ var numRanges = tree.view.selection.getRangeCount();
+ var paramList= '';
+ var anzahl=0;
+ var uids='';
+ for (var t = 0; t < numRanges; t++)
+ {
+ tree.view.selection.getRangeAt(t,start,end);
+ for (var v = start.value; v <= end.value; v++)
+ {
+ col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
+ uid = ';'+tree.view.getCellText(v,col);
+ uids = uids + uid;
+ anzahl++;
+ }
+ }
+
+ window.open('/content/pdfExport.php?xml=abschlusspruefung.rdf.php&xsl='+xsl+'&uid='+uids,'Pruefungsprotokoll', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
+}
+
+// ****
+// * Pruefungszeugnis fuer eine bestimmte Abschlusspruefung drucken
+// ****
function StudentAbschlusspruefungPrintPruefungszeugnis()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
@@ -595,6 +722,75 @@ function StudentAbschlusspruefungPrintPruefungszeugnis()
window.open('/content/pdfExport.php?xml=abschlusspruefung.rdf.php&xsl='+xsl+'&abschlusspruefung_id='+abschlusspruefung_id,'PruefungsZeugnis', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
+// ****
+// * Druckt die Urkunde fuer eine Abschlusspruefung fuer mehrere Studenten auf einmal aus.
+// * wenn mehrere Abschlusspruefungen angelegt sind, dann wird fuer jede Abschlusspruefung
+// * eine Urkunde gedruckt.
+// * Den Typ (Bakk/Dipl) der Urkunde bestimmt der zuletzt markierte Student.
+// ****
+function StudentAbschlusspruefungPrintUrkundeMultiple(sprache)
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var tree = document.getElementById('student-abschlusspruefung-tree');
+
+ //Typ der ersten Abschlusspruefung des zuletzt markierten Studenten (der von dem die Daten geladen wurden) holen
+ try
+ {
+ var col = tree.columns ? tree.columns["student-abschlusspruefung-treecol-pruefungstyp_kurzbz"] : "student-abschlusspruefung-treecol-pruefungstyp_kurzbz";
+ var pruefungstyp_kurzbz=tree.view.getCellText(0,col);
+ }
+ catch(e)
+ {
+ alert('Der zuletzt markierte Student hat keine Abschlusspruefungen');
+ return false;
+ }
+
+ if(pruefungstyp_kurzbz=='')
+ {
+ alert('Der zuletzt markierte Student hat keine Abschlusspruefungen');
+ return false;
+ }
+
+ if(pruefungstyp_kurzbz=='Bachelor' && sprache=='deutsch')
+ xsl='Bakkurkunde';
+ else if(pruefungstyp_kurzbz=='Bachelor' && sprache=='englisch')
+ xsl='BakkurkundeEng';
+ else if(pruefungstyp_kurzbz=='Diplom' && sprache=='deutsch')
+ xsl='Diplomurkunde';
+ else if(pruefungstyp_kurzbz=='Diplom' && sprache=='englisch')
+ xsl='DiplomurkundeEng';
+
+ var tree = document.getElementById('student-tree');
+
+ if (tree.currentIndex==-1)
+ return;
+
+ //Uids aller markierten Studenten holen
+ var start = new Object();
+ var end = new Object();
+ var numRanges = tree.view.selection.getRangeCount();
+ var paramList= '';
+ var anzahl=0;
+ var uids='';
+ for (var t = 0; t < numRanges; t++)
+ {
+ tree.view.selection.getRangeAt(t,start,end);
+ for (var v = start.value; v <= end.value; v++)
+ {
+ col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
+ uid = ';'+tree.view.getCellText(v,col);
+ uids = uids + uid;
+ anzahl++;
+ }
+ }
+
+ window.open('/content/pdfExport.php?xml=abschlusspruefung.rdf.php&xsl='+xsl+'&uid='+uids,'Pruefungsprotokoll', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
+}
+
+// ****
+// * Druckt eine Urkunde zu der ausgewaehlten Abschlusspruefung
+// * die Sprache der Urkunde wird als Parameter uebergeben
+// ****
function StudentAbschlusspruefungPrintUrkunde(sprache)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
diff --git a/locale/de-AT/fas.dtd b/locale/de-AT/fas.dtd
index 57735ec04..f17a1ea3b 100644
--- a/locale/de-AT/fas.dtd
+++ b/locale/de-AT/fas.dtd
@@ -136,6 +136,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rdf/abschlusspruefung.rdf.php b/rdf/abschlusspruefung.rdf.php
index d78385aaa..bede2276e 100644
--- a/rdf/abschlusspruefung.rdf.php
+++ b/rdf/abschlusspruefung.rdf.php
@@ -290,7 +290,24 @@ elseif ($xmlformat=='xml')
$pruefung = new abschlusspruefung($conn, null, false);
echo "\n\n";
- if(isset($_GET['student_uid']))
+ if(isset($_GET['uid']))
+ {
+ $uids = explode(';',$_GET['uid']);
+
+ foreach ($uids as $uid)
+ {
+ if($uid!='')
+ {
+ $pruefung = new abschlusspruefung($conn, null, false);
+ if($pruefung->getAbschlusspruefungen($uid))
+ {
+ foreach ($pruefung->result as $row)
+ draw_content_xml($row);
+ }
+ }
+ }
+ }
+ elseif(isset($_GET['student_uid']))
{
$pruefung->getAbschlusspruefungen($_GET['student_uid']);
diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php
index 617ea5ead..9071fd3da 100644
--- a/rdf/student.rdf.php
+++ b/rdf/student.rdf.php
@@ -36,6 +36,7 @@ function convdate($date)
if($filter2=='dokumente')
{
+ // Alle Personen die noch nicht alle Dokumente gebracht haben
$qry = "SELECT count(*) as anzahl FROM public.tbl_dokumentstudiengang WHERE
dokument_kurzbz NOT IN(
SELECT dokument_kurzbz FROM tbl_dokumentprestudent WHERE prestudent_id='$row->prestudent_id')
@@ -47,6 +48,7 @@ function convdate($date)
}
elseif($filter2=='konto')
{
+ // Alle Personen bei die noch offene Buchungen haben
$qry = "SELECT sum(betrag) as summe FROM tbl_konto WHERE person_id='$row->person_id'";
if($result_filter = pg_query($conn, $qry))
if($row_filter = pg_fetch_object($result_filter))
@@ -55,13 +57,18 @@ function convdate($date)
}
elseif($filter2=='studiengebuehr')
{
+ // Alle Personen die keine Studiengebuehrbelastung haben
+ // Incoming werden nicht beruecksichtigt
+ $prestudent = new prestudent($conn, null, null);
+ $prestudent->getLastStatus($row->prestudent_id);
+
$qry = "SELECT count(*) as anzahl FROM public.tbl_konto WHERE
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
person_id='".addslashes($row->person_id)."' AND
buchungstyp_kurzbz='Studiengebuehr'";
if($result_filter = pg_query($conn, $qry))
if($row_filter = pg_fetch_object($result_filter))
- if($row_filter->anzahl>0)
+ if($row_filter->anzahl>0 || $prestudent->rolle_kurzbz=='Incoming')
return false;
}
return true;