sending E-Mail
This commit is contained in:
parent
867f2589c7
commit
8c903efb51
|
@ -2,9 +2,10 @@
|
|||
include "zefixAPI.php";
|
||||
include "spreadSheetReader/read_write_xlsx.php";
|
||||
|
||||
$maxExecutionTime = 61;
|
||||
$maxExecutionTime = 480;
|
||||
$taskDir = 'tasks';
|
||||
$downloadDir = 'download';
|
||||
$minTaskOldness = 30;
|
||||
$latesEndTime = time() + $maxExecutionTime;
|
||||
|
||||
|
||||
|
@ -40,9 +41,24 @@ function doRequest($data, $filename, $username, $password)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function sendEmail($emailAddress, $filename)
|
||||
{
|
||||
echo "sending ".$filename." too ".$emailAddress;
|
||||
$to = $emailAddress;
|
||||
$subject = "Ihr Export von Zefix ist bereit";
|
||||
$message = "Nutzen Sie den folgenden Link um ihre Daten herunterzuladen. Die Daten werden nach 48 Stunden automatisch auf unserem Server gelöscht.\nhttps://".$_SERVER['HTTP_HOST'].'/'.$filename;
|
||||
$headers = "From: api@zefix.silias.ch\r\n";
|
||||
$headers .= "Reply-To: info@silias.ch\r\n";
|
||||
$headers .= "MIME-Version: 1.0\r\n";
|
||||
$headers .= "Content-Type: text/plain; charset=ISO-8859-1\r\n";
|
||||
|
||||
if (mail($to, $subject, $message, $headers)) {
|
||||
echo "Email sent successfully!";
|
||||
} else {
|
||||
echo "Email sending failed.";
|
||||
}
|
||||
}
|
||||
// Stop executing bevore reaching PHP Max Execution Time
|
||||
function convertcsvToXlsx(string $csvFile, string $xlsxFile)
|
||||
|
@ -67,8 +83,8 @@ while($latesEndTime - time() > 60){
|
|||
$taskfiles = scandir($taskDir);
|
||||
$taskfiles = array_diff($taskfiles, array('.', '..'));
|
||||
sort($taskfiles);
|
||||
// if there are any taks which are older then 0.5 Minutes. To be sure the file writing process is finished.
|
||||
if(count($taskfiles) > 0 && intval(explode("-", $taskfiles[0])[0]) + 30 < time()) {
|
||||
// if there are any taks which are older then min oldness. To be sure the file writing process is finished.
|
||||
if(count($taskfiles) > 0 && intval(explode("-", $taskfiles[0])[0]) + $minTaskOldness < time()) {
|
||||
$taskString = file_get_contents($taskDir.'/'.$taskfiles[0]);
|
||||
$task = json_decode($taskString, true);
|
||||
|
||||
|
@ -88,10 +104,8 @@ while($latesEndTime - time() > 60){
|
|||
// if there are no Requests left, send the E-Mail
|
||||
else {
|
||||
convertcsvToXlsx(str_replace(".json", ".csv", $downloadDir.'/'.$taskfiles[0]), str_replace(".json", ".xlsx", $downloadDir.'/'.$taskfiles[0]));
|
||||
// unlink(str_replace(".json", ".csv", $downloadDir.'/'.$taskfiles[0]));
|
||||
unlink(str_replace(".json", ".csv", $downloadDir.'/'.$taskfiles[0]));
|
||||
sendEmail($task['email'], str_replace(".json", ".xlsx", $downloadDir.'/'.$taskfiles[0]));
|
||||
echo "Email sent";
|
||||
echo "<br>";
|
||||
unlink($taskDir.'/'.$taskfiles[0]);
|
||||
echo "Task File deleted";
|
||||
echo "<br>";
|
||||
|
|
Loading…
Reference in New Issue