<?php
//20200831 - added email footer note, changed email address, change address - Gareth
//die(); //20160211 - disabled task sending temporarilly - pj
   ini_set('display_errors', '1');
   error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);

   include_once("_nemo.cls.php");
   include_once("_nemo.details.cls.php");
   include_once("_nemo.list.cls.php");

   // $dtToday = date("Y-m-d");
   // $dtYesterday = date("Y-m-d", strtotime("-1 day"));
   // $dtTomorrow = date("Y-m-d", strtotime("+1 day"));
   // vd($dtToday);
   // vd($dtYesterday);
   // vd($dtTomorrow);

   $dtToday = date('Y-m-d');

   $rstDeliveryNotes = $xdb->doQuery(
   "
      SELECT Count(DeliveryNoteItemID) as ItemCount, DeliveryNoteID, DeliveryNoteDateIn, CustomerID, strCustomer, strCell, strEmail, InvoiceID  
      FROM tblMailList WHERE DATE_FORMAT(dtStamp,'%Y-%m-%d ') = DATE_FORMAT(NOW(), '%Y-%m-%d ')
      GROUP BY DeliveryNoteID 
      ORDER BY DeliveryNoteDateIn", 1); //select todays' notes ignore seconds
   while($rowDeliveryNote = $xdb->fetch_object($rstDeliveryNotes))
   {
      $message = "";

      if(! strlen($rowDeliveryNote->strCustomer) > 0)
      {
         $rowDeliveryNote->strCustomer = "customer";
      }
      //echo "$rowDeliveryNote->ItemCount, $rowDeliveryNote->DeliveryNoteDateIn, $rowDeliveryNote->strCustomer, $rowDeliveryNote->strEmail -- ";
      //ob_flush();
      flush();
      $strEmailItemList = "";
      $intItemNumber = 1;
      $rstItems = $xdb->doQuery("SELECT DeliveryNoteItemID, ProductID, strProductCode, strDeliveryNoteItem 
         FROM tblMailList 
         WHERE DeliveryNoteID = $rowDeliveryNote->DeliveryNoteID");
      while($rowItems = $xdb->fetch_object($rstItems))
      {
         $strEmailItemList .= "$intItemNumber) [$rowItems->strProductCode] $rowItems->strDeliveryNoteItem" . chr(10);
         $intItemNumber++;
      }
      $dueTimestamp = mktime(12, 00, 00, substr($rowDeliveryNote->DeliveryNoteDateIn, 5, 2), substr($rowDeliveryNote->DeliveryNoteDateIn, 8, 2), substr($rowDeliveryNote->DeliveryNoteDateIn, 0, 4));

//vd($dueTimestamp); vd(date("dmY", $dueTimestamp));
//vd(strtotime($rowDeliveryNote->DeliveryNoteDateIn)); vd(date("dmY", strtotime($rowDeliveryNote->DeliveryNoteDateIn))); die("kldfnkl");
      
      $dueDate = date("dmY", $dueTimestamp);
      $dueDateDisplay = date("j F Y", $dueTimestamp);
      $subject = "Annie's Angels Reminder";
      $message = "";
      if($rowDeliveryNote->ItemCount > 1)
      {
         $s = "s";
      }
      else
      {
         $s = "";
      }

/*
      $nowDateFormatted = new DateTime(date("Y-m-d"));
      $dueDateFormatted = new DateTime(substr($dueDate,4,4)."-".substr($dueDate,2,2)."-".substr($dueDate,0,2));
      $interval = date_diff($nowDateFormatted, $dueDateFormatted);
      $intervalDays = $interval->format('%d Days');//this is the number of days between the due date and today
//*/
      $now = time(); // or your date as well
      $your_date = strtotime(substr($dueDate,4,4)."-".substr($dueDate,2,2)."-".substr($dueDate,0,2));
      $datediff = $now - $your_date;
      $intervalDays = floor($datediff/(60*60*24));

      //echo "InvoiceID: $rowDeliveryNote->InvoiceID";
      $strInvoiceNumber = "";
      if($rowDeliveryNote->InvoiceID > 0)
      {
         $strInvoiceNumber = chr(10) . chr(10) . "This delivery note appears on invoice $rowDeliveryNote->InvoiceID.";
      }

      //echo "{".substr($rowDeliveryNote->DeliveryNoteDateIn, 5, 2)."".substr($rowDeliveryNote->DeliveryNoteDateIn, 8, 2)."".substr($rowDeliveryNote->DeliveryNoteDateIn, 0, 4)."}|$dueDate " . date("dmY") . "|----$rowDeliveryNote->strEmail----$rowDeliveryNote->strCell<br>";
      if($intervalDays == -1)
      {
         $subject = "Annie's Angels Reminder: $rowDeliveryNote->ItemCount Item$s Due Tomorrow ($dueDateDisplay)";
         echo $subject;
         $message = "Dear $rowDeliveryNote->strCustomer," . chr(10) . chr(10) ."The following items are due tomorrow ($dueDateDisplay) on delivery note $rowDeliveryNote->DeliveryNoteID:" . chr(10) . $strEmailItemList . $strInvoiceNumber;
      }
      elseif($intervalDays == 0)
      {
         $subject = "Annie's Angels Reminder: $rowDeliveryNote->ItemCount Item$s Due Today ($dueDateDisplay)";
         echo $subject;
         $message = "Dear $rowDeliveryNote->strCustomer," . chr(10) . chr(10) ."The following items are due today ($dueDateDisplay) on delivery note $rowDeliveryNote->DeliveryNoteID:" . chr(10) . $strEmailItemList . $strInvoiceNumber;
      }
      elseif($intervalDays == 1)
      {
         $subject = "Annie's Angels Reminder: $rowDeliveryNote->ItemCount Item$s Were Due Yesterday ($dueDateDisplay)";
         echo $subject;
         $message = "Dear $rowDeliveryNote->strCustomer," . chr(10) . chr(10) ."The following items were due yesterday ($dueDateDisplay) on delivery note $rowDeliveryNote->DeliveryNoteID:" . chr(10) . $strEmailItemList . $strInvoiceNumber;
      }
      elseif($intervalDays > 1)
      {
         $subject = "Annie's Angels Reminder: $rowDeliveryNote->ItemCount Item$s Were Due $intervalDays Days Ago ($dueDateDisplay)";
         echo $subject;
         $message = "Dear $rowDeliveryNote->strCustomer," . chr(10) . chr(10) ."The following items were due $intervalDays days ago ($dueDateDisplay) on delivery note $rowDeliveryNote->DeliveryNoteID:" . chr(10) . $strEmailItemList . $strInvoiceNumber;

      }else{
         //print_rr($rowDeliveryNote);
         //die("\$intervalDays = $intervalDays");
         continue;
      }

//       echo "<BR>********************<BR>i=$intervalDays<BR>$message";
// continue;
      if(strlen($message) > 0)
      {//add signature
//20180628
         // $message .=  chr(10) . chr(10)
         // . "Regards," . chr(10)
         // . "Annie's Angels". chr(10)
         // . "33 Salt River Rd, Salt River". chr(10)
         // . "Tel: (021) 447-4050". chr(10)
         // . "Fax: 086 - 773 - 8667". chr(10)
         // . "South Africa's Foremost Fancydress & Wardrobe Hirers". chr(10) . chr(10)
         // . "This is an automated reminder service, if you believe you received this message in error, then please make contact with our office during business hours on Tel: +27214474050 or email to: info@anniesangels.co.za";
//20200831
         // $message .=  chr(10) . chr(10)
         // . "Kind regards," . chr(10)
         // . "Annie's Angels / Annie's Wardrobe". chr(10)
         // . "Security Place Building". chr(10)
         // . "No 27 Durham Avenue". chr(10)
         // . "Salt River". chr(10)
         // . "7925". chr(10)        
         // . "Tel: 021-447-4050". chr(10)
         // . "Email: accounts@anniesangels.co.za". chr(10) . chr(10)
         // . "NB: We are closed on Sundays and Public Holidays- see your order form for our business hours. ". chr(10) . chr(10) 
         // . "This is an automated reminder service, if you believe you received this message in error, then please make contact with our office during business hours on Tel: +27-21-447-4050 or email to: accounts@anniesangels.co.za";
         $message .=  chr(10) . chr(10)
         . "Kind regards," . chr(10)
         . "Annie's Angels / Annie's Wardrobe". chr(10)
         . "First Floor". chr(10)
         . "No 27 Durham Avenue". chr(10)
         . "Salt River". chr(10)
         . "7925". chr(10)        
         . "Tel: 021-447-4050". chr(10)
         . "Email: info@anniesangels.co.za". chr(10) . chr(10)
         . "NB: We are closed on Sundays and Public Holidays- see your order form for our business hours. ". chr(10) . chr(10) 
         . "This is an automated reminder service, if you believe you received this message in error, then please make contact with our office during business hours on Tel: +27-21-447-4050 or email to: info@anniesangels.co.za";
         echo $message;
      }
      echo "<br>";

//20180628 Gareth modified to send out to themselves if no email
//      if(strlen($rowDeliveryNote->strEmail) > 0 && strlen($subject) > 0)
//      {
      if(strlen($rowDeliveryNote->strEmail) > 0) 
      {
         $to = $rowDeliveryNote->strEmail;
      }else{
         $to = "info@anniesangel.co.za";
      }

         $anniesEmailAddress = "reminders@anniesangels.co.za";
         $anniesEmailAddressBCC = "info@annieswardrobe.co.za";
$headers = "From: $anniesEmailAddress" . "\r\n" .
"Reply-To: info@anniesangels.co.za" . "\r\n" .
"Cc: $anniesEmailAddress" . "\r\n" .
"Bcc: $anniesEmailAddressBCC" . "\r\n" .
"X-Mailer: PHP/" . phpversion();
         mail($to, $subject, $message, $headers);
         print_rr(error_get_last());
         $xdb->doQuery("INSERT INTO tblSentLog (strType, strTo, strHeaders, strSubject, strBody) VALUES ('Email', ".$xdb->qs($to).", ".$xdb->qs($headers).", ".$xdb->qs($subject).", ".$xdb->qs($message).")");
         echo "sent Email<br>";
//      }
//20180627 Gareth removed as they no longer send SMS
/*      if(strlen($rowDeliveryNote->strCell) > 0 && ($intervalDays == -1 || ($intervalDays % 10 == 0 && $intervalDays > 0)))
      {
         SendSMS($rowDeliveryNote->strCell, $subject);
         $xdb->doQuery("INSERT INTO tblSentLog (strType, strTo, strSubject) VALUES ('SMS', ".$xdb->qs($rowDeliveryNote->strCell).", ".$xdb->qs($subject).")");
         echo "sent SMS<br>";
      }
      if(!(strlen($rowDeliveryNote->strEmail) > 0 || strlen($rowDeliveryNote->strCell) > 0))
*/
//      if(!(strlen($rowDeliveryNote->strEmail) > 0 ))
      if(!($to) > 0)
      {
         mail("info@anniesangels.co.za; rene@anniesangels.co.za; karlien@anniesangels.co.za; annie@anniesangels.co.za", "Reminder not sent because no contact details found:" . $subject, $message, $headers);
      }

      echo "<br>";

   }
?>