Files
HotLunches/ajax/ajax.DataRecord.Fetch.php
2026-10-19 15:22:52 -07:00

94 lines
2.1 KiB
PHP

<?php
$ValidAccess = 2010;
$sessionName = 'hotlunch';
session_name($sessionName);
session_start();
require_once("include/globals.php");
// Set default timezone
date_default_timezone_set("Canada/Pacific");
$now = date("Y-m-d H:i:s",time());
$return_data = array();
$moduleName = "ajax.DataRecord.Fetch.php";
// startLog($moduleName);
// CSRF token validation
include "include/ajax.csrfToken.php";
if (SessionActive() != 1 || ! UserLoggedIn()) {
logExit("Session is not active\n");
exit;
}
include "include/ajax.csrfToken.php";
// Get parameters
if (array_key_exists('table_name', $_GET)) $table_name = db_escape_string($_GET['table_name']);
if (array_key_exists('record_num', $_GET)) $record_num = intval($_GET['record_num']);
// Error logging
writeLog("school_num: $school_num\n");
writeLog("table_name: $table_name\n");
writeLog("record_num: $record_num\n");
// Validate parameters
if (strlen($table_name) == 0) exit("Invalid Access\n");
// Ensure numeric parameters are numeric
if (!is_numeric($record_num)) exit("Invalid Access\n");
if ($record_num == 0) logExit("record_num is zero\n");
$row = array();
// Get data record
switch ($table_name) {
case '_form_actions':
case '_form_fields':
$query = "SELECT * FROM $table_name WHERE record_num = $record_num";
break;
default:
$query = "SELECT * FROM $table_name WHERE school_num = $school_num AND record_num = $record_num";
break;
}
writeLog("query: $query\n");
$results = db_query($query);
if (db_num_rows($results)) {
$row = db_fetch_assoc($results);
$row['ajax_return_code'] = 1;
//
// Get additional data if necessary
//
switch ($table_name) {
case 'staff':
if ($row['entry_type'] == 'Staff') {
$user_num = $row['user_num'];
$query = "SELECT type FROM users WHERE school_num = $school_num AND record_num = $user_num";
writeLog("query: $query\n");
$row['user_type'] = db_getVal($query);
}
break;
}
}
else {
$row['ajax_return_code'] = 0;
}
echo(json_encode($row));
writeLog("completed\n");
?>