Merge branch 'master' into feature-3716/Messaging_inbox_outbox_user

This commit is contained in:
Paolo
2020-02-28 13:44:13 +01:00
10 changed files with 482 additions and 291 deletions
+57 -36
View File
@@ -26,6 +26,8 @@ require_once('../../../include/organisationseinheit.class.php');
require_once('../../../include/addon.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/prestudent.class.php');
$uid = get_uid();
@@ -66,7 +68,19 @@ $studiengang=new studiengang();
$studiengang->load($konto->studiengang_kz);
$bankverbindung=new bankverbindung();
$kontodaten = getBankverbindung($studiengang->oe_kurzbz);
// Wenn Person StudentIn ist, auch die OrgForm laden um die richtige Kontonummer anzeigen zu können
$student = new student();
$orgform = '';
if ($student->load($uid))
{
$laststatus = new prestudent();
if ($laststatus->getLastStatus($student->prestudent_id))
{
$orgform = $laststatus->orgform_kurzbz;
}
}
$kontodaten = getBankverbindung($studiengang->oe_kurzbz, $orgform);
$iban=$kontodaten["iban"];
$bic=$kontodaten["bic"];
@@ -156,56 +170,63 @@ $addon = new addon();
$addon->loadAddons();
foreach($addon->result as $a)
{
if($a->kurzbz === "eps")
{
if($a->kurzbz === "eps")
{
echo '<table class="tablesorter">
<thead>
<thead>
<tr>
<th width="40%">Zahlung anweisen</th>
<th width="60%"></th>
<th width="40%">Zahlung anweisen</th>
<th width="60%"></th>
</tr>
</thead>
<tbody>
</thead>
<tbody>
<tr>
<td>EPS</td>
<td>
<a href="../../../addons/eps/cis/index.php?buchungsnummer='.$buchungsnr.'"><img src="../../../skin/images/eps-logo_full.gif" width="30" height="30" alt="EPS Überweisung"></a>
</td>
<td>EPS</td>
<td>
<a href="../../../addons/eps/cis/index.php?buchungsnummer='.$buchungsnr.'"><img src="../../../skin/images/eps-logo_full.gif" width="30" height="30" alt="EPS Überweisung"></a>
</td>
</tr>
</tbody>
</tbody>
</table>';
}
}
}
echo '</body></html>';
function getBankverbindung($oe_kurzbz)
function getBankverbindung($oe_kurzbz, $orgform_kurzbz = null)
{
$iban = "";
$bic = "";
$result = array();
$bankverbindung=new bankverbindung();
if($bankverbindung->load_oe($oe_kurzbz) && count($bankverbindung->result)>0)
{
$result["iban"]=$bankverbindung->result[0]->iban;
$result["bic"]=$bankverbindung->result[0]->bic;
return $result;
}
else
{
$organisationseinheit = new organisationseinheit();
$organisationseinheit->load($oe_kurzbz);
if($organisationseinheit->oe_parent_kurzbz !== NULL)
$iban = "";
$bic = "";
$result = array();
$bankverbindung=new bankverbindung();
if($bankverbindung->load_oe($oe_kurzbz, $orgform_kurzbz) && count($bankverbindung->result) > 0)
{
$result = getBankverbindung($organisationseinheit->oe_parent_kurzbz);
return $result;
$result["iban"] = $bankverbindung->result[0]->iban;
$result["bic"] = $bankverbindung->result[0]->bic;
return $result;
}
// Nochmal ohne $orgform_kurzbz versuchen
elseif($bankverbindung->load_oe($oe_kurzbz) && count($bankverbindung->result) > 0)
{
$result["iban"] = $bankverbindung->result[0]->iban;
$result["bic"] = $bankverbindung->result[0]->bic;
return $result;
}
else
{
$result["iban"]="";
$result["bic"]="";
$organisationseinheit = new organisationseinheit();
$organisationseinheit->load($oe_kurzbz);
if($organisationseinheit->oe_parent_kurzbz !== NULL)
{
$result = getBankverbindung($organisationseinheit->oe_parent_kurzbz, $orgform_kurzbz);
return $result;
}
else
{
$result["iban"] = "";
$result["bic"] = "";
}
}
}
}
?>
+95 -76
View File
@@ -16,8 +16,8 @@
* 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>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>,
* Manfred Kindl <manfred.kindl@technikum-wien.at>
*/
@@ -48,8 +48,8 @@ session_start();
// If language is changed by language select menu, reset language variables
if (isset($_GET['sprache_user']) && !empty($_GET['sprache_user']))
{
$_SESSION['sprache_user'] = $_GET['sprache_user'];
$sprache_user = $_GET['sprache_user'];
$_SESSION['sprache_user'] = $_GET['sprache_user'];
$sprache_user = $_GET['sprache_user'];
}
// Set language variable, which impacts the question language
@@ -78,10 +78,10 @@ echo '
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" />
<link rel="stylesheet" href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css" type="text/css"/>
<link rel="stylesheet" href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css" type="text/css"/>
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../../vendor/components/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../vendor/twbs/bootstrap/dist/js/bootstrap.min.js"></script>
<script type="text/javascript" src="../../vendor/components/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../vendor/twbs/bootstrap/dist/js/bootstrap.min.js"></script>
<script language="Javascript" type="text/javascript">
//<![CDATA[
function killChildNodes(an_element)
@@ -132,19 +132,19 @@ echo '
function GebietStarten(bezeichnung,stunde,minute,sekunde,gebiet_id)
{
var check = confirm(<?php echo "'".$p->t('testtool/okKlickenUmZuStarten')."'"?>+' '+stunde+'h '+minute+'m '+sekunde+'s');
if (check == true) {
if (check == true) {
var sprache_user = <?php echo "'".$sprache_user."'"?>;
document.location.href = 'frage.php?gebiet_id='+gebiet_id+'&start=true';
}
else {
return false;
}
document.location.href = 'frage.php?gebiet_id='+gebiet_id+'&start=true';
}
else {
return false;
}
}
function letzteFrage()
{
alert(<?php echo "'".$p->t("testtool/alleFragenBeantwortet")."'"?>);
return true;
return true;
}
//]]>
@@ -357,8 +357,8 @@ if($levelgebiet)
<tr>
<td valign="top" style="height:1px;font-size:2px;">
<table cellpadding="0" cellspacing="0" style="border:0px;height:1px;font-size:2px;">
<tr>
<td nowrap="nowrap" style="height:1px;font-size:2px;">
<tr>
<td nowrap="nowrap" style="height:1px;font-size:2px;">
<font size="2" face="Arial, Helvetica, sans-serif">
<img src="../../skin/images/entry.gif" width="'.($psolved*3).'" height="10" alt="" border="1" />
</font>
@@ -372,32 +372,32 @@ if($levelgebiet)
}
//Zeit des Gebietes holen
echo '
<table width="100%">
<tr>
<td valign="top" width="50%">TeilnehmerIn: '.$info.'</td>
</tr>
<tr>
<td align="center">'.$fortschrittsbalken.'</td>
</tr>
<tr>
<td width="50%"></td>
</tr>
<tr>
<td>';
<table width="100%">
<tr>
<td valign="top" width="50%">TeilnehmerIn: '.$info.'</td>
</tr>
<tr>
<td align="center">'.$fortschrittsbalken.'</td>
</tr>
<tr>
<td width="50%"></td>
</tr>
<tr>
<td>';
if($demo)
{
//Wenn es sich um ein Demobeispiel handelt, dann wird die Maximale Gesamtzeit angezeigt
echo
$p->t('testtool/bearbeitungszeit').': '.$stunde.'h '.$minute.'m '.$sekunde.'s';
$p->t('testtool/bearbeitungszeit').': '.$stunde.'h '.$minute.'m '.$sekunde.'s';
echo '
</td>
</tr>
<tr>
<td>
';
</td>
</tr>
<tr>
<td>
';
echo "
<input type=\"button\" class='btn btn-default btn-testtool' value=\"".$p->t("testtool/gebietStarten")."\" onclick=\"GebietStarten('".$db->convert_html_chars($gebiet->bezeichnung)."','".$stunde."','".$minute."','".$sekunde."','".$gebiet_id."')\" /> ";
<input type=\"button\" class='btn btn-default btn-testtool' value=\"".$p->t("testtool/gebietStarten")."\" onclick=\"GebietStarten('".$db->convert_html_chars($gebiet->bezeichnung)."','".$stunde."','".$minute."','".$sekunde."','".$gebiet_id."')\" /> ";
}
else
{
@@ -458,7 +458,18 @@ else
if($frage->frage_id!='')
{
$frage_id = $frage->frage_id;
$frage->bild = '';
$frage->audio = '';
$frage->text = '';
$frage->getFrageSprache($frage_id, $_SESSION['sprache_user']);
$fallbacksprache = $_SESSION['sprache_user'];
// Fallback auf DEFAULT_LANGUAGE wenn keine Frage in der $_SESSION['sprache_user'] vorhanden ist
if ($frage->text == '' && $frage->bild == '' && $frage->audio == '')
{
$frage->getFrageSprache($frage_id, DEFAULT_LANGUAGE);
$fallbacksprache = DEFAULT_LANGUAGE;
}
if(!$demo)
{
@@ -489,9 +500,9 @@ if($frage->frage_id!='')
WHERE gebiet_id=".$db->db_add_param($gebiet_id, FHC_INTEGER)." AND pruefling_id=".$db->db_add_param($_SESSION['pruefling_id'], FHC_INTEGER)." AND demo=false ORDER BY nummer";
echo "
<table class='table' style='margin-top: 20px; margin-bottom: 40px;'>
<tr class='text-center'>
";
<table class='table' style='margin-top: 20px; margin-bottom: 40px;'>
<tr class='text-center'>
";
//Nummern der Fragen Anzeigen
$result = $db->db_query($qry);
while($row = $db->db_fetch_object($result))
@@ -533,59 +544,67 @@ if($frage->frage_id!='')
echo " </tr></table>";
echo '
<br/>
<div class="row">
<div class="col-xs-12 col-lg-offset-1 col-lg-10">
';
<br/>
<div class="row">
<div class="col-xs-12 col-lg-offset-1 col-lg-10">
';
//Bild und Text der Frage anzeigen
if($frage->bild!='')
{
echo '
<div class="row text-center">
<img class="testtoolfrage" src="bild.php?src=frage&amp;frage_id='. $frage->frage_id.'&amp;sprache='. $_SESSION["sprache_user"].'"></img><br/><br/><br/>
</div>
';
}
{
echo '
<div class="row text-center">
<img class="testtoolfrage" src="bild.php?src=frage&amp;frage_id='. $frage->frage_id.'&amp;sprache='.$fallbacksprache.'"></img><br/><br/><br/>
</div>
';
}
$timestamp = time();
//Sound einbinden
if($frage->audio!='')
{
echo '
<div class="row text-center">
<audio src="sound.php?src=frage&amp;frage_id='.$frage->frage_id.'&amp;sprache='.$_SESSION['sprache_user'].'&amp;'.$timestamp.'" controls="controls" type="audio/ogg">
<div>
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
</div>
</audio>
</div>
';
<div class="row text-center">
<audio src="sound.php?src=frage&amp;frage_id='.$frage->frage_id.'&amp;sprache='.$fallbacksprache.'&amp;'.$timestamp.'" controls="controls" type="audio/ogg">
<div>
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
</div>
</audio>
</div>
';
}
$display_well = $frage->nummer == 0 ? '' : 'well'; // don't style frage 0 because this is always the introduction to gebiet
echo '
<div class="row">
<div class="col-xs-offset-1 col-xs-10 col-sm-offset-2 col-sm-8">
<div class="'. $display_well. ' text-center">'. $frage->text. '</div>
</div>
</div>
';
$display_well = $frage->nummer == 0 ? '' : 'well'; // don't style frage 0 because this is always the introduction to gebiet
echo '
<div class="row">
<div class="col-xs-offset-1 col-xs-10 col-sm-offset-2 col-sm-8">
<div class="'. $display_well. ' text-center">'. $frage->text. '</div>
</div>
</div>
';
//Vorschlaege laden
//Vorschlaege laden
$vs = new vorschlag();
$vs->getVorschlag($frage->frage_id, $_SESSION['sprache_user'], $gebiet->zufallvorschlag);
// Fallback auf DEFAULT_LANGUAGE wenn kein Vorschlag in der $_SESSION['sprache_user'] vorhanden ist
if (isset($vs->result[0]) && $vs->result[0]->text == '' && $vs->result[0]->bild == '' && $vs->result[0]->audio == '')
{
$vs = new vorschlag();
$vs->getVorschlag($frage->frage_id, DEFAULT_LANGUAGE, $gebiet->zufallvorschlag);
}
$letzte = $frage->getNextFrage($gebiet_id, $_SESSION['pruefling_id'], $frage_id, $demo);
echo "<form action=\"$PHP_SELF?gebiet_id=$gebiet_id&amp;frage_id=$frage->frage_id\" method=\"POST\" ".(!$letzte && !$levelgebiet?"onsubmit=\"letzteFrage()\"":"").">";
echo '
<div class="row text-center">
<table class="table" style="width: 600px; margin-left: auto; margin-right: auto;">
<tr>
';
<div class="row text-center">
<table class="table" style="width: 600px; margin-left: auto; margin-right: auto;">
<tr>
';
$anzahl = 1;
$beantwortet = false;
$cnt = 0; // counter für foreach-Schleife
$len = count($vs->result);
$len = count($vs->result);
//Antworten laden falls bereits vorhanden
$antwort = new antwort();
@@ -618,10 +637,10 @@ if($frage->frage_id!='')
echo '<br/>';
if($vorschlag->bild!='')
echo "<img class='testtoolvorschlag' src='bild.php?src=vorschlag&amp;vorschlag_id=$vorschlag->vorschlag_id&amp;sprache=".$_SESSION['sprache_user']."' /><br/>";
echo "<img class='testtoolvorschlag' src='bild.php?src=vorschlag&amp;vorschlag_id=$vorschlag->vorschlag_id&amp;sprache=".$fallbacksprache."' /><br/>";
if($vorschlag->audio!='')
{
echo ' <audio src="sound.php?src=vorschlag&amp;vorschlag_id='.$vorschlag->vorschlag_id.'&amp;sprache='.$_SESSION['sprache_user'].'" controls="controls">
echo ' <audio src="sound.php?src=vorschlag&amp;vorschlag_id='.$vorschlag->vorschlag_id.'&amp;sprache='.$fallbacksprache.'" controls="controls">
<div>
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
</div>
@@ -682,9 +701,9 @@ if($frage->frage_id!='')
}
}
}
echo '
</div> <!--/.row-->
';
echo '
</div> <!--/.row-->
';
echo "</form>";
echo '</div></div>';
echo '<br/><br/><br/><br/><br/>';
+1 -1
View File
@@ -10,7 +10,7 @@
<frame src="topbar.php" name="topbar" scrolling="NO" noresize>
<frameset rows="*" cols="230,*" framespacing="0" frameborder="NO" border="0">
<frame id="menu_testtool" src="menu.php" name="menu" scrolling="AUTO" noresize>
<frame id="content_testtool" style="padding-top: 24px; overflow: hidden;" src="login.php" name="content">
<frame id="content_testtool" style="padding-top: 24px; overflow: hidden; padding-left: 10px" src="login.php" name="content">
</frameset>
<noframes>
<body>
+23 -10
View File
@@ -66,6 +66,7 @@ $gebdatum='';
$date = new datum();
$reload_menu=false;
$alertmsg = '';
$sg_var = new studiengang();
@@ -189,7 +190,7 @@ if (isset($_POST['prestudent']) && isset($gebdatum))
// * 1. Sprache über Ablauf Vorgaben ermitteln
$ablauf = new Ablauf();
$ablauf->getAblaufVorgabeStudiengang($firstPrio_studiengang_kz);
$ablauf->getAblaufGebiete($firstPrio_studiengang_kz, $firstPrio_studienplan_id);
$rt_sprache = '';
if(!empty($ablauf->result[0]))
@@ -224,17 +225,17 @@ if (isset($_POST['prestudent']) && isset($gebdatum))
}
else
{
echo '<span class="error">'.$p->t('testtool/reihungstestNichtFreigeschalten').'</span>';
$alertmsg .= '<div class="alert alert-danger">'.$p->t('testtool/reihungstestNichtFreigeschalten').'</div>';
}
}
else
{
echo '<span class="error">'.$p->t('testtool/reihungstestKannNichtGeladenWerden').'</span>';
$alertmsg .= '<div class="alert alert-danger">'.$p->t('testtool/reihungstestKannNichtGeladenWerden').'</div>';
}
}
else
{
echo '<span class="error">'.$p->t('testtool/geburtsdatumStimmtNichtUeberein').'</span>';
$alertmsg .= '<div class="alert alert-danger">'.$p->t('testtool/geburtsdatumStimmtNichtUeberein').'</div>';
}
}
@@ -275,7 +276,15 @@ else
//$prestudent_id=null;
$ps=new prestudent();
$datum=date('Y-m-d');
$ps->getPrestudentRT($datum);
// An der FHTW wird ein Bewerber nur einmal ausgegeben (1. Prio) falls es mehrere Bewerbungen gibt
/*if (CAMPUS_NAME == 'FH Technikum Wien')
{
$ps->getFirstPrioPrestudentRT($datum);
}
else*/
{
$ps->getPrestudentRT($datum);
}
}
@@ -490,16 +499,19 @@ if (isset($prestudent_id))
echo '<tr>';
$stg = new Studiengang($ps_obj->studiengang_kz);
if($ps_obj->lastStatus == "Interessent")
if($ps_obj->lastStatus == "Interessent"
|| $ps_obj->lastStatus == "Bewerber"
|| $ps_obj->lastStatus == "Wartender"
|| $ps_obj->lastStatus == "Aufgenommener")
{
echo '<td style="width: 50%;">'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg->english : $stg->bezeichnung). '</td>';
echo '<td style="width: 50%;">'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg->english : $stg->bezeichnung). ' ('.$ps_obj->orgform_bezeichnung[$sprache_user].')</td>';
if($ps_obj->ausbildungssemester == '1')
{
echo '<td>'. $p->t('testtool/regulaererEinstieg'). ' (1. Semester)</td>';
}
elseif($ps_obj->ausbildungssemester == '3')
{
echo '<td>'. $p->t('testtool/quereinstieg'). ' (3.Semester)</td>';
echo '<td>'. $p->t('testtool/quereinstieg'). ' (3. Semester)</td>';
}
}
// wenn letzter Status \'Abgewiesener\' ist, dann als solchen kennzeichnen
@@ -564,7 +576,8 @@ else // LOGIN Site (vor Login)
echo '<div class="col-xs-11">';
// Welcome text
echo '
echo $alertmsg;
echo '
<div class="row" style="margin-bottom: 10%; margin-top: 3%;">
<div class="col-xs-6 text-center" style="border-right: 1px solid lightgrey;">
<h1 style="white-space: normal">Herzlich Willkommen zum Reihungstest</h1><br><br>
@@ -615,7 +628,7 @@ else // LOGIN Site (vor Login)
echo '<div class="form-group"> ';
echo '<label for="datepicker" class="col-sm-offset-1 col-sm-4 control-label">Geburtsdatum | Date of Birth</label>';
echo '<div class="col-sm-3">';
echo '<input type="text" id="datepicker" class="form-control" name="gebdatum" value="'.$date->formatDatum($gebdatum,'d.m.Y').'">';
echo '<input type="text" id="datepicker" class="form-control" name="gebdatum" value="'.$date->formatDatum($gebdatum,'d.m.Y').'" placeholder="DD.MM.YYYY">';
echo '</div>'; // end col-xs
echo '</div>'; // end form-group
+165 -140
View File
@@ -69,7 +69,7 @@ if (isset($_SESSION['pruefling_id']))
$result = $db->db_query($qry);
echo '<table width="100%" border="0" cellspacing="0" cellpadding="0" style="border-right-width:1px;border-right-color:#BCBCBC; border-collapse: separate;
border-spacing: 0 3px;">';
border-spacing: 0 3px;">';
// Link zur Startseite
echo '<tr><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
@@ -78,16 +78,16 @@ if (isset($_SESSION['pruefling_id']))
// Link zur Einleitung
if ($content_id = $db->db_fetch_object($result))
{
{
if($content_id->content_id!='')
{
{
echo '
<tr id="tr-einleitung"><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
<a class="ItemTesttool navButton" href="../../cms/content.php?content_id='.$content_id->content_id.'&sprache='.$sprache_user.'" target="content">'.$p->t('testtool/einleitung').'</a>
</td></tr>
';
}
}
<tr id="tr-einleitung"><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
<a class="ItemTesttool navButton" href="../../cms/content.php?content_id='.$content_id->content_id.'&sprache='.$sprache_user.'" target="content">'.$p->t('testtool/einleitung').'</a>
</td></tr>
';
}
}
echo '<tr><td style="padding-left: 20px;" nowrap>';
$studiengang_kz = (isset($_SESSION['studiengang_kz'])) ? $_SESSION['studiengang_kz'] : '';
@@ -98,78 +98,78 @@ if (isset($_SESSION['pruefling_id']))
/**
* Spaltennamen-Aliase extrahieren um sie im Outer-Select verwenden zu können
* $bezeichnung_mehrsprachig liefert: bezeichnung_mehrsprachig[1] as bezeichnung_mehrsprachig_1,...
* $bezeichnung_mehrsprachig_sel liefert: bezeichnung_mehrsprachig_1, bezeichnung_mehrsprachig_2,...
* $bezeichnung_mehrsprachig liefert: bezeichnung_mehrsprachig[1] as bezeichnung_mehrsprachig_1,...
* $bezeichnung_mehrsprachig_sel liefert: bezeichnung_mehrsprachig_1, bezeichnung_mehrsprachig_2,...
*/
$bezeichnung_mehrsprachig_sel = explode(",", $bezeichnung_mehrsprachig);
foreach ($bezeichnung_mehrsprachig_sel as &$bm)
{
$bm = strrchr($bm, ' as ');
}
{
$bm = strrchr($bm, ' as ');
}
$bezeichnung_mehrsprachig_sel = implode(', ', $bezeichnung_mehrsprachig_sel);
/**
* Reihungstestgebiete der Person ermitteln; Zusammenfassen, falls RT für mehrere Studien
* 1. Aktuelle Prestudenten zur Person über den Prüfling ermitteln,
* 2. Einstiegssemester (Erstsemester/Quereinsteiger) und Studienplan pro Prestudent ermitteln,
* 3. RT-Gebiete falls vorhanden über Studienplan, sonst über STG ermitteln
* 4. Für Quereinsteiger zusätzlich auch Erstsemestrigen-Gebiete
* 1. Aktuelle Prestudenten zur Person über den Prüfling ermitteln,
* 2. Einstiegssemester (Erstsemester/Quereinsteiger) und Studienplan pro Prestudent ermitteln,
* 3. RT-Gebiete falls vorhanden über Studienplan, sonst über STG ermitteln
* 4. Für Quereinsteiger zusätzlich auch Erstsemestrigen-Gebiete
*/
$qry = "
WITH prestudent_data AS
(
SELECT DISTINCT ON (prestudent_id)
prestudent_id,
studienplan_id,
studiengang_kz,
typ,
WITH prestudent_data AS
(
SELECT DISTINCT ON (prestudent_id)
prestudent_id,
studienplan_id,
studiengang_kz,
typ,
tbl_studiengangstyp.bezeichnung AS typ_bz,
ausbildungssemester AS semester
FROM
public.tbl_prestudentstatus AS ps_status
JOIN
public.tbl_prestudent USING (prestudent_id)
JOIN
public.tbl_studiengang USING (studiengang_kz)
JOIN
public.tbl_studiengangstyp USING (typ)
WHERE
tbl_prestudent.person_id = (
SELECT
person_id
FROM
public.tbl_prestudent
WHERE
prestudent_id = ".$db->db_add_param($_SESSION['prestudent_id'])."
)
ausbildungssemester AS semester
FROM
public.tbl_prestudentstatus AS ps_status
JOIN
public.tbl_prestudent USING (prestudent_id)
JOIN
public.tbl_studiengang USING (studiengang_kz)
JOIN
public.tbl_studiengangstyp USING (typ)
WHERE
tbl_prestudent.person_id = (
SELECT
person_id
FROM
public.tbl_prestudent
WHERE
prestudent_id = ".$db->db_add_param($_SESSION['prestudent_id'])."
)
/* Filter only future studiensemester (incl. actual one) */
AND
studiensemester_kurzbz IN (
SELECT
studiensemester_kurzbz
FROM
public.tbl_studiensemester
WHERE
ende > now()
)
/* Filter only future studiensemester (incl. actual one) */
AND
studiensemester_kurzbz IN (
SELECT
studiensemester_kurzbz
FROM
public.tbl_studiensemester
WHERE
ende > now()
)
/* Filter out all Abgewiesene */
AND NOT EXISTS (
SELECT
1
FROM
tbl_prestudentstatus
WHERE
status_kurzbz = 'Abgewiesener'
AND
prestudent_id = ps_status.prestudent_id
)
/* Filter out all Abgewiesene */
AND NOT EXISTS (
SELECT
1
FROM
tbl_prestudentstatus
WHERE
status_kurzbz = 'Abgewiesener'
AND
prestudent_id = ps_status.prestudent_id
)
AND
status_kurzbz = 'Interessent'";
AND
status_kurzbz = 'Interessent'";
/* If the logged-in prestudents study is a Bachelor-study, filter only Bachelor-studies */
/* If the logged-in prestudents study is a Bachelor-study, filter only Bachelor-studies */
if ($stg->typ == 'b')
{
$qry .= "
@@ -184,86 +184,95 @@ if (isset($_SESSION['pruefling_id']))
$qry .= "
/* Order to get last semester when using distinct on */
ORDER BY
prestudent_id,
datum DESC,
ps_status.insertamum DESC,
ps_status.ext_id DESC
)
/* Order to get last semester when using distinct on */
ORDER BY
prestudent_id,
datum DESC,
ps_status.insertamum DESC,
ps_status.ext_id DESC
)
SELECT DISTINCT ON
(gebiet_id, semester)
semester,
gebiet_id,
STRING_AGG(studiengang_kz::TEXT, ', ' ORDER BY studiengang_kz) AS studiengang_kz_list,
bezeichnung,
MIN(reihung) AS reihung,
". $bezeichnung_mehrsprachig_sel. "
FROM (
SELECT
*
FROM (
(SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
".$bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studiengang_kz)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
SELECT DISTINCT ON
(gebiet_id, semester, reihung)
semester,
gebiet_id,
STRING_AGG(studiengang_kz::TEXT, ', ' ORDER BY studiengang_kz) AS studiengang_kz_list,
bezeichnung,
MIN(reihung) AS reihung,
". $bezeichnung_mehrsprachig_sel. "
FROM (
SELECT
*
FROM (
(SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
".$bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studiengang_kz)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
AND (
prestudent_data.studienplan_id = tbl_ablauf.studienplan_id
OR
tbl_ablauf.studienplan_id IS NULL
)
)
UNION
UNION
(
SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
". $bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studienplan_id)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
) temp
) temp2
(
SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
". $bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studienplan_id)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
) temp
) temp2
GROUP BY
semester,
gebiet_id,
bezeichnung,
GROUP BY
semester,
gebiet_id,
bezeichnung,
". $bezeichnung_mehrsprachig_sel ."
ORDER BY
semester,
gebiet_id
";
ORDER BY
semester,
reihung,
gebiet_id
";
$result = $db->db_query($qry);
$anzahlGebiete = $db->db_num_rows($result);
$lastsemester = '';
$quereinsteiger_stg = '';
while($row = $db->db_fetch_object($result))
@@ -355,10 +364,22 @@ if (isset($_SESSION['pruefling_id']))
$class='ItemTesttool';
}
// Fallback für Gebietbezeichnung, falls nicht in gewählter Sprache vorhanden
$gebietbezeichnung = $sprache_mehrsprachig->parseSprachResult("bezeichnung_mehrsprachig", $row)[$sprache_user];
if ($gebietbezeichnung == '')
{
$gebietbezeichnung = $sprache_mehrsprachig->parseSprachResult("bezeichnung_mehrsprachig", $row)[DEFAULT_LANGUAGE];
if ($gebietbezeichnung == '')
{
$gebietbezeichnung = $row->bezeichnung;
}
}
echo '<tr>
<!--<td width="10" class="ItemTesttoolLeft" nowrap>&nbsp;</td>-->
<td class="'.$class.'">
<a class="'.$class.'" href="frage.php?gebiet_id='.$row->gebiet_id.'" onclick="document.location.reload()" target="content" style="'.$style.'">'.$sprache_mehrsprachig->parseSprachResult("bezeichnung_mehrsprachig", $row)[$sprache_user].'</a>
<a class="'.$class.'" href="frage.php?gebiet_id='.$row->gebiet_id.'" onclick="document.location.reload()" target="content" style="'.$style.'">'.$gebietbezeichnung.'</a>
</td>
<!--<td width="10" class="ItemTesttoolRight" nowrap>&nbsp;</td>-->
</tr>';
@@ -368,9 +389,13 @@ if (isset($_SESSION['pruefling_id']))
$invalid_gebiete = true;
}
}
echo '</table>';
if ($anzahlGebiete > 0)
{
echo '</table>';
}
// Link zum Logout
echo '<tr><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
<a class="ItemTesttool navButton" href="login.php?logout=true" target="content">Logout</a>
</td></tr>';
+1 -1
View File
@@ -509,7 +509,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<caption label="Status" />
<tree id="student-prestudent-tree-rolle" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/prestudentrolle/liste"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="200px" enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;min-height: 200px" height="200px" enableColumnDrag="true"
flags="dont-build-content"
context="student-prestudent-rolle-tree-popup"
ondblclick="StudentRolleBearbeiten()"
+31 -18
View File
@@ -16,8 +16,8 @@
* 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>.
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
/**
* Klasse bankverbindung
@@ -47,6 +47,7 @@ class bankverbindung extends basis_db
public $updateamum; // timestamp
public $updatevon; // bigint
public $oe_kurzbz; // string
public $orgform_kurzbz; // string
/**
* Konstruktor
@@ -95,6 +96,7 @@ class bankverbindung extends basis_db
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->orgform_kurzbz = $row->orgform_kurzbz;
return true;
}
else
@@ -176,19 +178,20 @@ class bankverbindung extends basis_db
//Neuen Datensatz einfuegen
$qry = 'BEGIN;INSERT INTO public.tbl_bankverbindung (person_id, name, anschrift, blz, bic,
kontonr, iban, typ, oe_kurzbz, verrechnung, insertamum, insertvon, updateamum, updatevon) VALUES('.
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->name).', '.
$this->db_add_param($this->anschrift).', '.
$this->db_add_param($this->blz).', '.
$this->db_add_param($this->bic).', '.
$this->db_add_param($this->kontonr).', '.
$this->db_add_param($this->iban).', '.
$this->db_add_param($this->typ).', '.
$this->db_add_param($this->oe_kurzbz).', '.
$this->db_add_param($this->verrechnung, FHC_BOOLEAN).', now(), '.
$this->db_add_param($this->insertvon).', now(), '.
$this->db_add_param($this->updatevon).');';
kontonr, iban, typ, oe_kurzbz, orgform_kurzbz, verrechnung, insertamum, insertvon, updateamum, updatevon) VALUES('.
$this->db_add_param($this->person_id, FHC_INTEGER).', '.
$this->db_add_param($this->name).', '.
$this->db_add_param($this->anschrift).', '.
$this->db_add_param($this->blz).', '.
$this->db_add_param($this->bic).', '.
$this->db_add_param($this->kontonr).', '.
$this->db_add_param($this->iban).', '.
$this->db_add_param($this->typ).', '.
$this->db_add_param($this->oe_kurzbz).', '.
$this->db_add_param($this->orgform_kurzbz).', '.
$this->db_add_param($this->verrechnung, FHC_BOOLEAN).', now(), '.
$this->db_add_param($this->insertvon).', now(), '.
$this->db_add_param($this->updatevon).');';
}
else
{
@@ -212,6 +215,7 @@ class bankverbindung extends basis_db
'typ='.$this->db_add_param($this->typ).', '.
'verrechnung='.$this->db_add_param($this->verrechnung,FHC_BOOLEAN).', '.
'oe_kurzbz='.$this->db_add_param($this->oe_kurzbz).', '.
'orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).', '.
'updateamum='.$this->db_add_param($this->updateamum).','.
'updatevon='.$this->db_add_param($this->updatevon).' '.
'WHERE bankverbindung_id='.$this->db_add_param($this->bankverbindung_id).';';
@@ -315,6 +319,7 @@ class bankverbindung extends basis_db
$obj->insertvon = $row->insertvon;
$obj->ext_id = $row->ext_id;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->orgform_kurzbz = $row->orgform_kurzbz;
$this->result[] = $obj;
}
@@ -328,11 +333,12 @@ class bankverbindung extends basis_db
}
/**
* Laedt die Bankverbindung einer Organisationseinheit
* @param $person_id
* Laedt die Bankverbindung einer Organisationseinheit und optional einer OrgForm
* @param string $oe_kurzbz
* @param string $orgform_kurzbz
* @return true wenn ok, false im Fehlerfall
*/
public function load_oe($oe_kurzbz)
public function load_oe($oe_kurzbz, $orgform_kurzbz = null)
{
if($oe_kurzbz==null || $oe_kurzbz=='')
{
@@ -342,6 +348,11 @@ class bankverbindung extends basis_db
$qry = "SELECT * FROM public.tbl_bankverbindung WHERE oe_kurzbz=".$this->db_add_param($oe_kurzbz);
if($orgform_kurzbz != '')
{
$qry .= " AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz);
}
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
@@ -364,6 +375,7 @@ class bankverbindung extends basis_db
$obj->insertvon = $row->insertvon;
$obj->ext_id = $row->ext_id;
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->orgform_kurzbz = $row->orgform_kurzbz;
$this->result[] = $obj;
}
@@ -412,6 +424,7 @@ class bankverbindung extends basis_db
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
$this->oe_kurzbz = $row->oe_kurzbz;
$this->orgform_kurzbz = $row->orgform_kurzbz;
return true;
}
+71 -2
View File
@@ -420,6 +420,69 @@ class prestudent extends person
return true;
}
/**
* Laden aller Prestudenten, die an $datum zum Reihungstest geladen sind.
* Wenn es mehrere Bewerbungen für ein Person gibt, wird nur die höchste Prestudent_id zurückgeliefert
* @param string $datum Datum in der Form YYYY-MM-DD an dem der Reihungstest stattfindet
* @return true wenn erfolgreich, false im Fehlerfall
*/
public function getFirstPrioPrestudentRT($datum)
{
$sql_query='SELECT DISTINCT
ps.prestudent_id,
pers.vorname, pers.nachname, pers.person_id, pers.titelpre,
pers.titelpost, pers.gebdatum,
tbl_reihungstest.*,
ps.studiengang_kz as studiengang_kz,
tbl_studiengang.typ
FROM
public.tbl_prestudent ps
JOIN public.tbl_person pers USING (person_id)
JOIN public.tbl_rt_person USING (person_id)
JOIN public.tbl_reihungstest ON (tbl_reihungstest.reihungstest_id=tbl_rt_person.rt_id)
JOIN public.tbl_studiengang ON (ps.studiengang_kz=tbl_studiengang.studiengang_kz)
JOIN public.tbl_prestudentstatus ON (tbl_prestudentstatus.prestudent_id=ps.prestudent_id
AND status_kurzbz=\'Interessent\'
AND tbl_prestudentstatus.studiensemester_kurzbz=tbl_reihungstest.studiensemester_kurzbz)
WHERE
tbl_reihungstest.datum='.$this->db_add_param($datum).'
/*AND tbl_rt_person.studienplan_id IN (SELECT studienplan_id FROM public.tbl_prestudentstatus WHERE prestudent_id=ps.prestudent_id)*/
AND tbl_prestudentstatus.studienplan_id IN (SELECT studienplan_id FROM public.tbl_rt_studienplan WHERE reihungstest_id=tbl_rt_person.rt_id)
AND EXISTS(SELECT * FROM public.tbl_prestudentstatus JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
WHERE prestudent_id=ps.prestudent_id AND tbl_studiensemester.ende > '.$this->db_add_param($datum).')
AND priorisierung = (SELECT priorisierung FROM public.tbl_prestudent
WHERE person_id = pers.person_id
AND get_rolle_prestudent (ps.prestudent_id,NULL) IN (\'Interessent\',\'Bewerber\',\'Wartender\',\'Aufgenommener\')
--AND tbl_prestudent.studiengang_kz=ps.studiengang_kz
ORDER BY priorisierung ASC LIMIT 1)
ORDER BY nachname,vorname';
if(!$this->db_query($sql_query))
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
$this->num_rows=0;
while($row = $this->db_fetch_object())
{
$ps=new prestudent();
$ps->prestudent_id = $row->prestudent_id;
$ps->person_id = $row->person_id;
$ps->reihungstest_id = $row->reihungstest_id;
$ps->titelpost = $row->titelpost;
$ps->titelpre = $row->titelpre;
$ps->nachname = $row->nachname;
$ps->vorname = $row->vorname;
$ps->gebdatum = $row->gebdatum;
$ps->studiengang_kz = $row->studiengang_kz;
$this->result[]=$ps;
$this->num_rows++;
}
return true;
}
/**
* Laedt über einen Prestudenten alle anderen Prestudenten einer Person, die aktuell an STG interessiert sind.
* @integer $prestudent_id Prestudent ID, über die alle weiteren Prestudenten ermittelt werden sollen.
@@ -436,11 +499,12 @@ class prestudent extends person
SELECT DISTINCT ON (priorisierung, prestudent_id)
priorisierung,
prestudent_id,
studienplan_id,
tbl_prestudentstatus.studienplan_id,
studiengang_kz,
typ,
tbl_studiengangstyp.bezeichnung AS typ_bz,
ausbildungssemester
ausbildungssemester,
tbl_orgform.bezeichnung_mehrsprachig
FROM
public.tbl_prestudentstatus
JOIN
@@ -449,6 +513,10 @@ class prestudent extends person
public.tbl_studiengang USING (studiengang_kz)
JOIN
public.tbl_studiengangstyp USING (typ)
JOIN
lehre.tbl_studienplan ON (tbl_prestudentstatus.studienplan_id = tbl_studienplan.studienplan_id)
JOIN
bis.tbl_orgform ON (tbl_studienplan.orgform_kurzbz = tbl_orgform.orgform_kurzbz)
WHERE
tbl_prestudent.person_id = (
SELECT
@@ -516,6 +584,7 @@ class prestudent extends person
$obj->typ = $row->typ;
$obj->typ_bz = $row->typ_bz;
$obj->ausbildungssemester = $row->ausbildungssemester;
$obj->orgform_bezeichnung = $this->db_parse_lang_array($row->bezeichnung_mehrsprachig);
$this->result[] = $obj;
}
+16 -2
View File
@@ -3687,8 +3687,8 @@ if(!$result = @$db->db_query("SELECT orgform_kurzbz FROM public.tbl_bankverbindu
echo '<br>public.tbl_bankverbindung: Spalte orgform_kurzbz hinzugefuegt';
}
// iban und bic zu vw_msg_vars hinzufügen
if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Studiengangskennzahl", "Einstiegssemester", "Einstiegsstudiensemester", "Vorname Studiengangsassistenz", "Nachname Studiengangsassistenz", "Durchwahl Studiengangsassistenz", "Relative Prio" FROM public.vw_msg_vars LIMIT 1'))
// iban, bic und weitere Variablen zu vw_msg_vars hinzufügen
if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Studiengangskennzahl", "Einstiegssemester", "Einstiegsstudiensemester", "Vorname Studiengangsassistenz", "Nachname Studiengangsassistenz", "Durchwahl Studiengangsassistenz", "Alias Studiengangsassistenz", "Relative Prio" FROM public.vw_msg_vars LIMIT 1'))
{
$qry = '
CREATE OR REPLACE VIEW public.vw_msg_vars AS (
@@ -3828,6 +3828,20 @@ if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Stu
echo '<br>public.vw_msg_vars IBAN Studiengang, BIC Studiengang, Studiengangskennzahl, Einstiegssemester, Einstiegsstudiensemester, Vorname Studiengangsassistenz, Nachname Studiengangsassistenz, Durchwahl Studiengangsassistenz, Relative Priorität added';
}
// UNIQUE INDEX unq_idx_ablauf_gebiet_studiengang_semester in testtool.tbl_ablauf löschen und durch neuen INDEX ersetzen, der auch den Studienplan einschließt
if ($result = $db->db_query("SELECT 1 FROM pg_class WHERE relname = 'unq_idx_ablauf_gebiet_studiengang_semester'"))
{
if ($db->db_num_rows($result) == 1)
{
$qry = 'DROP INDEX testtool.unq_idx_ablauf_gebiet_studiengang_semester;';
$qry .= 'CREATE UNIQUE INDEX unq_idx_ablauf_gebiet_studiengang_semester_studienplan ON testtool.tbl_ablauf USING btree (gebiet_id, studiengang_kz, semester, studienplan_id);';
if (!$db->db_query($qry))
echo '<strong>unq_idx_ablauf_gebiet_studiengang_semester_studienplan '.$db->db_last_error().'</strong><br>';
else
echo '<br>Dropped index "unq_idx_ablauf_gebiet_studiengang_semester" and created unique index "unq_idx_ablauf_gebiet_studiengang_semester_studienplan"';
}
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
+22 -5
View File
@@ -562,10 +562,9 @@ if ($testende)
<tr>
<td style="padding-left: 8%; padding-right: 8%; padding-top: 5%; padding-bottom: 5%; font-family: verdana, sans-serif; font-size: 1em; border-bottom: 2px solid #000000;">';
$mailtext .= 'Der Reihungstest vom ' . $datum_obj->convertISODate($reihungstest->datum) . ' um ' . $datum_obj->formatDatum($reihungstest->uhrzeit, 'H:i') . ' Uhr ist beendet.';
$mailtext .= '<br> Es haben <b>'.$anzahl.'</b> Person(en) aus dem Studiengang '.$stg->kuerzel.'-'.$orgForm.' teilgenommen';
$mailtext .= '<br> Sie finden die Auswertung unter dem folgendem Link:';
$mailtext .= '<br> Es haben <b>'.$anzahl.'</b> Person(en) aus dem Studiengang '.$stg->kuerzel.'-'.$orgForm.' teilgenommen.';
$mailtext .= '<br><br><a href="' . APP_ROOT . 'vilesci/stammdaten/auswertung_fhtw.php?reihungstest=' . $reihungstest->reihungstest_id . '&studiengang=' . $studiengang_kz . '&orgform_kurzbz=' . $orgForm . '">Link zur Auswertung</a>';
$mailtext .= '<br><br><a href="' . APP_ROOT . 'addons/reports/cis/vorschau.php?statistik_kurzbz=BewerberReihungstestPriorisierung&debug=true">Link zur Pivot-Tabelle für die Priorisierung</a>';
$mailtext .= '</td>
</tr>
<tr>
@@ -643,7 +642,7 @@ if (isset($_POST['method']) && $_POST['method'] == 'addPerson')
if ($row->bewerbung_abgeschicktamum != '' && $row->bestaetigtam != '' && $row->studienplan_id != '')
{
$studienplan = $row->studienplan_id;
$break;
break;
}
}
@@ -1154,7 +1153,7 @@ if (isset($_REQUEST['reihungstest']))
JOIN PUBLIC.tbl_person ON (tbl_rt_person.person_id = tbl_person.person_id)
JOIN PUBLIC.tbl_prestudent ps ON (ps.person_id = tbl_rt_person.person_id)
JOIN PUBLIC.tbl_reihungstest rt ON (tbl_rt_person.rt_id = rt.reihungstest_id)
JOIN PUBLIC.tbl_prestudentstatus USING (prestudent_id)
JOIN PUBLIC.tbl_prestudentstatus pss USING (prestudent_id)
JOIN public.tbl_studiengang ON (ps.studiengang_kz = tbl_studiengang.studiengang_kz)
LEFT JOIN bis.tbl_zgv ON (ps.zgv_code = tbl_zgv.zgv_code)
LEFT JOIN PUBLIC.tbl_ort ON (tbl_rt_person.ort_kurzbz = tbl_ort.ort_kurzbz)
@@ -1196,6 +1195,20 @@ if (isset($_REQUEST['reihungstest']))
{
$query .= " AND ps.prestudent_id=" . $db->db_add_param($prestudent_id, FHC_INTEGER);
}
if ($orgform_kurzbz != '' && $studiengang != '')
{
$query .= " AND tbl_ablauf.studienplan_id=(
SELECT studienplan_id FROM lehre.tbl_studienplan
JOIN lehre.tbl_studienordnung USING (studienordnung_id)
WHERE studiengang_kz=".$db->db_add_param($studiengang, FHC_INTEGER)."
AND tbl_studienplan.orgform_kurzbz = ".$db->db_add_param($orgform_kurzbz)."
AND tbl_studienplan.aktiv
AND tbl_studienordnung.status_kurzbz='approved'
AND ((SELECT start FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=tbl_studienordnung.gueltigvon) <= now()
OR tbl_studienordnung.gueltigvon IS NULL)
AND ((SELECT ende FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=tbl_studienordnung.gueltigbis) >= now() OR tbl_studienordnung.gueltigbis IS NULL)
ORDER BY studienplan_id DESC LIMIT 1)";
}
//$query .= " AND nachname='Al-Mafrachi'";
$query .= " ORDER BY tbl_ablauf.studiengang_kz, tbl_ablauf.semester, reihung";
@@ -1403,6 +1416,9 @@ if (isset($_REQUEST['reihungstest']))
}
if ($orgform_kurzbz != '')
{
//$query .= " AND tbl_prestudentstatus.orgform_kurzbz=" . $db->db_add_param($orgform_kurzbz);
//$query .= " AND tbl_ablauf.studienplan_id = tbl_prestudentstatus.studienplan_id";
//$query .= " AND tbl_ablauf.studienplan_id = 5";
$query .= " AND tbl_studienplan.orgform_kurzbz=" . $db->db_add_param($orgform_kurzbz);
}
//$query .= " AND nachname='Al-Mafrachi'";
@@ -1410,6 +1426,7 @@ if (isset($_REQUEST['reihungstest']))
vorname,
person_id
";/*print_r($query);*/
//echo '<pre>', var_dump($query), '</pre>';
if (!($result = $db->db_query($query)))
{
die($db->db_last_error());