= 0 AND %i >= 0"; } else { // geen admin, verwijder verboven lokalen foreach ($computerlokalen_secret as $naam) { if (($i = array_search($naam, $computerlokalen_names)) !== FALSE) unset($computerlokalen_names[$i]); } $voorwaarde = "weken.week_id >= %i AND weken.week_id <= %i"; } $weken = mdb2_all_assoc_rekey($db, << roosters.basis_id OR ( more.basis_id = roosters.basis_id AND more.wijz_id > roosters.wijz_id ) ) RIGHT JOIN $roosterdb.weken ON weken.week_id = roosters.week_id WHERE more.week_id IS NULL AND $voorwaarde ORDER BY year, week EOQ , $min_week_id, $max_week_id); $time = $_SERVER['REQUEST_TIME']; $year_iso8601 = date("o", $time); $week_iso8601 = date("W", $time); $day_iso8601 = date("N", $time); $hour = date("G"); $minute = date("i"); $lescounter = -1; function getthisdeadline($week) { global $deadline_day, $deadline_hour, $deadline_minute; $day_in_week = strtotime(sprintf("{$week['year']}-01-04 + %d weeks", $week['week'] - 1)); $monday_in_week = $day_in_week - ((date('w', $day_in_week) + 6)%7)*24*60*60; return $monday_in_week + ($deadline_day - 1)*24*60*60 + $deadline_hour*60*60 + $deadline_minute*60; } // intialize $_GET['week_id'] if it is nog set to silence warnings // 0 means: take default week if (!isset($_GET['week_id']) || !($_GET['week_id'] > 0)) $_GET['week_id'] = 0; // omdat de deadline vrijdagmiddag van de vorige lesweek is, is de eerste lesweek automatisch 'op slot' if ($_SESSION['admin']) { if (isset($weken[$max_week_id + 1])) { $default_week_id = $max_week_id + 1; } else { $default_week_id = $min_week_id; } } else { $default_week_id = $min_week_id; } if ($_GET['week_id'] == 0) { $selected_week_id = $default_week_id; } else { $selected_week_id = $_GET['week_id']; } if ($_GET['week_id'] == $default_week_id) $_GET['week_id'] = ''; //echo("default_week_id = $default_week_id "); if (count($weken) == 0) { do_logout(); echo("er staan geen lesweken open om een computerlokaal te reserveren"); exit; } //echo("max_week_id = $max_week_id "); //echo("default_week_id = $default_week_id "); //echo("selected_week_id = $selected_week_id "); $requested_week_id = 0; $last_week_id = 0; $last_file_id_basis = 0; $next_locked = 1; $week_options = ''; foreach ($weken as $week_id => $week) { $weken[$week_id]['deadline'] = getthisdeadline($week); if ($week['rooster_id']) { $last_file_id_basis = $weken[$week_id]['file_id_basis'] = mdb2_single_val($db, "SELECT file_id FROM $roosterdb.roosters WHERE basis_id = %i AND wijz_id = 0", $week['basis_id']); $weken[$week_id]['file_id_wijz'] = mdb2_single_val($db, "SELECT file_id FROM $roosterdb.roosters WHERE basis_id = %i AND wijz_id = %i", $week['basis_id'], $week['wijz_id']); if ($weken[$week_id]['file_id_basis'] == $weken[$week_id]['file_id_wijz']) $weken[$week_id]['file_id_wijz'] = 0; } else { $weken[$week_id]['file_id_basis'] = $last_file_id_basis; $weken[$week_id]['file_id_wijz'] = 0; } $weken[$week_id]['dateinfo'] = '('.date('j-n', strtotime($week['year'].'W'.str_pad($week['week'], 2, '0', STR_PAD_LEFT))).' t/m '.date('j-n', strtotime($week['year'].'W'.str_pad($week['week'], 2, '0', STR_PAD_LEFT)) + 4*60*60*24).')'; $weken[$week_id]['locked'] = 0; /// deadline uitgeschaked $next_locked; if ($weken[$week_id]['deadline'] <= $time) $next_locked = 1; else $next_locked = 0; if ($week_id == $_GET['week_id']) $requested_week_id = $week_id; $selected = ''; if ($selected_week_id == $week_id) { $selected = 'selected '; } if ($weken[$week_id]['locked'] == 0 && $default_week_id == 0) { $default_week_id = $week_id; $week_options .= ''."\n"; } else { $week_options .= ''."\n"; } $last_week_id = $week_id; } if ($requested_week_id) { //echo('current=req'); $current_week_id = $requested_week_id; } else if ($default_week_id) { //echo('current=default'); $current_week_id = $default_week_id; } else { //echo('current=max'); $current_week_id = $max_week_id; } //echo("current_week_id = $current_week_id\n"); function find_entity_id($name) { global $db, $roosterdb; return mdb2_single_val($db, "SELECT entity_id FROM $roosterdb.entities WHERE entity_name = '%q'", $name); } $afkorting = mdb2_single_val($db, "SELECT ppl_login FROM $kldv.ppl WHERE ppl_id = %i", $_SESSION['ppl_id']); $computerlokalen = array(); foreach ($computerlokalen_names as $name) { $computerlokalen[$name] = array(); $computerlokalen[$name]['lokaal_id'] = find_entity_id($name); } $docent_id = find_entity_id($afkorting); if (!$docent_id) { html_start(); ?>

Docent is nog niet bekend op het roosterbord en kan daarom op dit moment geen reserveringen maken. $lokaal) { //$computerlokalen[$name]['lokaal_id'] = $lokaal['lokaal_id']; $computerlokalen[$name]['rooster'] = get_rooster($lokaal['lokaal_id']); $computerlokalen[$name]['rooster_index'] = array(); foreach ($computerlokalen[$name]['rooster'] as $zid => $les) { $moment = $les['dag'].'-'.$les['uur']; if (!isset($computerlokalen[$name]['rooster_index'][$moment])) $computerlokalen[$name]['rooster_index'][$moment] = array(); $computerlokalen[$name]['rooster_index'][$moment][] = $zid; } $computerlokalen[$name]['bloks'] = mdb2_all_assoc_rekey($db, << $les) { $zid = $les['zermelo_id']; if (!isset($computerlokalen[$name]['resvs_zindex'][$zid])) $computerlokalen[$name]['resvs_zindex'][$zid] = array (); $computerlokalen[$name]['resvs_zindex'][$zid][] = $id; } $computerlokalen[$name]['resvs_index'] = array(); foreach ($computerlokalen[$name]['resvs'] as $id => $les) { $moment = $les['dag'].'-'.$les['uur']; if (!isset($computerlokalen[$name]['resvs_index'][$moment])) $computerlokalen[$name]['resvs_index'][$moment] = array(); $computerlokalen[$name]['resvs_index'][$moment][] = $id; } } $resvs = mdb2_all_assoc_rekey($db, << $les) { $moment = $les['dag'].'-'.$les['uur']; if (!isset($resvs_index[$moment])) $resvs_index[$moment] = array(); $resvs_index[$les['dag'].'-'.$les['uur']][] = $id; } html_start(<< select').change(function () { $('#weekselect').submit(); }); $('.radio > radio').change(function () { this.form.submit(); }); }); EOS ); //print_r($week); //echo($week['year'].'W'.str_pad($week['week'], 2, '0', STR_PAD_LEFT)); $thismonday = strtotime($week['year'].'W'.str_pad($week['week'], 2, '0', STR_PAD_LEFT)); //$datemonday = date('d-m', $thismonday); //echo("datemonday=$datemonday\n"); ?>

Als je een computerlokaal wilt gebruiken voor iets waar voor- of nawerk voor nodig is, zoals bijvoorbeeld een toets met examenaccounts, neem contact op met Esther. Je kunt hier alleen activiteiten plannen die precies 1 lesuur of minder in beslag nemen.

week:

Lessen van . Merk op dat COM1 = 212 en COM2 = 210. now: year=$year_iso8601, week=$week_iso8601, day=$day_iso8601, time:$hour:$minute
"); //echo("

current_week_id=$current_week_id
\n"); //echo("

afkorting=$afkorting, docent_id=$docent_id\n"); //mdb2_res_table($res); ?>


$dateinfo {$dagen[$dag]}$uur {$cur['lesgroepen']}/{$cur['vakken']}"); $lokalen = explode(',', $cur['lokalen']); foreach ($lokalen as $lokaal) { //echo('
lokaal '.$lokaal.' current week id='.$current_week_id);
			//	print_r($cur);
			//	echo("cur_key=$cur_key\n");
			//	echo('
'); $lokaal_info = explode('/', $lokaal); //echo(' ('.$lokaal_info[1].' -> '); // staat er een reservering op deze les op dit uur met dit lokaal als oud lokaal? // //-- WHERE zermelo_id = %i AND entity_id_old = %i AND lessen.uur = %i AND lessen.dag = %i AND week_id = {$current_week_id} AND timestamp_delete IS NULL $resv = mdb2_single_assoc($db, <<'); if ($lokaal_info[1] == $resv['entity_name_old']) echo(' ('.$lokaal_info[1].' -> '); else echo(' ('.$resv['entity_name_old'].' -> '.$lokaal_info[1].' -> '); echo($resv['entity_name_new'].': '.htmlenc($resv['text_reservant']).' [bewerken] X'); echo(''); } else { // // staat er een reservering met dit lokaal als nieuw lokaal? $resv = mdb2_single_assoc($db, <<'); echo(' ('.$lokaal_info[1].' <- '); echo($resv['entity_name'].': '.htmlenc($resv['text_reservant']).' [bewerken] X'); echo(''); } else { echo(' ('.$lokaal_info[1].' -> '); // // geen reservering? // // check beschikbaarheid computerlokalen foreach ($computerlokalen as $naam => $computerlokaal) { if (isset($computerlokaal['rooster_index'][$moment])) { ?> class="soft" href="reserveer.php?week_id=&file_id_basis=&file_id_wijz=&les_id=&zermelo_id=&entity_id_old=&entity_id_new=">
  reserveringen aangeduid in deze kleur, kunnen mogelijk niet worden gehonoreerd wegens nader in te plannen activiteiten in de computerlokalen.