From 646378ad1a246fb3f05fedca87b8805d54ec0fce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 31 Mar 2020 12:20:33 +0200 Subject: [PATCH] =?UTF-8?q?Login=20f=C3=BCr=20Testtool=20angepasst=20damit?= =?UTF-8?q?=20ein=20Login=20=C3=BCber=20das=20Bewerbungstool=20m=C3=B6glic?= =?UTF-8?q?h=20ist=20wenn=20im=20Config=20aktiviert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/testtool/bild.php | 44 +- cis/testtool/index.html | 19 +- cis/testtool/index.php | 28 ++ cis/testtool/login.php | 648 +++++++++++++++------------ cis/testtool/sound.php | 49 +- config/global.config-default.inc.php | 3 + 6 files changed, 456 insertions(+), 335 deletions(-) create mode 100644 cis/testtool/index.php diff --git a/cis/testtool/bild.php b/cis/testtool/bild.php index fb31cce27..0913fe2ad 100644 --- a/cis/testtool/bild.php +++ b/cis/testtool/bild.php @@ -22,28 +22,54 @@ // Holt den Hexcode eines Bildes aus der DB wandelt es in Zeichen // um und gibt das ein Bild zurueck. // Aufruf mit getBerechtigungen($user); + + if (!$rechte->isBerechtigt('basis/testtool', null, 's')) + die($rechte->errormsg); +} //base64 Dump aus der DB holen $qry = ''; if(isset($_GET['src']) && $_GET['src']=='frage' && isset($_GET['frage_id'])) { - $qry = "SELECT bild FROM testtool.tbl_frage_sprache WHERE frage_id='".addslashes($_GET['frage_id'])."' AND sprache='".addslashes($_GET['sprache'])."'"; + $qry = " + SELECT + bild + FROM + testtool.tbl_frage_sprache + WHERE + frage_id=".$db->db_add_param($_GET['frage_id'], FHC_INTEGER)." + AND sprache=".$db->db_add_param($_GET['sprache']); } elseif(isset($_GET['src']) && $_GET['src']=='vorschlag' && isset($_GET['vorschlag_id'])) { - $qry = "SELECT bild FROM testtool.tbl_vorschlag_sprache WHERE vorschlag_id='".addslashes($_GET['vorschlag_id'])."' AND sprache='".addslashes($_GET['sprache'])."'"; + $qry = " + SELECT + bild + FROM + testtool.tbl_vorschlag_sprache + WHERE + vorschlag_id=".$db->db_add_param($_GET['vorschlag_id'], FHC_INTEGER)." + AND sprache=".$db->db_add_param($_GET['sprache']); } elseif(isset($_GET['src']) && $_GET['src']=='flag' && isset($_GET['sprache'])) { - $qry = "SELECT flagge as bild FROM public.tbl_sprache WHERE sprache='".addslashes($_GET['sprache'])."'"; + $qry = "SELECT flagge as bild FROM public.tbl_sprache WHERE sprache=".$db->db_add_param($_GET['sprache']); } -else +else echo 'Unkown type'; if($qry!='') @@ -56,5 +82,3 @@ if($qry!='') echo base64_decode($row->bild); } ?> - - diff --git a/cis/testtool/index.html b/cis/testtool/index.html index 02044a4bc..f0a3d650b 100644 --- a/cis/testtool/index.html +++ b/cis/testtool/index.html @@ -1,21 +1,12 @@ - + TestTool - FH Technikum Wien + - - - - - - - - - <body> - <p>Diese Seite verwendet Frames. Frames werden von Ihrem Browser aber nicht unterstützt.</p> - </body> - - + + Falls sie nicht automatisch weitergeleitet werden klicken Sie hier + diff --git a/cis/testtool/index.php b/cis/testtool/index.php new file mode 100644 index 000000000..d235e6ce9 --- /dev/null +++ b/cis/testtool/index.php @@ -0,0 +1,28 @@ + + + + TestTool - FH Technikum Wien + + + + + + + + + + + + <body> + <p>Diese Seite verwendet Frames. Frames werden von Ihrem Browser aber nicht unterstützt.</p> + </body> + + + diff --git a/cis/testtool/login.php b/cis/testtool/login.php index 122e3cc2a..3f625a1a0 100644 --- a/cis/testtool/login.php +++ b/cis/testtool/login.php @@ -44,22 +44,22 @@ session_start(); // 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 = []; + // Unset global vars + unset($_GET['logout']); + unset($_GET['sprache_user']); + $_POST = []; + $_SESSION = []; - // Destroy session - session_destroy(); + // Destroy session + session_destroy(); - echo ' - - '; + echo ' + + '; } $gebdatum=''; @@ -70,19 +70,46 @@ $alertmsg = ''; $sg_var = new studiengang(); -if(isset($_POST['gebdatum']) && $_POST['gebdatum']!='') +if (isset($_POST['gebdatum']) && $_POST['gebdatum']!='') { $gebdatum = $date->formatDatum($_POST['gebdatum'],'Y-m-d'); } else $gebdatum=''; -if (isset($_POST['prestudent']) && isset($gebdatum)) +if (isset($_REQUEST['prestudent'])) { - $ps=new prestudent($_POST['prestudent']); + $ps = new prestudent($_REQUEST['prestudent']); - //Geburtsdatum Pruefen - if ($gebdatum==$ps->gebdatum) + $login_ok = false; + if (defined('TESTTOOL_LOGIN_BEWERBUNGSTOOL') && TESTTOOL_LOGIN_BEWERBUNGSTOOL) + { + + if (isset($_SESSION['bewerbung/personId']) && $ps->person_id == $_SESSION['bewerbung/personId']) + { + $login_ok = true; + } + else + { + $alertmsg .= '
Login ist nicht korrekt. + Bitte schließen Sie ihren Browser und versuchen es erneut +
'; + } + } + else + { + //Geburtsdatum Pruefen + if (isset($gebdatum) && $gebdatum == $ps->gebdatum) + { + $login_ok = true; + } + else + { + $alertmsg .= '
'.$p->t('testtool/geburtsdatumStimmtNichtUeberein').'
'; + } + } + + if ($login_ok) { $reihungstest_id=''; //Freischaltung fuer zugeteilten Reihungstest pruefen @@ -91,13 +118,13 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) // 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 || + 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])) + if (isset($rt->result[0])) $reihungstest_id = $rt->result[0]->reihungstest_id; else { @@ -106,10 +133,10 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) } else { - if($rt->getReihungstestPersonDatum($ps->prestudent_id, date('Y-m-d'))) + if ($rt->getReihungstestPersonDatum($ps->prestudent_id, date('Y-m-d'))) { // TODO Was ist wenn da mehrere Zurueckkommen?! - if(isset($rt->result[0])) + if (isset($rt->result[0])) $reihungstest_id = $rt->result[0]->reihungstest_id; else { @@ -121,16 +148,15 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) echo 'Failed:'.$rt->errormsg; } } - //echo "Reihungstest $reihungstest_id"; - if($reihungstest_id != '' && $rt->load($reihungstest_id)) + if ($reihungstest_id != '' && $rt->load($reihungstest_id)) { - if($rt->freigeschaltet) + if ($rt->freigeschaltet) { // regenerate Session ID after Login session_regenerate_id(); $pruefling = new pruefling(); - if($pruefling->getPruefling($ps->prestudent_id)) + if ($pruefling->getPruefling($ps->prestudent_id)) { $studiengang = $pruefling->studiengang_kz; $semester = $pruefling->semester; @@ -141,10 +167,10 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) $ps->getLastStatus($ps->prestudent_id); $semester = $ps->ausbildungssemester; } - if($semester=='') + if ($semester=='') $semester=1; - $_SESSION['prestudent_id']=$_POST['prestudent']; + $_SESSION['prestudent_id']=$_REQUEST['prestudent']; $_SESSION['studiengang_kz']=$studiengang; $_SESSION['nachname']=$ps->nachname; $_SESSION['vorname']=$ps->vorname; @@ -152,27 +178,27 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) $stg_obj = new studiengang($studiengang); $_SESSION['semester']=$semester; - $stg_obj->getStudiengangTyp($stg_obj->typ); + $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($_POST['prestudent'], true); - } - elseif ($stg_obj->typ == 'm') - { - $ps->getActualInteressenten($_POST['prestudent'], false, 'm', $studiengang); - } + // * 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)) + if (isset($row->studiengang_kz)) { $firstPrio_studienplan_id = $row->studienplan_id; break; @@ -180,7 +206,7 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) } foreach($ps->result as $row) { - if(isset($row->studiengang_kz)) + if (isset($row->studiengang_kz)) { $firstPrio_studiengang_kz = $row->studiengang_kz; break; @@ -188,23 +214,23 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) } // Sprachvorgaben zu STG mit höchster Prio ermitteln - // * 1. Sprache über Ablauf Vorgaben 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])) + 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; - } + { + $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)) @@ -219,13 +245,13 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) $_SESSION['sprache_user'] = DEFAULT_LANGUAGE; } else - { + { $_SESSION['sprache_user'] = $rt_sprache; - } + } } else - { - $alertmsg .= '
'.$p->t('testtool/reihungstestNichtFreigeschalten').'
'; + { + $alertmsg .= '
'.$p->t('testtool/reihungstestNichtFreigeschalten').'
'; } } else @@ -233,10 +259,6 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) $alertmsg .= '
'.$p->t('testtool/reihungstestKannNichtGeladenWerden').'
'; } } - else - { - $alertmsg .= '
'.$p->t('testtool/geburtsdatumStimmtNichtUeberein').'
'; - } } // Set language of user. @@ -247,21 +269,21 @@ if (isset($_POST['prestudent']) && isset($gebdatum)) $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']; + // 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 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'])) +if (isset($_GET['sprache_user']) && !empty($_GET['sprache_user'])) { - $sprache_user = $_GET['sprache_user']; - $_SESSION['sprache_user'] = $_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 @@ -269,7 +291,7 @@ $p = new phrasen($sprache_user); if (isset($_SESSION['prestudent_id'])) { - $prestudent_id=$_SESSION['prestudent_id']; + $prestudent_id=$_SESSION['prestudent_id']; } else { @@ -288,15 +310,15 @@ else } -if(isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id'])) +if (isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id'])) { $pruefling = new pruefling(); - //wenn kein Prüfling geladen werden kann - if(!$pruefling->getPruefling($_SESSION['prestudent_id'])) + //wenn kein Prüfling geladen werden kann + if (!$pruefling->getPruefling($_SESSION['prestudent_id'])) $pruefling->new = true; - else - $pruefling->new = false; + else + $pruefling->new = false; $pruefling->studiengang_kz = $_SESSION['studiengang_kz']; $pruefling->semester = $_SESSION['semester']; @@ -304,18 +326,18 @@ if(isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id'])) $pruefling->idnachweis = ''; $pruefling->registriert = date('Y-m-d H:i:s'); $pruefling->prestudent_id = $_SESSION['prestudent_id']; - if($pruefling->save()) + if ($pruefling->save()) { $_SESSION['pruefling_id']=$pruefling->pruefling_id; $reload_menu=true; } } -if(isset($_POST['save']) && isset($_SESSION['prestudent_id'])) +if (isset($_POST['save']) && isset($_SESSION['prestudent_id'])) { $pruefling = new pruefling(); - if($_POST['pruefling_id']!='') - if(!$pruefling->load($_POST['pruefling_id'])) + if ($_POST['pruefling_id']!='') + if (!$pruefling->load($_POST['pruefling_id'])) die('Pruefling wurde nicht gefunden'); else $pruefling->new=false; @@ -327,7 +349,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id'])) $pruefling->registriert = date('Y-m-d H:i:s'); $pruefling->prestudent_id = $_SESSION['prestudent_id']; $pruefling->semester = $_POST['semester']; - if($pruefling->save()) + if ($pruefling->save()) { $_SESSION['pruefling_id']=$pruefling->pruefling_id; $_SESSION['semester']=$pruefling->semester; @@ -344,7 +366,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id'])) - + parent.menu.location.reload();'; ?> -
+
studiengang_kz); - $pruefling = new pruefling(); - $typ = new studiengang($prestudent->studiengang_kz); - $typ->getStudiengangTyp($stg_obj->typ); + $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(); + // STG mit der höchsten Prio ermitteln + $ps = new Prestudent(); - // * prinzipiell STG der session übernehmem - $firstPrio_studiengang_kz = $prestudent->studiengang_kz; + // * 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 - 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; - break; - } - } - } + // * wenn STG des eingeloggten Prestudenten vom Typ Bachelor ist, dann höchste Prio aller + // Bachelor-STG ermitteln, an denen die Person noch interessiert ist + 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; + break; + } + } + } - // Sprachwahl zu STG mit höchster Prio ermitteln - $ablauf = new Ablauf(); - $sprachwahl = false; - if (isset($ablauf->result[0]) + // Sprachwahl zu STG mit höchster Prio ermitteln + $ablauf = new Ablauf(); + $sprachwahl = false; + if (isset($ablauf->result[0]) && $ablauf->getAblaufVorgabeStudiengang($firstPrio_studiengang_kz) && is_bool($ablauf->result[0]->sprachwahl)) - { - $sprachwahl = $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; - ?> - - '; - echo ' -

'. $p->t('testtool/begruessungstext'). '


-

'. $p->t('testtool/anmeldedaten'). '


- '; + // If language can be switched, display language select menu on the top + if ($sprachwahl) + { + $_SESSION['sprache_auswahl'] = true; + ?> + + '; + echo ' +

'. $p->t('testtool/begruessungstext'). '


+

'. $p->t('testtool/anmeldedaten'). '


+ '; - echo ' - - - - - - - - - - - - - -
'.$p->t('zeitaufzeichnung/id').''.$_SESSION['prestudent_id'].'
'.$p->t('global/name').''.$_SESSION['vorname'].' '.$_SESSION['nachname'].'
'.$p->t('global/geburtsdatum').''.$date->formatDatum($_SESSION["gebdatum"],"d.m.Y").'
- '; + echo ' + + + + + + + + + + + + + +
'.$p->t('zeitaufzeichnung/id').''.$_SESSION['prestudent_id'].'
'.$p->t('global/name').''.$_SESSION['vorname'].' '.$_SESSION['nachname'].'
'.$p->t('global/geburtsdatum').''.$date->formatDatum($_SESSION["gebdatum"],"d.m.Y").'
+ '; echo '
'; - echo ' -

'. $p->t('testtool/fuerFolgendeStgAngemeldet'). '


+ echo ' +

'. $p->t('testtool/fuerFolgendeStgAngemeldet'). '


- - - - - - - - - '; +
'. $p->t('global/studiengang'). 'Status
+ + + + + + + + '; - // * wenn Prestudent an 1 - n Bachelor-Studiengängen interessiert ist, dann STG anführen - if ($typ->typ == 'b') - { + // * 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); + 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; - } + $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 ''; - $stg = new Studiengang($ps_obj->studiengang_kz); + // 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 ''; + $stg = new Studiengang($ps_obj->studiengang_kz); - if($ps_obj->lastStatus == "Interessent" - || $ps_obj->lastStatus == "Bewerber" - || $ps_obj->lastStatus == "Wartender" - || $ps_obj->lastStatus == "Aufgenommener") - { - echo ''; - if($ps_obj->ausbildungssemester == '1') - { - echo ''; - } - elseif($ps_obj->ausbildungssemester == '3') - { - echo ''; - } - } - // wenn letzter Status \'Abgewiesener\' ist, dann als solchen kennzeichnen - elseif($ps_obj->lastStatus == "Abgewiesener") - { - echo ' - - - '; - } - echo ''; - } - } - } - // * 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(); + if ($ps_obj->lastStatus == "Interessent" + || $ps_obj->lastStatus == "Bewerber" + || $ps_obj->lastStatus == "Wartender" + || $ps_obj->lastStatus == "Aufgenommener") + { + echo ''; + if ($ps_obj->ausbildungssemester == '1') + { + echo ''; + } + elseif ($ps_obj->ausbildungssemester == '3') + { + echo ''; + } + } + // wenn letzter Status \'Abgewiesener\' ist, dann als solchen kennzeichnen + elseif ($ps_obj->lastStatus == "Abgewiesener") + { + echo ' + + + '; + } + echo ''; + } + } + } + // * 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); - echo ''; + echo ''; echo ''; - } + } - echo ' - -
'. $p->t('global/studiengang'). 'Status
'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg->english : $stg->bezeichnung). ' ('.$ps_obj->orgform_bezeichnung[$sprache_user].')'. $p->t('testtool/regulaererEinstieg'). ' (1. Semester)'. $p->t('testtool/quereinstieg'). ' (3. Semester)'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg->english : $stg->bezeichnung). ''. $ps_obj->status_mehrsprachig[$sprache_user]. '
'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg->english : $stg->bezeichnung). ' ('.$ps_obj->orgform_bezeichnung[$sprache_user].')'. $p->t('testtool/regulaererEinstieg'). ' (1. Semester)'. $p->t('testtool/quereinstieg'). ' (3. Semester)'. $ps_obj->typ_bz .' '. ($sprache_user == 'English' ? $stg->english : $stg->bezeichnung). ''. $ps_obj->status_mehrsprachig[$sprache_user]. '
'. $typ->bezeichnung.' '.($sprache_user=='English'?$stg_obj->english:$stg_obj->bezeichnung).''. $typ->bezeichnung.' '.($sprache_user=='English'?$stg_obj->english:$stg_obj->bezeichnung).''. $ps_master->status_mehrsprachig[$sprache_user]. '
- '; + echo ' + + + '; - echo '
'; + echo '
'; - if($pruefling->getPruefling($prestudent_id)) - { - echo '
'; - echo ''; - echo ''; - //echo ''; - //echo ''; - //echo ''; - echo '
'.$p->t('global/semester').': 
ID Nachweis:
'; - echo '
'; - echo '

'; - echo ' -
- '.$p->t('testtool/klickenSieAufEinTeilgebiet').' -
- '; - if($pruefling->pruefling_id!='') - { - $_SESSION['pruefling_id']=$pruefling->pruefling_id; - } - } - else - { - echo ''.$p->t('testtool/keinPrueflingseintragVorhanden').''; - } - echo '
'; + if ($pruefling->getPruefling($prestudent_id)) + { + echo '
'; + echo ''; + echo ''; + //echo ''; + //echo ''; + //echo ''; + echo '
'.$p->t('global/semester').': 
ID Nachweis:
'; + echo '
'; + echo '

'; + echo ' +
+ '.$p->t('testtool/klickenSieAufEinTeilgebiet').' +
+ '; + if ($pruefling->pruefling_id!='') + { + $_SESSION['pruefling_id']=$pruefling->pruefling_id; + } + } + else + { + echo ''.$p->t('testtool/keinPrueflingseintragVorhanden').''; + } + echo '
'; } else // LOGIN Site (vor Login) { - $prestudent_id_dummy_student = (defined('PRESTUDENT_ID_DUMMY_STUDENT')?PRESTUDENT_ID_DUMMY_STUDENT:''); - echo '
'; + if (defined('TESTTOOL_LOGIN_BEWERBUNGSTOOL') && TESTTOOL_LOGIN_BEWERBUNGSTOOL) + { + echo '
'; + echo $alertmsg; + echo ' +
+
+

Herzlich Willkommen zum Reihungstest



+ Wir wünschen Ihnen einen erfolgreichen Start ins Studium. +
+
+

Welcome to the placement test



+ We wish you a good start to your studies. +
+
+ '; + echo '
+
+ +
+
'; + echo '
'; + } + else + { + $prestudent_id_dummy_student = (defined('PRESTUDENT_ID_DUMMY_STUDENT')?PRESTUDENT_ID_DUMMY_STUDENT:''); + echo '
'; -// Welcome text - echo $alertmsg; - echo ' -
-
-

Herzlich Willkommen zum Reihungstest



- Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.

- Wir wünschen Ihnen einen erfolgreichen Start ins Studium. -
-
-

Welcome to the placement test



- Please wait for the tutor\'s instructions before you log in.

- We wish you a good start to your studies. -
-
- '; + // Welcome text + echo $alertmsg; + echo ' +
+
+

Herzlich Willkommen zum Reihungstest



+ Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.

+ Wir wünschen Ihnen einen erfolgreichen Start ins Studium. +
+
+

Welcome to the placement test



+ Please wait for the tutor\'s instructions before you log in.

+ We wish you a good start to your studies. +
+
+ '; - // Begin form - echo '
'; - echo '
'; + // Begin form + echo '
'; + echo ''; - // Name select menu - echo '
'; - echo ''; - echo '
'; - echo ''; - echo '
'; // end col-xs - echo '
'; // end form-group + // Name select menu + echo '
'; + echo ''; + echo '
'; + echo ''; + echo '
'; // end col-xs + echo '
'; // end form-group - // Datepicker input - echo '
'; - echo ''; - echo '
'; - echo ''; - echo '
'; // end col-xs - echo '
'; // end form-group + // Datepicker input + echo '
'; + echo ''; + echo '
'; + echo ''; + echo '
'; // end col-xs + echo '
'; // end form-group - // Login button - echo ''; + // Login button + echo ''; - echo ''; // end form + echo ''; // end form - echo '
'; // end row - echo '
'; // end col-xs-11 + echo '
'; // end row + echo '
'; // end col-xs-11 + } } ?> diff --git a/cis/testtool/sound.php b/cis/testtool/sound.php index ccd1b8f72..81f5261d4 100644 --- a/cis/testtool/sound.php +++ b/cis/testtool/sound.php @@ -23,22 +23,49 @@ // Holt den Hexcode eines Bildes aus der DB wandelt es in Zeichen // um und gibt das ein Bild zurueck. // Aufruf mit getBerechtigungen($user); + + if (!$rechte->isBerechtigt('basis/testtool', null, 's')) + die($rechte->errormsg); +} //base64 Dump aus der DB holen $qry = ''; if(isset($_GET['src']) && $_GET['src']=='frage' && isset($_GET['frage_id'])) { - $qry = "SELECT audio FROM testtool.tbl_frage_sprache WHERE frage_id='".addslashes($_GET['frage_id'])."' AND sprache='".addslashes($_GET['sprache'])."'"; + $qry = " + SELECT + audio + FROM + testtool.tbl_frage_sprache + WHERE + frage_id=".$db->db_add_param($_GET['frage_id'], FHC_INTEGER)." + AND sprache=".$db->db_add_param($_GET['sprache']); } elseif(isset($_GET['src']) && $_GET['src']=='vorschlag' && isset($_GET['vorschlag_id'])) { - $qry = "SELECT audio FROM testtool.tbl_vorschlag_sprache WHERE vorschlag_id='".addslashes($_GET['vorschlag_id'])."' AND sprache='".addslashes($_GET['sprache'])."'"; + $qry = " + SELECT + audio + FROM + testtool.tbl_vorschlag_sprache + WHERE + vorschlag_id=".$db->db_add_param($_GET['vorschlag_id'], FHC_INTEGER)." + AND sprache=".$db->db_add_param($_GET['sprache']); } -else +else echo 'Unkown type'; if($qry!='') @@ -52,16 +79,14 @@ if($qry!='') //base64 Werte in Zeichen $result = $db->db_query($qry); $row = $db->db_fetch_object($result); - + $content = base64_decode($row->audio); - + $len = strlen($content); header("Content-Length: $len\n"); //header("Content-type: audio/wav"); - + //ausgeben echo $content; } ?> - - diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php index 768a79452..127e5ddd0 100644 --- a/config/global.config-default.inc.php +++ b/config/global.config-default.inc.php @@ -288,4 +288,7 @@ define('STATUSGRUND_ID_EINSTIEG_SOMMERSEMESTER', null); // Studiengangs_kz des Studiengangs "Qualifikationskurse". Der Studiengang hat eine Sonderstellung zB für das Bewerbungstool. define('STUDIENGANG_KZ_QUALIFIKATIONKURSE', null); + +// Gibt an ob der Login ins Testtool ueber das Bewerbungstool stattfindet oder nicht +define('TESTTOOL_LOGIN_BEWERBUNGSTOOL', false); ?>