224 lines
7.4 KiB
PHP
224 lines
7.4 KiB
PHP
<?php
|
|
require_once("include/globals.php");
|
|
|
|
if (SessionActive() != 1 || ! UserLoggedIn()) {
|
|
header("Location: /");
|
|
exit();
|
|
}
|
|
|
|
|
|
|
|
//
|
|
// Process all actions to list and edit records
|
|
//
|
|
$CurrentTable = "hotlunch_schedules_discounts";
|
|
$DeleteField = "menu_group,order_quantity,discount_percentage";
|
|
$dSeparator = "<br>";
|
|
$FormFile = "hotlunch_schedules_discounts.form.php";
|
|
$TitleText = getLanguageText('TEXT-SCHEDULE-DISCOUNTS');
|
|
$OrderBy = "menu_date asc";
|
|
|
|
// Start the template and output buffering
|
|
startTemplate();
|
|
$templatePageTitle = $TitleText;
|
|
|
|
|
|
// 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']);
|
|
|
|
// 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 (in_array($_SESSION['UserInfo']['type'],array('Schedule Team','Schedule Volunteer'))) {
|
|
$userNum = intval($_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();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
$scriptName = str_replace("/m/data1/app.hotlunches.net/","",__FILE__);
|
|
echo("<!-- $scriptName -->\n\n");
|
|
|
|
|
|
if (array_key_exists('naction',$_GET)) $naction = $_GET['naction'];
|
|
if (array_key_exists('naction',$_POST)) $naction = $_POST['naction'];
|
|
|
|
|
|
|
|
switch (strtolower($naction)) {
|
|
case "add":
|
|
$next_naction = "insert";
|
|
$active = 'Y';
|
|
|
|
include $FormFile;
|
|
break;
|
|
|
|
case "insert":
|
|
extract($_POST);
|
|
|
|
// Insert primary record
|
|
$table = new Table("$CurrentTable");
|
|
$query = $table->BuildInsert();
|
|
db_query($query);
|
|
|
|
$form_message = getLanguageText('RECORD-INSERTED-MSG');
|
|
$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 "edit":
|
|
$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);
|
|
include $FormFile;
|
|
}
|
|
else {
|
|
$error_message = getLanguageText('ERRORMSG-NOT-FOUND');
|
|
$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();
|
|
}
|
|
break;
|
|
|
|
case "update":
|
|
extract($_POST);
|
|
|
|
// Update the menu date record
|
|
$table = new Table("$CurrentTable");
|
|
$query = $table->BuildUpdate();
|
|
db_query($query);
|
|
|
|
$form_message = getLanguageText('RECORD-UPDATED-MSG');
|
|
$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":
|
|
$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++) {
|
|
if ($i) $dTitle .= $dSeparator;
|
|
$dTitle .= $row[$dFields[$i]];
|
|
}
|
|
|
|
$dTitle .= "<br><br>" . getLanguageText('MSG-DELETE-ALL-DATES');
|
|
|
|
$HiddenFields = " <input type='hidden' name='schedule_num' value='$schedule_num'>";
|
|
include "delete.form.php";
|
|
}
|
|
else {
|
|
$error_message = getLanguageText('ERRORMSG-NOT-FOUND');
|
|
$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();
|
|
}
|
|
break;
|
|
|
|
case "delete-confirmed":
|
|
$record_num = intval($_GET['record_num']);
|
|
|
|
// Delete the current record
|
|
$query = "delete from $CurrentTable where record_num = $record_num";
|
|
db_query($query);
|
|
|
|
$form_message = getLanguageText('RECORD-DELETED-MSG');
|
|
$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();
|
|
|
|
default:
|
|
$naction = "list";
|
|
break;
|
|
}
|
|
|
|
|
|
//
|
|
// List all records if naction is "list"
|
|
//
|
|
if ($naction == "list") {
|
|
|
|
$scriptName = str_replace("/m/data1/app.hotlunches.net/","",__FILE__);
|
|
include "help.docs.php";
|
|
|
|
$columnHeaders = array(getLanguageText('TEXT-MENU-GROUP'),
|
|
getLanguageText('TEXT-QUANTITY'),
|
|
getLanguageText('TEXT-DISCOUNT'),
|
|
getLanguageText('TEXT-AMOUNT'),
|
|
getLanguageText('TEXT-EXPIRY-DATE'));
|
|
$columnAlign = array('center','center','center','center');
|
|
|
|
$query = "select menu_group,order_quantity,concat(discount_percentage,'%'),concat('$currencySymbol',discount_amount),expiry_date,record_num " .
|
|
"from hotlunch_schedules_discounts " .
|
|
"where school_num = $school_num " .
|
|
"and schedule_num = $schedule_num " .
|
|
"order by menu_group,order_quantity";
|
|
$results = db_query($query);
|
|
|
|
$message_width = $default_data_width;
|
|
include "form.messages.php";
|
|
|
|
$action = "$action&schedule_num=$schedule_num";
|
|
listData($results,$columnHeaders,$action,array(),'Y',$columnAlign);
|
|
}
|
|
|
|
include "hotlunch_reports.menu.php";
|
|
|
|
endTemplate();
|
|
?>
|