File "vcal04.php"

Full Path: /home/analogde/www/Prog/Mail/vcal04.php
File size: 3.49 KB
MIME-type: text/x-php
Charset: utf-8

<?php

// https://openclassrooms.com/forum/sujet/envoi-mail-avec-invitation-ical

// https://www.julian-young.com/2009/07/07/php-ical-email/

$from_name = "titi@free.com";
$from_address = "nada@gmail.com";
$subject = "Request reservation of SkyCentre";
$meeting_description = "Message pour faire un test de réservation vcalendar.";
$meeting_location = "Toulouse";
 
$meetingstart = strtotime(Dates($_POST['dateStart'])." UTC");
$meetingend = strtotime(Dates($_POST['dateFin'])." UTC");
$dtstart = gmdate("Ymd\THis\Z", $meetingstrat);
$dtend = gmdate("Ymd\THis\Z", $meetingend);
$todaystamp = gmdate("Ymd\THis\Z");
 
$cal_uid = date('Ymd').'T'.date('His').'-'.rand().'@domain.com';
 
$mime_boundary = '----Meeting Booking----'.md5(time());
 
$headers = "From: ".$from_name." <".$from_address.">\n";
$headers .= "Reply-To: ".$from_name." <".$from_address.">\n";
 
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/alternative; boundary=\"$mime_boundary\"\n";
$headers .= "Content-class: urn:content-classes:calendarmessage\n";
 
//Create Email Body (HTML)
$message = "--$mime_boundary\n";
$message .= "Content-Type: text/html; charset=UTF-8\n";
$message .= "Content-Transfer-Encoding: 8bit\n\n";
$message .= "<html>\n";
$message .= "<body>\n";
//$message .= "<p>Attendant name :".$from_name."<br/> Attendant mail :".$from_address."</p>";
$message .= "<p>Visitors : ";

//for($v=0; $v<count($visitors); $v++){
//    $message .= $visitors[$v].' / ';
//}
//$message .= "</p>";
//$message .= "<p>The company is : ".$type_societe."<br/>Country : ".$_POST['pays']."<br/>Start date : ".$_POST['dateStart']."<br/>";
//$message .= "End date : ".$_POST['dateFin']."<br/> Need : ".$_POST['besoin']."<br/> Want : ".$prog."</p>";
//$message .= "<p>Demos : </p>";

/*
$tableDemo = explode(',',$selectDemo);
foreach ($tableDemo as $key => $d){
    $princDemo = explode('{', $d);
    $message .= '<ul><li>'.$princDemo[0].'<ul>';
    $debutLien = strpos($d, '{') + strlen('{');
    $finLien = strpos($d, '{');
    $sousdemo = substr($d, $debutLien, $finLien - $debutLien);
    $sousdemo = substr_replace($sousdemo, '', -1, 1);
    $sousdemo = explode('+', $sousdemo);
    foreach($sousdemo as $value){
        $message .= '<li>'.$value.'</li>';
    }
    $message .= '</ul></ul>';
}
*/
//$message .= "<p>Additional information : ".$_POST['infocompl']."</p>";
$message .= "</body>\n";
$message .= "</html>\n";
$message .= "--$mime_boundary\n";
     
//Create ICAL Content (Google rfc 2445 for details and examples of usage)
$ical =    'BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 11.0 MIMEDIR//EN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
ORGANIZER:MAILTO:'.$from_address.'
DTSTART:'.$dtstart.'
DTEND:'.$dtend.'
LOCATION:'.$meeting_location.'
TRANSP:OPAQUE
SEQUENCE:0
UID:'.$cal_uid.'
DTSTAMP:'.$todaystamp.'
DESCRIPTION:'.$meeting_description.'
SUMMARY:'.$subject.'
PRIORITY:5
CLASS:PUBLIC
END:VEVENT
END:VCALENDAR';  
 
				$message .= 'Content-Type: text/calendar;name="meeting.ics";method=REQUEST;charset=utf-8\n';
				$message .= 'Content-Type: text/calendar;name="meeting.ics";method=REQUEST\n';
				$message .= "Content-Transfer-Encoding: 8bit\n\n";

				$message .= $ical;
 
				$email = 'patrice.delpy@onsemi.com';


                $result = @mail($email, $subject, $message, $headers);
                if($result) {
                    echo "Email sent successfully.";
                    return true;
                } else {
                    echo "A problem occured sending email";
                    return false;  
                }


?>