80 lines
3.6 KiB
PHP
80 lines
3.6 KiB
PHP
<?php
|
|
|
|
include "db.php";
|
|
include "include/queuemail.php";
|
|
|
|
|
|
// Get schools to process
|
|
$query = "SELECT * FROM schools WHERE status IN ('Active','Linked') AND delete_inactive_orders_hours > 0 ORDER BY school_name";
|
|
$schools = db_query($query);
|
|
|
|
if (db_num_rows($schools) > 0) {
|
|
while ($school = db_fetch_assoc($schools)) {
|
|
$school_name = $school['school_name'];
|
|
$school_num = $school['record_num'];
|
|
$default_language = $school['default_language'];
|
|
$inactive_hours = $school['delete_inactive_orders_hours'];
|
|
|
|
$cutoff = time() - 60 * 60 * $inactive_hours;
|
|
$max_cutoff = $cutoff - 60 * 60 * 24;
|
|
|
|
// Get orders to process
|
|
$orders = db_query("SELECT * FROM hotlunch_order_header WHERE school_num = $school_num AND status = 'Inactive' AND added_time BETWEEN $max_cutoff AND $cutoff");
|
|
if (db_num_rows($orders)) {
|
|
|
|
// Get email subject
|
|
$emailSubject = $school['delete_inactive_orders_email_subject'];
|
|
if (strlen($emailSubject) == 0) $emailSubject = getLanguageText('TEXT-INACTIVE-ORDER-HAS-BEEN-DELETED',$default_language);
|
|
|
|
// Setup reply address
|
|
$emailReply = $school['reply_description'];
|
|
$emailFrom = setReplyAddress($EmailReplyAddress);
|
|
|
|
while ($order = db_fetch_assoc($orders)) {
|
|
$ordered_by_num = $order['ordered_by_num'];
|
|
$schedule_num = $order['schedule_num'];
|
|
$added_time = $order['added_time'];
|
|
$order_num = $order['record_num'];
|
|
|
|
|
|
// Get schedule name
|
|
$schedule_name = db_getVal("SELECT schedule_name FROM hotlunch_schedules WHERE school_num = $school_num AND record_num = $schedule_num");
|
|
|
|
// Get student name
|
|
$results = db_query("SELECT * FROM people WHERE school_num = $base_school_num AND record_num = $ordered_by_num");
|
|
$person = db_fetch_assoc($results);
|
|
$ordered_by = $person['first_name'] . ' ' . $person['last_name'];
|
|
$user_num = $person['user_num'];
|
|
|
|
|
|
// Get user info
|
|
$results = db_query("SELECT * FROM users WHERE school_num = $base_school_num AND record_num = $user_num");
|
|
$user = db_fetch_assoc($results);
|
|
$name = $user['first_name'] . ' ' . $user['last_name'];
|
|
$emailTo = $user['email'];
|
|
|
|
// Format email message
|
|
$emailMessage = trim($school['delete_inactive_orders_email']);
|
|
$emailMessage = str_replace("{name}",$name,$emailMessage);
|
|
|
|
if (strlen($emailMessage)) $emailMessage .= "\n\n------------------------------\n";
|
|
$emailMessage .= getLanguageText('TEXT-ORDER-NUMBER',$default_language) . ': ' . sprintf("%09d",$order_num) ."\n";
|
|
$emailMessage .= getLanguageText('TEXT-SCHEDULE-TITLE',$default_language) . ': ' . $schedule_name ."\n";
|
|
$emailMessage .= getLanguageText('TEXT-ORDERED-BY',$default_language) . ': ' . $ordered_by . "\n";
|
|
$emailMessage .= "\n";
|
|
|
|
// Send email
|
|
QueueEmail($emailTo, $emailFrom, $emailSubject, $emailMessage, $emailReply, $emailRecipient);
|
|
|
|
// Delete order
|
|
logOrderChange($order_num, "INACTIVE ORDER AUTOMATICALLY DELETED", "delete-inactive-orders.php");
|
|
db_query("DELETE FROM hotlunch_order_header WHERE school_num = $school_num AND record_num = $order_num");
|
|
db_query("DELETE FROM hotlunch_order_items WHERE school_num = $school_num AND order_num = $order_num");
|
|
db_query("DELETE FROM user_account WHERE school_num = $school_num AND user_num = $user_num AND order_num = $order_num");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
?>
|