"$schedule_start_date 00:00:00") { $error = 'Y'; $error_message = getLanguageText('ERRORMSG-DATE-ORDER'); } if ($error == 'N' && $schedule_start_date > $schedule_end_date) { $error = 'Y'; $error_message = getLanguageText('ERRORMSG-DATE-ORDER'); } $numDays = intval(strtotime($schedule_end_date) - strtotime($schedule_start_date)) / (60 * 60 * 24); if ($error == 'N' && $numDays > 300) { $error = 'Y'; $error_message = getLanguageText('ERRORMSG-INVALID-DATE-RANGE'); } // Ensure that some lunch days are specified if ($error == 'N' && isset($lunch_days) && is_array($lunch_days) && count($lunch_days) == 0) { $error = 'Y'; $error_message = getLanguageText('ERRORMSG-NO-ORDER-DAYS'); } // If there is an error return to the form if ($error == 'Y') { $naction = "add"; $next_naction = "insert"; $active = 'Y'; include $FormFile; break; } // Reformat the lunch_days if (isset($lunch_days)) { $lunch_days_save = $lunch_days; if (is_array($lunch_days)) $lunch_days = implode(",",$lunch_days); else { $lunch_days = ""; $lunch_days_save = array(); } } else { $lunch_days = ""; $lunch_days_save = array(); } $supplier_source_school = $school_num; $entry = array(); if (isset($school_num)) $entry['school_num'] = $school_num; if (isset($sequence)) $entry['sequence'] = $sequence; if (isset($schedule_name)) $entry['schedule_name'] = $schedule_name; if (isset($start_order_datetime)) $entry['start_order_datetime'] = $start_order_datetime; if (isset($end_order_datetime)) $entry['end_order_datetime'] = $end_order_datetime; if (isset($start_order_date)) $entry['start_order_date'] = $start_order_date; if (isset($end_order_date)) $entry['end_order_date'] = $end_order_date; if (isset($end_order_time)) $entry['end_order_time'] = $end_order_time; if (isset($custom_menu_end_dates)) $entry['custom_menu_end_dates'] = $custom_menu_end_dates; if (isset($schedule_start_date)) $entry['schedule_start_date'] = $schedule_start_date; if (isset($schedule_end_date)) $entry['schedule_end_date'] = $schedule_end_date; if (isset($default_menu_title)) $entry['default_menu_title'] = $default_menu_title; if (isset($lunch_days)) $entry['lunch_days'] = $lunch_days; if (isset($status)) $entry['status'] = $status; if (isset($schedule_type)) $entry['schedule_type'] = $schedule_type; if (isset($schedule_prices)) $entry['schedule_prices'] = $schedule_prices; if (isset($order_button_text)) $entry['order_button_text'] = $order_button_text; if (isset($display_on_calendar)) $entry['display_on_calendar'] = $display_on_calendar; if (isset($schedule_for)) $entry['schedule_for'] = $schedule_for; if (isset($edit_paid_orders)) $entry['edit_paid_orders'] = $edit_paid_orders; if (isset($edit_complimentary_orders)) $entry['edit_complimentary_orders'] = $edit_complimentary_orders; if (isset($edit_linked_menus)) $entry['edit_linked_menus'] = $edit_linked_menus; if (isset($menu_display_mode)) $entry['menu_display_mode'] = $menu_display_mode; if (isset($calendar_month_breaks)) $entry['calendar_month_breaks'] = $calendar_month_breaks; if (isset($display_title_or_label)) $entry['display_title_or_label'] = $display_title_or_label; if (isset($display_menu_title)) $entry['display_menu_title'] = $display_menu_title; if (isset($display_menu_headings)) $entry['display_menu_headings'] = $display_menu_headings; if (isset($display_item_price)) $entry['display_item_price'] = $display_item_price; if (isset($display_product_thumbnail)) $entry['display_product_thumbnail'] = $display_product_thumbnail; if (isset($schedule_print_format)) $entry['schedule_print_format'] = $schedule_print_format; if (isset($schedule_receipts_description)) $entry['schedule_receipts_description'] = $schedule_receipts_description; if (isset($allow_multiple_orders)) $entry['allow_multiple_orders'] = $allow_multiple_orders; if (isset($check_for_missed_menus)) $entry['check_for_missed_menus'] = $check_for_missed_menus; if (isset($discount_offered)) $entry['discount_offered'] = $discount_offered; if (isset($discount_type)) $entry['discount_type'] = $discount_type; if (isset($discount_order_minimum)) $entry['discount_order_minimum'] = $discount_order_minimum; if (isset($discount_expiry_date)) $entry['discount_expiry_date'] = $discount_expiry_date; if (isset($paper_order_charge)) $entry['paper_order_charge'] = $paper_order_charge; if (isset($paper_order_message)) $entry['paper_order_message'] = $paper_order_message; if (isset($late_charge)) $entry['late_charge'] = $late_charge; if (isset($late_charge_date)) $entry['late_charge_date'] = $late_charge_date; if (isset($tax_rate)) $entry['tax_rate'] = $tax_rate; if (isset($tax_description)) $entry['tax_description'] = $tax_description; if (isset($days_prior_to_order_date)) $entry['days_prior_to_order_date'] = $days_prior_to_order_date; if (isset($order_until_hour)) $entry['order_until_hour'] = $order_until_hour; if (isset($menu_cutoff_date)) $entry['menu_cutoff_date'] = $menu_cutoff_date; if (isset($hide_unavailable_dates)) $entry['hide_unavailable_dates'] = $hide_unavailable_dates; if (isset($additional_charge)) $entry['additional_charge'] = $additional_charge; if (isset($additional_charge_message)) $entry['additional_charge_message'] = $additional_charge_message; if (isset($qty_warning_limit)) $entry['qty_warning_limit'] = $qty_warning_limit; if (isset($qty_absolute_limit)) $entry['qty_absolute_limit'] = $qty_absolute_limit; if (isset($display_menu_date)) $entry['display_menu_date'] = $display_menu_date; if (isset($display_instructions)) $entry['display_instructions'] = $display_instructions; if (isset($description)) $entry['description'] = $description; if (isset($paper_description)) $entry['paper_description'] = $paper_description; if (isset($paper_footer)) $entry['paper_footer'] = $paper_footer; if (isset($notification_email)) $entry['notification_email'] = $notification_email; if (isset($notification_order_details)) $entry['notification_order_details'] = $notification_order_details; if (isset($email_message)) $entry['email_message'] = $email_message; if (isset($order_entered_message)) $entry['order_entered_message'] = $order_entered_message; if (isset($volunteer_signup)) $entry['volunteer_signup'] = $volunteer_signup; if (isset($schedule_volunteer_message)) $entry['schedule_volunteer_message'] = $schedule_volunteer_message; if (isset($min_volunteers)) $entry['min_volunteers'] = $min_volunteers; if (isset($max_volunteers)) $entry['max_volunteers'] = $max_volunteers; if (isset($class_sort_field)) $entry['class_sort_field'] = $class_sort_field; if (isset($implement_order_notes)) $entry['implement_order_notes'] = $implement_order_notes; if (isset($order_notes_message)) $entry['order_notes_message'] = $order_notes_message; if (isset($implement_order_notes2)) $entry['implement_order_notes2'] = $implement_order_notes2; if (isset($order_notes_message2)) $entry['order_notes_message2'] = $order_notes_message2; if (isset($supplier_num)) $entry['supplier_num'] = $supplier_num; if (isset($supplier_source_school)) $entry['supplier_source_school'] = $supplier_source_school; if (isset($last_link_update)) $entry['last_link_update'] = $last_link_update; // Insert primary record $table = new Table("$CurrentTable"); $query = $table->BuildInsert($entry); writeLog($query); db_query($query); $schedule_num = db_insert_id(); // Handle selected documents db_query("delete from hotlunch_schedules_documents where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_documents) && count($selected_documents) > 0) { for ($i = 0; $i < count($selected_documents); $i++) { if ($selected_documents[$i] == 0) continue; $doc_num = $selected_documents[$i]; db_query("insert into hotlunch_schedules_documents values ($school_num,$schedule_num,$doc_num)"); } } // Handle selected classes db_query("delete from hotlunch_schedules_classes where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_classes) && count($selected_classes) > 0) { for ($i = 0; $i < count($selected_classes); $i++) { if ($selected_classes[$i] == 0) continue; $class_num = $selected_classes[$i]; db_query("insert into hotlunch_schedules_classes values ($school_num,$schedule_num,$class_num)"); } } // Handle selected categories db_query("delete from hotlunch_schedules_categories where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_categories) && count($selected_categories) > 0) { for ($i = 0; $i < count($selected_categories); $i++) { if ($selected_categories[$i] == 0) continue; $category_num = $selected_categories[$i]; db_query("insert into hotlunch_schedules_categories values ($school_num,$schedule_num,$category_num)"); } } // Handle selected people db_query("delete from hotlunch_schedules_people where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_people) && count($selected_people) > 0) { for ($i = 0; $i < count($selected_people); $i++) { if ($selected_people[$i] == 0) continue; $user_num = $selected_people[$i]; db_query("insert into hotlunch_schedules_people values ($school_num,$schedule_num,$user_num)"); } } // Process lunch menu dates $menu_dates = new Table("hotlunch_menu_dates"); $current_date = $schedule_start_date; $current_time = strtotime($current_date) + 12 * 60 * 60; $error_message = ""; $menuCount = 0; while ((($siteType == 'hotlunch' || $siteType == 'fundraising') && $current_date <= $schedule_end_date) && $menuCount < 300) { $day = date("D",$current_time); if (isset($lunch_days_save) && in_array($day,$lunch_days_save)) { switch ($default_menu_title) { case 'dayofweek': $menu_title = date("l",$current_time); break; case 'longdate': $menu_title = date("l F jS",$current_time); break; case 'shortdate': $menu_title = date("l jS",$current_time); break; default: $menu_title = $default_menu_title; break; } $menu_date = $current_date; $menu_end_order_datetime = $current_date . " 00:00:00"; $menu_type = "Regular"; $status = 'Active'; $order_format = 'Quantity'; $display_supplier_code = 'N'; $order_revenue = 0.00; $other_revenue = 0.00; $supplier_costs = 0.00; $other_costs = 0.00; $net_revenue = 0.00; $menu_link = 'No'; $source_menu = 0; $group_a_min = 0; $group_a = 0; $group_b = 0; $group_c = 0; $group_d = 0; $group_e = 0; $group_f = 0; $group_g = 0; $group_h = 0; $group_i = 0; $group_j = 0; $group_k = 0; $group_l = 0; $group_m = 0; $group_b_a_required = 'N'; $group_c_a_required = 'N'; $group_d_a_required = 'N'; $group_e_a_required = 'N'; $group_f_a_required = 'N'; $group_g_a_required = 'N'; $group_h_a_required = 'N'; $group_i_a_required = 'N'; $group_j_a_required = 'N'; $group_k_a_required = 'N'; $group_l_a_required = 'N'; $group_m_a_required = 'N'; $group_b_mandatory = 'N'; $group_c_mandatory = 'N'; $group_d_mandatory = 'N'; $group_e_mandatory = 'N'; $group_f_mandatory = 'N'; $group_g_mandatory = 'N'; $group_h_mandatory = 'N'; $group_i_mandatory = 'N'; $group_j_mandatory = 'N'; $group_k_mandatory = 'N'; $group_l_mandatory = 'N'; $group_m_mandatory = 'N'; $num_volunteer_override = 'D'; $max_volunteers = 0; $email_message = ""; $active = 'Y'; $available = 'Y'; $display = 'Y'; // Create the requested number of menus per date for ($i = 0; $i < $menus_per_date; $i++) { $query = $menu_dates->BuildInsert(); writeLog($query); db_query($query); $menuCount++; } } $current_time += 24 * 60 * 60; $current_date = date("Y-m-d",$current_time); if ($menuCount > 295) { $error_message = getLanguageText('ERRORMSG-INVALID-DATE-RANGE'); } } writeLog("done"); $form_message = getLanguageText('RECORD-INSERTED-MSG'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "edit": $PageTitle = getLanguageText('RECORD-UPDATE-ENTRY') . " - $TitleText"; $ButtonText = getLanguageText('RECORD-UPDATE-ENTRY'); $next_naction = "update"; // Get current record $record_num = intval($_GET['record_num']); $query = "select * from $CurrentTable where record_num = $record_num"; $results = db_query($query); if (db_num_rows($results) == 1) { $row = db_fetch_array($results); extract($row); $schedule_num = $record_num; include $FormFile; } else { $error_message = getLanguageText('ERRORMSG-NOT-FOUND'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } break; case "update": extract($_POST); $schedule_num = $record_num; if (isset($custom_menu_end_dates) && $custom_menu_end_dates == 'Y') $days_prior_to_order_date = 0; if ($menu_display_mode != 'Form') $display_menu_date = 'Y'; if (!in_array($schedule_type,array('Hot Lunch','Date Sensitive'))) { $display_menu_date = 'N'; } // Reformat the lunch_days if (isset($lunch_days) && is_array($lunch_days)) $lunch_days = implode(",",$lunch_days); else $lunch_days = ""; // Update schedule $table = new Table("$CurrentTable"); $query = $table->BuildUpdate(); db_query($query); // Handle selected documents db_query("delete from hotlunch_schedules_documents where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_documents) && count($selected_documents) > 0) { for ($i = 0; $i < count($selected_documents); $i++) { if ($selected_documents[$i] == 0) continue; $doc_num = $selected_documents[$i]; db_query("insert into hotlunch_schedules_documents values ($school_num,$schedule_num,$doc_num)"); } } // Handle selected classes db_query("delete from hotlunch_schedules_classes where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_classes) && count($selected_classes) > 0) { for ($i = 0; $i < count($selected_classes); $i++) { if ($selected_classes[$i] == 0) continue; $class_num = $selected_classes[$i]; db_query("insert into hotlunch_schedules_classes values ($school_num,$schedule_num,$class_num)"); } } // Handle selected categories db_query("delete from hotlunch_schedules_categories where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_categories) && $select_category == 'Selected Categories' && count($selected_categories) > 0) { for ($i = 0; $i < count($selected_categories); $i++) { if ($selected_categories[$i] == 0) continue; $category_num = $selected_categories[$i]; db_query("insert into hotlunch_schedules_categories values ($school_num,$schedule_num,$category_num)"); } } // Handle selected people db_query("delete from hotlunch_schedules_people where school_num = $school_num and schedule_num = $schedule_num"); if (isset($selected_people) && count($selected_people) > 0) { for ($i = 0; $i < count($selected_people); $i++) { if ($selected_people[$i] == 0) continue; $user_num = $selected_people[$i]; db_query("insert into hotlunch_schedules_people values ($school_num,$schedule_num,$user_num)"); } } $form_message = getLanguageText('RECORD-UPDATED-MSG'); if ($next_action == "summary") header("Location: /?action=schedule-reports&schedule_num=$schedule_num&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); else header("Location: /?action=schedules&naction=list&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "set-schedule-pending": $record_num = intval($_GET['record_num']); // Set to Pending the current record $query = "update $CurrentTable set status = 'Pending' where school_num = $school_num and record_num = $record_num"; db_query($query); $form_message = getLanguageText('RECORD-UPDATED-MSG'); $naction = "list"; if (array_key_exists('next_naction',$_GET)) $naction = $_GET['next_naction']; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "activate-schedule": $record_num = intval($_GET['record_num']); // Activate the current record $query = "update $CurrentTable set status = 'Active' where school_num = $school_num and record_num = $record_num"; db_query($query); $form_message = getLanguageText('RECORD-UPDATED-MSG'); $naction = "list"; if (array_key_exists('next_naction',$_GET)) $naction = $_GET['next_naction']; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "complete-schedule": $record_num = intval($_GET['record_num']); // Close the current record $query = "update $CurrentTable set status = 'Completed' where school_num = $school_num and record_num = $record_num"; db_query($query); $form_message = getLanguageText('RECORD-UPDATED-MSG'); $naction = "list"; if (array_key_exists('next_naction',$_GET)) $naction = $_GET['next_naction']; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "delete": $record_num = intval($_GET['record_num']); $query = "select * from $CurrentTable where record_num = $record_num"; $results = db_query($query); if (db_num_rows($results) == 1) { $row = db_fetch_array($results); extract($row); $dFields = explode(",",$DeleteField); $dTitle = "$TitleText "; for ($i = 0; $i < count($dFields); $i++) { $dTitle .= $row[$dFields[$i]] . $dSeparator; } include "delete.form.php"; } else { $error_message = getLanguageText('ERRORMSG-NOT-FOUND'); $naction = 'list'; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); } break; case "delete-confirmed": $record_num = intval($_GET['record_num']); // Delete the current record $query = "update $CurrentTable set status = 'Deleted' where school_num = $school_num and record_num = $record_num"; db_query($query); $form_message = getLanguageText('RECORD-DELETED-MSG'); $naction = "list"; if (array_key_exists('next_naction',$_GET)) $naction = $_GET['next_naction']; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "sort-by-start-order-date": $sequence = 1; $results = db_query("SELECT * FROM hotlunch_schedules WHERE school_num = $school_num AND status != 'Deleted' ORDER BY start_order_datetime"); while ($row = db_fetch_assoc($results)) { $rnum = $row['record_num']; db_query("UPDATE hotlunch_schedules SET sequence = $sequence WHERE school_num = $school_num AND record_num = $rnum"); $sequence++; } $naction = "list"; break; case "set-old-to-completed": $new_status = 'Completed'; $date = date("Y-m-d",time() - 24 * 60 * 60 * 60); db_query("UPDATE hotlunch_schedules SET status = '$new_status' WHERE school_num = $school_num AND status IN ('Active','Completed') AND schedule_end_date <= '$date'"); $naction = "list"; if (array_key_exists('next_naction',$_GET)) $naction = $_GET['next_naction']; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); case "set-old-to-deleted": $new_status = 'Deleted'; $date = date("Y-m-d",time() - 24 * 60 * 60 * 60); db_query("UPDATE hotlunch_schedules SET status = '$new_status' WHERE school_num = $school_num AND status IN ('Active','Completed','Closed') AND schedule_end_date <= '$date'"); $naction = "list"; if (array_key_exists('next_naction',$_GET)) $naction = $_GET['next_naction']; header("Location: /?action=$action&naction=$naction&form_message=" . urlencode($form_message) . "&error_message=" . urlencode($error_message)); exit(); default: break; } // // List all records if naction is "list" // if ($naction == "list" || $naction == 'list-all' || $naction == 'list-deleted') { $scriptName = str_replace("/m/data1/app.hotlunches.net/","",__FILE__); include "help.docs.php"; // Manage supplier schedules $insert_new = 'Y'; $swhere = ""; if ($_SESSION['UserInfo']['type'] == 'Supplier') { $swhere = " and supplier_num = " . $_SESSION['UserInfo']['supplier_num']; } // Get records to display $columnHeaders = array(getLanguageText('TEXT-SCHEDULE'), getLanguageText('TEXT-START-ORDER'), getLanguageText('TEXT-END-ORDER'), getLanguageText('TEXT-STATUS'), getLanguageText('TEXT-SCHEDULE-TYPE'), getLanguageText('TEXT-MENUS'), getLanguageText('TEXT-ORDERS')); $columnAlign = array('left','left','left','center','center','center','center','center','center','center','center'); switch ($naction) { case 'list': $today = date("Y-m-d",time() - 60 * 60 * 24 * 2); $now = date("Y-m-d H:i:00",time() - 60 * 60 * 24 * 2); $query = "select schedule_num,max(menu_date) from hotlunch_schedules AS hls, hotlunch_menu_dates AS hlmd " . "where hlmd.school_num = $school_num " . "and hls.school_num = $school_num " . "and hlmd.menu_date >= '$today' " . "and hlmd.schedule_num = hls.record_num " . "and hls.status in ('Pending','Active') " . "GROUP BY 1"; $menudates = db_query($query); $mDateSchedules = ""; while ($row = db_fetch_array($menudates)) { if (strlen($mDateSchedules)) $mDateSchedules .= ","; $mDateSchedules .= $row['schedule_num']; } if (strlen($mDateSchedules)) $mDateSchedules = "OR record_num IN ($mDateSchedules)"; $query = "select hls.* " . "from hotlunch_schedules as hls " . "where hls.school_num = $school_num " . "and hls.status != 'Deleted' " . "and (hls.schedule_end_date >= '$today' OR hls.end_order_datetime >= '$now' $mDateSchedules) " . "$swhere " . "order by $scheduleSortOrder"; break; case 'list-all': $query = "select hls.* " . "from hotlunch_schedules as hls " . "where hls.school_num = $school_num " . "and hls.status != 'Deleted' " . $swhere . "order by schedule_start_date DESC"; break; case 'list-deleted': $query = "select hls.* " . "from hotlunch_schedules as hls " . "where hls.school_num = $school_num " . "and hls.status = 'Deleted' " . $swhere . "order by schedule_start_date DESC"; break; } $results = db_query($query); $otipSpans = ""; $data = array(); $count = 0; while ($row = db_fetch_array($results)) { extract($row); // Determine which classes have access to this schedule $classList = ""; $selectedClasses = db_query("SELECT * FROM hotlunch_schedules_classes WHERE school_num = $school_num AND schedule_num = $record_num"); $numClasses = db_num_rows($selectedClasses); if ($numClasses == 0) $scheduleAccess = $GlobalText['AllClasses']; else { $scheduleAccess = $GlobalText['SelectedClasses'] . " ($numClasses)"; $classes = ""; while ($row = db_fetch_assoc($selectedClasses)) { $cnum = $row['class_num']; $classes .= "(" . getClassInfo($cnum,'internal') . ")
"; } $classList = sprintf($otipROW2,"",$classes); } // Determine the number of menu dates $num_dates = db_getVal("SELECT count(*) FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $record_num"); // Determine the number of menu dates $num_orders = db_getVal("SELECT count(*) FROM hotlunch_order_header WHERE school_num = $school_num AND schedule_num = $record_num AND ordered_by_type != 'Concession'"); $span_id = "schedule_$record_num"; $start_order_datet = substr($start_order_datetime,0,16); $end_order_datet = substr($end_order_datetime,0,16); $otipSpans .= "" . $otipTABLE . sprintf($otipROW2,getLanguageText('TEXT-SCHEDULE') . ": ",$schedule_name) . sprintf($otipROW2,getLanguageText('TEXT-START-ORDER') . ": ",$start_order_datet) . sprintf($otipROW2,getLanguageText('TEXT-END-ORDER') . ": ",$end_order_datet); if ($schedule_type == 'Hot Lunch' || $schedule_type == 'Date Sensitive') { $otipSpans .= sprintf($otipROW2,getLanguageText('TEXT-SCHEDULE-START') . ": ",$schedule_start_date) . sprintf($otipROW2,getLanguageText('TEXT-SCHEDULE-END') . ": ",$schedule_end_date); } $otipSpans .= sprintf($otipROW2,getLanguageText('TEXT-STATUS') . "Status: ",$status) . sprintf($otipROW2,getLanguageText('TEXT-TYPE') . ": ",$schedule_type) . $otipROW21hr . sprintf($otipROW2,getLanguageText('TEXT-WARNING-LIMIT') . ": ",$qty_warning_limit) . sprintf($otipROW2,getLanguageText('TEXT-ABSOLUTE-LIMIT') . ": ",$qty_absolute_limit) . sprintf($otipROW2,getLanguageText('TEXT-DISPLAY-MENU-DATES') . ": ",$display_menu_date) . sprintf($otipROW2,getLanguageText('TEXT-DISPLAY-PRICES') . ": ",$schedule_prices); // Other schedule parameters if ($end_order_datetime > $schedule_start_date) { $otipSpans .= sprintf($otipROW2,"Days Prior to Meal Date :",$days_prior_to_order_date); } // Discount info if ($discount_offered > 0) { $currency = ''; $percentage = ''; if ($discount_type == 'Amount') $currency = $school_record['currency_symbol']; if ($discount_type == 'Percentage') $percentage = '%'; $otipSpans .= $otipROW21hr . sprintf($otipROW2,"Discount Offered :",$currency . $discount_offered . $percentage) . sprintf($otipROW2,"Discount Minimum Order :",$school_record['currency_symbol'] . $discount_order_minimum) . sprintf($otipROW2,"Discount Offered Until :",$discount_expiry_date); } // Tax info if ($tax_rate > 0) { $otipSpans .= $otipROW21hr . sprintf($otipROW2,"Tax Rate :",$tax_rate . '%') . sprintf($otipROW2,"Tax Description :",$tax_description); } $currency = $school_record['currency_symbol']; if ($paper_order_charge > 0) { $otipSpans .= sprintf($otipROW2,"Paper Order Charge :",$currency . $paper_order_charge) . sprintf($otipROW2,"Paper Order Charge Message :",$paper_order_message); } if ($late_charge > 0) { $otipSpans .= sprintf($otipROW2,"Late Order Charge :",$currency . $late_charge) . sprintf($otipROW2,"Late Order Date :",$late_charge_date); } if ($additional_charge > 0) { $otipSpans .= sprintf($otipROW2,"Additional Charge :",$currency . $additional_charge) . sprintf($otipROW2,"Additional Charge Message :",$additional_charge_message); } // Number of orders $hr = false; $orderStatus = array('Paid','Unpaid','Complimentary','Pending','Inactive'); for ($i = 0; $i < count($orderStatus); $i++) { $cStatus = $orderStatus[$i]; $numOrders = db_getVal("SELECT count(*) FROM hotlunch_order_header WHERE school_num = $school_num AND schedule_num = $record_num AND status = '$cStatus'"); $amtOrders = db_getVal("SELECT sum(order_total) FROM hotlunch_order_header WHERE school_num = $school_num AND schedule_num = $record_num AND status = '$cStatus'"); if ($numOrders) { if (!$hr) { $otipSpans .= $otipROW21hr; $hr = true; } $otipSpans .= sprintf($otipROW2,"$cStatus Orders :",$numOrders . " - $currency" . number_format($amtOrders,2)); } } if ($schedule_type == 'Hot Lunch' || $schedule_type == 'Date Sensitive') { $first_menu_date = db_getVal("SELECT min(menu_date) FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $record_num AND menu_type != 'Footer'"); $last_menu_date = db_getVal("SELECT max(menu_date) FROM hotlunch_menu_dates WHERE school_num = $school_num AND schedule_num = $record_num AND menu_type != 'Footer'"); $otipSpans .= $otipROW21hr . sprintf($otipROW2,"First Menu Date :",$first_menu_date) . sprintf($otipROW2,"Last Menu Date :",$last_menu_date); } $otipSpans .= $otipROW21hr . sprintf($otipROW2,getLanguageText('TEXT-SCHEDULE-ACCESS') . ": ",$scheduleAccess) . $classList; $otipSpans .= "\n"; $schedule_name = "$schedule_name
" . "$scheduleAccess"; $sdate = dateString('shortdatetime',strtotime($start_order_datetime))."
".date("Y",strtotime($start_order_datetime)); $edate = dateString('shortdatetime',strtotime($end_order_datetime))."
".date("Y",strtotime($end_order_datetime)); $statusText = getLanguageText('TEXT-'.$status); $typeText = getLanguageText('TEXT-'.$schedule_type); $data[$count] = array($schedule_name, $sdate, $edate, "$statusText", $typeText, $num_dates, $num_orders, 'record_num' => $record_num); $count++; } $message_width = $default_data_width; include "form.messages.php"; echo("
\n"); echo("

$TitleText List

\n"); echo("
\n"); $edit_icon = "Edit Schedule"; $delete_icon = "Delete Schedule"; $pending_icon = "Set Schedule to Pending"; $activate_icon = "Activate Schedule"; $close_icon = "Close Schedule"; $order_icon = "Order Order Form"; $dates_icon = "Order Menus"; $summary_icon = "Schedule Summary Page"; switch ($_SESSION['UserInfo']['type']) { case 'Supplier': $commands = array( "$edit_icon", "$dates_icon", "$summary_icon" ); $insert_new = 'N'; break; case 'Schedule Team': $commands = array( "$dates_icon", "$summary_icon" ); $insert_new = 'N'; break; default: $commands = array(); $commands[] = "$edit_icon"; $text = getLanguageText('TEXT-SET-STATUS-TO-PENDING'); $commands[] = "$pending_icon"; $text = getLanguageText('TEXT-SET-STATUS-TO-ACTIVE'); $commands[] = "$activate_icon"; $text = getLanguageText('TEXT-SET-STATUS-TO-COMPLETED'); $commands[] = "$close_icon"; $text = getLanguageText('TEXT-SET-STATUS-TO-DELETED'); $commands[] = "$delete_icon"; $commands[] = "$dates_icon"; $commands[] = "$summary_icon"; break; } if ($school_record['schedule_sort'] == 'sequence') { $customTableID = "schedules-table"; $useRowIDS = true; include "table.dnd.php"; } listDataCustom($data,$columnHeaders,$action,$commands,$insert_new,$columnAlign); if (count($data)) { echo("\n\n"); echo(""); echo(""); echo(""); echo("\n
" . getLanguageText('TEXT-SORT-BY-START-ORDER-DATE') . "" . getLanguageText('TEXT-SET-OLD-TO-COMPLETED') . "" . getLanguageText('TEXT-SET-OLD-TO-DELETED') . "
\n"); } } ?>