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 ORDER BY year, week EOQ ); $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' $default_week_id = 0; $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]['locked'] = 0; //$next_locked; disable deadline 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 ($_GET['week_id'] == $week_id || ($_GET['week_id'] == 0 && $weken[$week_id]['locked'] == 0 && $default_week_id == 0)) { $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; } header('Content-type: text/plain'); print_r($_GET); /* * Array * ( * [week_id] => 22 * [file_id_basis] => 793 * [file_id_wijz] => 802 * [les_id] => 12813 * [zermelo_id] => 943 * [entity_id_old] => 6047 * [entity_id_new] => 6260 * ) */ $week_id = $_GET['week_id']; if (!isset($weken[$week_id])) error_system("wrong week_id"); $week = $weken[$week_id]; $blok = mdb2_single_val($db, <<