Files
HotLunches/hotlunch_menu.item_update.form.php
2026-10-19 15:22:52 -07:00

229 lines
7.7 KiB
PHP

<?php
require_once("include/globals.php");
if (SessionActive() != 1 || ! UserLoggedIn()) {
header("Location: /");
exit();
}
$AllowedUserTypes = array('SuperUser','System Administrator','Application Administrator','Application Volunteer','Schedule Volunteer','Administration Team','Schedule Team','Supplier');
if (checkPermission($AllowedUserTypes) == 1) {
include "hotlunch_reports.menu.php";
}
// Get schedule information
$query = "select * from hotlunch_schedules " .
"where school_num = $school_num " .
"and record_num = $schedule_num";
$results = db_query($query);
if (db_num_rows($results) == 0) {
echo("<br>\n");
$error_message = getLanguageText('ERRORMSG-INVALID-SCHEDULE-NUM');
include "form.messages.php";
return;
}
$schedule_record = db_fetch_array($results);
$schedule_name = $schedule_record['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 = $_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) {
echo("<br>\n");
$error_message = getLanguageText('TEXT-NO-ACCESS-TO-SCHEDULE');
include "form.messages.php";
return;
}
}
?>
<br>
<form method='post' action='/' name='orderform'>
<?php
$form_width = '80%';
$message_width = $form_width;
include "form.messages.php";
?>
<table width='<?php echo($form_width) ?>' class='content-table'>
<tr>
<td align='center' class='heading'><?php displayLanguageText('TEXT-MENU-ITEM-UPDATE'); ?> - <?php echo($schedule_name) ?></td>
</tr>
<tr>
<td align='center'>
<br>
<table width='850' cellpadding='1' cellspacing='1' border='0'>
<?php
// Get menu dates for this schedule
$query = "select * from hotlunch_menu_dates " .
"where school_num = $school_num " .
"and schedule_num = $schedule_num " .
"order by sequence,menu_date";
$menu_dates = db_query($query);
while ($menu_date = db_fetch_array($menu_dates)) {
$menu_num = $menu_date['record_num'];
$menu_title = $menu_date['menu_title'];
$menu_link = $menu_date['menu_link'];
if ($menu_link != 'No') $menu_title .= " - Linked Menu: $menu_link";
// Get menu items for this menu date
$query = "select * from hotlunch_menu_items " .
"where school_num = $school_num " .
"and menu_num = $menu_num " .
"order by sequence";
$menu_items = db_query($query);
?>
<tr>
<td align='left' colspan='5' class='success'>
<table width='100%' cellspacing='0' cellpadding='0' border='0'>
<tr>
<td align='left' class='success'><b><?php echo($menu_title) ?></b></td>
<td align='right' class='success'><b><?php echo(date("l F jS, Y",strtotime($menu_date['menu_date']))) ?></b></td>
</tr>
</td>
</table>
</tr>
<?php
if (db_num_rows($menu_items) > 0) {
?>
<tr>
<td align='left' class='oitem'><b><?php displayLanguageText('TEXT-ITEM-NAME'); ?></b></td>
<td align='left' class='oitem'><b><?php displayLanguageText('TEXT-DESCRIPTION'); ?></b></td>
<td align='left' class='oitem'><b><?php displayLanguageText('TEXT-LABEL'); ?></b></td>
<td align='center' class='oitem'>&nbsp;</td>
</tr>
<?php
}
while ($menu_item = db_fetch_array($menu_items)) {
extract($menu_item);
$menu_item_num = $record_num;
if ($item_type != 'Heading') {
// Setup field names
$item_title_field = "title_$menu_item_num";
$description_field = "description_$menu_item_num";
$label_field = "label_$menu_item_num";
$delete_field = "delete_$menu_item_num";
$disabled = "";
$orderedNum = db_getVal("SELECT count(*) FROM hotlunch_order_items WHERE school_num = $school_num AND schedule_num = $schedule_num AND menu_num = $menu_num AND menu_item_num = $menu_item_num");
if ($orderedNum > 0) $disabled = " disabled";
$item_title = str_replace("'","&apos;",$item_title);
// $item_title = str_replace('"',"\"",$item_title);
$item_description = str_replace("'","&apos;",$item_description);
// $item_description = str_replace('"',"\"",$item_description);
$label_title = str_replace("'","&apos;",$label_title);
// $label_title = str_replace('"',"\"",$label_title);
?>
<tr>
<?php if ($menu_link == 'No') { ?>
<td align='left' class='oitem'>
<input type='text' name='<?php echo($item_title_field) ?>' value='<?php echo($item_title) ?>' size='30' item_num='<?php echo($menu_item_num) ?>' fname='item_title' class='menu-item-field'>
</td>
<td align='left' class='oitem'>
<input type='text' name='<?php echo($description_field) ?>' value='<?php echo($item_description) ?>' size='50' item_num='<?php echo($menu_item_num) ?>' fname='item_description' class='menu-item-field'>
</td>
<td align='left' class='oitem'>
<input type='text' name='<?php echo($label_field) ?>' value='<?php echo($label_title) ?>' size='30' item_num='<?php echo($menu_item_num) ?>' fname='label_title' class='menu-item-field'>
</td>
<td align='center' class='oitem'><?php echo($orderedNum) ?></td>
<?php } else { ?>
<td align='left' class='oitem'><span id='item_title_<?php echo($menu_item_num) ?>'><?php echo(str_replace("'","&apos;",$item_title)) ?></span></td>
<td align='left' class='oitem'><span id='item_description_<?php echo($menu_item_num) ?>'><?php echo(str_replace("'","&apos;",$item_description)) ?></span></td>
<td align='left' class='oitem'><span id='label_title_<?php echo($menu_item_num) ?>'><?php echo(str_replace("'","&apos;",$label_title)) ?></span></td>
<td align='center' class='oitem'><?php echo($orderedNum) ?></td>
<?php } ?>
</tr>
<?php
}
else {
?>
<tr>
<td align='left' colspan='5' class='menudate-subheader'><b> -- <?php echo($item_title) ?> -- </b></td>
</tr>
<?php
}
}
?>
<tr>
<td align='left' colspan='5'>&nbsp;</td>
</tr>
<?php
}
?>
</table>
</td>
</tr>
<tr>
<td align='center'>
<br>
<input type='submit' id='refresh-screen' class='btn btn--primary' value="<?php displayLanguageText('TEXT-REFRESH-DATA'); ?>">
<br>
<br>
</td>
</tr>
</table>
</form>
<?php include "hotlunch_orders.print_buttons.php"; ?>
<script>
$(document).ready(function() {
<?php include "include/ajax.Setup.php" ?>
$(document).on('change', '.menu-item-field', function() {
var item_num = $(this).attr('item_num');
var fname = $(this).attr('fname');
var fvalue = $(this).val();
$.ajax({
url: 'ajax.UpdateDBField.php',
data: {
table_name: 'hotlunch_menu_items',
field_name: fname,
field_value: fvalue,
field_type: 'string',
record_num: item_num
},
dataType: 'json'
}).done(function(results) {
if (results.linked.length > 0) {
$.each(results.linked, function(key, entry) {
var linkedField = fname+'_'+entry;
$("#"+linkedField).html(results.new_value);
});
}
});
});
$("#refresh-screen").click(function(e) {
e.preventDefault();
location.reload();
});
});
</script>