include('phplib/phplib.php'); include('common.php'); check_leerling(); #echo("
"); #print_r($_POST); #echo(""); #exit; $db = mdb2_open($dsn); $herinfo = get_herinfo($db); if ($herinfo['period_regime'] == 1) error_system("impossible to be here?!?!?!"); if ($_SESSION['admin']) $herinfo['expired'] = 0; if ($herinfo['expired']) { logit('probeert na de deadline een her op te geven'); logdb('poging in na deadline herkansing op te geven'); apache_note('phplib_action', 'poging in na deadline herkansing op te geven'); error_user('De termijn voor het opgeven en/of wijzigen van herkansingen is verstreken'); } $ppl_id = mdb2_single_val($db, "SELECT ppl_id FROM $kldv.ppl WHERE ppl_login = '%q' AND ppl_active = 0", $_SESSION['username']); if (!$ppl_id) fatal_error("unable to get ppl_id for {$_SESSION['username']}"); if (!isset($_POST['pta_id']) || !is_numeric($_POST['pta_id']) || (int)$_POST['pta_id'] != $_POST['pta_id'] || $_POST['pta_id'] < 0) { apache_note('phplib_action', 'geen ST geselecteerd bij opgeven herkansing'); error_user('Selecteer een toets', 'Selecteer een toets voordat je op "Opslaan" drukt.', 'her.php'); } $gedaan = 0; if ($_POST['submit'] == 'Wijzig' || $_POST['submit'] == 'Verwijder') { if (!isset($_POST['rex_id']) || !is_numeric($_POST['rex_id']) || (int)$_POST['rex_id'] != $_POST['rex_id'] || $_POST['rex_id'] < 0) { logdb('poging niet-bestaande herkansing te wijzigen'); apache_note('phplib_action', 'poging niet-bestaande herkansing te wijzigen'); error_user('rex wijzigen zonder rex_id', 'het is onmogelijk om een niet bestaande herkansing te wijzigen'); } $old_rex_id = mdb2_single_val($db, "SELECT rex_id FROM rex WHERE rex_id = %i AND ppl_id = $ppl_id AND period_id = {$herinfo['period_id']}", $_POST['rex_id']); if (!$old_rex_id) { logdb('poging herkansing die niet van hem/of haar is, of niet bij deze periode hoort'); apache_note('phplib_action', 'poging herkansing die niet van hem/of haar is, of niet bij deze periode hoort'); error_user('ACCESS DENIED', 'je mag alleen bestaande herkansingen van jezelf in deze herkansingsperiode wissen'); } $fixed = mdb2_single_val($db, "SELECT fixed FROM rex WHERE rex_id = $old_rex_id"); if ($fixed && !$_SESSION['admin']) error_user('ACCESS DENIED', 'Deze herkansing mag niet verwijderd of gewijzigd worden'); mdb2_exec($db, "DELETE FROM rex WHERE rex_id = %i AND ppl_id = $ppl_id AND period_id = {$herinfo['period_id']}", $_POST['rex_id']); logit('heeft rex_id='.$_POST['rex_id'].' verwijderd'); $gedaan = 1; } if ($_POST['submit'] == 'Opslaan' || $_POST['submit'] == 'Opslaan (fixeer en gratis)' || $_POST['submit'] == 'Wijzig') { if (($_POST['submit'] == 'Opslaan' || $_POST['submit'] == 'Opslaan (fixeer en gratis)' ) && isset($_POST['rex_id'])) { logdb('rex_id is ten onrechte meegegeven ONMOGELIJK'); apache_note('phplib_action', 'rex_id is ten onrechte meegegeven ONMOGELIJK'); error_user('impossible', "Bij opslaan kan er geen rex_id meegegeven zijn"); } $subj_id = mdb2_single_val($db, "SELECT subj_id FROM ptas WHERE pta_id = %i", $_POST['pta_id']); $subj_abbrev = mdb2_single_val($db, "SELECT subj_abbrev FROM ptas JOIN $kldv.subj ON subj.subj_id = ptas.subj_id WHERE pta_id = %i", $_POST['pta_id']); if (!$subj_id) { logdb('gegeven pta_id staat niet in PTA?!?!!?!?'); apache_note('phplib_action', 'gegeven pta_id staat niet in PTA?!?!!?!?'); error_user("Impossible", "gegeven pta_id {$_POST['pta_id']} niet gevonden in PTA?!?!?!"); } $info = mdb2_single_val($db, <<checkvalid; if (!$check($db, $ppl_id, $herinfo, $_POST['pta_id'])) { mdb2_exec($db, "DELETE FROM rex WHERE rex_id = $rex_id AND ppl_id = $ppl_id AND period_id = {$herinfo['period_id']}"); logdb('opgegeven herkansing is niet geldig '.$info); apache_note('phplib_action', 'opgegeven herkansing niet geldig '.$info); error_user("Impossible", "Opgegeven herkansing niet geldig"); } logit('heeft her opgegeven rex_id='.$rex_id.' '.$subj_abbrev.'/'.$info); $gedaan = 1; } if (!$gedaan) error_system('onmogelijke submit'); if ($_POST['submit'] == 'Opslaan' || $_POST['submit'] == 'Opslaan (fixeer en gratis)') { logdb('heeft her opgegeven '.$rex_id.':\''.$info.'\''); apache_note('phplib_action', 'heeft her opgegeven '.$rex_id.':\''.$info.'\''); } else if ($_POST['submit'] == 'Verwijder') { logdb('heeft her '.$old_rex_id.' verwijderd'); apache_note('phplib_action', 'heeft her '.$old_rex_id.' verwijderd'); } else { apache_note('phplib_action', 'heeft her '.$old_rex_id.' gewijzigd in '.$rex_id.':\''.$info.'\''); logdb('heeft her '.$old_rex_id.' gewijzigd in '.$rex_id.':\''.$info.'\''); } header('Location: '.dirname($_SERVER['PHP_SELF']).'/'); ?>