Testtool, Auswertung und Reihungstestadministration benutzen nun die neuen Reihungstestanmeldetabelle

This commit is contained in:
oesi
2016-12-20 12:38:36 +01:00
parent b99123efc6
commit 8ea63d04a6
12 changed files with 935 additions and 559 deletions
@@ -0,0 +1,197 @@
<?php
if (! defined('BASEPATH')) exit('No direct script access allowed');
require_once APPPATH . '/libraries/MigrationLib.php';
class Migration_Reihungstestperson extends MigrationLib
{
public function __construct()
{
parent::__construct();
}
public function up()
{
$this->startUP();
$this->execQuery('CREATE OR REPLACE VIEW testtool.vw_auswertung_ablauf AS
SELECT tbl_gebiet.gebiet_id,
tbl_gebiet.bezeichnung AS gebiet,
tbl_ablauf.reihung,
tbl_gebiet.maxpunkte,
tbl_pruefling.pruefling_id,
tbl_pruefling.prestudent_id,
tbl_person.vorname,
tbl_person.nachname,
tbl_person.gebdatum,
tbl_person.geschlecht,
tbl_pruefling.semester,
upper(tbl_studiengang.typ::character varying(1)::text || tbl_studiengang.kurzbz::text) AS stg_kurzbz,
tbl_studiengang.bezeichnung AS stg_bez,
tbl_pruefling.registriert,
tbl_pruefling.idnachweis,
(
SELECT sum(tbl_vorschlag.punkte) AS sum
FROM
testtool.tbl_vorschlag
JOIN testtool.tbl_antwort USING (vorschlag_id)
JOIN testtool.tbl_frage USING (frage_id)
WHERE
tbl_antwort.pruefling_id = tbl_pruefling.pruefling_id
AND tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
) AS punkte,
tbl_rt_person.rt_id as reihungstest_id,
tbl_ablauf.gewicht
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf ON (tbl_ablauf.studiengang_kz = tbl_pruefling.studiengang_kz)
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_rt_person USING (person_id)
JOIN lehre.tbl_studienplan ON (tbl_studienplan.studienplan_id=tbl_rt_person.studienplan_id)
JOIN lehre.tbl_studienordnung ON(tbl_studienordnung.studienordnung_id = tbl_studienplan.studienordnung_id)
JOIN public.tbl_studiengang ON (tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz)
WHERE
NOT (tbl_ablauf.gebiet_id IN ( SELECT tbl_kategorie.gebiet_id FROM testtool.tbl_kategorie))
AND tbl_studienordnung.studiengang_kz=tbl_pruefling.studiengang_kz;
CREATE OR REPLACE VIEW testtool.vw_auswertung_kategorie_semester AS
SELECT
tbl_kategorie.kategorie_kurzbz,
tbl_person.vorname,
tbl_person.nachname,
tbl_person.gebdatum,
tbl_person.geschlecht,
tbl_prestudent.prestudent_id,
tbl_rt_person.rt_id as reihungstest_id,
tbl_gebiet.gebiet_id,
upper(tbl_studiengang.typ::character varying(1)::text || tbl_studiengang.kurzbz::text) AS stg_kurzbz,
tbl_studiengang.bezeichnung AS stg_bez,
tbl_pruefling.registriert,
tbl_pruefling.idnachweis,
tbl_pruefling.semester,
tbl_pruefling.pruefling_id,
(
SELECT
sum(tbl_vorschlag.punkte) AS sum
FROM
testtool.tbl_vorschlag
JOIN testtool.tbl_antwort USING (vorschlag_id)
JOIN testtool.tbl_frage USING (frage_id)
WHERE
tbl_antwort.pruefling_id = tbl_pruefling.pruefling_id
AND tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
AND tbl_frage.kategorie_kurzbz::text = tbl_kategorie.kategorie_kurzbz::text
) AS punkte
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf ON (tbl_ablauf.studiengang_kz = tbl_pruefling.studiengang_kz)
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN testtool.tbl_kategorie USING (gebiet_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_studiengang ON (tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz)
JOIN public.tbl_rt_person USING(person_id)
JOIN lehre.tbl_studienplan ON(tbl_studienplan.studienplan_id=tbl_rt_person.studienplan_id)
JOIN lehre.tbl_studienordnung ON(tbl_studienordnung.studienordnung_id = tbl_studienplan.studienordnung_id)
WHERE
tbl_studienordnung.studiengang_kz = tbl_pruefling.studiengang_kz;
CREATE OR REPLACE VIEW testtool.vw_auswertung_kategorie AS
SELECT
tbl_kategorie.kategorie_kurzbz,
tbl_person.vorname,
tbl_person.nachname,
tbl_person.gebdatum,
tbl_person.geschlecht,
tbl_prestudent.prestudent_id,
tbl_rt_person.rt_id as reihungstest_id,
tbl_gebiet.gebiet_id,
upper(tbl_studiengang.typ::character varying(1)::text || tbl_studiengang.kurzbz::text) AS stg_kurzbz,
tbl_studiengang.bezeichnung AS stg_bez,
tbl_pruefling.registriert,
tbl_pruefling.idnachweis,
tbl_pruefling.semester,
tbl_pruefling.pruefling_id,
(
SELECT
sum(tbl_vorschlag.punkte) AS sum
FROM
testtool.tbl_vorschlag
JOIN testtool.tbl_antwort USING (vorschlag_id)
JOIN testtool.tbl_frage USING (frage_id)
WHERE
tbl_antwort.pruefling_id = tbl_pruefling.pruefling_id
AND tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
AND tbl_frage.kategorie_kurzbz::text = tbl_kategorie.kategorie_kurzbz::text
) AS punkte
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf ON (tbl_ablauf.studiengang_kz = tbl_pruefling.studiengang_kz AND tbl_ablauf.semester = tbl_pruefling.semester)
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN testtool.tbl_kategorie USING (gebiet_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_studiengang ON (tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz)
JOIN public.tbl_rt_person USING(person_id)
JOIN lehre.tbl_studienplan ON (tbl_studienplan.studienplan_id = tbl_rt_person.studienplan_id)
JOIN lehre.tbl_studienordnung ON (tbl_studienordnung.studienordnung_id = tbl_studienplan.studienordnung_id)
WHERE
tbl_studienordnung.studiengang_kz=tbl_pruefling.studiengang_kz;
CREATE OR REPLACE VIEW testtool.vw_auswertung AS
SELECT
tbl_gebiet.gebiet_id,
tbl_gebiet.bezeichnung AS gebiet,
tbl_gebiet.maxpunkte,
tbl_pruefling.pruefling_id,
tbl_pruefling.prestudent_id,
tbl_person.vorname,
tbl_person.nachname,
tbl_person.gebdatum,
tbl_person.geschlecht,
tbl_pruefling.semester,
upper(tbl_studiengang.typ::character varying(1)::text || tbl_studiengang.kurzbz::text) AS stg_kurzbz,
tbl_studiengang.bezeichnung AS stg_bez,
tbl_pruefling.registriert,
tbl_pruefling.idnachweis,
(
SELECT
sum(tbl_vorschlag.punkte) AS sum
FROM
testtool.tbl_vorschlag
JOIN testtool.tbl_antwort USING (vorschlag_id)
JOIN testtool.tbl_frage USING (frage_id)
WHERE
tbl_antwort.pruefling_id = tbl_pruefling.pruefling_id
AND tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
) AS punkte,
tbl_rt_person.rt_id as reihungstest_id,
tbl_ablauf.gewicht,
tbl_person.person_id
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf ON (tbl_ablauf.studiengang_kz = tbl_pruefling.studiengang_kz AND tbl_ablauf.semester = tbl_pruefling.semester)
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_studiengang ON tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz
JOIN public.tbl_rt_person USING (person_id)
JOIN lehre.tbl_studienplan ON (tbl_studienplan.studienplan_id = tbl_rt_person.studienplan_id)
JOIN lehre.tbl_studienordnung ON (tbl_studienordnung.studienordnung_id = tbl_studienplan.studienordnung_id)
WHERE
tbl_studienordnung.studiengang_kz = tbl_prestudent.studiengang_kz
AND NOT (tbl_ablauf.gebiet_id IN ( SELECT tbl_kategorie.gebiet_id
FROM testtool.tbl_kategorie));');
$this->endUP();
}
public function down()
{
$this->startDown();
$this->endDown();
}
}
+211 -214
View File
@@ -16,9 +16,9 @@
* 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> and
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>.
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>.
*/
/**
* Auswertung fuer den Reihungstest
@@ -39,18 +39,18 @@ $rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('lehre/reihungstest'))
die('Sie haben keine Berechtigung fuer diese Seite');
if(isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete']=='prestudent')
{
$search=trim((isset($_REQUEST['term']) ? $_REQUEST['term']:''));
if (is_null($search) ||$search=='')
exit();
$qry = "SELECT
nachname, vorname, prestudent_id, student_uid,
UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
exit();
$qry = "SELECT
nachname, vorname, prestudent_id, student_uid,
UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
get_rolle_prestudent(prestudent_id, null) as status
FROM
public.tbl_person
FROM
public.tbl_person
JOIN public.tbl_prestudent USING(person_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
LEFT JOIN public.tbl_student USING (prestudent_id)
@@ -61,7 +61,7 @@ if(isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete']=='prestudent')
lower(vorname || ' ' || nachname) like '%".$db->db_escape(mb_strtolower($search))."%' OR
prestudent_id::text like '%".$db->db_escape(mb_strtolower($search))."%' OR
student_uid::text like '%".$db->db_escape(mb_strtolower($search))."%'
ORDER BY nachname,vorname,stg
ORDER BY nachname,vorname,stg
LIMIT 10
";
if($result = $db->db_query($qry))
@@ -85,40 +85,40 @@ if(isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete']=='prestudent')
function sortByField($multArray,$sortField,$desc=true)
{
$tmpKey='';
$ResArray=array();
$ResArray=array();
if(!is_array($multArray))
return array();
$maIndex=array_keys($multArray);
$maSize=count($multArray)-1;
if(!is_array($multArray))
return array();
for($i=0; $i < $maSize ; $i++)
{
$minElement=$i;
$tempMin=$multArray[$maIndex[$i]]->$sortField;
$tmpKey=$maIndex[$i];
for($j=$i+1; $j <= $maSize; $j++)
{
if($multArray[$maIndex[$j]]->$sortField < $tempMin )
{
$minElement=$j;
$tmpKey=$maIndex[$j];
$tempMin=$multArray[$maIndex[$j]]->$sortField;
}
}
$maIndex[$minElement]=$maIndex[$i];
$maIndex[$i]=$tmpKey;
}
$maIndex=array_keys($multArray);
$maSize=count($multArray)-1;
if($desc)
for($j=0;$j<=$maSize;$j++)
$ResArray[$maIndex[$j]]=$multArray[$maIndex[$j]];
else
for($j=$maSize;$j>=0;$j--)
$ResArray[$maIndex[$j]]=$multArray[$maIndex[$j]];
for($i=0; $i < $maSize ; $i++)
{
$minElement=$i;
$tempMin=$multArray[$maIndex[$i]]->$sortField;
$tmpKey=$maIndex[$i];
for($j=$i+1; $j <= $maSize; $j++)
{
if($multArray[$maIndex[$j]]->$sortField < $tempMin )
{
$minElement=$j;
$tmpKey=$maIndex[$j];
$tempMin=$multArray[$maIndex[$j]]->$sortField;
}
}
$maIndex[$minElement]=$maIndex[$i];
$maIndex[$i]=$tmpKey;
}
return $ResArray;
if($desc)
for($j=0;$j<=$maSize;$j++)
$ResArray[$maIndex[$j]]=$multArray[$maIndex[$j]];
else
for($j=$maSize;$j>=0;$j--)
$ResArray[$maIndex[$j]]=$multArray[$maIndex[$j]];
return $ResArray;
}
$ergebnis='';
@@ -158,18 +158,18 @@ $qry = "SELECT * FROM bis.tbl_zgv";
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$zgv_arr[$row->zgv_code]=$row->zgv_kurzbz;
$zgvma_arr['']='';
$qry = "SELECT * FROM bis.tbl_zgvmaster";
if($result = $db->db_query($qry))
while($row = $db->db_fetch_object($result))
$zgvma_arr[$row->zgvmas_code]=$row->zgvmas_kurzbz;
// Reihungstests laden
$sql_query="SELECT * FROM public.tbl_reihungstest WHERE date_part('year',datum)=date_part('year',now()) ORDER BY datum,uhrzeit";
if(!($result=$db->db_query($sql_query)))
die($db->db_last_error());
die($db->db_last_error());
while ($row=$db->db_fetch_object($result))
{
@@ -187,32 +187,31 @@ if (isset($_REQUEST['reihungstest']))
{
// Vorkommende Gebiete laden
$sql_query="
SELECT DISTINCT gebiet_id, gebiet, vw_auswertung_ablauf.reihung
FROM
testtool.vw_auswertung_ablauf
JOIN public.tbl_prestudent USING(prestudent_id)
SELECT DISTINCT gebiet_id, gebiet, vw_auswertung_ablauf.reihung
FROM
testtool.vw_auswertung_ablauf
JOIN public.tbl_prestudent USING(prestudent_id)
JOIN public.tbl_rt_person USING(person_id)
JOIN public.tbl_reihungstest ON(vw_auswertung_ablauf.reihungstest_id=tbl_reihungstest.reihungstest_id)
JOIN testtool.tbl_ablauf USING(gebiet_id)
WHERE 1=1";
if($reihungstest!='')
$sql_query.=" AND vw_auswertung_ablauf.reihungstest_id='".addslashes($reihungstest)."'";
$sql_query.=" AND vw_auswertung_ablauf.reihungstest_id=".$db->db_add_param($reihungstest, FHC_INTEGER);
if($datum_von!='')
$sql_query.=" AND tbl_reihungstest.datum>='$datum_von'";
$sql_query.=" AND tbl_reihungstest.datum>=".$db->db_add_param($datum_von);
if($datum_bis!='')
$sql_query.=" AND tbl_reihungstest.datum<='$datum_bis'";
$sql_query.=" AND tbl_reihungstest.datum<=".$db->db_add_param($datum_bis);
if($studiengang!='')
$sql_query.=" AND tbl_prestudent.studiengang_kz='".addslashes($studiengang)."'";
$sql_query.=" AND tbl_prestudent.studiengang_kz=".$db->db_add_param($studiengang, FHC_INTEGER);
if($semester!='')
$sql_query.=" AND tbl_ablauf.semester='".addslashes($semester)."' AND tbl_ablauf.studiengang_kz=tbl_prestudent.studiengang_kz";
$sql_query.=" AND tbl_ablauf.semester=".$db->db_add_param($semester, FHC_INTEGER)." AND tbl_ablauf.studiengang_kz=tbl_prestudent.studiengang_kz";
if($prestudent_id!='')
$sql_query.=" AND prestudent_id='".addslashes($prestudent_id)."'";
$sql_query.=" AND prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER);
$sql_query.=" ORDER BY vw_auswertung_ablauf.reihung, gebiet_id";
//echo $sql_query;
if(!($result=$db->db_query($sql_query)))
die($db->db_last_error());
die($db->db_last_error());
while ($row=$db->db_fetch_object($result))
{
if(!isset($gebiet[$row->gebiet_id]))
@@ -220,33 +219,33 @@ if (isset($_REQUEST['reihungstest']))
$gebiet[$row->gebiet_id]->name=$row->gebiet;
$gebiet[$row->gebiet_id]->gebiet_id=$row->gebiet_id;
}
// Alle Personen und deren Ergebnisse laden
$sql_query="SELECT DISTINCT ON (pruefling_id,vw_auswertung_ablauf.gebiet_id)
*
FROM
testtool.vw_auswertung_ablauf
testtool.vw_auswertung_ablauf
JOIN public.tbl_prestudent USING(prestudent_id)
JOIN public.tbl_reihungstest ON(vw_auswertung_ablauf.reihungstest_id=tbl_reihungstest.reihungstest_id)
JOIN testtool.tbl_ablauf ON(tbl_ablauf.gebiet_id=vw_auswertung_ablauf.gebiet_id)
WHERE 1=1 AND tbl_ablauf.studiengang_kz=tbl_prestudent.studiengang_kz";
if($reihungstest!='')
$sql_query.=" AND vw_auswertung_ablauf.reihungstest_id='".addslashes($reihungstest)."'";
$sql_query.=" AND vw_auswertung_ablauf.reihungstest_id=".$db->db_add_param($reihungstest, FHC_INTEGER);
if($datum_von!='')
$sql_query.=" AND tbl_reihungstest.datum>='$datum_von'";
$sql_query.=" AND tbl_reihungstest.datum>=".$db->db_add_param($datum_von);
if($datum_bis!='')
$sql_query.=" AND tbl_reihungstest.datum<='$datum_bis'";
$sql_query.=" AND tbl_reihungstest.datum<=".$db->db_add_param($datum_bis);
if($studiengang!='')
$sql_query.=" AND tbl_prestudent.studiengang_kz='".addslashes($studiengang)."'";
$sql_query.=" AND tbl_prestudent.studiengang_kz=".$db->db_add_param($studiengang, FHC_INTEGER);
if($semester!='')
$sql_query.=" AND tbl_ablauf.semester='".addslashes($semester)."'";
$sql_query.=" AND tbl_ablauf.semester=".$db->db_add_param($semester, FHC_INTEGER);
if($prestudent_id!='')
$sql_query.=" AND prestudent_id='".addslashes($prestudent_id)."'";
$sql_query.=" AND prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER);
if(!($result=$db->db_query($sql_query)))
die($db->db_last_error());
die($db->db_last_error());
while ($row=$db->db_fetch_object($result))
{
if(!isset($ergebnis[$row->pruefling_id]))
@@ -276,54 +275,53 @@ if (isset($_REQUEST['reihungstest']))
$prozent=100;
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
if($row->punkte>=$row->maxpunkte)
$punkte=$row->maxpunkte;
else
$punkte=$row->punkte;
$punkte=$row->punkte;
$ergebnis[$row->pruefling_id]->gebiet[$row->gebiet_id]->prozent=$prozent;
$ergebnis[$row->pruefling_id]->gebiet[$row->gebiet_id]->punkte=$punkte;
if (isset($ergebnis[$row->pruefling_id]->gesamt))
$ergebnis[$row->pruefling_id]->gesamt+=$prozent*$row->gewicht;
else
$ergebnis[$row->pruefling_id]->gesamt=$prozent*$row->gewicht;
if (isset($ergebnis[$row->pruefling_id]->gesamtpunkte))
$ergebnis[$row->pruefling_id]->gesamtpunkte+=$punkte;
else
$ergebnis[$row->pruefling_id]->gesamtpunkte=$punkte;
}
$ergb=sortByField($ergebnis,'gesamt');
// Vorkommende Kategorien laden
$sql_query="SELECT
DISTINCT kategorie_kurzbz,
(SELECT sum(punkte) FROM testtool.tbl_vorschlag JOIN testtool.tbl_frage USING(frage_id)
WHERE tbl_frage.kategorie_kurzbz=vw_auswertung_kategorie_semester.kategorie_kurzbz) as gesamtpunkte
FROM
testtool.vw_auswertung_kategorie_semester
$sql_query="SELECT
DISTINCT kategorie_kurzbz,
(SELECT sum(punkte) FROM testtool.tbl_vorschlag JOIN testtool.tbl_frage USING(frage_id)
WHERE tbl_frage.kategorie_kurzbz=vw_auswertung_kategorie_semester.kategorie_kurzbz) as gesamtpunkte
FROM
testtool.vw_auswertung_kategorie_semester
JOIN public.tbl_prestudent USING(prestudent_id)
JOIN public.tbl_reihungstest ON(vw_auswertung_kategorie_semester.reihungstest_id=tbl_reihungstest.reihungstest_id)
WHERE 1=1";
if($reihungstest!='')
$sql_query.=" AND vw_auswertung_kategorie_semester.reihungstest_id='".addslashes($reihungstest)."'";
$sql_query.=" AND vw_auswertung_kategorie_semester.reihungstest_id=".$db->db_add_param($reihungstest, FHC_INTEGER);
if($datum_von!='')
$sql_query.=" AND tbl_reihungstest.datum>='$datum_von'";
$sql_query.=" AND tbl_reihungstest.datum>=".$db->db_add_param($datum_von);
if($datum_bis!='')
$sql_query.=" AND tbl_reihungstest.datum<='$datum_bis'";
$sql_query.=" AND tbl_reihungstest.datum<=".$db->db_add_param($datum_bis);
if($studiengang!='')
$sql_query.=" AND tbl_prestudent.studiengang_kz='".addslashes($studiengang)."'";
$sql_query.=" AND tbl_prestudent.studiengang_kz=".$db->db_add_param($studiengang, FHC_INTEGER);
if($prestudent_id!='')
$sql_query.=" AND vw_auswertung_kategorie_semester.prestudent_id='".addslashes($prestudent_id)."'";
$sql_query.=" AND vw_auswertung_kategorie_semester.prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER);
if(!($result=$db->db_query($sql_query)))
die($db->db_last_error());
die($db->db_last_error());
$gesamtpunkte=array();
while ($row=$db->db_fetch_object($result))
{
if(!isset($kategorie[$row->kategorie_kurzbz]))
@@ -331,38 +329,38 @@ if (isset($_REQUEST['reihungstest']))
$gesamtpunkte[$row->kategorie_kurzbz]=$row->gesamtpunkte;
$kategorie[$row->kategorie_kurzbz]->name=$row->kategorie_kurzbz;
}
// Ergebnisse laden
$sql_query="
SELECT
vw_auswertung_kategorie_semester.*,
(SELECT typ FROM testtool.tbl_kriterien
WHERE gebiet_id=vw_auswertung_kategorie_semester.gebiet_id AND punkte=vw_auswertung_kategorie_semester.punkte
SELECT
vw_auswertung_kategorie_semester.*,
(SELECT typ FROM testtool.tbl_kriterien
WHERE gebiet_id=vw_auswertung_kategorie_semester.gebiet_id AND punkte=vw_auswertung_kategorie_semester.punkte
AND kategorie_kurzbz=vw_auswertung_kategorie_semester.kategorie_kurzbz) as typ,
tbl_prestudent.zgv_code, tbl_prestudent.zgvmas_code
FROM
testtool.vw_auswertung_kategorie_semester
FROM
testtool.vw_auswertung_kategorie_semester
JOIN public.tbl_prestudent USING(prestudent_id)
JOIN public.tbl_reihungstest ON(vw_auswertung_kategorie_semester.reihungstest_id=tbl_reihungstest.reihungstest_id)
WHERE 1=1";
if($reihungstest!='')
$sql_query.=" AND vw_auswertung_kategorie_semester.reihungstest_id='".addslashes($reihungstest)."'";
$sql_query.=" AND vw_auswertung_kategorie_semester.reihungstest_id=".$db->db_add_param($reihungstest, FHC_INTEGER);
if($datum_von!='')
$sql_query.=" AND tbl_reihungstest.datum>='$datum_von'";
$sql_query.=" AND tbl_reihungstest.datum>=".$db->db_add_param($datum_von);
if($datum_bis!='')
$sql_query.=" AND tbl_reihungstest.datum<='$datum_bis'";
$sql_query.=" AND tbl_reihungstest.datum<=".$db->db_add_param($datum_bis);
if($studiengang!='')
$sql_query.=" AND tbl_prestudent.studiengang_kz='".addslashes($studiengang)."'";
$sql_query.=" AND tbl_prestudent.studiengang_kz=".$db->db_add_param($studiengang, FHC_INTEGER);
//if($semester!='')
// $sql_query.=" AND vw_auswertung_kategorie_semester.semester='".addslashes($semester)."'"; Auskommentiert, damit bei der Persönlichkeitsauswertung kein Kandidat verloren geht
// $sql_query.=" AND vw_auswertung_kategorie_semester.semester='".addslashes($semester)."'"; Auskommentiert, damit bei der Persönlichkeitsauswertung kein Kandidat verloren geht
if($prestudent_id!='')
$sql_query.=" AND prestudent_id='".addslashes($prestudent_id)."'";
$sql_query.=" AND prestudent_id=".$db->db_add_param($prestudent_id, FHC_INTEGER);
$sql_query.=" ORDER BY nachname, vorname";
if(!($result=$db->db_query($sql_query)))
die($db->db_last_error());
die($db->db_last_error());
while ($row=$db->db_fetch_object($result))
{
if(!isset($erg_kat[$row->pruefling_id]))
@@ -411,7 +409,7 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
// Creating a worksheet
$titel_studiengang = (isset ($_REQUEST['studiengang']) && $_REQUEST['studiengang']!='');
$titel_semester = (isset ($_REQUEST['semester']) && $_REQUEST['semester']!='');
$worksheet =& $workbook->addWorksheet("Technischer Teil " .($titel_studiengang?$stg_arr[$_REQUEST['studiengang']]:'').($titel_semester?' '.$semester.'.Semester':''));
$worksheet->setInputEncoding('utf-8');
$worksheet->setZoom (85);
@@ -421,37 +419,37 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
$format_bold->setAlign("center");
$format_bold->setFgColor(15);
$format_bold->setVAlign('vcenter');
$format_bold_border =& $workbook->addFormat();
$format_bold_border->setBold();
$format_bold_border->setAlign("center");
$format_bold_border->setFgColor(15);
$format_bold_border->setBorder(1);
$format_bold_border->setBorderColor('white');
$format_date =& $workbook->addFormat();
$format_date->setNumFormat('YYYY-MM-DD');
$format_registriert =& $workbook->addFormat();
$format_registriert->setNumFormat('YYYY-MM-DD hh:mm:ss');
$format_punkte =& $workbook->addFormat();
$format_punkte->setNumFormat('0.00');
$format_punkte_rot =& $workbook->addFormat();
$format_punkte_rot->setNumFormat('0.00');
$format_punkte_rot->setColor ('22');
$format_prozent =& $workbook->addFormat();
$format_prozent->setNumFormat('0.00%');
$format_prozent_rot =& $workbook->addFormat();
$format_prozent_rot->setNumFormat('0.00%');
$format_prozent_rot->setColor ('22');
$format_male =& $workbook->addFormat();
$format_male->setColor ('blue');
$format_female =& $workbook->addFormat();
$format_female->setColor ('magenta');
@@ -491,39 +489,39 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
$worksheet->write(0,++$spalte,'ZGV MA', $format_bold);
$worksheet->mergeCells(0,10,1,10);
$maxlength[10]=20;
$spalte=9;
$zeile=0;
foreach ($gebiet AS $gbt)
{
{
++$spalte;
$worksheet->write($zeile,++$spalte,strip_tags($gbt->name), $format_bold_border);
$worksheet->write($zeile,++$spalte,strip_tags($gbt->name), $format_bold_border);
$worksheet->mergeCells($zeile,$spalte,0,$spalte+1);
$maxlength[$spalte]=10;
}
$worksheet->write($zeile,++$spalte+1,'Gesamt', $format_bold_border);
$worksheet->mergeCells($zeile,++$spalte,0,$spalte+1);
$maxlength[$spalte]=12;
$spalte=10;
$zeile=0;
foreach ($gebiet AS $gbt)
{
{
$worksheet->write($zeile+1,++$spalte,'Punkte', $format_bold_border);
$worksheet->write($zeile+1,++$spalte,'Prozent', $format_bold_border);
$worksheet->write($zeile+1,++$spalte,'Prozent', $format_bold_border);
$maxlength[$spalte]=10;
}
$worksheet->write($zeile+1,++$spalte,'Punkte', $format_bold_border);
$worksheet->write($zeile+1,++$spalte,'Prozent', $format_bold_border);
$worksheet->write($zeile+1,++$spalte,'Prozent', $format_bold_border);
$maxlength[$spalte]=10;
$maxspalten=$spalte;
$zeile=1;
$spalte=0;
if(isset($ergb))
{
foreach ($ergb AS $erg)
@@ -535,7 +533,7 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
$worksheet->write($zeile,++$spalte,$erg->vorname);
$worksheet->write($zeile,++$spalte,$erg->gebdatum, $format_date);
if($erg->geschlecht=='m')
$worksheet->write($zeile,++$spalte,$erg->geschlecht, $format_male);
$worksheet->write($zeile,++$spalte,$erg->geschlecht, $format_male);
else
$worksheet->write($zeile,++$spalte,$erg->geschlecht, $format_female);
$worksheet->write($zeile,++$spalte,$erg->registriert, $format_registriert);
@@ -556,27 +554,27 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
else
$worksheet->writeNumber($zeile,++$spalte,$erg->gebiet[$gbt->gebiet_id]->prozent/100,$format_prozent_rot);
}
else
else
{
$worksheet->write($zeile,++$spalte,'');
$worksheet->write($zeile,++$spalte,'');
}
}
$worksheet->writeNumber($zeile,++$spalte,$erg->gesamtpunkte, $format_punkte);
$worksheet->writeNumber($zeile,++$spalte,$erg->gesamt, $format_punkte);
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite);
if(isset($erg_kat) && count($erg_kat)>0)
{
// Creating second worksheet
$worksheet2 =& $workbook->addWorksheet("Persoenlichkeit");
$worksheet2->setInputEncoding('utf-8');
$worksheet2->setZoom (85);
$spalte=0;
$zeile=0;
@@ -614,33 +612,32 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
$worksheet2->mergeCells(0,10,1,10);
$maxlength[10]=20;
$spalte=9;
$zeile=0;
foreach ($kategorie AS $gbt)
{
{
++$spalte;
$worksheet2->write($zeile,++$spalte,$gbt->name, $format_bold_border);
$worksheet2->write($zeile,++$spalte,$gbt->name, $format_bold_border);
$worksheet2->mergeCells($zeile,$spalte,0,$spalte+1);
$maxlength[$spalte]=10;
}
$spalte=10;
$zeile=0;
foreach ($kategorie AS $gbt)
{
{
$worksheet2->write($zeile+1,++$spalte,'Punkte', $format_bold_border);
$worksheet2->write($zeile+1,++$spalte,'Typ', $format_bold_border);
$worksheet2->write($zeile+1,++$spalte,'Typ', $format_bold_border);
$maxlength[$spalte]=10;
}
$maxspalten=$spalte;
$zeile=1;
$spalte=0;
foreach ($erg_kat AS $erg)
{
$zeile++;
@@ -650,7 +647,7 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
$worksheet2->write($zeile,++$spalte,$erg->vorname);
$worksheet2->write($zeile,++$spalte,$erg->gebdatum, $format_date);
if($erg->geschlecht=='m')
$worksheet2->write($zeile,++$spalte,$erg->geschlecht, $format_male);
$worksheet2->write($zeile,++$spalte,$erg->geschlecht, $format_male);
else
$worksheet2->write($zeile,++$spalte,$erg->geschlecht, $format_female);
$worksheet2->write($zeile,++$spalte,$erg->registriert, $format_registriert);
@@ -660,12 +657,12 @@ if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
$worksheet2->write($zeile,++$spalte,$zgv_arr[$erg->zgv]);
$worksheet2->write($zeile,++$spalte,$zgvma_arr[$erg->zgvma]);
foreach ($kategorie AS $gbt)
{
{
$worksheet2->write($zeile,++$spalte,$erg->kategorie[$gbt->name]->punkte);
$worksheet2->write($zeile,++$spalte,$erg->kategorie[$gbt->name]->typ);
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet2->setColumn($i, $i, $breite);
@@ -676,23 +673,23 @@ else
{
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Testtool - Auswertung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link type="text/css" rel="stylesheet" href="../../../skin/style.css.php">
<link href="../../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
<script src="../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
<script src="../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function()
{
$( ".datepicker_datum" ).datepicker({
$(document).ready(function()
{
$( ".datepicker_datum" ).datepicker({
changeMonth: true,
changeYear: true,
changeYear: true,
dateFormat: "dd.mm.yy",
});
$("#prestudent").autocomplete({
$("#prestudent").autocomplete({
source: "auswertung.php?autocomplete=prestudent",
minLength:2,
response: function(event, ui)
@@ -713,14 +710,14 @@ else
});
</script>
</head>
<body>
<h1>Auswertung Reihungstest</h1>
<table width="100%">
<tr>
<form method="POST">
<td style="white-space:nowrap; padding: 10px; background-color: #EEE">
<td style="white-space:nowrap; padding: 10px; background-color: #EEE">
Reihungstest w&auml;hlen:&nbsp;
<SELECT id="reihungstest" name="reihungstest">
<OPTION value="">-- keine Auswahl --</OPTION>';
@@ -738,12 +735,12 @@ else
$selected = 'selected';
$select = true;
}
else
else
$selected = '';
echo '<OPTION value="'.$rt->reihungstest_id.'" '.$selected.'>'.$rt->datum.' '.(isset($stg_arr[$rt->studiengang_kz])?$stg_arr[$rt->studiengang_kz]:'').' '.$rt->ort_kurzbz.' '.$rt->anmerkung."</OPTION>\n";
}
echo '</SELECT>
<br /><hr style="color: #B3B3B3; background-color: #B3B3B3; border:none;">
Studiengang:
@@ -753,24 +750,24 @@ else
{
if(isset($_REQUEST['studiengang']) && $_REQUEST['studiengang']==$kz && $_REQUEST['studiengang']!='')
$selected='selected';
else
else
$selected='';
echo '<OPTION value="'.$kz.'" '.$selected.'>'.$kurzbz.'</OPTION>';
}
echo '</SELECT>
Semester:
<SELECT name="semester">
<OPTION value="">Alle</OPTION>';
<OPTION value="">Alle</OPTION>';
for ($i=1;$i<9;$i++)
{
if (isset($semester) && $semester==$i)
echo "<option value=\"$i\" selected>$i</option>";
else
echo "<option value=\"$i\">$i</option>";
}
}
echo '</SELECT>';
echo ' von Datum: <INPUT class="datepicker_datum" type="text" name="datum_von" maxlength="10" size="10" value="'.$datum_obj->formatDatum($datum_von, 'd.m.Y').'" />&nbsp;';
echo 'bis Datum: <INPUT class="datepicker_datum" type="text" name="datum_bis" maxlength="10" size="10" value="'.$datum_obj->formatDatum($datum_bis, 'd.m.Y').'" /><br />';
echo '<hr style="color: #B3B3B3; background-color: #B3B3B3; border:none;">';
@@ -797,93 +794,93 @@ else
echo ' bis '.$datum_obj->formatDatum($datum_bis, 'd.m.Y');
if ($prestudent_id!='')
echo ' PrestudentID: '.$prestudent_id;
echo '</strong>';
echo '</td>
<td style="padding: 5px; background-color: #EEE";">
<a href="auswertung.php?studiengang='.$studiengang.'&semester='.$semester.'&datum_von='.$datum_von.'&datum_bis='.$datum_bis.'&prestudent_id='.$prestudent_id.'&reihungstest='.$reihungstest.'&format=xls"><img src="../../../skin/images/xls_icon.png" alt="Excel Icon"> Export</a>
</td></tr>
</table><br />';
if (isset($_REQUEST['reihungstest']))
{
echo '<h1>Technischer Teil</h1>
<table id="zeitsperren">
<tr>
<tr>
<th rowspan="2">PrestudentIn_ID</th><th rowspan="2">Nachname</th><th rowspan="2">Vornamen</th>
<th rowspan="2">GebDatum</th><th rowspan="2">G</th>
<th rowspan="2">ZGV</th>
<th rowspan="2">ZGV MA</th>
<th rowspan="2">Registriert</th><th rowspan="2">STG</th><th rowspan="2">Studiengang</th><th title="Semester" rowspan="2">S</th>';
foreach ($gebiet AS $gbt)
echo '<th colspan="2">'.$gbt->name.'</th>';
echo '<th colspan="2">Gesamt</th>
</tr>
<tr>';
</tr>
<tr>';
foreach ($gebiet AS $gbt)
echo "<th><small>Punkte</small></th><th><small>Prozent</small></th>";
echo '<th><small>Punkte</small></th><th><small>Prozent</small></th>
</tr>';
if(isset($ergb))
{
foreach ($ergb AS $erg)
{
echo "<tr><td>$erg->prestudent_id [<a href=auswertung_detail_prestudent.php?prestudent_id=$erg->prestudent_id target='blank'>Detail</a>]</td><td>$erg->nachname</td><td>$erg->vorname</td><td>$erg->gebdatum</td><td>$erg->geschlecht</td>
<td>".$zgv_arr[$erg->zgv]."</td><td>".$zgvma_arr[$erg->zgvma]."</td><td>$erg->registriert</td><td>$erg->stg_kurzbz</td><td>$erg->stg_bez</td><td>$erg->semester</td>";
//<td>$erg->idnachweis</td>
foreach ($gebiet AS $gbt)
if (isset($erg->gebiet[$gbt->gebiet_id]))
</tr>';
if(isset($ergb))
{
foreach ($ergb AS $erg)
{
echo "<tr><td>$erg->prestudent_id [<a href=auswertung_detail_prestudent.php?prestudent_id=$erg->prestudent_id target='blank'>Detail</a>]</td><td>$erg->nachname</td><td>$erg->vorname</td><td>$erg->gebdatum</td><td>$erg->geschlecht</td>
<td>".$zgv_arr[$erg->zgv]."</td><td>".$zgvma_arr[$erg->zgvma]."</td><td>$erg->registriert</td><td>$erg->stg_kurzbz</td><td>$erg->stg_bez</td><td>$erg->semester</td>";
//<td>$erg->idnachweis</td>
foreach ($gebiet AS $gbt)
if (isset($erg->gebiet[$gbt->gebiet_id]))
if ($erg->gebiet[$gbt->gebiet_id]->punkte!='' && $erg->gebiet[$gbt->gebiet_id]->punkte!='0')
echo '<td>'.number_format($erg->gebiet[$gbt->gebiet_id]->punkte,2,',',' ').'</td><td nowrap>'.number_format($erg->gebiet[$gbt->gebiet_id]->prozent,2,',',' ').' %</td>';
else
echo '<td style="color:#C10000">'.number_format($erg->gebiet[$gbt->gebiet_id]->punkte,2,',',' ').'</td><td style="color:#C10000" nowrap>'.number_format($erg->gebiet[$gbt->gebiet_id]->prozent,2,',',' ').' %</td>';
echo '<td>'.number_format($erg->gebiet[$gbt->gebiet_id]->punkte,2,',',' ').'</td><td nowrap>'.number_format($erg->gebiet[$gbt->gebiet_id]->prozent,2,',',' ').' %</td>';
else
echo '<td style="color:#C10000">'.number_format($erg->gebiet[$gbt->gebiet_id]->punkte,2,',',' ').'</td><td style="color:#C10000" nowrap>'.number_format($erg->gebiet[$gbt->gebiet_id]->prozent,2,',',' ').' %</td>';
else
echo '<td></td><td></td>';
echo '<td>'.number_format($erg->gesamtpunkte,2,',',' ').'</td>';
echo '<td>'.number_format($erg->gesamt,2,',',' ').'</td>';
echo '</tr>';
}
}
echo '</tr>';
}
}
echo '</table>
<h1>Persönlichkeit</h1>
<table id="zeitsperren">
<tr>
<tr>
<th rowspan="2">PrestudentID</th><th rowspan="2">Nachname</th><th rowspan="2">Vornamen</th>
<th rowspan="2">GebDatum</th><th rowspan="2">G</th>
<th rowspan="2">ZGV</th>
<th rowspan="2">ZGV MA</th>
<th rowspan="2">Registriert</th><th rowspan="2">STG</th><th rowspan="2">Studiengang</th><th rowspan="2">S</th>';
foreach ($kategorie AS $gbt)
echo '<th colspan="2">'.$gbt->name.'</th>';
echo '</tr><tr>';
foreach ($kategorie AS $gbt)
echo '<th><small>Punkte</small></th><th><small>Typ</small>';
echo '</th></tr>';
foreach ($erg_kat AS $erg)
{
echo "<tr><td>$erg->prestudent_id</td><td>$erg->nachname</td><td>$erg->vorname</td><td>$erg->gebdatum</td><td>$erg->geschlecht</td>
<td>".$zgv_arr[$erg->zgv]."</td><td>".$zgvma_arr[$erg->zgvma]."</td><td>$erg->registriert</td><td>$erg->stg_kurzbz</td><td>$erg->stg_bez</td><td>$erg->semester</td>";
//<td>$erg->idnachweis</td>
foreach ($kategorie AS $gbt)
foreach ($erg_kat AS $erg)
{
echo "<tr><td>$erg->prestudent_id</td><td>$erg->nachname</td><td>$erg->vorname</td><td>$erg->gebdatum</td><td>$erg->geschlecht</td>
<td>".$zgv_arr[$erg->zgv]."</td><td>".$zgvma_arr[$erg->zgvma]."</td><td>$erg->registriert</td><td>$erg->stg_kurzbz</td><td>$erg->stg_bez</td><td>$erg->semester</td>";
//<td>$erg->idnachweis</td>
foreach ($kategorie AS $gbt)
echo '<td>'.$erg->kategorie[$gbt->name]->punkte.'</td><td>'.$erg->kategorie[$gbt->name]->typ.'</td>';
echo '</tr>';
}
echo '</tr>';
}
echo '</table>';
}
}
+63 -48
View File
@@ -38,7 +38,7 @@ if (!$db = new basis_db())
//if(isset($_GET['lang']))
// setSprache($_GET['lang']);
$date = new datum();
$date = new datum();
function getSpracheUser()
{
@@ -78,7 +78,7 @@ if(isset($_GET['sprache_user']))
setSpracheUser(DEFAULT_LANGUAGE);
}
$sprache_user = getSpracheUser();
$sprache_user = getSpracheUser();
$p = new phrasen($sprache_user);
$gebdatum='';
@@ -101,7 +101,7 @@ if (isset($_GET['logout']))
if(isset($_POST['gebdatum']) && $_POST['gebdatum']!='')
{
$gebdatum = $date->formatDatum($_POST['gebdatum'],'Y-m-d');
$gebdatum = $date->formatDatum($_POST['gebdatum'],'Y-m-d');
}
else
$gebdatum='';
@@ -109,22 +109,39 @@ else
if (isset($_POST['prestudent']) && isset($gebdatum))
{
$ps=new prestudent($_POST['prestudent']);
//Geburtsdatum Pruefen
if ($gebdatum==$ps->gebdatum)
{
$reihungstest_id='';
//Freischaltung fuer zugeteilten Reihungstest pruefen
$rt = new reihungstest();
if($rt->load($ps->reihungstest_id))
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 '<span class="error">'.$p->t('testtool/reihungstestKannNichtGeladenWerden').'</span>';
}
}
else
{
echo 'Failed:'.$rt->errormsg;
}
//echo "Reihungstest $reihungstest_id";
if($reihungstest_id != '' && $rt->load($reihungstest_id))
{
if($rt->freigeschaltet)
{
{
$pruefling = new pruefling();
if($pruefling->getPruefling($ps->prestudent_id))
{
$studiengang = $pruefling->studiengang_kz;
$semester = $pruefling->semester;
}
else
else
{
$studiengang = $ps->studiengang_kz;
$ps->getLastStatus($ps->prestudent_id);
@@ -132,7 +149,7 @@ if (isset($_POST['prestudent']) && isset($gebdatum))
}
if($semester=='')
$semester=1;
$_SESSION['prestudent_id']=$_POST['prestudent'];
$_SESSION['studiengang_kz']=$studiengang;
$_SESSION['nachname']=$ps->nachname;
@@ -140,7 +157,7 @@ if (isset($_POST['prestudent']) && isset($gebdatum))
$_SESSION['gebdatum']=$ps->gebdatum;
$stg_obj = new studiengang($studiengang);
$_SESSION['sprache']=$stg_obj->sprache;
$_SESSION['semester']=$semester;
}
else
@@ -153,12 +170,12 @@ if (isset($_POST['prestudent']) && isset($gebdatum))
echo '<span class="error">'.$p->t('testtool/reihungstestKannNichtGeladenWerden').'</span>';
}
}
else
else
{
echo '<span class="error">'.$p->t('testtool/geburtsdatumStimmtNichtUeberein').'</span>';
}
}
if (isset($_SESSION['prestudent_id']))
$prestudent_id=$_SESSION['prestudent_id'];
else
@@ -166,9 +183,7 @@ else
//$prestudent_id=null;
$ps=new prestudent();
$datum=date('Y-m-d');
$ps->getPrestudentRT($datum,true);
if ($ps->num_rows==0)
$ps->getPrestudentRT($datum);
$ps->getPrestudentRT($datum);
}
if(isset($_GET['type']) && $_GET['type']=='sprachechange' && isset($_GET['sprache']))
@@ -179,14 +194,14 @@ if(isset($_GET['type']) && $_GET['type']=='sprachechange' && isset($_GET['sprach
if(isset($_SESSION['prestudent_id']) && !isset($_SESSION['pruefling_id']))
{
$pruefling = new pruefling();
if(!$pruefling->getPruefling($_SESSION['prestudent_id']))
{
$pruefling->new = true;
$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'];
@@ -204,11 +219,11 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
if($_POST['pruefling_id']!='')
if(!$pruefling->load($_POST['pruefling_id']))
die('Pruefling wurde nicht gefunden');
else
else
$pruefling->new=false;
else
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');
@@ -227,64 +242,64 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../skin/jquery.css" type="text/css"/>
<script type="text/javascript" src="../../include/js/jquery1.9.min.js"></script>
<script type="text/javascript" src="../../include/js/jquery1.9.min.js"></script>
<link rel="stylesheet" type="text/css" href="../../skin/jquery-ui-1.9.2.custom.min.css"/>
<script type="text/javascript">
$(document).ready(function()
{
$(document).ready(function()
{
$.datepicker.setDefaults( $.datepicker.regional[ "" ] );
<?php //Wenn Deutsch ausgewaehlt, dann Datepicker auch in Deutsch
<?php //Wenn Deutsch ausgewaehlt, dann Datepicker auch in Deutsch
if ($sprache_user=="German")
echo '$.datepicker.setDefaults( $.datepicker.regional[ "de" ] );
$( "#datepicker" ).datepicker(
$( "#datepicker" ).datepicker(
{
changeMonth: true,
changeYear: true,
defaultDate: "-6570",
maxDate: -5110,
yearRange: "-60:+00",
}
}
);';
else
else
echo '$( "#datepicker" ).datepicker({
dateFormat: "dd.mm.yy",
changeMonth: true,
changeYear: true,
defaultDate: "-6570",
maxDate: -5110,
yearRange: "-60:+00",
yearRange: "-60:+00",
});';
?>
});
</script>
<?php
<?php
if($reload_parent)
echo '<script language="Javascript">parent.menu.location.reload()</script>';
if($reload)
echo "<script language=\"Javascript\">parent.location.reload();</script>";
?>
?>
</head>
<body>
<?php echo '<h1>'.$p->t('testtool/startseite').'</h1>';
if (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);
$typ->getStudiengangTyp($stg_obj->typ);
//Sprachwahl des Studiengangs
$qry = "SELECT sprachwahl FROM testtool.tbl_ablauf_vorgaben WHERE studiengang_kz=".$db->db_add_param($prestudent->studiengang_kz)." LIMIT 1";
$result = $db->db_query($qry);
$sprachwahl = $db->db_fetch_object($result);
$sprachwahl = $db->db_parse_bool($sprachwahl->sprachwahl);
echo '<form method="GET">';
echo '<form method="GET">';
echo '<br>'.$p->t('testtool/begruessungstext').' <br/><br/>';
echo '<b>'.$p->t('zeitaufzeichnung/id').'</b>: '.$_SESSION['prestudent_id'].'<br/>';
echo '<b>'.$p->t('global/name').'</b>: '.$_SESSION['vorname'].' '.$_SESSION['nachname'].'<br/>';
@@ -293,10 +308,10 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
echo '<INPUT type="submit" value="Logout" name="logout" />';
echo '</form>';
echo '<br><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>';
@@ -305,17 +320,17 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
//echo '<tr><td></td><td><input type="submit" name="save" value="Semester ändern"></td>';
echo '</table>';
echo '</FORM>';
//Wenn die Sprachwahl fuer diesen Studiengang aktiviert ist, dann die Sprachen anzeigen
if($sprachwahl==true)
{
//Liste der Sprachen, die in den Gebieten vorkommen koennen
$qry = "SELECT distinct sprache
FROM
testtool.tbl_pruefling
$qry = "SELECT distinct sprache
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf USING(studiengang_kz)
JOIN testtool.tbl_frage USING(gebiet_id)
JOIN testtool.tbl_frage_sprache USING(frage_id)
JOIN testtool.tbl_frage_sprache USING(frage_id)
WHERE
tbl_pruefling.pruefling_id=".$db->db_add_param($pruefling->pruefling_id)."
ORDER BY sprache DESC";
@@ -326,7 +341,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
{
if($_SESSION['sprache']==$row->sprache)
$selected='style="border:1px solid black;"';
else
else
$selected='';
echo " <a href='".$_SERVER['PHP_SELF']."?type=sprachechange&sprache=$row->sprache' class='Item' $selected><img src='bild.php?src=flag&amp;sprache=$row->sprache' alt='$row->sprache' title='$row->sprache'/></a>";
}
@@ -339,7 +354,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
echo '<script language="Javascript">parent.menu.location.reload()</script>';
}
}
else
else
{
echo '<span class="error">'.$p->t('testtool/keinPrueflingseintragVorhanden').'</span>';
}
@@ -347,7 +362,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
else
{
$prestudent_id_dummy_student = (defined('PRESTUDENT_ID_DUMMY_STUDENT')?PRESTUDENT_ID_DUMMY_STUDENT:'');
echo '<form method="post">
<SELECT name="prestudent">';
echo '<OPTION value="'.$prestudent_id_dummy_student.'">'.$p->t('testtool/nameAuswaehlen').'</OPTION>\n';
@@ -356,7 +371,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
$stg = new studiengang();
$stg->load($prestd->studiengang_kz);
if(isset($_POST['prestudent']) && $prestd->prestudent_id==$_POST['prestudent'])
$selected = 'selected';
$selected = 'selected';
else
$selected='';
echo '<OPTION value="'.$prestd->prestudent_id.'" '.$selected.'>'.$prestd->nachname.' '.$prestd->vorname.' ('.(strtoupper($stg->typ.$stg->kurzbz)).')</OPTION>\n';
@@ -366,7 +381,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
echo '<input type="text" id="datepicker" size="12" name="gebdatum" value="'.$date->formatDatum($gebdatum,'d.m.Y').'">';
echo '&nbsp; <INPUT type="submit" value="'.$p->t('testtool/login').'" />';
echo '</form>';
echo '<br /><br /><br />
<center>
<span style="font-size: 1.2em; font-style: italic;">'.$p->t('testtool/willkommenstext').'</span>
+10 -2
View File
@@ -272,13 +272,16 @@ function AufnahmeTermineDelete()
function AufnahemTermineReihungstestPunkteTransmit()
{
var reihungstest_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var person_id = document.getElementById('aufnahmetermine-textbox-person_id').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getReihungstestPunkte');
req.add('prestudent_id', AufnahmeTerminePrestudentID);
req.add('person_id', person_id);
req.add('reihungstest_id', reihungstest_id);
var response = req.executePOST();
var val = new ParseReturnValue(response)
@@ -337,6 +340,11 @@ function AufnahmeTermineSpeichern()
alert(response)
else
alert(val.dbdml_errormsg)
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=val.dbdml_data;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
AufnahmeTermineLoadTree();
return false;
}
else
+29 -4
View File
@@ -3765,13 +3765,13 @@ if(!$error)
elseif(isset($_POST['type']) && $_POST['type']=='getReihungstestPunkte')
{
//Liefert die Reihungstestpunkte eines Prestudenten
if(isset($_POST['prestudent_id']))
if(isset($_POST['person_id']) && isset($_POST['reihungstest_id']))
{
$pruefling = new pruefling();
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$data = $pruefling->getReihungstestErgebnis($_POST['prestudent_id'], true);
$data = $pruefling->getReihungstestErgebnisPerson($_POST['person_id'], true, $_POST['reihungstest_id']);
else
$data = $pruefling->getReihungstestErgebnis($_POST['prestudent_id']);
$data = $pruefling->getReihungstestErgebnisPerson($_POST['person_id'], false, $_POST['reihungstest_id']);
$return = true;
}
else
@@ -3906,7 +3906,25 @@ if(!$error)
$reihungstest->new=true;
}
$reihungstest->rt_id = $rt_id;
$warnung_zu_viele_teilnehmer = false;
if($reihungstest->reihungstest_id != $rt_id)
{
// Wenn ein neuer Reihungstesttermin ausgewählt wird, dann wird geprueft ob
// noch genuegend Platz vorhanden ist.
$rt_help = new reihungstest();
$aktuelle_anzahl = $rt_help->getTeilnehmerAnzahl($rt_id);
$rt_help->load($rt_id);
$max_teilnehmer = $rt_help->max_teilnehmer;
if($max_teilnehmer == '')
{
// Wenn keine Teilnehmer eingetragen sind, dann schauen welche Raeume zugeteilt
// sind und wie viel Platz dort ist
$max_teilnehmer = $rt_help->getPlatzAnzahlRaum($rt_id);
}
if($max_teilnehmer!='' && $aktuelle_anzahl >= $max_teilnehmer)
$warnung_zu_viele_teilnehmer = true;
}
$reihungstest->reihungstest_id = $rt_id;
$reihungstest->person_id = $person_id;
$reihungstest->punkte = $punkte;
$reihungstest->teilgenommen = $teilgenommen;
@@ -3920,6 +3938,13 @@ if(!$error)
$error = false;
$errormsg = 'Erfolgreich gespeichert';
$data = $reihungstest->rt_person_id;
if($warnung_zu_viele_teilnehmer)
{
$return = false;
$error = true;
$errormsg = 'Achtung - die Maximalanzahl der Teilnehmer wurde überschritten;'.
' Prüfen Sie ob genug Platz zur Verfügung steht - Zuteilung wurde erfolgreich gespeichert';
}
}
else
{
+15 -54
View File
@@ -357,23 +357,28 @@ class prestudent extends person
/**
* Laden aller Prestudenten, die an $datum zum Reihungstest geladen sind.
* Wenn $equal auf true gesetzt ist wird genau dieses Datum verwendet,
* ansonsten werden auch alle mit späterem Datum geladen. ---> von kindlm am 30.03.2012 geändert
* da zukünftige Teilnehmer nicht mehr angezeigt werden sollen.
* @param date $datum Datum an dem der Reihungstest stattfindet
* @return true wenn erfolgreich, false im Fehlerfall
*/
public function getPrestudentRT($datum, $equal=false)
public function getPrestudentRT($datum)
{
$sql_query='SELECT DISTINCT * FROM public.vw_prestudent WHERE rt_datum';
if ($equal)
$sql_query.='=';
else
$sql_query.='=';
$sql_query.="'$datum' ORDER BY nachname,vorname";
$sql_query='SELECT
DISTINCT tbl_prestudent.prestudent_id,
tbl_person.vorname, tbl_person.nachname, tbl_person.person_id, tbl_person.titelpre,
tbl_person.titelpost, tbl_person.gebdatum,tbl_prestudent.studiengang_kz,
tbl_reihungstest.*
FROM
public.tbl_prestudent
JOIN public.tbl_person 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)
WHERE tbl_reihungstest.datum='.$this->db_add_param($datum).'
ORDER BY nachname,vorname';
if(!$this->db_query($sql_query))
{
$this->errormsg = 'Fehler beim Speichern des Benutzer-Datensatzes:'.$sql_query;
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
@@ -385,56 +390,12 @@ class prestudent extends person
$ps->prestudent_id = $row->prestudent_id;
$ps->person_id = $row->person_id;
$ps->reihungstest_id = $row->reihungstest_id;
$ps->staatsbuergerschaft = $row->staatsbuergerschaft;
$ps->geburtsnation = $row->geburtsnation;
$ps->sprache = $row->sprache;
$ps->anrede = $row->anrede;
$ps->titelpost = $row->titelpost;
$ps->titelpre = $row->titelpre;
$ps->nachname = $row->nachname;
$ps->vorname = $row->vorname;
$ps->vornamen = $row->vornamen;
$ps->gebdatum = $row->gebdatum;
$ps->gebort = $row->gebort;
$ps->gebzeit = $row->gebzeit;
// $ps->foto = $row->foto;
$ps->anmerkungen = $row->anmerkungen;
$ps->homepage = $row->homepage;
$ps->svnr = $row->svnr;
$ps->ersatzkennzeichen = $row->ersatzkennzeichen;
$ps->familienstand = $row->familienstand;
$ps->geschlecht = $row->geschlecht;
$ps->anzahlkinder = $row->anzahlkinder;
$ps->aktiv = $this->db_parse_bool($row->aktiv);
$ps->aufmerksamdurch_kurzbz = $row->aufmerksamdurch_kurzbz;
$ps->studiengang_kz = $row->studiengang_kz;
$ps->berufstaetigkeit_code = $row->berufstaetigkeit_code;
$ps->ausbildungcode = $row->ausbildungcode;
$ps->zgv_code = $row->zgv_code;
$ps->zgvort = $row->zgvort;
$ps->zgvdatum = $row->zgvdatum;
//$ps->zgvnation = $row->zgvnation;
$ps->zgvmas_code = $row->zgvmas_code;
$ps->zgvmaort = $row->zgvmaort;
$ps->zgvmadatum = $row->zgvmadatum;
//$ps->zgvmanation = $row->zgvmanation;
$ps->aufnahmeschluessel = $row->aufnahmeschluessel;
$ps->facheinschlberuf = $this->db_parse_bool($row->facheinschlberuf);
$ps->anmeldungreihungstest = $row->anmeldungreihungstest;
$ps->reihungstestangetreten = $this->db_parse_bool($row->reihungstestangetreten);
$ps->punkte = $row->punkte;
$ps->rt_punkte1 = $row->rt_punkte1;
$ps->rt_punkte2 = $row->rt_punkte2;
$ps->bismelden = $this->db_parse_bool($row->bismelden);
$ps->rt_studiengang_kz = $row->rt_studiengang_kz;
$ps->rt_ort = $row->rt_ort;
$ps->rt_datum = $row->rt_datum;
$ps->rt_uhrzeit = $row->rt_uhrzeit;
$ps->updateamum = $row->updateamum;
$ps->updatevon = $row->updatevon;
$ps->insertamum = $row->insertamum;
$ps->insertvon = $row->insertvon;
//$ps->ext_id_prestudent = $row->ext_id_prestudent;
$this->result[]=$ps;
$this->num_rows++;
}
+55 -5
View File
@@ -307,15 +307,20 @@ class pruefling extends basis_db
}
/**
* Berechnet das Reihungstestergebnis fuer einen Prestudenten
* Berechnet das Reihungstestergebnis fuer eine Person und ggf Reihungstest
*
* @param $prestudent_id
* @param $person_id ID der Person.
* @param $punkte Wenn true werden Punkte geliefert, sonst Prozentsumme.
* @param $reihungstest_id ID des Reihungstests.
* @return Endpunkte des Reihungstests
*/
public function getReihungstestErgebnis($prestudent_id, $punkte=false)
public function getReihungstestErgebnisPerson($person_id, $punkte=false, $reihungstest_id=null)
{
$qry = "SELECT * FROM testtool.vw_auswertung
WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER);
if(!is_null($reihungstest_id))
$qry.=" AND reihungstest_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER);
$ergebnis=0;
@@ -335,7 +340,52 @@ class pruefling extends basis_db
if($punkte)
$ergebnis +=$row->punkte;
else
$ergebnis+=$prozent*$row->gewicht;
$ergebnis+=$prozent*$row->gewicht;
}
return $ergebnis;
}
else
{
$this->errormsg = 'Fehler bei einer Abfrage';
return false;
}
}
/**
* Berechnet das Reihungstestergebnis fuer einen Prestudenten und ggf Reihungstest
*
* @param $prestudent_id ID des Prestudenten
* @param $punkte Wenn true werden Punkte geliefert, sonst Prozentsumme.
* @param $reihungstest_id ID des Reihungstests.
* @return Endpunkte des Reihungstests
*/
public function getReihungstestErgebnisPrestudent($prestudent_id, $punkte=false, $reihungstest_id=null)
{
$qry = "SELECT * FROM testtool.vw_auswertung
WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if(!is_null($reihungstest_id))
$qry.=" AND reihungstest_id=".$this->db_add_param($reihungstest_id, FHC_INTEGER);
$ergebnis=0;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
//wenn maxpunkte ueberschritten wurde -> 100%
if($row->punkte>=$row->maxpunkte)
{
$prozent=100;
$row->punkte = $row->maxpunkte;
}
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
if($punkte)
$ergebnis +=$row->punkte;
else
$ergebnis+=$prozent*$row->gewicht;
}
return $ergebnis;
}
+109 -23
View File
@@ -28,7 +28,7 @@ require_once(dirname(__FILE__).'/basis_db.class.php');
class reihungstest extends basis_db
{
public $new; // boolean
public $new=true; // boolean
public $done = false; // boolean
public $result = array();
@@ -476,7 +476,7 @@ class reihungstest extends basis_db
FROM
public.tbl_rt_person
WHERE
reihungstest_id = '.$this->db_add_param($reihungstest_id, FHC_INTEGER);
rt_id = '.$this->db_add_param($reihungstest_id, FHC_INTEGER);
if ($result = $this->db_query($qry))
{
@@ -541,7 +541,7 @@ class reihungstest extends basis_db
if ($row = $this->db_fetch_object($result))
{
$this->rt_person_id = $row->rt_person_id;
$this->rt_id = $row->rt_id;
$this->reihungstest_id = $row->rt_id;
$this->person_id = $row->person_id;
$this->studienplan_id = $row->studienplan_id;
$this->anmeldedatum = $row->anmeldedatum;
@@ -584,7 +584,7 @@ class reihungstest extends basis_db
$obj = new stdClass();
$obj->rt_person_id = $row->rt_person_id;
$obj->rt_id = $row->rt_id;
$obj->reihungstest_id = $row->rt_id;
$obj->person_id = $row->person_id;
$obj->studienplan_id = $row->studienplan_id;
$obj->anmeldedatum = $row->anmeldedatum;
@@ -606,10 +606,10 @@ class reihungstest extends basis_db
/**
* Liefert die Zuordnung einer Person zu einem Reihungstest
* @param int $person_id ID der Person.
* @param int $rt_id ID des Reihungstests.
* @param int $reihungstest_id ID des Reihungstests.
* @return boolean true wenn erfolgreich, false im Fehlerfall
*/
public function getPersonReihungstest($person_id, $rt_id)
public function getPersonReihungstest($person_id, $reihungstest_id)
{
$qry = "SELECT
*
@@ -617,13 +617,13 @@ class reihungstest extends basis_db
public.tbl_rt_person
WHERE
tbl_rt_person.person_id=".$this->db_add_param($person_id)."
AND rt_id=".$this->db_add_param($rt_id);
AND rt_id=".$this->db_add_param($reihungstest_id);
if ($result = $this->db_query($qry))
{
if ($row = $this->db_fetch_object($result))
{
$this->rt_person_id = $row->rt_person_id;
$this->rt_id = $row->rt_id;
$this->reihungstest_id = $row->rt_id;
$this->person_id = $row->person_id;
$this->studienplan_id = $row->studienplan_id;
$this->anmeldedatum = $row->anmeldedatum;
@@ -647,18 +647,18 @@ class reihungstest extends basis_db
/**
* Liefert die Personen, die einem Ort des Reihungstests zugeteilt sind
* @param int $rt_id ID des Reihungstests.
* @param string $ort_kurzbz Ort des Reihungstests mit der ID $rt_id.
* @param int $reihungstest_id ID des Reihungstests.
* @param string $ort_kurzbz Ort des Reihungstests mit der ID $reihungstest_id.
* @return true wenn ok, sonst false
*/
public function getPersonReihungstestOrt($rt_id, $ort_kurzbz)
public function getPersonReihungstestOrt($reihungstest_id, $ort_kurzbz)
{
$qry = "SELECT
*
FROM
public.tbl_rt_person
WHERE
tbl_rt_person.rt_id=".$this->db_add_param($rt_id)."
tbl_rt_person.rt_id=".$this->db_add_param($reihungstest_id)."
AND tbl_rt_person.ort_kurzbz=".$this->db_add_param($ort_kurzbz);
if ($result = $this->db_query($qry))
{
@@ -667,7 +667,7 @@ class reihungstest extends basis_db
$obj = new stdClass();
$obj->rt_person_id = $row->rt_person_id;
$obj->rt_id = $row->rt_id;
$obj->reihungstest_id = $row->rt_id;
$obj->person_id = $row->person_id;
$obj->studienplan_id = $row->studienplan_id;
$obj->anmeldedatum = $row->anmeldedatum;
@@ -697,7 +697,7 @@ class reihungstest extends basis_db
$qry = "BEGIN;INSERT INTO public.tbl_rt_person(person_id, rt_id, studienplan_id, anmeldedatum,
teilgenommen, ort_kurzbz, punkte) VALUES(".
$this->db_add_param($this->person_id, FHC_INTEGER).','.
$this->db_add_param($this->rt_id, FHC_INTEGER).','.
$this->db_add_param($this->reihungstest_id, FHC_INTEGER).','.
$this->db_add_param($this->studienplan_id, FHC_INTEGER).','.
$this->db_add_param($this->anmeldedatum).','.
$this->db_add_param($this->teilgenommen, FHC_BOOLEAN).','.
@@ -707,7 +707,7 @@ class reihungstest extends basis_db
else
{
$qry = "UPDATE public.tbl_rt_person SET ".
' rt_id = '.$this->db_add_param($this->rt_id).','.
' rt_id = '.$this->db_add_param($this->reihungstest_id).','.
' studienplan_id = '.$this->db_add_param($this->studienplan_id).','.
' anmeldedatum='.$this->db_add_param($this->anmeldedatum).','.
' teilgenommen='.$this->db_add_param($this->teilgenommen, FHC_BOOLEAN).','.
@@ -788,13 +788,14 @@ class reihungstest extends basis_db
tbl_rt_ort.rt_id=".$this->db_add_param($reihungstest_id)."
ORDER BY
ort_kurzbz";
if ($result = $this->db_query($qry))
{
while ($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->rt_id = $row->rt_id;
$obj->reihungstest_id = $row->rt_id;
$obj->ort_kurzbz = $row->ort_kurzbz;
$obj->uid = $row->uid;
@@ -820,7 +821,7 @@ class reihungstest extends basis_db
if ($this->new)
{
$qry = "INSERT INTO public.tbl_rt_ort(rt_id, ort_kurzbz, uid) VALUES(".
$this->db_add_param($this->rt_id, FHC_INTEGER).','.
$this->db_add_param($this->reihungstest_id, FHC_INTEGER).','.
$this->db_add_param($this->ort_kurzbz).','.
$this->db_add_param($this->uid).');';
}
@@ -829,7 +830,7 @@ class reihungstest extends basis_db
$qry = "UPDATE public.tbl_rt_ort SET ".
' ort_kurzbz='.$this->db_add_param($this->ort_kurzbz).','.
' uid='.$this->db_add_param($this->uid).' '.
' WHERE rt_id='.$this->db_add_param($this->rt_id, FHC_INTEGER).' AND '.
' WHERE rt_id='.$this->db_add_param($this->reihungstest_id, FHC_INTEGER).' AND '.
' ort_kurzbz='.$this->db_add_param($this->ort_kurzbz);
}
@@ -878,14 +879,14 @@ class reihungstest extends basis_db
if ($this->new)
{
$qry = "INSERT INTO public.tbl_rt_studienplan(reihungstest_id, studienplan_id) VALUES(".
$this->db_add_param($this->rt_id, FHC_INTEGER).','.
$this->db_add_param($this->reihungstest_id, FHC_INTEGER).','.
$this->db_add_param($this->studienplan_id).');';
}
else
{
$qry = "UPDATE public.tbl_rt_studienplan SET ".
' studienplan_id='.$this->db_add_param($this->studienplan_id).' '.
' WHERE reihungstest_id='.$this->db_add_param($this->rt_id, FHC_INTEGER).' AND '.
' WHERE reihungstest_id='.$this->db_add_param($this->reihungstest_id, FHC_INTEGER).' AND '.
' studienplan_id='.$this->db_add_param($this->studienplan_id);
}
@@ -966,11 +967,16 @@ class reihungstest extends basis_db
public function getReihungstestStudienplan($studienplan_arr)
{
$qry = "SELECT
distinct tbl_reihungstest.*
distinct a.*,
(
SELECT count(*) FROM public.tbl_rt_person
WHERE rt_id=a.reihungstest_id
) as angemeldete_teilnehmer
FROM
public.tbl_reihungstest
public.tbl_reihungstest a
JOIN public.tbl_rt_studienplan USING(reihungstest_id)
WHERE studienplan_id IN(".$this->db_implode4Sql($studienplan_arr).")";
WHERE studienplan_id IN(".$this->db_implode4Sql($studienplan_arr).")
ORDER BY a.datum DESC";
if ($this->db_query($qry))
{
@@ -995,6 +1001,7 @@ class reihungstest extends basis_db
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->stufe = $row->stufe;
$obj->anmeldefrist = $row->anmeldefrist;
$obj->angemeldete_teilnehmer = $row->angemeldete_teilnehmer;
$this->result[] = $obj;
}
@@ -1063,4 +1070,83 @@ class reihungstest extends basis_db
return false;
}
}
/**
* Laedt die Reihungstest-Zuordnungen eines Prestudenten zu einem Datum
* @param int $prestudent_id ID des Prestudenten.
* @param date $datum Datum an dem der Reihugnstest stattfindet.
* @return boolean true wenn erfolgreich geladen, false im Fehlerfall
*/
public function getReihungstestPersonDatum($prestudent_id, $datum)
{
$qry = "SELECT
tbl_rt_person.*
FROM
public.tbl_rt_person
JOIN public.tbl_prestudent USING(person_id)
JOIN public.tbl_reihungstest ON(tbl_reihungstest.reihungstest_id=tbl_rt_person.rt_id)
WHERE
tbl_prestudent.prestudent_id = ".$this->db_add_param($prestudent_id)."
AND tbl_reihungstest.datum=".$this->db_add_param($datum);
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->rt_person_id = $row->rt_person_id;
$obj->reihungstest_id = $row->rt_id;
$obj->person_id = $row->person_id;
$obj->studienplan_id = $row->studienplan_id;
$obj->anmeldedatum = $row->anmeldedatum;
$obj->teilgenommen = $this->db_parse_bool($row->teilgenommen);
$obj->ort_kurzbz = $row->ort_kurzbz;
$obj->punkte = $row->punkte;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Ermittelt die Anzahl der maximalen Platzanzahl aufgrund der Raumzuordnung
* @param int $reihungstest_id ID des Reihungstests.
* @return Anzahl der Plaetze
*/
public function getPlatzAnzahlRaum($reihungstest_id)
{
$qry = "
SELECT
sum(tbl_ort.arbeitsplaetze) as anzahl
FROM
public.tbl_rt_ort
JOIN public.tbl_ort USING(ort_kurzbz)
WHERE
tbl_rt_ort.rt_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER);
if($result = $this->db_query($qry))
{
if($row = $this->db_fetch_object($result))
{
return $row->anzahl;
}
else
{
$this->errormsg = 'Fehler beim Laden der Arbeitsplaetze';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Arbeitsplaetze';
return false;
}
}
}
+2 -2
View File
@@ -73,14 +73,14 @@ function drawrow($row)
global $oRdf, $datum_obj;
$reihungstest_obj = new reihungstest();
$reihungstest_obj->load($row->rt_id);
$reihungstest_obj->load($row->reihungstest_id);
$studienplan = new studienplan();
$studienplan->loadStudienplan($row->studienplan_id);
$i=$oRdf->newObjekt($row->rt_person_id);
$oRdf->obj[$i]->setAttribut('rt_person_id',$row->rt_person_id,true);
$oRdf->obj[$i]->setAttribut('rt_id',$row->rt_id,true);
$oRdf->obj[$i]->setAttribut('rt_id',$row->reihungstest_id,true);
$oRdf->obj[$i]->setAttribut('person_id',$row->person_id,true);
$oRdf->obj[$i]->setAttribut('anmeldedatum',$datum_obj->formatDatum($row->anmeldedatum, 'd.m.Y'),true);
$oRdf->obj[$i]->setAttribut('anmeldedatum_iso',$row->anmeldedatum,true);
+21 -10
View File
@@ -42,14 +42,14 @@ $rdf_url='http://www.technikum-wien.at/reihungstest';
xmlns:RT="<?php echo $rdf_url; ?>/rdf#"
>
<RDF:Seq about="<?php echo $rdf_url ?>/alle">
<RDF:Seq about="<?php echo $rdf_url ?>/alle">
<?php
if(isset($_GET['optional']) && $_GET['optional']=='true')
{
echo '
<RDF:li>
<RDF:Description id="" about="'.$rdf_url.'/" >
<RDF:li>
<RDF:Description id="" about="'.$rdf_url.'/" >
<RT:reihungstest_id></RT:reihungstest_id>
<RT:studiengang_kz></RT:studiengang_kz>
<RT:ort_kurzbz></RT:ort_kurzbz>
@@ -57,8 +57,8 @@ if(isset($_GET['optional']) && $_GET['optional']=='true')
<RT:datum></RT:datum>
<RT:uhrzeit></RT:uhrzeit>
<RT:bezeichnung>-- keine Auswahl --</RT:bezeichnung>
</RDF:Description>
</RDF:li>
</RDF:Description>
</RDF:li>
';
}
@@ -87,6 +87,17 @@ elseif(isset($_GET['prestudent_id']))
$studienplan_arr[] = $row->studienplan_id;
}
// Zusaetzlich auch die Studienplaene holen bei denen die
// Person schon zu Reihungstests zugeordnet ist
$prestudent = new prestudent();
$prestudent->load($_GET['prestudent_id']);
$rt_help = new reihungstest();
$rt_help->getReihungstestPerson($prestudent->person_id);
foreach($rt_help->result as $row)
{
$studienplan_arr[] = $row->studienplan_id;
}
$rt->getReihungstestStudienplan($studienplan_arr);
}
else
@@ -103,8 +114,8 @@ foreach ($rt->result as $row)
$bezeichnung = (array_key_exists($row->studiengang_kz, $stg)?$stg[$row->studiengang_kz].' ':'').$row->datum.' '.$row->uhrzeit.' '.$row->ort_kurzbz.' '.$row->anmerkung.$freieplaetze;
?>
<RDF:li>
<RDF:Description id="<?php echo $row->reihungstest_id; ?>" about="<?php echo $rdf_url.'/'.$row->reihungstest_id; ?>" >
<RDF:li>
<RDF:Description id="<?php echo $row->reihungstest_id; ?>" about="<?php echo $rdf_url.'/'.$row->reihungstest_id; ?>" >
<RT:reihungstest_id><![CDATA[<?php echo $row->reihungstest_id; ?>]]></RT:reihungstest_id>
<RT:studiengang_kz><![CDATA[<?php echo $row->studiengang_kz; ?>]]></RT:studiengang_kz>
<RT:ort_kurzbz><![CDATA[<?php echo $row->ort_kurzbz; ?>]]></RT:ort_kurzbz>
@@ -112,10 +123,10 @@ foreach ($rt->result as $row)
<RT:datum><![CDATA[<?php echo $row->datum; ?>]]></RT:datum>
<RT:uhrzeit><![CDATA[<?php echo $row->uhrzeit; ?>]]></RT:uhrzeit>
<RT:bezeichnung><![CDATA[<?php echo $bezeichnung; ?>]]></RT:bezeichnung>
</RDF:Description>
</RDF:li>
</RDF:Description>
</RDF:li>
<?php
}
?>
</RDF:Seq>
</RDF:Seq>
</RDF:RDF>
+180 -149
View File
@@ -15,13 +15,13 @@
* 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 >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
* Authors: Christian Paminger < christian.paminger@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 >
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
require_once('../../config/global.config.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/functions.inc.php');
@@ -32,8 +32,8 @@ require_once('../../include/studiengang.class.php');
require_once('../../include/reihungstest.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/log.class.php');
// Studiengang lesen
// Studiengang lesen
$s=new studiengang();
$s->getAll('typ, kurzbz', false);
$studiengang=$s->result;
@@ -47,13 +47,13 @@ if(isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete']=='prestudent')
{
$search=trim((isset($_REQUEST['term']) ? $_REQUEST['term']:''));
if (is_null($search) ||$search=='')
exit();
$qry = "SELECT
exit();
$qry = "SELECT
nachname, vorname, prestudent_id,
UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
get_rolle_prestudent(prestudent_id, null) as status
FROM
public.tbl_person
FROM
public.tbl_person
JOIN public.tbl_prestudent USING(person_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE
@@ -78,7 +78,7 @@ if(isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete']=='prestudent')
}
exit;
}
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
@@ -95,50 +95,50 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//DE" "http://www
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
<script src="../../include/js/jquery1.9.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function()
{
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[1,0],[3,0]],
widgets: ["zebra"]
});
});
$("#t2").tablesorter(
{
sortList: [[6,0],[5,0]],
widgets: ["zebra"]
});
});
$("#t3").tablesorter(
{
sortList: [[0,0],[1,0],[3,0]],
widgets: ["zebra"]
});
});
$("#t4").tablesorter(
{
sortList: [[2,0],[3,0]],
widgets: ["zebra"],
headers: {5:{sorter:false}}
});
});
$(".prestudent_option").click(function ()
{
var elementExists = document.getElementById("input_prestudent");
var e = document.getElementById("pruefling_select");
var strUser = e.options[e.selectedIndex].value;
if (elementExists != null)
if (elementExists != null)
{
elementExists.value=strUser;
}
$(this).closest("form").submit();
});
$("#prestudent_input").click(function ()
{
$(this).closest("form").submit();
});
});
</script>
</head>
<body class="Background_main">
<h2>Reihungstest - Administration</h2>';
@@ -150,24 +150,48 @@ if(isset($_POST['personzuteilen']))
{
if(!$rechte->isBerechtigt('basis/testtool', null, 'sui'))
die('<span class="error">Sie haben keine Berechtigung für diese Aktion. <a href="reihungstest_administration.php">Seite neu laden</a></span>');
$prestudent = new prestudent();
if($prestudent->load($_POST['prestudent_id']))
{
$prestudent->reihungstest_id=$_POST['reihungstest_id'];
$prestudent->new=false;
if($prestudent->save())
echo '<span class="ok">Zuteilung gespeichert</span>';
$rt_obj = new reihungstest();
if($rt_obj->getPersonReihungstest($prestudent->person_id, $_POST['reihungstest_id'])===false)
{
$rt_obj = new reihungstest();
$prestudent->getLastStatus($prestudent->prestudent_id, '', 'Interessent');
if($prestudent->studienplan_id!='')
{
$rt_obj->person_id=$prestudent->person_id;
$rt_obj->reihungstest_id=$_POST['reihungstest_id'];
$rt_obj->studienplan_id=$prestudent->studienplan_id;
$rt_obj->anmeldedatum = date('Y-m-d');
$rt_obj->teilgenommen = false;
$rt_obj->ort_kurzbz = null;
$rt_obj->punkte = null;
if($rt_obj->savePersonReihungstest())
echo '<span class="ok">Zuteilung gespeichert</span>';
else
echo '<span class="error">Fehler beim Speichern der Zuteilung</span>';
}
else
{
echo '<span class="error">Interessent ist keinen Studienplan zugeordnet</span>';
}
}
else
echo '<span class="error">Fehler beim Speichern der Zuteilung</span>';
echo '<span class="error">Person ist bereits zugeteilt</span>';
}
else
{
echo '<span class="error">Fehler beim Laden des Prestudenten</span>';
}
}
}
//Links
echo '<br><a href="'.CIS_ROOT.'cis/testtool/admin/auswertung.php" target="blank">Auswertung</a> |
echo '<br><a href="'.CIS_ROOT.'cis/testtool/admin/auswertung.php" target="blank">Auswertung</a> |
<a href="'.CIS_ROOT.'cis/testtool/admin/index.php" target="blank">Fragenadministration</a> |
<a href="'.CIS_ROOT.'cis/testtool/admin/uebersichtFragen.php" target="blank">Fragenkatalog</a><br>
<hr>';
@@ -176,11 +200,20 @@ echo '<br><a href="'.$_SERVER['PHP_SELF'].'?action=showreihungstests">Anzeigen d
if(isset($_GET['action']) && $_GET['action']=='showreihungstests')
{
$qry = "SELECT kurzbzlang,datum,ort_kurzbz,anmerkung,uhrzeit,max_teilnehmer,insertvon,reihungstest_id,
(SELECT count(*) FROM public.tbl_prestudent WHERE reihungstest_id=tbl_reihungstest.reihungstest_id) as anzahl_teilnehmer
$qry = "SELECT
kurzbzlang,
datum,
anmerkung,
uhrzeit,
max_teilnehmer,
insertvon,
reihungstest_id,
array_to_string(ARRAY(SELECT ort_kurzbz FROM public.tbl_rt_ort WHERE rt_id=tbl_reihungstest.reihungstest_id),',') as orte,
(SELECT count(*) FROM public.tbl_rt_person
WHERE rt_id=tbl_reihungstest.reihungstest_id) as anzahl_teilnehmer
FROM public.tbl_reihungstest JOIN public.tbl_studiengang USING (studiengang_kz)
WHERE datum>=CURRENT_DATE ORDER BY datum";
if($result = $db->db_query($qry))
{
echo '<table id="t1" class="tablesorter">
@@ -188,7 +221,7 @@ if(isset($_GET['action']) && $_GET['action']=='showreihungstests')
<tr>
<th>Kurzbz</th>
<th>Datum</th>
<th>Ort</th>
<th>Orte</th>
<th>Uhrzeit</th>
<th>Teilnehmer</th>
<th>Max-Teilnehmer</th>
@@ -203,7 +236,7 @@ if(isset($_GET['action']) && $_GET['action']=='showreihungstests')
echo '<tr>';
echo "<td>$row->kurzbzlang</td>";
echo "<td>".$datum_obj->formatDatum($row->datum,'d.m.Y')."</td>";
echo "<td>$row->ort_kurzbz</td>";
echo "<td>$row->orte</td>";
echo "<td>$row->uhrzeit</td>";
echo "<td>$row->anzahl_teilnehmer</td>";
echo "<td ".($row->anzahl_teilnehmer>$row->max_teilnehmer?"style='color: red; font-weight: bold'":"").">$row->max_teilnehmer</td>";
@@ -219,14 +252,12 @@ if(isset($_GET['action']) && $_GET['action']=='showreihungstests')
// Antworten eines Gebietes einer Person löschen und einen Logfile-Eintrag mit Undo-Befehl erstellen
if(isset($_POST['prestudent']) && is_numeric($_POST['prestudent']))
$prestudent_id = $_POST['prestudent'];
else
else
$prestudent_id = '';
$ps=new prestudent();
$datum=date('Y-m-d');
$ps->getPrestudentRT($datum,true);
if ($ps->num_rows==0)
$ps->getPrestudentRT($datum);
$ps->getPrestudentRT($datum);
$prestudent_arr = array();
//Array mit Dropdownwerten befüllen
@@ -261,7 +292,7 @@ if($prestudent_id!='' && !in_array($prestudent_id, $prestudent_arr))
if ($prestudent_id!='' && $prestudent_id!='-1')
{
$qry = "SELECT DISTINCT(tbl_gebiet.gebiet_id),tbl_gebiet.bezeichnung,tbl_gebiet.kurzbz FROM testtool.tbl_gebiet
$qry = "SELECT DISTINCT(tbl_gebiet.gebiet_id),tbl_gebiet.bezeichnung,tbl_gebiet.kurzbz FROM testtool.tbl_gebiet
JOIN testtool.tbl_ablauf USING (gebiet_id)
JOIN public.tbl_prestudent USING (studiengang_kz)
WHERE tbl_prestudent.prestudent_id = ".$prestudent_id."
@@ -283,7 +314,7 @@ if($result = $db->db_query($qry))
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->gebiet_id' $selected>$row->bezeichnung ($row->kurzbz)</OPTION>";
}
echo '</SELECT>';
@@ -294,8 +325,8 @@ if(isset($_POST['deleteteilgebiet']))
{
if(!$rechte->isBerechtigt('basis/testtool', null, 'suid'))
die('<span class="error">Sie haben keine Berechtigung für diese Aktion. <a href="reihungstest_administration.php">Seite neu laden</a></span>');
if(isset($_POST['prestudent']) && isset($_POST['gebiet']) &&
if(isset($_POST['prestudent']) && isset($_POST['gebiet']) &&
is_numeric($_POST['prestudent']) && is_numeric($_POST['gebiet']))
{
$pruefling = new pruefling();
@@ -306,11 +337,11 @@ if(isset($_POST['deleteteilgebiet']))
//UNDO Befehl zusammenbauen und Log schreiben
$undo='';
$db->db_query('BEGIN;');
$qry = "SELECT * FROM testtool.tbl_pruefling_frage WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id, FHC_INTEGER)." AND
frage_id IN (SELECT frage_id FROM testtool.tbl_frage WHERE gebiet_id=".$db->db_add_param($_POST['gebiet']).");
";
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
@@ -324,19 +355,19 @@ if(isset($_POST['deleteteilgebiet']))
$db->db_add_param($row->endtime).');';
}
}
else
else
{
$db->errormsg = 'Fehler beim Erstellen des UNDO Befehls fuer testtool.tbl_pruefling_frage';
$db->db_query('ROLLBACK');
return false;
}
$qry = "SELECT * FROM testtool.tbl_antwort
WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id)." AND
vorschlag_id IN (SELECT vorschlag_id FROM testtool.tbl_vorschlag WHERE frage_id IN
$qry = "SELECT * FROM testtool.tbl_antwort
WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id)." AND
vorschlag_id IN (SELECT vorschlag_id FROM testtool.tbl_vorschlag WHERE frage_id IN
(SELECT frage_id FROM testtool.tbl_frage WHERE gebiet_id=".$db->db_add_param($_POST['gebiet'])."));
";
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
@@ -347,7 +378,7 @@ if(isset($_POST['deleteteilgebiet']))
$db->db_add_param($row->vorschlag_id, FHC_INTEGER).');';
}
}
else
else
{
$db->errormsg = 'Fehler beim Erstellen des UNDO Befehls fuer testtool.tbl_antwort';
$db->db_query('ROLLBACK');
@@ -356,17 +387,17 @@ if(isset($_POST['deleteteilgebiet']))
//Gebiet loeschen
$qry = "DELETE FROM testtool.tbl_pruefling_frage where pruefling_id=".$db->db_add_param($pruefling->pruefling_id, FHC_INTEGER)." AND
frage_id IN (SELECT frage_id FROM testtool.tbl_frage WHERE gebiet_id=".$db->db_add_param($_POST['gebiet']).");
DELETE FROM testtool.tbl_antwort
WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id)." AND
vorschlag_id IN (SELECT vorschlag_id FROM testtool.tbl_vorschlag WHERE frage_id IN
DELETE FROM testtool.tbl_antwort
WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id)." AND
vorschlag_id IN (SELECT vorschlag_id FROM testtool.tbl_vorschlag WHERE frage_id IN
(SELECT frage_id FROM testtool.tbl_frage WHERE gebiet_id=".$db->db_add_param($_POST['gebiet'])."));";
if($result = $db->db_query($qry))
{
//Log schreiben
$log = new log();
$log->new = true;
$log->sql = $qry;
$log->sqlundo = $undo;
@@ -380,17 +411,17 @@ if(isset($_POST['deleteteilgebiet']))
$db->db_query('ROLLBACK');
return false;
}
$db->db_query('COMMIT;');
echo '<b>'.$db->db_affected_rows($result).' Antworten wurden gelöscht</b>';
}
else
else
{
$db->errormsg = 'Fehler beim Loeschen der Daten';
$db->db_query('ROLLBACK');
}
}
else
else
echo '<span class="error">Wählen Sie bitte ein Gebiet, dessen Antworten Sie löschen wollen</span>';
}
@@ -399,21 +430,21 @@ echo '<input type="submit" value="! Alle Teilgebiete l&ouml;schen !" name="delet
// Alle Antworten aller Gebiete einer Person löschen und einen Logfile-Eintrag mit Undo-Befehl erstellen
if(isset($_POST['delete_all']))
{
if(isset($_POST['prestudent']) && isset($_POST['gebiet']) &&
if(isset($_POST['prestudent']) && isset($_POST['gebiet']) &&
is_numeric($_POST['prestudent']) && ($_POST['gebiet'])=='alle')
{
$pruefling = new pruefling();
$pruefling->getPruefling($_POST['prestudent']);
if($pruefling->pruefling_id=='')
die('Pruefling wurde nicht gefunden');
//UNDO Befehl zusammenbauen und Log schreiben
$undo='';
$db->db_query('BEGIN;');
$qry = "SELECT * FROM testtool.tbl_pruefling_frage where pruefling_id=".$db->db_add_param($pruefling->pruefling_id).";
";
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
@@ -427,16 +458,16 @@ if(isset($_POST['delete_all']))
$db->db_add_param($row->endtime).');';
}
}
else
else
{
$db->errormsg = 'Fehler beim Erstellen des UNDO Befehls fuer testtool.tbl_pruefling_frage';
$db->db_query('ROLLBACK');
return false;
}
$qry = "SELECT * FROM testtool.tbl_antwort WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id).";
";
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
@@ -447,7 +478,7 @@ if(isset($_POST['delete_all']))
$db->db_add_param($row->vorschlag_id, FHC_INTEGER).');';
}
}
else
else
{
$db->errormsg = 'Fehler beim Erstellen des UNDO Befehls fuer testtool.tbl_antwort';
$db->db_query('ROLLBACK');
@@ -456,12 +487,12 @@ if(isset($_POST['delete_all']))
//Gebiet loeschen
$qry = "DELETE FROM testtool.tbl_pruefling_frage where pruefling_id=".$db->db_add_param($pruefling->pruefling_id).";
DELETE FROM testtool.tbl_antwort WHERE pruefling_id=".$db->db_add_param($pruefling->pruefling_id).";";
if($result = $db->db_query($qry))
{
//Log schreiben
$log = new log();
$log->new = true;
$log->sql = $qry;
$log->sqlundo = $undo;
@@ -475,17 +506,17 @@ if(isset($_POST['delete_all']))
$db->db_query('ROLLBACK');
return false;
}
$db->db_query('COMMIT;');
echo '<b> Alle '.$db->db_affected_rows($result).' Antworten wurden gelöscht</b>';
}
else
else
{
$db->errormsg = 'Fehler beim Loeschen der Daten';
$db->db_query('ROLLBACK');
}
}
else
else
echo '<span class="error">Um alle Antworten eines Prüflings zu löschen, wählen Sie im DropDown bitte "Alle Gebiete" aus</span>';
}
@@ -552,12 +583,12 @@ if(isset($_GET['action']) && $_GET['action']=='deletedummyanswers')
{
if(!$rechte->isBerechtigt('basis/testtool', null, 'suid'))
die('<span class="error">Sie haben keine Berechtigung für diese Aktion. <a href="reihungstest_administration.php">Seite neu laden</a></span>');
$qry = "DELETE FROM testtool.tbl_antwort WHERE pruefling_id=(SELECT pruefling_id FROM testtool.tbl_pruefling WHERE prestudent_id=".$db->db_add_param(PRESTUDENT_ID_DUMMY_STUDENT).");
DELETE FROM testtool.tbl_pruefling_frage where pruefling_id=(SELECT pruefling_id FROM testtool.tbl_pruefling WHERE prestudent_id=".$db->db_add_param(PRESTUDENT_ID_DUMMY_STUDENT).");";
if($db->db_query($qry))
echo ' <b>Antworten wurden gelöscht</b>';
else
else
echo ' <b>Fehler beim Löschen der Antworten</b>';
}
@@ -567,12 +598,12 @@ if(isset($_POST['savedummystg']) && isset($_POST['stg']))
{
if(!$rechte->isBerechtigt('basis/testtool', null, 'su'))
die('<span class="error">Sie haben keine Berechtigung für diese Aktion. <a href="reihungstest_administration.php">Seite neu laden</a></span>');
$qry = "UPDATE public.tbl_prestudent SET studiengang_kz=".$db->db_add_param($_POST['stg'])." WHERE prestudent_id=".$db->db_add_param(PRESTUDENT_ID_DUMMY_STUDENT).";
UPDATE testtool.tbl_pruefling SET studiengang_kz=".$db->db_add_param($_POST['stg'])." WHERE prestudent_id=".$db->db_add_param(PRESTUDENT_ID_DUMMY_STUDENT).";";
UPDATE testtool.tbl_pruefling SET studiengang_kz=".$db->db_add_param($_POST['stg'])." WHERE prestudent_id=".$db->db_add_param(PRESTUDENT_ID_DUMMY_STUDENT).";";
if($db->db_query($qry))
echo '<b>Studiengang geändert!</b><br>';
else
else
echo '<b>Fehler beim Ändern des Studienganges!</b><br>';
}
$name='';
@@ -586,7 +617,7 @@ if($result = $db->db_query($qry))
$dummystg=$row->studiengang_kz;
}
}
echo '<form action="'.$_SERVER['PHP_SELF'].'" METHOD="POST">Studiengang von '.$name.'
echo '<form action="'.$_SERVER['PHP_SELF'].'" METHOD="POST">Studiengang von '.$name.'
<SELECT name="stg">';
$stg_obj = new studiengang();
$stg_obj->getAll('typ, kurzbz');
@@ -625,28 +656,28 @@ echo '</SELECT>
<input type="submit" value="zuteilen" name="personzuteilen">
</form>';
echo "<script type='text/javascript'>
function formatItem(row)
{
return row[0] + ' ' + row[1] + ' ' + row[2] + ' ' + row[3];
}
$('#prestudent_name').autocomplete({
source: 'reihungstest_administration.php?autocomplete=prestudent',
minLength:2,
response: function(event, ui)
function formatItem(row)
{
return row[0] + ' ' + row[1] + ' ' + row[2] + ' ' + row[3];
}
$('#prestudent_name').autocomplete({
source: 'reihungstest_administration.php?autocomplete=prestudent',
minLength:2,
response: function(event, ui)
{
//Value und Label fuer die Anzeige setzen
for(i in ui.content)
{
//Value und Label fuer die Anzeige setzen
for(i in ui.content)
{
ui.content[i].value=ui.content[i].vorname+' '+ui.content[i].nachname+' '+ui.content[i].stg+' '+ui.content[i].status+' '+ui.content[i].prestudent_id;
ui.content[i].label=ui.content[i].vorname+' '+ui.content[i].nachname+' '+ui.content[i].stg+' '+ui.content[i].status+' '+ui.content[i].prestudent_id;
}
},
select: function(event, ui)
{
//Ausgeaehlte Ressource zuweisen und Textfeld wieder leeren
$('#prestudent_id').val(ui.item.prestudent_id);
ui.content[i].value=ui.content[i].vorname+' '+ui.content[i].nachname+' '+ui.content[i].stg+' '+ui.content[i].status+' '+ui.content[i].prestudent_id;
ui.content[i].label=ui.content[i].vorname+' '+ui.content[i].nachname+' '+ui.content[i].stg+' '+ui.content[i].status+' '+ui.content[i].prestudent_id;
}
});
},
select: function(event, ui)
{
//Ausgeaehlte Ressource zuweisen und Textfeld wieder leeren
$('#prestudent_id').val(ui.item.prestudent_id);
}
});
</script>";
@@ -680,11 +711,11 @@ for ($i=0;$i<9;$i++)
echo "<option value=\"$i\" selected>$i</option>";
else
echo "<option value=\"$i\">$i</option>";
}
}
echo '</SELECT>';
echo '&nbsp;&nbsp;<input type="submit" name="show" value="OK"></form><br>';
$qry="SELECT
$qry="SELECT
UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg,
semester,
studiengang_kz,
@@ -701,22 +732,22 @@ $qry="SELECT
level_sprung_ab,
levelgleichverteilung,
maxpunkte,
antwortenprozeile,
antwortenprozeile,
(SELECT SUM (zeit) AS sum FROM testtool.tbl_gebiet JOIN testtool.tbl_ablauf USING (gebiet_id) WHERE studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if ($semester!='')
$qry.=" AND semester=".$db->db_add_param($semester, FHC_INTEGER);
if ($semester!='')
$qry.=" AND semester=".$db->db_add_param($semester, FHC_INTEGER);
$qry.=" ) AS gesamtzeit,
(SELECT SUM (zeit) AS sum FROM testtool.tbl_gebiet JOIN testtool.tbl_ablauf USING (gebiet_id) WHERE studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if ($semester!='')
$qry.=" AND semester=".$db->db_add_param($semester, FHC_INTEGER);
if ($semester!='')
$qry.=" AND semester=".$db->db_add_param($semester, FHC_INTEGER);
$qry.=" )-'00:40:00'::time without time zone AS gesamtzeit_persoenlichkeit
FROM testtool.tbl_ablauf
JOIN testtool.tbl_gebiet USING (gebiet_id)
FROM testtool.tbl_ablauf
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN public.tbl_studiengang USING (studiengang_kz)
WHERE studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
if ($semester!='')
if ($semester!='')
$qry.=" AND semester=".$db->db_add_param($semester, FHC_INTEGER);
$qry.=" ORDER BY stg,semester,reihung";
//echo $qry;
@@ -724,11 +755,11 @@ $row=$db->db_fetch_object($db->db_query($qry));
$num_rows=$db->db_num_rows($db->db_query($qry));
if ($studiengang_kz!=1 && $num_rows!=0)
{
$gesamtzeit = $row->gesamtzeit;
$gesamtzeit = $row->gesamtzeit;
if($result = $db->db_query($qry))
{
$num_rows=$db->db_num_rows($result);
echo "<table id='t3' class='tablesorter'><thead><tr>";
echo "<table id='t3' class='tablesorter'><thead><tr>";
echo " <th>STG</th>
<th>SEM</th>
<th>KZ</th>
@@ -750,35 +781,35 @@ if ($studiengang_kz!=1 && $num_rows!=0)
echo "<tbody>";
for($i=0;$i<$num_rows;$i++)
{
$row=$db->db_fetch_object($result);
echo "<tr>";
echo "<td>$row->stg</td>
<td>$row->semester</td>
<td>$row->studiengang_kz</td>
<td>$row->reihung</td>
<td>$row->gebiet_id</td>
<td>$row->bezeichnung</td>";
if ($row->gebiet_id==7)
{
echo "<td>00:20:00*</td>";
$gesamtzeit = $row->gesamtzeit_persoenlichkeit; //Das Gebiet Persönlichkeit wird mit 20 Min. angezeigt und berechnet, läuft im System aber 60 Min.
$persoenlichkeit = true;
}
else
{
echo "<td>$row->zeit</td>";
}
echo "<td align='center'><img src='../../skin/images/".($row->multipleresponse=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'>$row->maxfragen</td>
<td align='center'><img src='../../skin/images/".($row->zufallfrage=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'><img src='../../skin/images/".($row->zufallvorschlag=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'>$row->level_start</td>
<td align='center'>$row->level_sprung_auf</td>
<td align='center'>$row->level_sprung_ab</td>
<td align='center'><img src='../../skin/images/".($row->levelgleichverteilung=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'>$row->maxpunkte</td>
<td align='center'>$row->antwortenprozeile</td>";
echo "</tr>\n";
$row=$db->db_fetch_object($result);
echo "<tr>";
echo "<td>$row->stg</td>
<td>$row->semester</td>
<td>$row->studiengang_kz</td>
<td>$row->reihung</td>
<td>$row->gebiet_id</td>
<td>$row->bezeichnung</td>";
if ($row->gebiet_id==7)
{
echo "<td>00:20:00*</td>";
$gesamtzeit = $row->gesamtzeit_persoenlichkeit; //Das Gebiet Persönlichkeit wird mit 20 Min. angezeigt und berechnet, läuft im System aber 60 Min.
$persoenlichkeit = true;
}
else
{
echo "<td>$row->zeit</td>";
}
echo "<td align='center'><img src='../../skin/images/".($row->multipleresponse=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'>$row->maxfragen</td>
<td align='center'><img src='../../skin/images/".($row->zufallfrage=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'><img src='../../skin/images/".($row->zufallvorschlag=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'>$row->level_start</td>
<td align='center'>$row->level_sprung_auf</td>
<td align='center'>$row->level_sprung_ab</td>
<td align='center'><img src='../../skin/images/".($row->levelgleichverteilung=='t'?'true.png':'false.png')."' height='20'></td>
<td align='center'>$row->maxpunkte</td>
<td align='center'>$row->antwortenprozeile</td>";
echo "</tr>\n";
}
echo "</tbody>";
echo "<tfooter>";
@@ -805,10 +836,10 @@ if ($studiengang_kz!=1 && $num_rows!=0)
}
else
echo "Kein Eintrag gefunden!";
if ($persoenlichkeit)
echo "<div style='font-size:smaller'>*Das Gebiet Persönlichkeit ist mit 60 Minuten eingestellt, kann aber in der Regel in 15-20 Minuten bearbeitet werden.</div>";
echo "<br>";
}
@@ -820,7 +851,7 @@ if(isset($_GET['action']) && $_GET['action']=='sperren')
{
if(!$rechte->isBerechtigt('basis/testtool', null, 'su'))
die('<span class="error">Sie haben keine Berechtigung für diese Aktion. <a href="reihungstest_administration.php">Seite neu laden</a></span>');
$rt = new reihungstest();
if($rt->load($_GET['reihungstest_id']))
{
@@ -835,7 +866,7 @@ if(isset($_GET['action']) && $_GET['action']=='sperren')
}
}
$qry = "SELECT tbl_reihungstest.*,UPPER(tbl_studiengang.typ||tbl_studiengang.kurzbz)AS studiengang FROM public.tbl_reihungstest
$qry = "SELECT tbl_reihungstest.*,UPPER(tbl_studiengang.typ||tbl_studiengang.kurzbz)AS studiengang FROM public.tbl_reihungstest
JOIN public.tbl_studiengang USING(studiengang_kz) WHERE freigeschaltet ORDER BY datum";
if($result = $db->db_query($qry))
@@ -863,7 +894,7 @@ if($result = $db->db_query($qry))
echo '</tbody></table>';
}
echo '</body>
</html>';
?>
+43 -48
View File
@@ -256,7 +256,7 @@ if(isset($_GET['excel']))
$worksheet->setMargins_LR (0.4);
$worksheet->setMarginTop (0.79);
$worksheet->setMarginBottom (0.59);
// Titelzeilen
$worksheet->write(0,0,'Anwesenheitsliste Aufnahmetermin vom '.$datum_obj->convertISODate($reihungstest->datum).' '.$reihungstest->uhrzeit.' Uhr, '.$reihungstest->anmerkung.', erstellt am '.date('d.m.Y'), $format_bold);
if ($row->ort_kurzbz=='')
@@ -266,7 +266,7 @@ if(isset($_GET['excel']))
$worksheet->write(2,0,'Studienpläne: '.implode(', ', $studienplaene_arr));
$worksheet->write(3,0,'Stufe: '.$reihungstest->stufe);
$worksheet->write(4,0,'Testmodule: '.implode(', ', $gebietbezeichnungen));
//Ueberschriften
$zeile=6;
$col=0;
@@ -296,13 +296,13 @@ if(isset($_GET['excel']))
$maxlength[$col] = 3;
$worksheet->write($zeile,++$col,"Unterschrift", $format_bold);
$maxlength[$col] = 30;
$ort_kurzbz = $row->ort_kurzbz;
$zeile++;
}
$pruefling = new pruefling();
$prestudent = new prestudent();
$prestudent->getPrestudenten($row->person_id);
$rt_in_anderen_stg='';
@@ -314,9 +314,9 @@ if(isset($_GET['excel']))
if($item->prestudent_id!=$row->prestudent_id)
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$erg = $pruefling->getReihungstestErgebnis($item->prestudent_id, true);
$erg = $pruefling->getReihungstestErgebnisPrestudent($item->prestudent_id, true);
else
$erg = $pruefling->getReihungstestErgebnis($item->prestudent_id);
$erg = $pruefling->getReihungstestErgebnisPrestudent($item->prestudent_id);
if($erg!=0)
{
$rt_in_anderen_stg.=number_format($erg,2).' Punkte im Studiengang '.$studiengang->kuerzel_arr[$item->studiengang_kz]."; ";
@@ -332,7 +332,7 @@ if(isset($_GET['excel']))
WHERE person_id=".$db->db_add_param($row->person_id)."
AND studiensemester_kurzbz=".$db->db_add_param($reihungstest->studiensemester_kurzbz)."
ORDER BY bezeichnung";
if($result_zuteilungen = $db->db_query($qry_zuteilungen))
{
while($row_zuteilungen = $db->db_fetch_object($result_zuteilungen))
@@ -349,77 +349,77 @@ if(isset($_GET['excel']))
$weitere_zuteilungen[] = $row_zuteilungen->bezeichnung.' am '.$datum_obj->formatDatum($row_zuteilungen->datum, 'd.m.Y').' ('.implode(', ', $testmodule).')';
}
}
$col=0;
$worksheet->write($zeile,$col, $row->vorname, $format_border);
if(strlen($row->vorname)>$maxlength[$col])
$maxlength[$col] = strlen($row->vorname);
$worksheet->write($zeile,++$col,$row->nachname, $format_border);
if(strlen($row->nachname)>$maxlength[$col])
$maxlength[$col] = strlen($row->nachname);
$worksheet->write($zeile,++$col, $row->geschlecht, $format_border_center);
if(strlen($row->geschlecht)>$maxlength[$col])
$maxlength[$col] = strlen($row->geschlecht);
$worksheet->write($zeile,++$col,$datum_obj->convertISODate($row->gebdatum), $format_border);
if(strlen($row->gebdatum)>$maxlength[$col])
$maxlength[$col] = strlen($row->gebdatum);
$worksheet->write($zeile,++$col,$studiengang->kuerzel_arr[$row->studiengang_kz], $format_border);
if(strlen($studiengang->kuerzel_arr[$row->studiengang_kz])>$maxlength[$col])
$maxlength[$col] = strlen($studiengang->kuerzel_arr[$row->studiengang_kz]);
$worksheet->write($zeile,++$col,$row->ausbildungssemester, $format_border_center);
if(strlen($row->ausbildungssemester)>$maxlength[$col])
$maxlength[$col] = strlen($row->ausbildungssemester);
$worksheet->write($zeile,++$col,$rt_in_anderen_stg, $format_border);
if(strlen($rt_in_anderen_stg)>$maxlength[$col])
$maxlength[$col] = strlen($rt_in_anderen_stg);
$worksheet->write($zeile,++$col,implode("\n", $weitere_zuteilungen), $format_border);
foreach ($weitere_zuteilungen as $items)
{
if (strlen($items)>$maxlength[$col])
$maxlength[$col] = strlen($items);
}
$worksheet->write($zeile,++$col,$row->email, $format_border);
if(strlen($row->email)>$maxlength[$col])
$maxlength[$col] = strlen($row->email);
$adresse = new adresse();
$adresse->loadZustellAdresse($row->person_id);
$worksheet->write($zeile,++$col,$adresse->strasse, $format_border);
if(strlen($adresse->strasse)>$maxlength[$col])
$maxlength[$col] = strlen($adresse->strasse);
$worksheet->write($zeile,++$col,$adresse->plz, $format_border_left);
if(strlen($adresse->plz)>$maxlength[$col])
$maxlength[$col] = strlen($adresse->plz);
$worksheet->write($zeile,++$col,$adresse->ort, $format_border);
if(strlen($adresse->ort)>$maxlength[$col])
$maxlength[$col] = strlen($adresse->ort);
$worksheet->write($zeile,++$col,'', $format_border);
if(count($weitere_zuteilungen)>2)
$worksheet->setRow($zeile, count($weitere_zuteilungen)*14);
else
$worksheet->setRow($zeile, 35);
$zeile++;
//Die Breite der Spalten setzen
foreach($maxlength as $col=>$breite)
$worksheet->setColumn($col, $col, $breite+2);
}
}
else
else
{
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Keine Daten");
@@ -432,7 +432,7 @@ if(isset($_GET['excel']))
$worksheet->setMargins_LR (0.4);
$worksheet->setMarginTop (0.79);
$worksheet->setMarginBottom (0.59);
// Titelzeilen
$worksheet->write(0,0,'Anwesenheitsliste Aufnahmetermin vom '.$datum_obj->convertISODate($reihungstest->datum).' '.$reihungstest->uhrzeit.' Uhr, '.$reihungstest->anmerkung.', erstellt am '.date('d.m.Y'), $format_bold);
@@ -821,7 +821,7 @@ if(isset($_POST['speichern']) || isset($_POST['kopieren']))
{
$add_ort = new reihungstest();
$add_ort->new = true;
$add_ort->rt_id = $reihungstest->reihungstest_id;
$add_ort->reihungstest_id = $reihungstest->reihungstest_id;
$add_ort->ort_kurzbz = $_POST['ort_kurzbz'];
$add_ort->uid = null;
@@ -843,7 +843,7 @@ if(isset($_POST['speichern']) || isset($_POST['kopieren']))
{
$rt_stpl = new reihungstest();
$rt_stpl->new = true;
$rt_stpl->rt_id = $reihungstest->reihungstest_id;
$rt_stpl->reihungstest_id = $reihungstest->reihungstest_id;
$rt_stpl->studienplan_id = $_POST['studienplan_id'];
if ($rt_stpl->saveStudienplanReihungstest())
@@ -925,8 +925,7 @@ if(isset($_POST['raumzuteilung_speichern']))
$raumzuteilung->punkte = $load_person->punkte;
$raumzuteilung->studienplan_id = $load_person->studienplan_id;
$raumzuteilung->rt_id = $load_person->rt_id;
$raumzuteilung->rt_id_old = $load_person->rt_id;
$raumzuteilung->reihungstest_id = $load_person->reihungstest_id;
$raumzuteilung->person_id = $key;
$raumzuteilung->ort_kurzbz = $_POST['raumzuteilung'];
}
@@ -995,9 +994,9 @@ if(isset($_GET['type']) && $_GET['type']=='saveallrtpunkte')
{
$pruefling = new pruefling();
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$rtpunkte = $pruefling->getReihungstestErgebnis($row->prestudent_id,true);
$rtpunkte = $pruefling->getReihungstestErgebnisPerson($row->person_id, true, $reihungstest->reihungstest_id);
else
$rtpunkte = $pruefling->getReihungstestErgebnis($row->prestudent_id);
$rtpunkte = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $reihungstest->reihungstest_id);
$reihungstest->punkte = $rtpunkte;
$reihungstest->reihungstestangetreten=true;
$reihungstest->save(false);
@@ -1080,8 +1079,7 @@ if(isset($_GET['type']) && $_GET['type']=='verteilen')
$raumzuteilung->punkte = $load_person->punkte;
$raumzuteilung->studienplan_id = $load_person->studienplan_id;
$raumzuteilung->rt_id = $load_person->rt_id;
$raumzuteilung->rt_id_old = $load_person->rt_id;
$raumzuteilung->reihungstest_id = $load_person->reihungstest_id;
$raumzuteilung->person_id = $row->person_id;
$raumzuteilung->ort_kurzbz = $ort->ort_kurzbz;
}
@@ -1165,8 +1163,7 @@ if(isset($_GET['type']) && $_GET['type']=='auffuellen')
$raumzuteilung->punkte = $load_person->punkte;
$raumzuteilung->studienplan_id = $load_person->studienplan_id;
$raumzuteilung->rt_id = $load_person->rt_id;
$raumzuteilung->rt_id_old = $load_person->rt_id;
$raumzuteilung->reihungstest_id = $load_person->reihungstest_id;
$raumzuteilung->person_id = $row->person_id;
$raumzuteilung->ort_kurzbz = $ort->ort_kurzbz;
}
@@ -1221,7 +1218,7 @@ if(isset($_POST['aufsicht']) && $_POST['aufsicht']!='' && !isset($_POST['kopiere
else
{
$save_aufsicht->new = false;
$save_aufsicht->rt_id = $_POST['reihungstest_id'];
$save_aufsicht->reihungstest_id = $_POST['reihungstest_id'];
$save_aufsicht->ort_kurzbz = $key;
$save_aufsicht->uid = $uid;
if (!$save_aufsicht->saveOrtReihungstest())
@@ -1824,9 +1821,9 @@ if($result = $db->db_query($qry))
if(defined('REIHUNGSTEST_ERGEBNISSE_BERECHNEN') && REIHUNGSTEST_ERGEBNISSE_BERECHNEN)
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$rtergebnis = $pruefling->getReihungstestErgebnis($row->prestudent_id,true);
$rtergebnis = $pruefling->getReihungstestErgebnisPerson($row->person_id,true, $reihungstest->reihungstest_id);
else
$rtergebnis = $pruefling->getReihungstestErgebnis($row->prestudent_id);
$rtergebnis = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $reihungstest->reihungstest_id);
$prestudent = new prestudent();
$prestudent->getPrestudenten($row->person_id);
$rt_in_anderen_stg='';
@@ -1835,14 +1832,13 @@ if($result = $db->db_query($qry))
if($item->prestudent_id!=$row->prestudent_id)
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$erg = $pruefling->getReihungstestErgebnis($item->prestudent_id, true);
$erg = $pruefling->getReihungstestErgebnisPrestudent($item->prestudent_id, true);
else
$erg = $pruefling->getReihungstestErgebnis($item->prestudent_id);
$erg = $pruefling->getReihungstestErgebnisPrestudent($item->prestudent_id);
if($erg!=0)
{
$rt_in_anderen_stg.=number_format($erg,2).' Punkte im Studiengang '.$studiengang->kuerzel_arr[$item->studiengang_kz].'<br>';
}
}
}
}
@@ -1937,9 +1933,9 @@ if($result = $db->db_query($qry))
if(defined('REIHUNGSTEST_ERGEBNISSE_BERECHNEN') && REIHUNGSTEST_ERGEBNISSE_BERECHNEN)
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$rtergebnis = $pruefling->getReihungstestErgebnis($row->prestudent_id,true);
$rtergebnis = $pruefling->getReihungstestErgebnisPerson($row->person_id,true, $reihungstest->reihungstest_id);
else
$rtergebnis = $pruefling->getReihungstestErgebnis($row->prestudent_id);
$rtergebnis = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $reihungstest->reihungstest_id);
$prestudent = new prestudent();
$prestudent->getPrestudenten($row->person_id);
$rt_in_anderen_stg='';
@@ -1948,14 +1944,13 @@ if($result = $db->db_query($qry))
if($item->prestudent_id!=$row->prestudent_id)
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
$erg = $pruefling->getReihungstestErgebnis($item->prestudent_id, true);
$erg = $pruefling->getReihungstestErgebnisPrestudent($item->prestudent_id, true);
else
$erg = $pruefling->getReihungstestErgebnis($item->prestudent_id);
$erg = $pruefling->getReihungstestErgebnisPrestudent($item->prestudent_id);
if($erg!=0)
{
$rt_in_anderen_stg.=number_format($erg,2).' Punkte im Studiengang '.$studiengang->kuerzel_arr[$item->studiengang_kz].'<br>';
}
}
}
}