mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-19 16:02:15 +00:00
- Filter fuer ausstehende Dokumente
- Bugfix fuer IE bei DropDown Menues
This commit is contained in:
@@ -345,4 +345,60 @@ function InteressentDokumenteNichtAbgegebenTreeSort()
|
||||
col = tree.columns ? tree.columns["interessent-dokumente-tree-nichtabgegeben-dokument_kurzbz"] : "interessent-dokumente-tree-abgegeben-nichtdokument_kurzbz";
|
||||
InteressentDokumentTreeNichtAbgegebenSelectID = tree.view.getCellText(i,col);
|
||||
window.setTimeout("InteressentDokumentNichtAbgegebenTreeSelect()",10);
|
||||
}
|
||||
|
||||
function InteressentDokumenteFilter()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree=document.getElementById('tree-verband');
|
||||
|
||||
//Wenn nichts markiert wurde -> beenden
|
||||
if(tree.currentIndex==-1)
|
||||
return;
|
||||
|
||||
// Progressmeter starten. Ab jetzt keine 'return's mehr.
|
||||
document.getElementById('statusbar-progressmeter').setAttribute('mode','undetermined');
|
||||
//globalProgressmeter.StartPM();
|
||||
|
||||
var col;
|
||||
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
|
||||
var stg_kz=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["sem"] : "sem";
|
||||
var sem=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["ver"] : "ver";
|
||||
var ver=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["grp"] : "grp";
|
||||
var grp=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["gruppe"] : "gruppe";
|
||||
var gruppe=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["typ"] : "typ";
|
||||
var typ=tree.view.getCellText(tree.currentIndex,col);
|
||||
col = tree.columns ? tree.columns["stsem"] : "stsem";
|
||||
var stsem=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
stsem = getStudiensemester();
|
||||
url = "<?php echo APP_ROOT; ?>rdf/student.rdf.php?studiengang_kz="+stg_kz+"&semester="+sem+"&verband="+ver+"&gruppe="+grp+"&gruppe_kurzbz="+gruppe+"&studiensemester_kurzbz="+stsem+"&typ=student&filter2=dokumente&"+gettimestamp();
|
||||
var treeStudent=document.getElementById('student-tree');
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = treeStudent.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
treeStudent.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
StudentTreeDatasource.removeXMLSinkObserver(StudentTreeSinkObserver);
|
||||
treeStudent.builder.removeListener(StudentTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
StudentTreeDatasource = rdfService.GetDataSource(url);
|
||||
StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
treeStudent.database.AddDataSource(StudentTreeDatasource);
|
||||
StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver);
|
||||
treeStudent.builder.addListener(StudentTreeListener);
|
||||
}
|
||||
@@ -74,6 +74,8 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
</groupbox>
|
||||
|
||||
<vbox>
|
||||
<spacer flex="1" />
|
||||
<button id="interessent-dokumente-add" oncommand="InteressentDokumenteFilter()" label="Filter" tooltiptext="Liste aller Studenten mit fehlenden Dokumenten" />
|
||||
<spacer flex="4"/>
|
||||
<button id="interessent-dokumente-add" oncommand="InteressentDokumenteAdd()" label="=>" style="font-weight: bold;"/>
|
||||
<spacer flex="1" />
|
||||
|
||||
+43
-14
@@ -51,6 +51,7 @@ $typ = (isset($_GET['typ'])?$_GET['typ']:null);
|
||||
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:null);
|
||||
$filter = (isset($_GET['filter'])?$_GET['filter']:null);
|
||||
$ss = (isset($_GET['ss'])?$_GET['ss']:null);
|
||||
$filter2 = (isset($_GET['filter2'])?$_GET['filter2']:null);
|
||||
|
||||
if($studiensemester_kurzbz=='aktuelles')
|
||||
$studiensemester_kurzbz = $semester_aktuell;
|
||||
@@ -81,6 +82,25 @@ if($xmlformat=='rdf')
|
||||
<RDF:Seq about="'.$rdf_url.'/alle">
|
||||
';
|
||||
|
||||
function checkfilter($row, $filter2)
|
||||
{
|
||||
global $conn;
|
||||
|
||||
if($filter2=='dokumente')
|
||||
{
|
||||
$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')
|
||||
AND studiengang_kz='$row->studiengang_kz'";
|
||||
if($result_filter = pg_query($conn, $qry))
|
||||
if($row_filter = pg_fetch_object($result_filter))
|
||||
if($row_filter->anzahl==0)
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function draw_content($row)
|
||||
{
|
||||
global $rdf_url, $datum_obj, $conn;
|
||||
@@ -185,17 +205,23 @@ if($xmlformat=='rdf')
|
||||
$prestd = new prestudent($conn, null, true);
|
||||
if(isset($uid))
|
||||
{
|
||||
draw_content($student);
|
||||
$prestd->load($student->prestudent_id);
|
||||
draw_prestudent($prestd);
|
||||
}
|
||||
else
|
||||
foreach ($studenten as $student)
|
||||
if(checkfilter($student, $filter2))
|
||||
{
|
||||
draw_content($student);
|
||||
$prestd->load($student->prestudent_id);
|
||||
draw_prestudent($prestd);
|
||||
}
|
||||
}
|
||||
else
|
||||
foreach ($studenten as $student)
|
||||
{
|
||||
if(checkfilter($student, $filter2))
|
||||
{
|
||||
draw_content($student);
|
||||
$prestd->load($student->prestudent_id);
|
||||
draw_prestudent($prestd);
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(in_array($typ, array('prestudent', 'interessenten','bewerber','aufgenommen',
|
||||
'warteliste','absage','zgv','reihungstestangemeldet',
|
||||
@@ -209,16 +235,19 @@ if($xmlformat=='rdf')
|
||||
{
|
||||
foreach ($prestd->result as $row)
|
||||
{
|
||||
$student=new student($conn,null,true);
|
||||
if($uid = $student->getUid($row->prestudent_id))
|
||||
if(checkfilter($row, $filter2))
|
||||
{
|
||||
if(!$student->load($uid, $studiensemester_kurzbz))
|
||||
$student->load($uid);
|
||||
draw_content($student);
|
||||
$student=new student($conn,null,true);
|
||||
if($uid = $student->getUid($row->prestudent_id))
|
||||
{
|
||||
if(!$student->load($uid, $studiensemester_kurzbz))
|
||||
$student->load($uid);
|
||||
draw_content($student);
|
||||
}
|
||||
else
|
||||
draw_content($row);
|
||||
draw_prestudent($row);
|
||||
}
|
||||
else
|
||||
draw_content($row);
|
||||
draw_prestudent($row);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
echo "<table width='100%'><tr><td>";
|
||||
|
||||
//Studiengang DropDown
|
||||
echo "Studiengang: <SELECT name='stg_kz'>";
|
||||
echo "Studiengang: <SELECT name='stg_kz' onchange='window.location.href=this.value'>";
|
||||
|
||||
$stg = new studiengang($conn);
|
||||
$stg->getAll('typ, kurzbz', false);
|
||||
@@ -68,7 +68,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&mitcheck=".($mitcheck?'true':'false')."&stsem=$stsem'\" ".($row->studiengang_kz==$stg_kz?'selected':'').">$row->kuerzel - $row->bezeichnung</OPTION>";
|
||||
echo "<OPTION value=\"".$_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;
|
||||
}
|
||||
|
||||
@@ -78,12 +78,12 @@
|
||||
if($semester>$s[$stg_kz])
|
||||
$semester = $s[$stg_kz];
|
||||
|
||||
echo " Semester: <SELECT name='semester'>";
|
||||
echo " Semester: <SELECT name='semester' onchange='window.location.href=this.value'>";
|
||||
for ($i=0;$i<=$s[$stg_kz];$i++)
|
||||
{
|
||||
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 "<OPTION value=\"".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&semester=$i&mitcheck=".($mitcheck?'true':'false')."&stsem=$stsem\" ".($i==$semester?'selected':'').">$i</OPTION>";
|
||||
}
|
||||
echo '</SELECT>';
|
||||
|
||||
@@ -92,13 +92,13 @@
|
||||
if($stsem=='')
|
||||
$stsem = $studiensem->getAktorNext();
|
||||
$studiensem->getAll();
|
||||
echo " StSem: <SELECT name='stsem'>";
|
||||
echo " StSem: <SELECT name='stsem' onchange='window.location.href=this.value'>";
|
||||
foreach ($studiensem->studiensemester as $row)
|
||||
{
|
||||
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 "<OPTION value=\"".$_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 'Mit Check?<input type="checkbox" name="mitcheck" onclick="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>';
|
||||
|
||||
@@ -65,14 +65,14 @@ if(!$stud->getAll('typ, kurzbzlang'))
|
||||
echo 'Fehler beim Laden der Studiengaenge:'.$stud->errormsg;
|
||||
|
||||
echo '<form name="frm_studiengang" action="'.$_SERVER['PHP_SELF'].'" method="GET">';
|
||||
echo 'Studiengang: <SELECT name="studiengang_kz">';
|
||||
echo 'Studiengang: <SELECT name="studiengang_kz" onchange="document.frm_studiengang.submit()">';
|
||||
|
||||
foreach($stud->result as $row)
|
||||
{
|
||||
if($studiengang_kz=='')
|
||||
$studiengang_kz=$row->studiengang_kz;
|
||||
|
||||
echo '<OPTION value="'.$row->studiengang_kz.'"'.($studiengang_kz==$row->studiengang_kz?'selected':'').' onclick="document.frm_studiengang.submit()">'.$row->kuerzel.'</OPTION>';
|
||||
echo '<OPTION value="'.$row->studiengang_kz.'"'.($studiengang_kz==$row->studiengang_kz?'selected':'').'>'.$row->kuerzel.'</OPTION>';
|
||||
}
|
||||
echo '</SELECT>';
|
||||
echo '</form>';
|
||||
|
||||
Reference in New Issue
Block a user