require_once('phplib/phplib.php');
require_once('common.php');
check_personeel();
$db = mdb2_open($dsn);
$herinfo = get_herinfo($db);
if (isset($_GET['allen'])) $left = 'LEFT ';
// STUPID GROUP_CONCAT (in mssql from codeplex doesn't support long delimiters)
// so we delimit by ', ' insteadof '
', which is ugly
$hers = mdb2_query($db, <<(nog) geen her') herinfo
FROM $kldv.grp
JOIN period2grp ON period2grp.period_id = {$herinfo['period_id']} AND period2grp.grp_id = grp.grp_id
JOIN $kldv.ppl2grp ON ppl2grp.grp_id = grp.grp_id
AND ppl2grp.ppl_enter <= {$herinfo['period_deadline']}
AND ppl2grp.ppl_exit > {$herinfo['period_deadline']}
{$left}JOIN (
SELECT period_id, ppl2grp.ppl_id, $concat_begin $ifnull($group_concat(doc.ppl_login), 'DOC?') $concat_cont
'/' $concat_cont subj_abbrev $concat_cont ': ' $concat_cont info $concat_end herinfo
FROM rex
JOIN $kldv.ppl2grp ON ppl2grp.ppl_id = rex.ppl_id
AND ppl2grp.ppl_enter <= {$herinfo['period_deadline']}
AND ppl2grp.ppl_exit > {$herinfo['period_deadline']}
JOIN $kldv.grp ON grp.grp_id = ppl2grp.grp_id
JOIN $kldv.subj ON subj.subj_id = rex.subj_id
LEFT JOIN $kldv.grp2subj ON grp2subj.subj_id = rex.subj_id AND grp2subj.grp_id = grp.grp_id
LEFT JOIN $kldv.ppl2grp2subj ON ppl2grp2subj.grp2subj_id = grp2subj.grp2subj_id
AND ppl2grp2subj.ppl_enter <= {$herinfo['period_deadline']}
AND ppl2grp2subj.ppl_exit > {$herinfo['period_deadline']}
JOIN $kldv.ppl AS doc ON doc.ppl_id = ppl2grp2subj.ppl_id
WHERE period_id = {$herinfo['period_id']}
GROUP BY rex_id, period_id, ppl2grp.ppl_id, subj_abbrev, info
) AS bla ON bla.ppl_id = ppl2grp.ppl_id
JOIN $kldv.ppl ON ppl.ppl_id = ppl2grp.ppl_id
WHERE grp_name LIKE '%q'
GROUP BY ppl2grp.ppl_id, ppl_forename, ppl_surname, ppl_prefix, ppl_login, grp_name
ORDER BY ppl_surname, ppl_forename, ppl_prefix
EOQ
, $_GET['klas']);
if (!($row = $hers->fetchRow(MDB2_FETCHMODE_ORDERED))) {
if ($afkorting && $klas) $msg = htmlenc($afkorting).' heeft op dit moment geen herkansers uit klas '.htmlenc($klas).'.';
else if ($afkorting) $msg = htmlenc($afkorting). ' heeft op dit moment geen herkansers.';
else if ($klas) $msg = 'Geen enkele leerling uit '.htmlenc($klas).' heeft op dit moment een herkansing opgegeven.';
else $msg = 'Geen enkele leerling heeft op dit moment een herkansing opgegeven.';
error_user('Geen herkansingen gevonden', $msg);
}
$hers->seek();
$totalen = mdb2_query($db, << {$herinfo['period_deadline']}
JOIN $kldv.ppl2grp AS ppl2grp2 ON ppl2grp2.ppl_id = ppl2grp.ppl_id
AND ppl2grp2.ppl_enter <= {$herinfo['period_deadline']}
AND ppl2grp2.ppl_exit > {$herinfo['period_deadline']}
JOIN $kldv.grp AS grp2 ON grp2.grp_id = ppl2grp2.grp_id
LEFT JOIN rex ON rex.ppl_id = ppl2grp.ppl_id AND rex.period_id = period2grp.period_id
WHERE grp2.grp_name LIKE '%q'
AND period2grp.period_id = {$herinfo['period_id']}
EOQ
, $_GET['klas']);
$per_vak = mdb2_query($db, << {$herinfo['period_deadline']}
JOIN rex ON rex.ppl_id = ppl2grp.ppl_id AND rex.period_id = period2grp.period_id
JOIN $kldv.subj ON subj.subj_id = rex.subj_id
WHERE grp_name LIKE '%q'
AND period2grp.period_id = {$herinfo['period_id']}
GROUP BY subj.subj_id, subj_abbrev
ORDER BY aantal_herkansingen DESC
EOQ
, $_GET['klas']);
$per_klas = mdb2_query($db, << {$herinfo['period_deadline']}
LEFT JOIN rex ON rex.ppl_id = ppl2grp.ppl_id AND rex.period_id = period2grp.period_id
WHERE grp_name LIKE '%q'
AND period2grp.period_id = {$herinfo['period_id']}
GROUP BY grp_name
EOQ
, $_GET['klas']);
$per_doc = mdb2_query($db, << {$herinfo['period_deadline']}
JOIN $kldv.grp AS grp2 ON grp2.grp_id = ppl2grp2.grp_id
JOIN $kldv.ppl2grp ON ppl2grp.ppl_id = rex.ppl_id
AND ppl2grp.ppl_enter <= {$herinfo['period_deadline']}
AND ppl2grp.ppl_exit > {$herinfo['period_deadline']}
JOIN $kldv.grp ON grp.grp_id = ppl2grp.grp_id
JOIN $kldv.grp2subj ON grp2subj.grp_id = ppl2grp.grp_id
AND grp2subj.subj_id = rex.subj_id
JOIN $kldv.ppl2grp2subj ON ppl2grp2subj.grp2subj_id = grp2subj.grp2subj_id
AND ppl2grp2subj.ppl_enter <= {$herinfo['period_deadline']}
AND ppl2grp2subj.ppl_exit > {$herinfo['period_deadline']}
JOIN $kldv.ppl ON ppl.ppl_id = ppl2grp2subj.ppl_id
WHERE grp2.grp_name LIKE '%q'
AND grp2.grp_home = 1
AND rex.period_id = {$herinfo['period_id']}
GROUP BY ppl_login
ORDER BY aantal_herkansingen DESC
EOQ
, $_GET['klas']);
html_start();
?>
terug
if (!isset($_GET['allen'])) { ?>
Toon ook leerlingen die geen her hebben opgegeven.
} else { ?>
Toon alleen leerlingen met minimaal 1 her.
} ?>
Overzicht voor klas(sen) echo($klas) ?>
Voor alle geselecteerde groepen
mdb2_res_table($totalen); ?>
Per leerling
mdb2_res_table($hers); ?>
Per vak
mdb2_res_table($per_vak); ?>
Per klas
mdb2_res_table($per_klas); ?>
Per docent
mdb2_res_table($per_doc); ?>
html_end();
?>
|