First Commit
This commit is contained in:
1 parent
5eb9dd037d
commit
2e62c0e60b
11877 files changed
+2035312
No files matched your search
@@ -0,0 +1,170 @@
|
||||
<?php
|
||||
$ValidAccess = 2010;
|
||||
require_once("include/globals.php");
|
||||
|
||||
|
||||
if (SessionActive() != 1 || ! UserLoggedIn()) {
|
||||
logExit("Session is not active\n");
|
||||
exit();
|
||||
}
|
||||
|
||||
// CSRF token validation
|
||||
include "include/ajax.csrfToken.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.Delete.php";
|
||||
// startLog($moduleName);
|
||||
|
||||
|
||||
// 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']);
|
||||
|
||||
|
||||
|
||||
// Validate parameters
|
||||
if (strlen($table_name) == 0) logExit("table_name undefined\n");
|
||||
|
||||
|
||||
// Ensure numeric parameters are numeric
|
||||
if (!is_numeric($record_num)) logExit("record_num is not numeric\n");
|
||||
if ($record_num == 0) logExit("record_num is zero\n");
|
||||
|
||||
|
||||
// Error logging
|
||||
writeLog("$moduleName: school_num: $school_num\n");
|
||||
writeLog("$moduleName: table_name: $table_name\n");
|
||||
writeLog("$moduleName: record_num: $record_num\n");
|
||||
|
||||
|
||||
$row = array();
|
||||
|
||||
// Create query statement
|
||||
switch ($table_name) {
|
||||
case 'people_categories':
|
||||
$cnum = intval($_GET['cnum']);
|
||||
|
||||
$query = "DELETE FROM $table_name WHERE school_num = $school_num AND people_num = $record_num AND category_num = $cnum";
|
||||
break;
|
||||
|
||||
case 'supplier_products':
|
||||
$query = "UPDATE supplier_products SET status = 'Inactive' WHERE school_num = $school_num AND record_num = $record_num";
|
||||
break;
|
||||
|
||||
case 'people':
|
||||
case 'users':
|
||||
$query = "DELETE FROM $table_name WHERE school_num = $base_school_num AND record_num = $record_num";
|
||||
break;
|
||||
|
||||
case 'school_documents':
|
||||
$query = "SELECT * FROM school_documents WHERE school_num = $school_num AND record_num = $record_num";
|
||||
$results = db_query($query);
|
||||
$row = db_fetch_assoc($results);
|
||||
|
||||
$doc_path = sprintf("%08d",$school_num);
|
||||
$output_dir = "files/$doc_path/image/";
|
||||
if (file_exists($output_dir . $row['document_name'])) unlink($output_dir . $row['document_name']);
|
||||
|
||||
// Delete record
|
||||
$query = "DELETE FROM school_documents WHERE school_num = $school_num AND record_num = $record_num";
|
||||
writeLog("query: $query");
|
||||
break;
|
||||
|
||||
case 'resellers':
|
||||
$query = "DELETE FROM $table_name WHERE record_num = $record_num";
|
||||
break;
|
||||
|
||||
default:
|
||||
$query = "DELETE FROM $table_name WHERE school_num = $school_num AND record_num = $record_num";
|
||||
if ($table_name == 'hotlunch_order_header') logOrderChange($record_num, "ORDER DELETED", "ajax.DataRecord.Delete.php");
|
||||
break;
|
||||
}
|
||||
|
||||
// Error logging
|
||||
writeLog("$moduleName: query: $query\n");
|
||||
db_query($query);
|
||||
|
||||
|
||||
//
|
||||
// Post processing
|
||||
//
|
||||
switch ($table_name) {
|
||||
case 'people':
|
||||
db_query("UPDATE classes SET teacher1 = NULL WHERE school_num = $school_num AND teacher1 = $record_num");
|
||||
db_query("UPDATE classes SET teacher2 = NULL WHERE school_num = $school_num AND teacher2 = $record_num");
|
||||
db_query("UPDATE classes SET teacher3 = NULL WHERE school_num = $school_num AND teacher3 = $record_num");
|
||||
db_query("UPDATE classes SET teacher4 = NULL WHERE school_num = $school_num AND teacher4 = $record_num");
|
||||
db_query("UPDATE classes SET teacher5 = NULL WHERE school_num = $school_num AND teacher5 = $record_num");
|
||||
break;
|
||||
|
||||
case 'users':
|
||||
db_query("DELETE FROM contacts WHERE school_num = $school_num AND user_num = $record_num");
|
||||
break;
|
||||
|
||||
case 'hotlunch_menu_dates':
|
||||
$query = "DELETE FROM hotlunch_menu_products " .
|
||||
"WHERE school_num = $school_num " .
|
||||
"AND menu_item_num IN (SELECT record_num FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $record_num)";
|
||||
db_query($query);
|
||||
db_query("DELETE FROM hotlunch_menu_items WHERE school_num = $school_num AND menu_num = $record_num");
|
||||
break;
|
||||
|
||||
case 'hotlunch_menu_items':
|
||||
$menu_item_num = $record_num;
|
||||
writeLog("menu_item_num: $menu_item_num");
|
||||
$query = "SELECT * FROM hotlunch_menu_items WHERE school_num = $school_num AND record_num = $menu_item_num";
|
||||
writeLog($query);
|
||||
$results = db_query($query);
|
||||
$row = db_fetch_assoc($results);
|
||||
|
||||
// Log record value changes
|
||||
$row['logged_datetime'] = date("Y-m-d H:i:s",time());
|
||||
$row['original_record_num'] = $record_num;
|
||||
$row['record_action'] = 'Delete';
|
||||
if (!array_key_exists('food_category', $row)) $row['food_category'] = 'General';
|
||||
|
||||
$ltable = new Table("hotlunch_menu_items_log");
|
||||
$query = $ltable->BuildInsert($row);
|
||||
writeLog($query);
|
||||
db_query($query);
|
||||
|
||||
|
||||
// Delete all menu products
|
||||
$query = "DELETE FROM hotlunch_menu_products " .
|
||||
"WHERE school_num = $school_num " .
|
||||
"AND (menu_item_num = $menu_item_num " .
|
||||
"OR menu_item_num IN (SELECT record_num FROM hotlunch_menu_items " .
|
||||
"WHERE school_num = $school_num " .
|
||||
"AND source_item = $menu_item_num))";
|
||||
writeLog($query);
|
||||
db_query($query);
|
||||
|
||||
// Delete menu items
|
||||
$query = "DELETE FROM hotlunch_menu_items " .
|
||||
"WHERE school_num = $school_num " .
|
||||
"AND (record_num = $menu_item_num " .
|
||||
"OR source_item = $menu_item_num)";
|
||||
writeLog($query);
|
||||
db_query($query);
|
||||
break;
|
||||
|
||||
case 'classes':
|
||||
db_query("UPDATE people SET class_num = 0 WHERE school_num = $school_num AND class_num = $record_num");
|
||||
break;
|
||||
|
||||
case 'student_categories':
|
||||
db_query("DELETE FROM people_categories WHERE school_num = $school_num AND category_num = $record_num");
|
||||
break;
|
||||
}
|
||||
|
||||
writeLog("$moduleName: complete\n");
|
||||
$row['ajax_return_code'] = 1;
|
||||
echo(json_encode($row));
|
||||
|
||||
?>
|
||||
Reference in new issue
Block a user