"; $FormFile = "hotlunch_menu_dates.form.php"; $TitleText = getLanguageText('TEXT-MENU'); $OrderBy = "sequence,menu_date asc"; $Sequence = 'Y'; // Start the template and output buffering startTemplate(); $templatePageTitle = getLanguageText('TEXT-MANAGE-FORM'); $moduleName = "hotlunch_menu_dates.php"; // startLog($moduleName); // Ensure that only valid user types have access to this module $AllowedUserTypes = array('SuperUser','System Administrator','Schedule Team','Application Administrator'); if (checkPermission($AllowedUserTypes) != 1) { $error_message = getLanguageText('ERRORMSG-ACCESS-DENIED'); include "form.messages.php"; include "hotlunch_reports.menu.php"; endTemplate(); exit(); } if (array_key_exists('schedule_num',$_GET)) $schedule_num = intval($_GET['schedule_num']); if (array_key_exists('schedule_num',$_POST)) $schedule_num = intval($_POST['schedule_num']); if (!isset($schedule_num) || intval($schedule_num) == 0) { $error_message = getLanguageText('ERRORMSG-INVALID-SCHEDULE'); include "form.messages.php"; include "hotlunch_reports.menu.php"; endTemplate(); exit(); } // Check if this is a valid schedule $swhere = ""; if ($_SESSION['UserInfo']['type'] == 'Supplier') $swhere = " and supplier_num = " . $_SESSION['UserInfo']['supplier_num']; $query = "select * from hotlunch_schedules " . "where record_num = $schedule_num " . "and school_num = $school_num $swhere"; $results = db_query($query); if (db_num_rows($results) == 0) { $error_message = getLanguageText('ERRORMSG-INVALID-SCHEDULE-NUM'); include "form.messages.php"; include "hotlunch_reports.menu.php"; endTemplate(); exit(); } $hotlunch_schedule = db_fetch_array($results); $templatePageTitle .= " - " . $hotlunch_schedule['schedule_name']; // If this is a ScheduleTeam user check if they have permission to access this schedule if ($_SESSION['UserInfo']['type'] == 'Schedule Team') { $userNum = $_SESSION['UserInfo']['record_num']; $access = db_getVal("SELECT count(*) FROM hotlunch_schedules_people WHERE school_num = $school_num AND schedule_num = $schedule_num AND user_num = $userNum"); if (!$access || $access == 0) { $error_message = getLanguageText('ERRORMSG-NO-SCHEDULE-ACCESS'); include "form.messages.php"; include "hotlunch_reports.menu.php"; endTemplate(); exit(); } } // Main buttons include "hotlunch_reports.menu.php"; if (array_key_exists('naction',$_GET)) $naction = $_GET['naction']; if (array_key_exists('naction',$_POST)) $naction = $_POST['naction']; switch (strtolower($naction)) { case "generate": // Process lunch menu dates $menu_dates = new Table("hotlunch_menu_dates"); if (strlen($hotlunch_schedule['lunch_days']) == 0) { $error_message = getLanguageText('ERRORMSG-NO-MENU-DATES-DEFINED'); $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } $lunch_days = explode(",",$hotlunch_schedule['lunch_days']); $schedule_start_date = $hotlunch_schedule['schedule_start_date']; $schedule_end_date = $hotlunch_schedule['schedule_end_date']; $current_date = $hotlunch_schedule['schedule_start_date']; $current_time = strtotime($current_date) + 12 * 60 * 60; $newDays = 0; while ($current_date <= $schedule_end_date) { $day = date("D",$current_time); if (in_array($day,$lunch_days)) { $entry = initializeTableArray('hotlunch_menu_dates'); $entry['school_num'] = $school_num; $entry['schedule_num'] = $schedule_num; $sequence = db_getVal("SELECT max(sequence) FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num"); $sequence++; $entry['sequence'] = $sequence; $entry['menu_title'] = $hotlunch_schedule['default_menu_title']; $entry['menu_date'] = $current_date; $entry['menu_end_order_datetime'] = $current_date . " 23:59:00"; $entry['menu_type'] = "Regular"; $entry['menu_end_order_datetime'] = $menu_date . " 09:00:00"; $entry['status'] = 'Active'; $entry['order_format'] = $hotlunch_schedule['default_order_format']; $entry['display_supplier_code'] = 'N'; $entry['order_revenue'] = 0.00; $entry['other_revenue'] = 0.00; $entry['supplier_costs'] = 0.00; $entry['other_costs'] = 0.00; $entry['net_revenue'] = 0.00; $entry['menu_link'] = 'No'; $entry['source_menu'] = 0; $entry['quantity_available'] = 0; $entry['min_quantity'] = 0; $entry['warn_quantity'] = 0; $entry['max_quantity'] = 0; $entry['max_quantity_by'] = 'Order'; $entry['number_of_labels'] = 1; $entry['group_a_min'] = 0; $entry['group_a'] = 0; $entry['group_b'] = 0; $entry['group_c'] = 0; $entry['group_d'] = 0; $entry['group_e'] = 0; $entry['group_f'] = 0; $entry['group_g'] = 0; $entry['group_h'] = 0; $entry['group_i'] = 0; $entry['group_j'] = 0; $entry['group_k'] = 0; $entry['group_l'] = 0; $entry['group_m'] = 0; $entry['group_b_a_required'] = 'N'; $entry['group_c_a_required'] = 'N'; $entry['group_d_a_required'] = 'N'; $entry['group_e_a_required'] = 'N'; $entry['group_f_a_required'] = 'N'; $entry['group_g_a_required'] = 'N'; $entry['group_h_a_required'] = 'N'; $entry['group_i_a_required'] = 'N'; $entry['group_j_a_required'] = 'N'; $entry['group_k_a_required'] = 'N'; $entry['group_l_a_required'] = 'N'; $entry['group_m_a_required'] = 'N'; $entry['group_b_mandatory'] = 'N'; $entry['group_c_mandatory'] = 'N'; $entry['group_d_mandatory'] = 'N'; $entry['group_e_mandatory'] = 'N'; $entry['group_f_mandatory'] = 'N'; $entry['group_g_mandatory'] = 'N'; $entry['group_h_mandatory'] = 'N'; $entry['group_i_mandatory'] = 'N'; $entry['group_j_mandatory'] = 'N'; $entry['group_k_mandatory'] = 'N'; $entry['group_l_mandatory'] = 'N'; $entry['group_m_mandatory'] = 'N'; $entry['num_volunteer_override'] = 'D'; $entry['max_volunteers'] = 0; $entry['active'] = 'Y'; $entry['available'] = 'Y'; $entry['display'] = 'Y'; // Check if an entry exists for this date $insertRecord = true; if ($hotlunch_schedule['display_menu_date'] == 'Y' || $hotlunch_schedule['schedule_type'] == 'Date Sensitive') { $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num AND menu_date = '$menu_date'"); if (db_num_rows($results) != 0) $insertRecord = false; } if ($insertRecord) { $query = $menu_dates->BuildInsert($entry); db_query($query); $newDays++; } } $current_time += 24 * 60 * 60; $current_date = date("Y-m-d",$current_time); } $form_message = "$newDays " . getLanguageText('TEXT-MENU-DATES-CREATED') . " - ($hotlunch_schedule[lunch_days])"; if ($newDays == 0) $form_message = getLanguageText('TEXT-ALL-MENU-DATES-EXIST') . " - ($hotlunch_schedule[lunch_days])"; $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "manage": include "hotlunch_menu_dates.manage.php"; break; case "manage-update": // Get set of menu dates to process $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num ORDER BY sequence,menu_date"); while ($row = db_fetch_array($results)) { $end_order = ''; $min_vol = 0; $max_vol = 0; $menu_link = 'No'; $record_num = $row['record_num']; $menu_title = db_escape_string(trim($_POST["title_$record_num"])); $menu_date = $_POST["date_$record_num"]; if (array_key_exists("end_date_$record_num", $_POST)) $end_order = $_POST["end_date_$record_num"]; if (array_key_exists("min_$record_num", $_POST)) $min_vol = number_format($_POST["min_$record_num"],0); if (array_key_exists("max_$record_num", $_POST)) $max_vol = number_format($_POST["max_$record_num"],0); if (array_key_exists("menu_link_$record_num", $_POST)) $menu_link = $_POST["menu_link_$record_num"]; if (strlen($end_order)) $meodate = "menu_end_order_datetime = '$end_order', "; else $meodate = "menu_end_order_datetime = NULL, "; $query = "UPDATE hotlunch_menu_dates " . "SET menu_title = '$menu_title', " . "menu_date = '$menu_date', " . $meodate . "max_volunteers = $max_vol, " . "menu_link = '$menu_link' " . "WHERE school_num = $school_num AND record_num = $record_num"; db_query($query); } $form_message = getLanguageText('MSG-MENUS-UPDATED'); $action = "$action&schedule_num=$schedule_num"; $naction = "list"; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "manage-links": include "hotlunch_menu_dates.manage.links.php"; break; case "manage-links-update": // Get set of menu dates to process $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num ORDER BY sequence,menu_date"); while ($row = db_fetch_array($results)) { $record_num = $row['record_num']; $menu_title = db_escape_string(trim($_POST["title_$record_num"])); $menu_date = $_POST["date_$record_num"]; $end_order = $_POST["end_date_$record_num"]; $min_vol = number_format($_POST["min_$record_num"],0); $max_vol = number_format($_POST["max_$record_num"],0); $menu_link = $_POST['menu_link']; $query = "UPDATE hotlunch_menu_dates " . "SET menu_title = '$menu_title', " . "menu_date = '$menu_date', " . "menu_end_order_datetime = '$end_order', " . "max_volunteers = $max_vol, " . "menu_link = '$menu_link' " . "WHERE school_num = $school_num AND record_num = $record_num"; db_query($query); } $form_message = getLanguageText('MSG-MENUS-UPDATED'); $action = "$action&schedule_num=$schedule_num"; $naction = "list"; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "manage-rules": include "hotlunch_menu_dates.manage_rules.php"; break; case "manage-rules-update": $hotlunch_menu_dates = new Table("hotlunch_menu_dates"); // Get set of menu dates to process $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num ORDER BY sequence,menu_date"); while ($row = db_fetch_array($results)) { extract($row); // Group A $group_a = intval($_POST['group_a'."_$record_num"]); $group_a_available = intval($_POST['group_a_available'."_$record_num"]); $group_a_max_message = $_POST['group_a_max_message'."_$record_num"]; // Group B $group_b = intval($_POST['group_b'."_$record_num"]); $group_b_available = intval($_POST['group_b_available'."_$record_num"]); $group_b_a_required = $_POST['group_b_a_required'."_$record_num"]; $group_b_mandatory = $_POST['group_b_mandatory'."_$record_num"]; $group_b_message = $_POST['group_b_message'."_$record_num"]; $group_b_max_message = $_POST['group_b_max_message'."_$record_num"]; // Group C $group_c = intval($_POST['group_c'."_$record_num"]); $group_c_available = intval($_POST['group_c_available'."_$record_num"]); $group_c_a_required = $_POST['group_c_a_required'."_$record_num"]; $group_c_mandatory = $_POST['group_c_mandatory'."_$record_num"]; $group_c_message = $_POST['group_c_message'."_$record_num"]; $group_c_max_message = $_POST['group_c_max_message'."_$record_num"]; $query = $hotlunch_menu_dates->BuildUpdate(); db_query($query); } $form_message = getLanguageText('MSG-MENUS-UPDATED'); $action = "$action&schedule_num=$schedule_num"; $naction = "list"; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "set-to-checkboxes": case "set-to-quantities": $new_format = "Checkbox"; if ($naction == "set-to-quantities") $new_format = "Quantity"; $query = "UPDATE hotlunch_menu_dates " . "SET order_format = '$new_format' " . "WHERE school_num = $school_num " . "AND schedule_num = $schedule_num"; db_query($query); $query = "SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num"; $dates = db_query($query); while ($row = db_fetch_assoc($dates)) { $menu_num = $row['record_num']; db_query("UPDATE hotlunch_menu_items SET menu_item_format = 'D' WHERE school_num = $school_num AND menu_num = $menu_num"); } $form_message = getLanguageText('MSG-MENUS-UPDATED'); $action = "$action&schedule_num=$schedule_num"; $naction = "list"; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "delete-all": $dTitle .= getLanguageText('TEXT-THIS-WILL-DELETE-ALL-MENU-DATES-FOR-THIS-SCHEDULE')."
\n".getLanguageText('JAVA-CONFIRM-DELETE'); $dTitle = getLanguageText('MSG-DELETE-ALL-DATES') . '
' . getLanguageText('JAVA-CONFIRM-DELETE'); $HiddenFields = " \n"; $HiddenFields .= " \n"; include "delete.form.php"; break; case "delete-all-confirmed": // Get set of menu dates to delete $query = "SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num"; $menu_dates = db_query($query); if (db_num_rows($menu_dates) > 0) { while ($row = db_fetch_array($menu_dates)) { $menu_num = $row['record_num']; // Get set of menu items for menu date $menu_items = db_query("SELECT * FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $menu_num"); if (db_num_rows($menu_items) > 0) { while ($row = db_fetch_array($menu_items)) { $menu_item_num = $row['record_num']; // Delete menu items and menu products db_query("DELETE FROM hotlunch_menu_products WHERE school_num = $school_num AND menu_item_num = $menu_item_num"); db_query("DELETE FROM hotlunch_menu_items WHERE school_num = $school_num AND record_num = $menu_item_num"); // db_query("UPDATE hotlunch_menu_items SET active = 'N' WHERE school_num = $school_num AND record_num = $menu_item_num"); } } db_query("DELETE FROM hotlunch_menu_dates WHERE school_num = $school_num AND record_num = $menu_num"); } } $form_message = getLanguageText('MSG-ALL-DATES-DELETED'); $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "copy": include "hotlunch_menu.copy.php"; break; case "copy-menu": $curr_source_menu = $_POST['source_menu']; $destination_type = $_POST['destination_type']; $destination_menu = $_POST['menu_num']; $menu_link = $_POST['menu_link']; $copy_menu_title = $_POST['copy_menu_title']; unset($error_message); $destination_schedule_num = $schedule_num; $source_schedule_num = db_getVal("SELECT schedule_num FROM hotlunch_menu_dates WHERE school_num = $school_num AND record_num = $curr_source_menu"); // Check that the source menu date is part of the current schedule if linking is requested if ($menu_link != 'No' && $source_schedule_num != $destination_schedule_num) { $error_message = getLanguageText('ERRORMSG-LINKING-MENUS-NOT-ALLOWED'); $action = "$action&schedule_num=$destination_schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } $hotlunch_menu_items = new Table("hotlunch_menu_items"); $hotlunch_menu_products = new Table("hotlunch_menu_products"); $hotlunch_menu_dates_classes = new Table("hotlunch_menu_dates_classes"); $hotlunch_menu_items_classes = new Table("hotlunch_menu_items_classes"); // Copy to existing menu date if ($destination_type == "Existing") { // Ensure that a valid menu has been selected if (count($destination_menu) == 0) { $error_message = getLanguageText('ERRORMSG-NO-DESTINATION-MENU'); $action = "$action&schedule_num=$destination_schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } // Check that source and destination are not the same for ($i = 0; $i < count($destination_menu); $i++) { $menu_num = $destination_menu[$i]; if ($curr_source_menu == $menu_num) { continue; } // Check if the destination menu is a source for other menus $num_menus = db_getVal("SELECT count(*) FROM hotlunch_menu_dates WHERE school_num = $school_num AND source_menu = $menu_num"); if ($num_menus > 0) { $error_message = getLanguageText('ERRORMSG-NO-COPY-TO-SOURCE'); $action = "$action&schedule_num=$destination_schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } } // Check that the destination date is after the source date if linking if ($menu_link != 'No') { $source_date = db_getVal("select menu_date from hotlunch_menu_dates where school_num = $school_num and schedule_num = $source_schedule_num and record_num = $curr_source_menu"); for ($i = 0; $i < count($destination_menu); $i++) { $menu_num = $destination_menu[$i]; $destination_date = db_getVal("select menu_date from hotlunch_menu_dates where school_num = $school_num and schedule_num = $source_schedule_num and record_num = $menu_num"); if ($source_date > $destination_date || !$destination_date) { $error_message = getLanguageText('ERRORMSG-SOURCE-MENU-PRIOR'); $action = "$action&schedule_num=$destination_schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } } } // Delete all items and products in destination menu for ($i = 0; $i < count($destination_menu); $i++) { $menu_num = $destination_menu[$i]; if (isset($menu_num) && $menu_num == $curr_source_menu) continue; // Get menu items from destination menu $query = "select * from hotlunch_menu_items " . "where school_num = $school_num " . "and menu_num = $menu_num"; $results = db_query($query); // Delete each menu item's products while ($row = db_fetch_array($results)) { $mnum = $row['record_num']; $query = "delete from hotlunch_menu_products " . "where school_num = $school_num " . "and menu_item_num = $mnum"; db_query($query); } // Delete all items in destination menu $query = "delete from hotlunch_menu_items " . "where school_num = $school_num " . "and menu_num = $menu_num"; db_query($query); // Delete all menu_dates_classes in destination menu $query = "delete from hotlunch_menu_dates_classes " . "where school_num = $school_num " . "and schedule_num = $destination_schedule_num " . "and menu_num = $menu_num"; db_query($query); // Delete all menu_items_classes in destination menu $query = "delete from hotlunch_menu_items_classes " . "where school_num = $school_num " . "and schedule_num = $destination_schedule_num " . "and menu_num = $menu_num"; db_query($query); } } else { $destination_menu = array(); // Check if there is a menu entry for this date if ($hotlunch_schedule['display_menu_date'] == 'Y') { $menu_date = $_POST['new_menu_date']; $num = db_getVal("select count(*) from hotlunch_menu_dates where school_num = $school_num and schedule_num = $destination_schedule_num and menu_date = '$menu_date'"); } // Check that the destination date is after the source date if linking if ($menu_link != 'No') { $source_date = db_getVal("select menu_date from hotlunch_menu_dates where school_num = $school_num and schedule_num = $source_schedule_num and record_num = $curr_source_menu"); if ($source_date > $menu_date) { $error_message = getLanguageText('ERRORMSG-SOURCE-MENU-PRIOR'); $action = "$action&schedule_num=$destination_schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } } // Get source menu date record $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $source_schedule_num AND record_num = $curr_source_menu"); $row = db_fetch_array($results); extract($row); // Create a new menu date entry $entry = initializeTableArray('hotlunch_menu_dates', $row); $entry['group_a_min'] = 0; $entry['group_b_mandatory'] = 'N'; $entry['group_c_mandatory'] = 'N'; $entry['group_d_mandatory'] = 'N'; $entry['group_e_mandatory'] = 'N'; $entry['group_f_mandatory'] = 'N'; $entry['group_g_mandatory'] = 'N'; $entry['group_h_mandatory'] = 'N'; $entry['group_i_mandatory'] = 'N'; $entry['group_j_mandatory'] = 'N'; $entry['group_k_mandatory'] = 'N'; $entry['group_l_mandatory'] = 'N'; $entry['group_m_mandatory'] = 'N'; $entry['order_revenue'] = 0; $entry['other_revenue'] = 0; $entry['supplier_costs'] = 0; $entry['other_costs'] = 0; $entry['net_revenue'] = 0; $entry['available'] = 'Y'; $entry['active'] = 'Y'; $entry['display'] = 'Y'; $sequence++; $entry['sequence'] = $sequence; $entry['menu_date'] = $_POST['new_menu_date']; $entry['menu_link'] = $_POST['menu_link']; $entry['source_menu'] = $curr_source_menu; if ($menu_link == 'No') $entry['source_menu'] = 0; if (strlen($_POST['new_menu_title'])) $entry['menu_title'] = $_POST['new_menu_title']; $entry['schedule_num'] = $destination_schedule_num; $menu_dates = new Table("hotlunch_menu_dates"); $query = $menu_dates->BuildInsert($entry); db_query($query); $destination_menu[] = db_insert_id(); } if (!isset($error_message) || strlen($error_message) == 0) { // Copy any hotlunch_menu_dates_classes entries $classes = db_query("SELECT * FROM hotlunch_menu_dates_classes WHERE school_num = $school_num AND schedule_num = $source_schedule_num AND menu_num = $curr_source_menu"); if (db_num_rows($classes)) { $selected_classes = array(); while ($row = db_fetch_assoc($classes)) { $selected_classes[] = $row['class_num']; } for ($i = 0; $i < count($destination_menu); $i++) { $menu_num = $destination_menu[$i]; if (isset($menu_num) && $menu_num == $curr_source_menu) continue; db_query("DELETE FROM hotlunch_menu_dates_classes WHERE school_num = $school_num AND schedule_num = $destination_schedule_num AND menu_num = $menu_num"); for ($j = 0; $j < count($selected_classes); $j++) { $cnum = $selected_classes[$j]; db_query("INSERT INTO hotlunch_menu_dates_classes VALUES ($school_num,$destination_schedule_num,$menu_num,$cnum)"); } } } // Get list of items from source_menu $query = "select * from hotlunch_menu_items " . "where school_num = $school_num " . "and menu_num = $curr_source_menu " . "order by sequence"; $items = db_query($query); while ($row = db_fetch_array($items)) { extract($row); // Initialize common values $source_item = 0; $current_source_item = 0; $comment = ""; $active_until_date = ''; for ($i = 0; $i < count($destination_menu); $i++) { $menu_num = $destination_menu[$i]; if (isset($menu_num) && $menu_num == $curr_source_menu) continue; $source_item_num = $record_num; $source_item = $record_num; if ($_POST['menu_link'] == 'No') $source_item = 0; $query = $hotlunch_menu_items->BuildInsert(); db_query($query); $new_item_num = db_insert_id(); // Get products for the menu item $query = "select * from hotlunch_menu_products " . "where school_num = $school_num " . "and menu_item_num = $record_num"; $products = db_query($query); while ($row = db_fetch_array($products)) { extract($row); $menu_item_num = $new_item_num; $query = $hotlunch_menu_products->BuildInsert(); db_query($query); } // Copy any hotlunch_menu_items_classes entries $classes = db_query("SELECT * FROM hotlunch_menu_items_classes WHERE school_num = $school_num AND schedule_num = $source_schedule_num AND menu_num = $curr_source_menu AND menu_item_num = $source_item_num"); if (db_num_rows($classes)) { $selected_classes = array(); while ($row = db_fetch_assoc($classes)) { $selected_classes[] = $row['class_num']; } db_query("DELETE FROM hotlunch_menu_items_classes WHERE school_num = $school_num AND schedule_num = $destination_schedule_num AND menu_num = $menu_num AND menu_item_num = $new_item_num"); for ($j = 0; $j < count($selected_classes); $j++) { $cnum = $selected_classes[$j]; db_query("INSERT INTO hotlunch_menu_items_classes VALUES ($school_num,$destination_schedule_num,$menu_num,$new_item_num,$cnum)"); } } } } // Update the destination menu title and linking information for ($i = 0; $i < count($destination_menu); $i++) { $menu_num = $destination_menu[$i]; if (isset($menu_num) && $menu_num == $curr_source_menu) continue; $query = "select * from hotlunch_menu_dates " . "where school_num = $school_num " . "and record_num = $curr_source_menu"; $results = db_query($query); $row = db_fetch_array($results); // Setup the code to assign the destination menu title value $title = db_escape_string($row['menu_title']); $mtitle_code = " menu_title = '$title', "; if ($destination_type == "Existing" && $copy_menu_title == 'N') $mtitle_code = ""; if ($destination_type == "New" && strlen($new_menu_title)) $mtitle_code = " menu_title = '" . db_escape_string($new_menu_title) . "', "; $order_format = $row['order_format']; $display_supplier_code = $row['display_supplier_code']; $display_group_colors = $row['display_group_colors']; $display_group_letters = $row['display_group_letters']; $menu_instructions = db_escape_string($row['menu_instructions']); $email_message = db_escape_string($row['email_message']); $active = $row['active']; $available = $row['available']; $display = 'Y'; $group_a = intval($row['group_a']); $group_b = intval($row['group_b']); $group_c = intval($row['group_c']); $group_d = intval($row['group_d']); $group_e = intval($row['group_e']); $group_f = intval($row['group_f']); $group_g = intval($row['group_g']); $group_h = intval($row['group_h']); $group_i = intval($row['group_i']); $group_j = intval($row['group_j']); $group_k = intval($row['group_k']); $group_l = intval($row['group_l']); $group_m = intval($row['group_m']); $group_a_available = intval($row['group_a_available']); $group_b_available = intval($row['group_b_available']); $group_c_available = intval($row['group_c_available']); $group_d_available = intval($row['group_d_available']); $group_e_available = intval($row['group_e_available']); $group_f_available = intval($row['group_f_available']); $group_g_available = intval($row['group_g_available']); $group_h_available = intval($row['group_h_available']); $group_i_available = intval($row['group_i_available']); $group_j_available = intval($row['group_j_available']); $group_k_available = intval($row['group_k_available']); $group_l_available = intval($row['group_l_available']); $group_m_available = intval($row['group_m_available']); $group_a_min = intval($row['group_a_min']); $group_a_max_message = $row['group_a_max_message']; $group_b_message = $row['group_b_message']; $group_b_max_message = $row['group_b_max_message']; $group_c_message = $row['group_c_message']; $group_c_max_message = $row['group_c_max_message']; $group_e_message = $row['group_e_message']; $group_b_a_required = $row['group_b_a_required']; $group_c_a_required = $row['group_c_a_required']; $group_d_a_required = $row['group_d_a_required']; $group_e_a_required = $row['group_e_a_required']; $group_f_a_required = $row['group_f_a_required']; $group_g_a_required = $row['group_g_a_required']; $group_h_a_required = $row['group_h_a_required']; $group_i_a_required = $row['group_i_a_required']; $group_j_a_required = $row['group_j_a_required']; $group_k_a_required = $row['group_k_a_required']; $group_l_a_required = $row['group_l_a_required']; $group_m_a_required = $row['group_m_a_required']; $group_b_mandatory = $row['group_b_mandatory']; $group_c_mandatory = $row['group_c_mandatory']; $group_d_mandatory = $row['group_d_mandatory']; $group_e_mandatory = $row['group_e_mandatory']; $group_f_mandatory = $row['group_f_mandatory']; $group_g_mandatory = $row['group_g_mandatory']; $group_h_mandatory = $row['group_h_mandatory']; $group_i_mandatory = $row['group_i_mandatory']; $group_j_mandatory = $row['group_j_mandatory']; $group_k_mandatory = $row['group_k_mandatory']; $group_l_mandatory = $row['group_l_mandatory']; $group_m_mandatory = $row['group_m_mandatory']; $menu_link = $_POST['menu_link']; if ($menu_link == 'No') $source_menu = 0; $query = "update hotlunch_menu_dates " . "set $mtitle_code" . "order_format = '$order_format', " . "display_supplier_code = '$display_supplier_code', " . "menu_instructions = '$menu_instructions', " . "email_message = '$email_message', " . "group_a = $group_a, " . "group_b = $group_b, " . "group_c = $group_c, " . "group_d = $group_d, " . "group_e = $group_e, " . "group_f = $group_f, " . "group_g = $group_g, " . "group_h = $group_h, " . "group_i = $group_i, " . "group_j = $group_j, " . "group_k = $group_k, " . "group_l = $group_l, " . "group_m = $group_m, " . "group_b_a_required = '$group_b_a_required', " . "group_c_a_required = '$group_c_a_required', " . "group_d_a_required = '$group_d_a_required', " . "group_e_a_required = '$group_e_a_required', " . "group_f_a_required = '$group_f_a_required', " . "group_g_a_required = '$group_g_a_required', " . "group_h_a_required = '$group_h_a_required', " . "group_i_a_required = '$group_i_a_required', " . "group_j_a_required = '$group_j_a_required', " . "group_k_a_required = '$group_k_a_required', " . "group_l_a_required = '$group_l_a_required', " . "group_m_a_required = '$group_m_a_required', " . "group_a_min = $group_a_min, " . "group_b_mandatory = '$group_b_mandatory', " . "group_c_mandatory = '$group_c_mandatory', " . "group_d_mandatory = '$group_d_mandatory', " . "group_e_mandatory = '$group_e_mandatory', " . "group_f_mandatory = '$group_f_mandatory', " . "group_g_mandatory = '$group_g_mandatory', " . "group_h_mandatory = '$group_h_mandatory', " . "group_i_mandatory = '$group_i_mandatory', " . "group_j_mandatory = '$group_j_mandatory', " . "group_k_mandatory = '$group_k_mandatory', " . "group_l_mandatory = '$group_l_mandatory', " . "group_m_mandatory = '$group_m_mandatory', " . "group_a_max_message = '$group_a_max_message', " . "group_b_message = '$group_b_message', " . "group_b_max_message = '$group_b_max_message', " . "group_c_message = '$group_c_message', " . "group_c_max_message = '$group_c_max_message', " . "group_e_message = '$group_e_message', " . "display = 'Y', " . "menu_link = '$menu_link', " . "source_menu = $source_menu " . "where school_num = $school_num " . "and record_num = $menu_num"; db_query($query); } $form_message = getLanguageText('MSG-MENU-COPIED'); if ($menu_link != 'No') $form_message = getLanguageText('MSG-MENU-LINKED'); } // $action = "$action&schedule_num=$destination_schedule_num"; // $naction = 'list'; // header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); header("Location: ?action=menu-dates&schedule_num=$schedule_num&naction=verify-links"); exit(); case "supplier-menu": case "view products": include "hotlunch_menu.supplier-menu.php"; break; case "generate menu": $selected_supplier = intval($_POST['selected_supplier']); $curr_menu_num = intval($_POST['menu_num']); // Get the location for these items $item_location = 'End'; if (array_key_exists('item_location',$_POST) && strlen($_POST['item_location'])) $item_location = $_POST['item_location']; // Format the menu dates into an array for further processing if ($curr_menu_num > 0) $current_menus = array($curr_menu_num); else { $selected_menus = $_POST['selected_menus']; if (is_array($selected_menus) && count($selected_menus) > 0) $current_menus = $selected_menus; else { $error_message = getLanguageText('ERRORMSG-NO-MENU-DATES-SELECTED'); header("Location: /?action=menu-dates&naction=supplier-menu&schedule_num=$schedule_num&menu_num=0"); exit(); } } // Check that a supplier has been selected if (strlen($selected_supplier) == 0) { $error_message = getLanguageText('ERRORMSG-NO-SUPPLIER-SELECTED'); $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } // Handle selected products $pwhere = ""; if (array_key_exists('selected_products',$_POST)) { $selected_products = $_POST['selected_products']; if (is_array($selected_products) && count($selected_products) > 0) { $pwhere = "and record_num IN (" . implode(",",$selected_products) . ") "; } } $products = db_query("SELECT * FROM supplier_products WHERE school_num = $supplier_school_num AND supplier_num = $selected_supplier AND status = 'Active' $pwhere ORDER BY sequence,product_name"); $num_products = db_num_rows($products); if ($num_products > 0) { $hotlunch_menu_items = new Table("hotlunch_menu_items"); $count = 0; while ($product = db_fetch_array($products)) { $menu_item = array(); // Initialize common values $menu_item['school_num'] = $school_num; $menu_item['menu_num'] = $curr_menu_num; $menu_item['source_item'] = 0; $menu_item['current_source_item'] = 0; $menu_item['comment'] = ""; $menu_item['warn_quantity'] = 0; $menu_item['item_title'] = $product['product_name']; $menu_item['item_description'] = $product['product_description']; $menu_item['label_title'] = $product['label_name']; $menu_item['online_price'] = $product['standard_online_price']; $menu_item['offline_price'] = $product['standard_offline_price']; $menu_item['special_price1'] = $product['special_price1']; $menu_item['special_price2'] = $product['special_price2']; $menu_item['special_price3'] = $product['special_price3']; $menu_item['number_of_alternate_prices'] = $product['number_of_alternate_prices']; $menu_item['alternate_price1'] = $product['alternate_price1']; $menu_item['alternate_price2'] = $product['alternate_price2']; $menu_item['alternate_price3'] = $product['alternate_price3']; $menu_item['alternate_price4'] = $product['alternate_price4']; $menu_item['alternate_price5'] = $product['alternate_price5']; $menu_item['alternate_price6'] = $product['alternate_price6']; $menu_item['alternate_price7'] = $product['alternate_price7']; $menu_item['alternate_price8'] = $product['alternate_price8']; $menu_item['alternate_price9'] = $product['alternate_price9']; $menu_item['alternate_price10'] = $product['alternate_price10']; $menu_item['taxable_item'] = $product['taxable_product']; $menu_item['bc_guideline_rating'] = $product['bc_guideline_rating']; $menu_item['quantity_available'] = $product['quantity_available']; $menu_item['max_quantity'] = $product['max_quantity']; $menu_item['options_title'] = $product['options_title']; $menu_item['options'] = $product['product_options']; $menu_item['default_options'] = $product['default_options']; $menu_item['max_options'] = $product['max_options']; $menu_item['min_options'] = $product['min_options']; $menu_item['options2_title'] = $product['options2_title']; $menu_item['options2'] = $product['product_options2']; $menu_item['default_options2'] = $product['default_options2']; $menu_item['max_options2'] = $product['max_options2']; $menu_item['min_options2'] = $product['min_options2']; $menu_item['options3_title'] = $product['options3_title']; $menu_item['options3'] = $product['product_options3']; $menu_item['default_options3'] = $product['default_options3']; $menu_item['max_options3'] = $product['max_options3']; $menu_item['min_options3'] = $product['min_options3']; $menu_item['nutritional_info'] = $product['nutritional_info']; $menu_item['item_message'] = $product['item_message']; $menu_item['hot_cold_food'] = $product['hot_cold_food']; $menu_item['sales_summary_item'] = $product['sales_summary_item']; $menu_item['image'] = $product['image']; $menu_item['item_type'] = 'Item'; $menu_item['menu_item_format'] = 'D'; $menu_item['active'] = 'Y'; $menu_item['display_price'] = 'Y'; $menu_item['product_type'] = $product['product_type']; $menu_item['quantity_available'] = 0; $menu_item['max_quantity'] = 0; for ($m = 0; $m < count($current_menus); $m++) { $menu_num = $current_menus[$m]; $product_num = $product['record_num']; $product_type = $product['product_type']; // Get next sequence number if ($item_location == 'End') { $sequence = intval(db_getVal("SELECT max(sequence) FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $menu_num")); if (!$sequence) $sequence = 1; else $sequence++; } else { $sequence = $count + 1; db_query("UPDATE hotlunch_menu_items SET sequence = sequence + 1 WHERE school_num = $school_num AND menu_num = $menu_num AND sequence >= $sequence"); } $menu_item['menu_num'] = $menu_num; $menu_item['sequence'] = $sequence; // Create the menu item entry $query = $hotlunch_menu_items->BuildInsert($menu_item); db_query($query); $menu_item_num = db_insert_id(); // Create the menu item product entry if ($product_type == 'Product') { db_query("INSERT INTO hotlunch_menu_products VALUES ($school_num,$menu_item_num,1,$product_num,1)"); } else { if (isset($product_num) && $product_num > 0) { $query = "SELECT sp.product_name,sp.record_num " . "FROM supplier_products_combos AS sc, supplier_products AS sp " . "WHERE sc.school_num = $supplier_school_num " . "AND sp.school_num = $supplier_school_num " . "AND sc.component_product_num = sp.record_num " . "AND sc.primary_product_num = $product_num"; $items = db_query($query); if (db_num_rows($items)) { while ($row = db_fetch_array($items)) { $component_num = $row['record_num']; db_query("INSERT INTO hotlunch_menu_products VALUES ($school_num,$menu_item_num,1,$component_num,1)"); } } } } // Get set of linked menu dates $linked_dates = db_query("select * from hotlunch_menu_dates where school_num = $school_num AND source_menu = $menu_num"); $linked_menus = array(); if (db_num_rows($linked_dates) > 0) { while ($row = db_fetch_array($linked_dates)) { $linked_menus[] = $row['record_num']; } } // Insert this item on any linked menus if (count($linked_menus) > 0) { $source_item = $menu_item_num; for ($i = 0; $i < count($linked_menus); $i++) { $menu_num = $linked_menus[$i]; $menu_item['menu_num'] = $menu_num; // Create the menu item entry $query = $hotlunch_menu_items->BuildInsert($menu_item); db_query($query); $menu_item_num = db_insert_id(); // Create the menu item product entry if ($product_type == 'Product') { db_query("INSERT INTO hotlunch_menu_products VALUES ($school_num,$menu_item_num,1,$product_num,1)"); } else { $query = "SELECT sp.product_name,sp.record_num " . "FROM supplier_products_combos AS sc, supplier_products AS sp " . "WHERE sc.school_num = $supplier_school_num " . "AND sp.school_num = $supplier_school_num " . "AND sc.component_product_num = sp.record_num " . "AND sc.primary_product_num = $product_num"; $items = db_query($query); if (db_num_rows($items)) { while ($row = db_fetch_array($items)) { $component_num = $row['record_num']; db_query("INSERT INTO hotlunch_menu_products VALUES ($school_num,$menu_item_num,1,$component_num,1)"); } } } } } } $count++; } $form_message = sprintf(getLanguageText('MSG-MENU-GENERATED'),$count); } $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "change-source-date": extract($_GET); // Get selected menu date record $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND record_num = $menu_num"); $current_menu = db_fetch_array($results); $current_source = $current_menu['source_menu']; $current_mdate = $current_menu['menu_date']; if ($current_source == '' || $current_source == 0) { $error_message = getLanguageText('ERRORMSG-MENU-DATE-NOT-SERIES'); $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } // Get set of menu dates in the current series $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND (source_menu = $current_source OR record_num = $current_source) ORDER BY sequence,menu_date"); // Create the text for the confirmation form $ConfirmText = "\n"; while ($row = db_fetch_array($results)) { $mnum = $row['record_num']; $mtitle = $row['menu_title']; $mdate = date("l F jS, Y",strtotime($row['menu_date'])); $ConfirmText .= " \n"; $ConfirmText .= " \n"; if ($mnum == $menu_num) { $ConfirmText .= " "; } else { if ($row['menu_date'] < $current_mdate) { $ConfirmText .= " "; } else { $ConfirmText .= " "; } } $ConfirmText .= " \n"; } $ConfirmText .= "
$mtitle - $mdate   - " . getLanguageText('TEXT-NEW-SOURCE-MENU') . " - " . getLanguageText('TEXT-UNLINKED-MENU') . " - " . getLanguageText('TEXT-LINKED-TO') . ' ' . $current_mdate . "
\n"; // Confirm the change of the source menu $ConfirmTitle = getLanguageText('TEXT-CONFIRM-CHANGE-SOURCE'); $ConfirmButton = getLanguageText('TEXT-CHANGE-SOURCE-MENU'); $next_naction = "change-source-date-confirmed"; include "confirm.form.php"; break; case "change-source-date-confirmed": extract($_POST); // Get selected menu date record $results = db_query("SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND record_num = $menu_num"); $current_menu = db_fetch_array($results); $current_source = $current_menu['source_menu']; $current_mdate = $current_menu['menu_date']; // Get set of menu dates in the current series prior to the selected menu date $results = db_query("SELECT * FROM hotlunch_menu_dates " . "WHERE school_num = $school_num " . "AND menu_date <= '$current_mdate' " . "AND (source_menu = $current_source OR record_num = $current_source) " . "AND record_num != $menu_num " . "ORDER BY sequence,menu_date"); // Process the menu dates while ($row = db_fetch_array($results)) { $mnum = $row['record_num']; db_query("UPDATE hotlunch_menu_dates SET source_menu = 0, menu_link = 'No' WHERE school_num = $school_num AND record_num = $mnum"); db_query("UPDATE hotlunch_menu_items SET source_item = 0 WHERE school_num = $school_num AND menu_num = $mnum"); } // Get set of menu dates in the current series after the selected menu date $results = db_query("SELECT * FROM hotlunch_menu_dates " . "WHERE school_num = $school_num " . "AND menu_date >= '$current_mdate' " . "AND (source_menu = $current_source OR record_num = $current_source) " . "AND record_num != $menu_num " . "ORDER BY sequence,menu_date"); // Process the menu dates while ($row = db_fetch_array($results)) { $mnum = $row['record_num']; db_query("UPDATE hotlunch_menu_dates SET source_menu = $menu_num WHERE school_num = $school_num AND record_num = $mnum"); } // Now process the selected menu date and it's items db_query("UPDATE hotlunch_menu_dates SET source_menu = 0, menu_link = 'No' WHERE school_num = $school_num AND record_num = $menu_num"); $mitems = db_query("SELECT * FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $menu_num"); while ($row = db_fetch_array($mitems)) { $item_num = $row['record_num']; $source_item = $row['source_item']; db_query("UPDATE hotlunch_menu_items SET source_item = $item_num WHERE school_num = $school_num AND source_item = $source_item"); db_query("UPDATE hotlunch_menu_items SET source_item = 0 WHERE school_num = $school_num AND record_num = $item_num"); } $form_message = getLanguageText('MSG-SOURCE-MENU-CHANGED'); $action = "$action&schedule_num=$schedule_num"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "save-sort": // Parse the hidden fields to update the sort sequence in the database if (array_key_exists('row_sequence',$_POST) && strlen($_POST['row_sequence']) > 0) { // Update the sequence to avoid duplicate keys db_query("UPDATE $CurrentTable SET sequence = sequence + 1000 WHERE school_num = $school_num"); $row_sequence = db_escape_string(trim($_POST['row_sequence'], ", ")); $item_sequence = explode(',',$row_sequence); for ($i = 0; $i < count($item_sequence); $i++) { $rnum = $item_sequence[$i]; $sequence = $i + 1; $query = "update $CurrentTable set sequence = $sequence where record_num = $rnum"; db_query($query); } } $form_message = getLanguageText('RECORDS-SORTED-MSG'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case 'sequence-by-date': $query = "SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num ORDER BY menu_type,menu_date"; $results = db_query($query); $sequence = 1; while ($row = db_fetch_assoc($results)) { $rnum = $row['record_num']; db_query("UPDATE hotlunch_menu_dates SET sequence = $sequence WHERE record_num = $rnum"); $sequence++; } $form_message = getLanguageText('RECORDS-SORTED-MSG'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case 'remove-links': $query = "UPDATE hotlunch_menu_dates SET menu_link = 'No', source_menu = 0 WHERE school_num = $school_num AND schedule_num = $schedule_num"; db_query($query); $form_message = getLanguageText('MSG-MENUS-UPDATED'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case 'verify-links': $query = "SELECT * FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $schedule_num ORDER BY sequence,menu_date"; $menudates = db_query($query); $menuDates = array(); $menuNums = array(); while ($row = db_fetch_assoc($menudates)) { $record_num = $row['record_num']; $menuNums[] = $record_num; $menuDates[$record_num] = $row; } $sourceMenuItems = array(); $linkedMenuItems = array(); $numFixes = 0; for ($i = 0; $i < count($menuNums); $i++) { $menu_num = $menuNums[$i]; $row = $menuDates[$menu_num]; extract($row); if ($menu_link == 'No') { $query = "SELECT * FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $menu_num ORDER BY sequence"; $items = db_query($query); while ($row = db_fetch_assoc($items)) { $sourceMenuItems[$menu_num][] = $row; } } if ($menu_link != 'No') { $query = "SELECT * FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $menu_num ORDER BY sequence"; $items = db_query($query); while ($row = db_fetch_assoc($items)) { $linkedMenuItems[$menu_num][] = $row; extract($row); if ($source_item == 0) { $sourceItemNum = 0; $sitems = $sourceMenuItems[$source_menu]; for ($j = 0; $j < count($sitems); $j++) { if ($sitems[$j]['item_title'] == $item_title) $sourceItemNum = $sitems[$j]['record_num']; } if ($sourceItemNum > 0) { $query = "UPDATE hotlunch_menu_items SET source_item = $sourceItemNum, current_source_item = $sourceItemNum WHERE school_num = $school_num AND menu_num = $menu_num AND record_num = $record_num"; db_query($query); $numFixes++; } } } } } if ($numFixes > 0) $numFixes = " -> $numFixes ".getLanguageText('TEXT-REPAIRED'); else $numFixes = ""; $form_message = getLanguageText('MSG-MENUS-UPDATED') . "$numFixes"; $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case 'switch-links-to-all': $query = "UPDATE hotlunch_menu_dates SET menu_link = 'All' WHERE school_num = $school_num AND schedule_num = $schedule_num AND menu_link != 'No'"; db_query($query); $form_message = getLanguageText('MSG-MENUS-UPDATED'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case 'switch-links-to-paper': $query = "UPDATE hotlunch_menu_dates SET menu_link = 'Paper' WHERE school_num = $school_num AND schedule_num = $schedule_num AND menu_link != 'No'"; db_query($query); $form_message = getLanguageText('MSG-MENUS-UPDATED'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case 'switch-links-to-admin': $query = "UPDATE hotlunch_menu_dates SET menu_link = 'Admin' WHERE school_num = $school_num AND schedule_num = $schedule_num AND menu_link != 'No'"; db_query($query); $form_message = getLanguageText('MSG-MENUS-UPDATED'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); }