<?php
/* Copyright (C) 2006 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>,
 *          Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
 *          Manfred Kindl <manfred.kindl@technikum-wien.at>
 *          Cristina Hainberger <hainberg@technikum-wien.at>
 */

require_once('../../config/cis.config.inc.php');
require_once('../../config/global.config.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/pruefling.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studienplan.class.php');
require_once('../../include/studienordnung.class.php');
require_once('../../include/ablauf.class.php');
require_once('../../include/reihungstest.class.php');
require_once('../../include/sprache.class.php');
require_once '../../include/phrasen.class.php';
require_once '../../include/datum.class.php';

if (!$db = new basis_db())
	die('Fehler beim Oeffnen der Datenbankverbindung');

// Start session
require_once './session_init.php';
// Logout (triggered by logout button in menu.php)
if (isset($_GET['logout']) && $_GET['logout'] == true)
{
	// Unset global vars
	unset($_GET['logout']);
	unset($_GET['sprache_user']);
	$_POST = [];
	$_SESSION = [];

	// Destroy session
	session_destroy();

	echo '
		<script language="Javascript">
			location = "logout.html";       // clean the login.php-url from querystring
			parent.menu.location = parent.menu.location.pathname;   // clean the menu.php-url from querystring
			parent.topbar.location = parent.topbar.location.pathname;   // clean the topbar.php-url from querystring
		</script>
	';
}

$gebdatum='';
$date = new datum();

$reload_menu=false;
$alertmsg = '';

$sg_var = new studiengang();

if (isset($_POST['gebdatum']) && $_POST['gebdatum']!='')
{
	$gebdatum = $date->formatDatum($_POST['gebdatum'],'Y-m-d');
}
else
	$gebdatum='';

if (isset($_REQUEST['prestudent']))
{
	$ps = new prestudent($_REQUEST['prestudent']);

	$login_ok = false;
	if (defined('TESTTOOL_LOGIN_BEWERBUNGSTOOL') && TESTTOOL_LOGIN_BEWERBUNGSTOOL &&
		(isset($_GET['confirmation']) || isset($_GET['confirmed_code'])))
	{
		if (isset($_SESSION['bewerbung/personId']) && $ps->person_id == $_SESSION['bewerbung/personId'])
		{
			$login_ok = true;
		}
		else
		{
			$alertmsg .= '<div class="alert alert-danger">Login ist nicht korrekt.
				Bitte schließen Sie ihren Browser und versuchen es erneut
			</div>';
		}
	}
	elseif(!defined('TESTTOOL_LOGIN_BEWERBUNGSTOOL') || TESTTOOL_LOGIN_BEWERBUNGSTOOL == false)
	{
		//Geburtsdatum Pruefen
		if (isset($gebdatum) && $gebdatum == $ps->gebdatum)
		{
			$login_ok = true;
		}
		else
		{
			$alertmsg .= '<div class="alert alert-danger">'.$p->t('testtool/geburtsdatumStimmtNichtUeberein').'</div>';
		}
	}

	if ($login_ok)
	{
		$reihungstest_id='';
		//Freischaltung fuer zugeteilten Reihungstest pruefen
		$rt = new reihungstest();

		// Wenns der Dummy ist dann extra laden
		// An der FHTW gibt es 3 Testuser für den Camus International
		$prestudent_id_dummy_student = (defined('PRESTUDENT_ID_DUMMY_STUDENT')?PRESTUDENT_ID_DUMMY_STUDENT:'');
		if ($prestudent_id_dummy_student==$ps->prestudent_id ||
			(CAMPUS_NAME == 'FH Technikum Wien' && $ps->prestudent_id == 30891) ||
			(CAMPUS_NAME == 'FH Technikum Wien' && $ps->prestudent_id == 30890) ||
			(CAMPUS_NAME == 'FH Technikum Wien' && $ps->prestudent_id == 30889))
		{
			$rt->getReihungstestPerson($ps->person_id);
			if (isset($rt->result[0]))
				$reihungstest_id = $rt->result[0]->reihungstest_id;
		}
		else
		{
			if ($rt->getReihungstestPersonDatum($ps->prestudent_id, date('Y-m-d')))
			{
				// TODO Was ist wenn da mehrere Zurueckkommen?!
				if (isset($rt->result[0]))
					$reihungstest_id = $rt->result[0]->reihungstest_id;
			}
			else
			{
				echo 'Failed:'.$rt->errormsg;
			}
		}
		if ($reihungstest_id != '' && $rt->load($reihungstest_id))
		{
			if ($rt->freigeschaltet)
			{
				// regenerate Session ID after Login
				session_regenerate_id();
				if (defined('TESTTOOL_LOGIN_BEWERBUNGSTOOL') && TESTTOOL_LOGIN_BEWERBUNGSTOOL)
				{
					if ($rt->zugangs_ueberpruefung && !is_null($rt->zugangscode))
					{
						$_SESSION['confirmed_code'] = false;
						if (isset($_SESSION['confirmation_needed']) && $_SESSION['confirmation_needed'] === true)
						{
							if (isset($_GET['confirmed_code']))
							{
								if ($_GET['confirmed_code'] === $_SESSION['reihungstest_code'])
								{
									$_SESSION['confirmed_code'] = true;
								}
								else
									$alertmsg .= '<div class="alert alert-danger">Code ist nicht korrekt.</div>';
							}
						}

						if ($_SESSION['confirmed_code'] === false)
						{
							$_SESSION['reihungstest_code'] = $rt->zugangscode;
							$_SESSION['confirmation_needed'] = true;
						}
						else
							$reload_menu = true;
					}

					if ($rt->externe_ueberwachung && defined('TESTTOOL_EXTERNE_UEBERWACHUNG_ALLOWED') && TESTTOOL_EXTERNE_UEBERWACHUNG_ALLOWED)
					{
						$_SESSION['externe_ueberwachung'] = true;
						$_SESSION['externe_ueberwachung_verified'] = false;
					}
				}

				$pruefling = new pruefling();
				if ($pruefling->getPruefling($ps->prestudent_id))
				{
					$studiengang = $pruefling->studiengang_kz;
					$semester = $pruefling->semester;
				}
				else
				{
					$studiengang = $ps->studiengang_kz;
					$ps->getLastStatus($ps->prestudent_id);
					$semester = $ps->ausbildungssemester;
				}
				if ($semester=='')
					$semester=1;

				$_SESSION['prestudent_id']=$_REQUEST['prestudent'];
				$_SESSION['studiengang_kz']=$studiengang;
				$_SESSION['nachname']=$ps->nachname;
				$_SESSION['vorname']=$ps->vorname;
				$_SESSION['gebdatum']=$ps->gebdatum;
				$stg_obj = new studiengang($studiengang);

				$_SESSION['semester']=$semester;
				$_SESSION['reihungstestID'] = $reihungstest_id;
				$stg_obj->getStudiengangTyp($stg_obj->typ);

				// STG und Studienplan mit der höchsten Prio ermitteln
				$firstPrio_studienplan_id = '';
				$firstPrio_studiengang_kz = '';

				//  * wenn STG des eingeloggten Prestudenten vom Typ Bachelor ist, dann höchste Prio aller
				//  Bachelor-STG ermitteln, an denen die Person noch interessiert ist
				//  Wenn STG vom Typ Master, dann wird als firstPrio der STPL bzw. der STG des MasterSTG gesetzt.
				if ($stg_obj->typ == 'b')
				{
					$ps->getActualInteressenten($_REQUEST['prestudent'], true);
				}
				elseif ($stg_obj->typ == 'm')
				{
					$ps->getActualInteressenten($_REQUEST['prestudent'], false, 'm', $studiengang);
				}

				foreach($ps->result as $row)
				{
					if (isset($row->studiengang_kz))
					{
						$firstPrio_studienplan_id = $row->studienplan_id;
						break;
					}
				}
				foreach($ps->result as $row)
				{
					if (isset($row->studiengang_kz))
					{
						$firstPrio_studiengang_kz = $row->studiengang_kz;
						break;
					}
				}
				// Sprachvorgaben zu STG mit höchster Prio ermitteln

				// * 1. Sprache über Ablauf Vorgaben ermitteln
				$ablauf = new Ablauf();
				$ablauf->getAblaufGebiete($firstPrio_studiengang_kz, $firstPrio_studienplan_id);
				$rt_sprache = '';

				if (empty($ablauf->result[0]))
				{
                    $ablauf->getAblaufGebiete($firstPrio_studiengang_kz);
                }

				if (!empty($ablauf->result[0]))
				{
					$rt_sprache = $ablauf->result[0]->sprache;
				}

				// * 2. falls keine Sprache vorhanden -> Sprache über Studienplan ermitteln
				if (empty($rt_sprache))
				{
					$stpl = new Studienplan();
					$stpl->loadStudienplan($firstPrio_studienplan_id);
					$rt_sprache = $stpl->sprache;
				}

				// * 3. falls keine Sprache vorhanden -> Sprache über Studiengang ermitteln
				if (empty($rt_sprache))
				{
					$stg = new Studiengang($firstPrio_studiengang_kz);
					$rt_sprache = $stg->sprache;
				}

				// * 4. Sprache setzen. Falls keine Sprache vorhanden -> DEFAULT language verwenden
				if (empty($rt_sprache))
				{
					$_SESSION['sprache_user'] = DEFAULT_LANGUAGE;
				}
				else
				{
					$_SESSION['sprache_user'] = $rt_sprache;
				}
			}
			else
			{
				$alertmsg .= '<div class="alert alert-danger">'.$p->t('testtool/reihungstestNichtFreigeschalten').'</div>';
			}
		}
		else
		{
			$alertmsg .= '<div class="alert alert-danger">'.$p->t('testtool/reihungstestKannNichtGeladenWerden').'</div>';
		}
	}
}

// Set language of user.
// NOTE: don't move the code in order to check first the right studies' reihungstest language
// (in case it was overruled by other STG with higher priority)

// Start with default language on first login (before any prestudent has been selected)
$sprache_user = DEFAULT_LANGUAGE;
if (isset($_SESSION['sprache_user']) && !empty($_SESSION['sprache_user']))
{
	// If session var already exists, overwrite language var
	// (session var changes e.g. when user selects other language with language-select-menu)
	$sprache_user = $_SESSION['sprache_user'];
}
elseif (isset($_SESSION['prestudent_id']))
{
	// If session var does not exist but prestudent is known, set the session var
	$_SESSION['sprache_user'] = DEFAULT_LANGUAGE;
}

// If language is changed by language select menu, reset language variables
if (isset($_GET['sprache_user']) && !empty($_GET['sprache_user']))
{
	$sprache_user = $_GET['sprache_user'];
	$_SESSION['sprache_user'] = $_GET['sprache_user'];
}

// NOTE: leave phrasen here, as the final users language is not defined until here
$p = new phrasen($sprache_user);

if (isset($_SESSION['prestudent_id']))
{
	$prestudent_id=$_SESSION['prestudent_id'];
}
else
{
	//$prestudent_id=null;
	$ps=new prestudent();
	$datum=date('Y-m-d');
	// 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);
	}
}

if ((isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id']) &&
	!isset($_SESSION['confirmation_needed']) && !isset($_SESSION['confirmed_code'])) ||
	(isset($_SESSION['confirmation_needed']) && $_SESSION['confirmation_needed'] === true &&
	isset($_SESSION['confirmed_code']) && $_SESSION['confirmed_code'] === true &&
	isset($_SESSION['externe_ueberwachung']) && $_SESSION['externe_ueberwachung'] === true &&
	isset($_SESSION['externe_ueberwachung_verified']) && $_SESSION['externe_ueberwachung_verified'] === true &&
	isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id'])))
{
	$pruefling = new pruefling();

		//wenn kein Prüfling geladen werden kann
	if (!$pruefling->getPruefling($_SESSION['prestudent_id']))
		$pruefling->new = true;
		else
			$pruefling->new = false;

		$pruefling->studiengang_kz = $_SESSION['studiengang_kz'];
		$pruefling->semester = $_SESSION['semester'];

		$pruefling->idnachweis = '';
		$pruefling->registriert = date('Y-m-d H:i:s');
		$pruefling->prestudent_id = $_SESSION['prestudent_id'];
		$pruefling->gesperrt = $pruefling->isGesperrt(null, $_SESSION['prestudent_id']);

		if ($pruefling->save())
		{
			$_SESSION['pruefling_id']=$pruefling->pruefling_id;
			$reload_menu=true;
		}
}

if (isset($_POST['save']) && isset($_SESSION['prestudent_id']))
{
	$pruefling = new pruefling();
	if ($_POST['pruefling_id']!='')
		if (!$pruefling->load($_POST['pruefling_id']))
			die('Pruefling wurde nicht gefunden');
		else
			$pruefling->new=false;
	else
		$pruefling->new=true;

	$pruefling->studiengang_kz = $_SESSION['studiengang_kz'];
	$pruefling->idnachweis = isset($_POST['idnachweis'])?$_POST['idnachweis']:'';
	$pruefling->registriert = date('Y-m-d H:i:s');
	$pruefling->prestudent_id = $_SESSION['prestudent_id'];
	$pruefling->semester = $_POST['semester'];
	$pruefling->gesperrt = $pruefling->isGesperrt(null, $_SESSION['prestudent_id']);
	if ($pruefling->save())
	{
		$_SESSION['pruefling_id']=$pruefling->pruefling_id;
		$_SESSION['semester']=$pruefling->semester;
		$reload_menu=true;
	}
}
?><!DOCTYPE HTML>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<link rel="stylesheet" href="../../vendor/twbs/bootstrap3/dist/css/bootstrap.min.css" type="text/css"/>
	<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
	<link rel="stylesheet" href="../../vendor/components/jqueryui/themes/base/jquery-ui.min.css" type="text/css"/>
	<script type="text/javascript" src="../../vendor/components/jquery/jquery.min.js"></script>
	<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
	<script type="text/javascript" src="../../vendor/components/jqueryui/ui/i18n/datepicker-de.js"></script>
	<script type="text/javascript" src="../../vendor/twbs/bootstrap3/dist/js/bootstrap.min.js"></script>
	<script type="text/javascript">

	$(document).ready(function()
	{
		$.datepicker.setDefaults( $.datepicker.regional[ "" ] );
		<?php //Wenn Deutsch ausgewaehlt, dann Datepicker auch in Deutsch
		if ($sprache_user=="German")
			echo '$.datepicker.setDefaults( $.datepicker.regional[ "de" ] );
			$( "#datepicker" ).datepicker(
				{
					changeMonth: true,
					changeYear: true,
					defaultDate: "-6570",
					maxDate: -5110,
					yearRange: "-60:+00",
				}
				);';
		else
			echo '$( "#datepicker" ).datepicker({
				dateFormat: "dd.mm.yy",
				changeMonth: true,
				changeYear: true,
				defaultDate: "-6570",
				maxDate: -5110,
				yearRange: "-60:+00",
				});';
		?>

		$(document).bind('cut copy paste', function(e)
		{
			if (document.querySelector('.frage'))
			{
				e.preventDefault();
			}
		});

		$(document).on("keydown", function (e)
		{
			if (((e.ctrlKey || e.metaKey) && e.keyCode === 85) || e.keyCode === 123)
			{
				e.preventDefault();
			}
		});

		$(document).on("contextmenu", function (e)
		{
			e.preventDefault();
		});
	});
	</script>
<?php
	if ($reload_menu)
		echo '<script language="Javascript">parent.menu.location.reload();</script>';
?>
</head>

<body scroll="no">
	<div class="row">

<?php

if ((isset($_SESSION['externe_ueberwachung']) && $_SESSION['externe_ueberwachung'] === true) &&
	isset($_SESSION['externe_ueberwachung_verified']) && $_SESSION['externe_ueberwachung_verified'] === false)
{
	echo "<script> top.location.href = 'resetconnection.php';</script>";
	exit;
}
else if (isset($_SESSION['confirmation_needed']) && $_SESSION['confirmation_needed'] === true &&
	isset($_SESSION['confirmed_code']) && $_SESSION['confirmed_code'] === false)
{
	echo '
		<div class="col-xs-11">
			<div id="alertmsgdiv"></div>
			<div id="alert">'.$alertmsg.'</div>
			<div class="row text-center">
			'.$p->t('testtool/freischalttext').'
					<br />
					<br />
					<b>'.$p->t('testtool/freischaltcode').':</b>
				<form action="login.php">
					<input type="hidden" name="prestudent" value="'.$_REQUEST['prestudent'].'" />
					<input id="confirmed_code" type="number" name="confirmed_code"/>
					<br />
					<br />
					<button id="confirmation_access_submit" type="submit" class="btn btn-primary"/>
						'.$p->t('testtool/start').'
					</button>
				</form>
			</div>
		</div>';
}
//REIHUNGSTEST STARTSEITE (nach Login)
elseif (isset($prestudent_id))
{
	$prestudent = new prestudent($prestudent_id);
	$stg_obj = new studiengang($prestudent->studiengang_kz);
	$pruefling = new pruefling();
	$typ = new studiengang($prestudent->studiengang_kz);
	$typ->getStudiengangTyp($stg_obj->typ);

	// STG mit der höchsten Prio ermitteln
	$ps = new Prestudent();

	//  * prinzipiell STG der session übernehmem
	$firstPrio_studiengang_kz = $prestudent->studiengang_kz;

	//  * wenn STG des eingeloggten Prestudenten vom Typ Bachelor ist, dann höchste Prio aller
	//  Bachelor-STG ermitteln, an denen die Person noch interessiert ist
	$firstPrio_studienplan_id = '';
	$firstPrio_studiengang_kz = '';
	if ($typ->typ == 'b')
	{
		$ps->getActualInteressenten($prestudent_id, true, 'b');
		foreach($ps->result as $row_prio)
		{
			if (isset($row_prio->studiengang_kz))
			{
				$firstPrio_studiengang_kz = $row_prio->studiengang_kz;
                $firstPrio_studienplan_id = $row_prio->studienplan_id;
				break;
			}
		}
	}

	// Sprachwahl zu STG mit höchster Prio ermitteln
	$ablauf = new Ablauf();
	$sprachwahl = false;

    $ablauf->getAblaufGebiete($firstPrio_studiengang_kz, $firstPrio_studienplan_id);

    if (empty($ablauf->result[0]))
    {
        $ablauf->getAblaufGebiete($firstPrio_studiengang_kz);
    }

    if (isset($ablauf->result[0])
        && is_bool($ablauf->result[0]->sprachwahl))
	{
	   $sprachwahl = $ablauf->result[0]->sprachwahl;
	}

	// If language can be switched, display language select menu on the top
	if ($sprachwahl)
	{
		$_SESSION['sprache_auswahl'] = true;
	?>
		<script type="text/javascript">
			parent.topbar.location.reload();
		</script>
	<?php
	}
	//Prestudent Informationen
	echo '<div class="col-xs-10 col-sm-9 col-lg-6">';
	echo '
		<h1 style="margin-top: -20px;">'. $p->t('testtool/begruessungstext'). '</h1><br/>
		<p>'. $p->t('testtool/anmeldedaten'). '</p><br/>
	';

	echo '
	  <table class="table table-bordered">
			<tr>
				<td style="width: 50%;"><strong>'.$p->t('zeitaufzeichnung/id').'</strong></td>
				<td>'.$_SESSION['prestudent_id'].'</td>
			</tr>
			<tr>
				<td><strong>'.$p->t('global/name').'</strong></td>
				<td>'.$_SESSION['vorname'].' '.$_SESSION['nachname'].'</td>
			</tr>
			<tr>
				<td><strong>'.$p->t('global/geburtsdatum').'</strong></td>
				<td>'.$date->formatDatum($_SESSION["gebdatum"],"d.m.Y").'</td>
			</tr>
	  </table>
	';
	echo '<br>';
	echo '
		 <p>'. $p->t('testtool/fuerFolgendeStgAngemeldet'). '</p><br>

		 <table class="table table-bordered">
			<thead>
				<tr>
					<th style="width: 50%;">'. $p->t('global/studiengang'). '</th>
					<th>Status</th>
				 </tr>
			</thead>
			<tbody>
		 ';

	//  * wenn Prestudent an 1 - n Bachelor-Studiengängen interessiert ist, dann STG anführen
	if ($typ->typ == 'b')
	{
		$ps_arr = new Prestudent();
		$ps_arr->getActualInteressenten($prestudent_id, false, 'b');

		if (count($ps_arr->result) > 0)
		{
			// Jeweils letzten Status ermitteln (ob Interessent oder Abgewiesener)
			foreach ($ps_arr->result as $ps_obj)
			{
				$ps_tmp = new Prestudent();
				$ps_tmp->getLastStatus($ps_obj->prestudent_id);

				$ps_obj->lastStatus = $ps_tmp->status_kurzbz; // letzten Status dem result array hinzufügen
				$ps_obj->status_mehrsprachig = $ps_tmp->status_mehrsprachig;
			}

			// Falls Status 'Abgewiesene' vorhanden, nach hinten reihen
			usort($ps_arr->result, function($a, $b){
				return strcmp($b->lastStatus, $a->lastStatus); // Order by DESC
			});
			foreach ($ps_arr->result as $ps_obj)
			{
				echo '<tr>';
				$stg = new Studiengang($ps_obj->studiengang_kz);
				$sto = new Studienordnung();
				$sto->getStudienordnungFromStudienplan($ps_obj->studienplan_id);
				// Name des Studiengangs aus Studienordnung laden, ansonsten Fallback auf Studiengang
				$stg_name = $sto->studiengangbezeichnung;
				$stg_name_eng = $sto->studiengangbezeichnung_englisch;
				if ($stg_name == '')
				{
					$stg_name = $stg->bezeichnung;
				}
				if ($stg_name_eng == '')
				{
					$stg_name_eng = $stg->english;
				}

				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_name_eng : $stg_name). ' ('.$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>';
					}
				}
				// wenn letzter Status \'Abgewiesener\' ist, dann als solchen kennzeichnen
				elseif ($ps_obj->lastStatus == "Abgewiesener")
				{
					echo '
						<td class="text-muted">'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg_name_eng : $stg_name). '</td>
						<td class="text-muted">'. $ps_obj->status_mehrsprachig[$sprache_user]. '</td>
					';
				}
				echo '</tr>';
			}
		}
	}
	//  * wenn Prestudent an einem Master-Studiengang interessiert ist, dann nur den einen STG anführen
	else
	{
		// Letzten Status für des Prestudenten einholen
		$ps_master = new Prestudent();
		$ps_master->getLastStatus($prestudent_id);
		$sto = new Studienordnung();
		$sto->getStudienordnungFromStudienplan($ps_master->studienplan_id);
		// Name des Studiengangs aus Studienordnung laden, ansonsten Fallback auf Studiengang
		$stg_name = $sto->studiengangbezeichnung;
		$stg_name_eng = $sto->studiengangbezeichnung_englisch;
		if ($stg_name == '')
		{
			$stg_name = $stg->bezeichnung;
		}
		if ($stg_name_eng == '')
		{
			$stg_name_eng = $stg->english;
		}
		echo '<td>'. $typ->bezeichnung.' '.($sprache_user=='English'?$stg_name_eng : $stg_name).'</td>';
		echo '<td>'. $ps_master->status_mehrsprachig[$sprache_user]. '</td>';
	}

	echo '
		</tbody>
	 </table>
	';

	echo '<br>';

	if ($pruefling->getPruefling($prestudent_id))
	{
		echo '<FORM accept-charset="UTF-8"   action="'. $_SERVER['PHP_SELF'].'"  method="post" enctype="multipart/form-data">';
		echo '<input type="hidden" name="pruefling_id" value="'.$pruefling->pruefling_id.'">';
		echo '<table>';
		//echo '<tr><td>'.$p->t('global/semester').':</td><td><input type="text" name="semester" size="1" maxlength="1" value="'.$pruefling->semester.'">&nbsp;<input type="submit" name="save" value="Semester ändern"></td></tr>';
		//echo '<tr><td>ID Nachweis:</td><td><INPUT type="text" maxsize="50" name="idnachweis" value="'.$pruefling->idnachweis.'"></td></tr>';
		//echo '<tr><td></td><td><input type="submit" name="save" value="Semester ändern"></td>';
		echo '</table>';
		echo '</FORM>';
		echo '<br><br>';
		echo '
			<div class="well well-lg text-center">
				<strong>'.$p->t('testtool/klickenSieAufEinTeilgebiet').'</strong>
			</div>
	   ';
		if ($pruefling->pruefling_id!='')
		{
			$_SESSION['pruefling_id']=$pruefling->pruefling_id;
		}
	}
	else
	{
		echo '<span class="error">'.$p->t('testtool/keinPrueflingseintragVorhanden').'</span>';
	}
	echo '	</div><!--/.col-->';
}
else // LOGIN Site (vor Login)
{
	if (defined('TESTTOOL_LOGIN_BEWERBUNGSTOOL') && TESTTOOL_LOGIN_BEWERBUNGSTOOL)
	{
		echo '<div class="col-xs-11">';
		echo '<div id="alertmsgdiv">'.$alertmsg.'</div>';
		echo $p->t('testtool/einfuehrungsText');

		if (isset($_SESSION['bewerbung/personId']))
		{
			echo '<script>
				function changeconfirmation()
				{
					document.getElementById("confirmationSubmit").disabled = !document.getElementById("confirmationCheckbox").checked || !document.getElementById("dsgvoconfirm").checked || !document.getElementById("procotoringconfirm").checked;
				}
				</script>';
			echo '<div class="row text-center">
			'.$p->t('testtool/loginNoetig').'<br /><br />
			<form action="login.php">
			<input type="hidden" name="prestudent" value="'.$_REQUEST['prestudent'].'" />
			<input id="confirmationCheckbox" type="checkbox" name="confirmation" onclick="changeconfirmation()" />
			'.$p->t('testtool/confirmationText').'
			<br><br>
			<input id="dsgvoconfirm" type="checkbox" name="confirmation" onclick="changeconfirmation()" />
			'.$p->t('testtool/dsgvoConfirmText').'
			<br><br>
			<input id="procotoringconfirm" type="checkbox" name="confirmation" onclick="changeconfirmation()" />
			'.$p->t('testtool/procotoringConfirmText').'
			<br><br>
			<button id="confirmationSubmit" type="submit" class="btn btn-primary" disabled/>
				'.$p->t('testtool/start').'
			</button>
			</form>';
		}
		else
		{
			echo '<div class="row text-center">
			'.$p->t('testtool/loginNoetig').'<br /><br />
			<form action="'.APP_ROOT.'/addons/bewerbung/cis/." target="_top">
			<button type="submit" class="btn btn-primary" />
				'.$p->t('testtool/login').'
			</button>
			</form>';
		}
		echo '
		</div>';
		echo '</div>';
	}
	else
	{
		$prestudent_id_dummy_student = (defined('PRESTUDENT_ID_DUMMY_STUDENT')?PRESTUDENT_ID_DUMMY_STUDENT:'');
		echo '<div class="col-xs-11">';

		//	Welcome text
		echo '<div id="alertmsgdiv">'.$alertmsg.'</div>';
		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>
					Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.<br><br>
					Wir wünschen Ihnen einen erfolgreichen Start ins Studium.
				</div>
				<div class="col-xs-6 text-center">
					<h1 style="white-space: normal">Welcome to the placement test</h1> <br><br>
					Please wait for the tutor\'s instructions before you log in.<br><br>
					We wish you a good start to your studies.
				</div>
			</div>
		';

		// Begin form
		echo '<div class="row text-center">';
		echo '<form method="post" class="form-inline">';

		// Name select menu
		echo '<div class="form-group">';
		echo '<label for="select-prestudent" class="col-sm-2 control-label">Name</label>';
		echo '<div class="col-sm-10">';
		echo '<SELECT name="prestudent" id="select-prestudent" class="form-control">';
		echo '<OPTION value="'.$prestudent_id_dummy_student.'">Bitte wählen / Please select...</OPTION>\n';
		foreach($ps->result as $prestd)
		{
			$stg = new studiengang();
			$stg->load($prestd->studiengang_kz);
			if (isset($_REQUEST['prestudent']) && $prestd->prestudent_id==$_REQUEST['prestudent'])
				$selected = 'selected';
			else
				$selected='';
			echo '
					<OPTION value="'.$prestd->prestudent_id.'" '.$selected.'>'.$prestd->nachname.' '.$prestd->vorname.' ('.(strtoupper($stg->typ.$stg->kurzbz)).')</OPTION>\n';
		}
		// An der FHTW gibt es 3 Testuser für den Camus International
		if (CAMPUS_NAME == 'FH Technikum Wien')
		{
			echo '<OPTION value="30891">Testuser Campus International 01</OPTION>\n';
			echo '<OPTION value="30890">Testuser Campus International 02</OPTION>\n';
			echo '<OPTION value="30889">Testuser Campus International 03</OPTION>\n';
		}
		echo '</SELECT>';
		echo '</div>'; // end col-xs
		echo '</div>'; // end form-group

		// Datepicker input
		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').'" placeholder="DD.MM.YYYY">';
		echo '</div>'; // end col-xs
		echo '</div>'; // end form-group

		// Login button
		echo '<button type="submit" class="btn btn-default" value="'.$p->t('testtool/login').'" />'.$p->t('testtool/login').'</button>';

		echo '</form>'; // end form

		echo '</div>';  // end row
		echo '</div>';  // end col-xs-11
	}
}

?>
</div><!--/.row-->
</body>
</html>
