| Current Path : /var/www/html/mmishra/iws8/html/imaterial/ |
| Current File : /var/www/html/mmishra/iws8/html/imaterial/MaintenanceReminders.php |
<?php
/* $Id: MaintenaceReminders.php 4551 2011-04-16 06:20:56Z daintree $*/
//this script can be set to run from cron
$AllowAnyone = true;
include('includes/session.inc');
include('includes/htmlMimeMail.php');
$sql="SELECT description,
taskdescription,
ADDDATE(lastcompleted,frequencydays) AS duedate,
userresponsible,
email
FROM fixedassettasks
INNER JOIN fixedassets
ON fixedassettasks.assetid=fixedassets.assetid
INNER JOIN www_users
ON fixedassettasks.userresponsible=www_users.userid
WHERE ADDDATE(lastcompleted,frequencydays-10)> CURDATE()
ORDER BY userresponsible";
$result = DB_query($sql);
$LastUserResponsible = '';
while ($myrow = DB_fetch_array($result)){
if (!isset(${'Mail' . $myrow['userresponsible']}) AND IsEmailAddress($myrow['email'])) {
if ($LastUserResponsible!=''){
${'Mail' . $myrow['userresponsible']}->setText($MailText);
$SendResult = ${'Mail' . $myrow['userresponsible']}->send(array($LastUserEmail));
$MailText = _('You have the following maintenance task(s) falling due or over-due:') . "\n";
}
$LastUserResponsible = $myrow['userresponsible'];
$LastUserEmail = $myrow['email'];
${'Mail' . $myrow['userresponsible']} = new htmlMimeMail();
${'Mail' . $myrow['userresponsible']}->setSubject('Maintenance Tasks Reminder');
${'Mail' . $myrow['userresponsible']}->setFrom('Do_not_reply <>');
}
$MailText .= 'Asset' . ': ' . $myrow['description'] . "\nTask: " . $myrow['taskdescription'] . "\nDue: " . ConvertSQLDate($myrow['duedate']);
if (Date1GreaterThanDate2(ConvertSQLDate($myrow['duedate']),Date($_SESSION['DefaultDateFormat']))) {
$MailText .= _('NB: THIS JOB IS OVERDUE');
}
$MailText . "\n\n";
}
if (DB_num_rows($result)>0){
${'Mail' . $LastUserResponsible}->setText($MailText);
$SendResult = ${'Mail' . $LastUserResponsible}->send(array(${'Mail' . $LastUserResponsible}));
}
/* Now do manager emails for overdue jobs */
$sql="SELECT description,
taskdescription,
ADDDATE(lastcompleted,frequencydays) AS duedate,
realname,
manager
FROM fixedassettasks
INNER JOIN fixedassets
ON fixedassettasks.assetid=fixedassets.assetid
INNER JOIN www_users
ON fixedassettasks.userresponsible=www_users.userid
WHERE ADDDATE(lastcompleted,frequencydays)> CURDATE()
ORDER BY manager";
$result = DB_query($sql);
$LastManager = '';
while ($myrow = DB_fetch_array($result)){
if (!isset(${'Mail' . $myrow['userresponsible']})) {
if ($LastUserResponsible!=''){
${'Mail' . $myrow['userresponsible']}->setText($MailText);
$SendResult = ${'Mail' . $myrow['manager']}->send(array($LastManagerEmail));
$MailText = "Your staff have failed to complete the following tasks by the due date:\n";
}
$LastManager = $myrow['manager'];
$LastManagerEmail = $myrow['email'];
${'Mail' . $myrow['manager']} = new htmlMimeMail();
${'Mail' . $myrow['manager']}->setSubject('Overdue Maintenance Tasks Reminder');
${'Mail' . $myrow['manager']}->setFrom('Do_not_reply <>');
}
$MailText .= _('Asset') . ': ' . $myrow['description'] . "\n" . _('Task:') . ' ' . $myrow['taskdescription'] . "\n" . _('Due:') . ' ' . ConvertSQLDate($myrow['duedate']);
$MailText . "\n\n";
}
if (DB_num_rows($result)>0){
${'Mail' . $LastManager}->setText($MailText);
$SendResult = ${'Mail' . $LastManager}->send(array($LastManagerEmail));
}
?>