Mini Shell

Direktori : /home/admin/web/mcpv.demarco.ddnsfree.com/public_html/external/prestataires/_include/
Upload File :
Current File : /home/admin/web/mcpv.demarco.ddnsfree.com/public_html/external/prestataires/_include/functions.php

<?php
require "_include/Exception.php";
require "_include/PHPMailer.php";
require "_include/SMTP.php";
require "_include/init.php";

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
use PHPMailer\PHPMailer\SMTP;

function send_conf_email($to,$date,$periode) {

	set_time_limit(1500); // Gérer timeout SMTP
	
	$smtpserver = $GLOBALS['smtpserver'];
	$smtpproto = $GLOBALS['smtpproto'];        
	$smtpport = $GLOBALS['smtpport'];                    
	$smtpuser = $GLOBALS['smtpuser'];
	$smtppassword = $GLOBALS['smtppassword'];     
	$msgfrom = $GLOBALS['msgfrom'];
	$replyto = $GLOBALS['replyto'];	
	$telreply = $GLOBALS['telreply'];	
	
	$date_de = new DateTime($date . substr($periode,0,5));
	$date_a = new DateTime($date . substr($periode,8));
	$start = $date_de->format('Ymd').'T'.$date_de->format('His');
	$end = $date_a->format('Ymd').'T'.$date_a->format('His');
	$subject = 'Prochain cours informatique ADCN';
	$crlf = "\r\n";
	
	// Préparer attachement iCalendar
	
	$vcal  = 'BEGIN:VCALENDAR' . $crlf;	 
	$vcal .= 'PRODID:-//CompanyName//ProductName//EN' . $crlf;	 
	$vcal .= 'VERSION:2.0' . $crlf;
	$vcal .= 'CALSCALE:GREGORIAN' . $crlf;
	$vcal .= 'METHOD:REQUEST' . $crlf;
	$vcal .= 'BEGIN:VEVENT' . $crlf;
	$vcal .= 'DTSTAMP:'.date('Ymd').'T'.date('His').'Z' . $crlf;
	$vcal .= 'DTSTART:' . $start . $crlf; 	// YYYYMMDDTHHMMSS;
	$vcal .= 'DTEND:' . $end . $crlf; 		// YYYYMMDDTHHMMSS;
	$vcal .= 'UID:'.date('Ymd').'T'.date('His').'-'.rand().'-adcn.ch' . $crlf;
	$vcal .= 'CREATED:'.date('Ymd').'T'.date('His').'Z' . $crlf;
	$vcal .= 'LOCATION:Bureau ADCN - Rue Louis Favre 1 - 2000 Neuchâtel' . $crlf;
	$vcal .= 'SUMMARY:Prochain cours info ADCN' . $crlf;
	$vcal .= 'BEGIN:VALARM' . $crlf;
	$vcal .= 'TRIGGER:-PT1H' . $crlf;
	$vcal .= 'ACTION:DISPLAY' . $crlf;
	$vcal .= 'DESCRIPTION:Prochain cours info ADCN' . $crlf;
	$vcal .= 'END:VALARM' . $crlf;
	$vcal .= 'END:VEVENT' . $crlf;
	$vcal .= 'END:VCALENDAR' . $crlf;

	// Prepare EMail text
	
	$email_text  = '<img src="cid:logo_adcn"></img><br />';
	$email_text .= 'Vous êtes inscrit(e) au cours d\'informatique de l\'ADCN qui aura lieu le :<br /><br />';
	$email_text .= '<b>Mercredi ' . $date . ' de ' . $periode . ' au bureau de l\'ADCN, rue Louis Favre 1 - 2000 Neuchâtel</b><br /><br />';
	$email_text .= 'Merci de bien vouloir nous informer au <b>' . $telreply . '</b> si vous deviez avoir un empêchement<br /><br />';
	$email_text .= 'Salutations cordiales<br />';
	$email_text .= 'ADCN Neuchâtel<br /><br />';
	$email_text .= '<i>Clicker sur la pièce jointe pour ajouter cet évènement à votre calendrier</i>';
	
	$mail = new PHPMailer();

	$mail->IsSMTP();               
	$mail->SMTPDebug = 1; 					// 0 = aucune sortie, 1 = erreurs & messages, 2 = messages seul.                
	$mail->SMTPAuth = true;                	
	$mail->SMTPSecure = $smtpproto;        
	$mail->Host = $smtpserver;  
	$mail->Port = $smtpport;                    
	$mail->Username = $smtpuser;
	$mail->Password = $smtppassword;     
	$mail->CharSet = 'UTF-8';
	$mail->SetFrom($msgfrom);
	$mail->Subject = $subject;
	$mail->ContentType = 'text/plain';
	$mail->IsHTML(true);
	$mail->Body = $email_text; 
	$mail->AddAddress ($to);
	$mail->AddStringAttachment($vcal,'Cours info ADCN.ics');
	$mail->AddEmbeddedImage('_img/adcn-logo.png', 'logo_adcn');

	if(!$mail->Send())
	{
			$error_message = "Erreur : " . $mail->ErrorInfo;
	}
}

function send_conf_email_instructeur($email_instructeur, $fulldate, $fullname_utilisateur, $fullname_apprenant, $tel, $email_apprenant) {
	
	set_time_limit(1500); // Gérer timeout SMTP
	
	$smtpserver = $GLOBALS['smtpserver'];
	$smtpproto = $GLOBALS['smtpproto'];        
	$smtpport = $GLOBALS['smtpport'];                    
	$smtpuser = $GLOBALS['smtpuser'];
	$smtppassword = $GLOBALS['smtppassword'];     
	$msgfrom = $GLOBALS['msgfrom'];
	$replyto = $GLOBALS['replyto'];	
	$telreply = $GLOBALS['telreply'];
	$subject = 'ADCN - Annonce d\'inscription au cours d\'informatique';
	
	// Prepare EMail text
	
	$email_text  = '<img src="cid:logo_adcn"></img><br />';
	$email_text .= 'L\'inscription de l\'apprenant <b>' . $fullname_apprenant . ' </b> au cours d\'informatique de l\'ADCN du <b>' 
					. $fulldate . '</b> a été confirmée ce jour par <b>' . $fullname_utilisateur . '</b><br /><br />';
	$email_text .= 'Il est joignable par email <a href="mailto:' . $email_apprenant . '">' . $email_apprenant . 
					'</a> ou par téléphone au <b>' . $tel . '</b><br /><br />';
	$email_text .= 'ADCN Neuchâtel<br /><br />';
	
	$mail = new PHPMailer();

	$mail->IsSMTP();               
	$mail->SMTPDebug = 0; 					// 0 = aucune sortie, 1 = erreurs & messages, 2 = messages seul.                
	$mail->SMTPAuth = true;                	
	$mail->SMTPSecure = $smtpproto;        
	$mail->Host = $smtpserver;  
	$mail->Port = $smtpport;                    
	$mail->Username = $smtpuser;
	$mail->Password = $smtppassword;     
	$mail->CharSet = 'UTF-8';
	$mail->SetFrom($msgfrom);
	$mail->Subject = $subject;
	$mail->ContentType = 'text/plain';
	$mail->IsHTML(true);
	$mail->Body = $email_text; 
	$mail->AddAddress ($email_instructeur);
	$mail->AddEmbeddedImage('_img/adcn-logo.png', 'logo_adcn');

	if(!$mail->Send())
	{
			$error_message = "Erreur : " . $mail->ErrorInfo;
	} 
}

function nbDays($thedate) {
	return cal_days_in_month(CAL_GREGORIAN, $thedate->format("m"),$thedate->format("Y"));
}

function moisFrancais($nomMois) {
	$translate = str_replace("January","Janvier",$nomMois);
	$translate = str_replace("February","Février",$translate);
	$translate = str_replace("March","Mars",$translate);
	$translate = str_replace("April","Avril",$translate);
	$translate = str_replace("May","Mai",$translate);
	$translate = str_replace("June","Juin",$translate);
	$translate = str_replace("July","Juillet",$translate);
	$translate = str_replace("August","Août",$translate);
	$translate = str_replace("September","Septembre",$translate);
	$translate = str_replace("October","Octobre",$translate);
	$translate = str_replace("November","Novembre",$translate);
	$translate = str_replace("December","Décembre",$translate);
	return $translate;
}

function afficheDate($jour, $start_of_month, $DB) {
	$fulldate = $start_of_month->format("Y-m") . "-" . substr(str_repeat(0, 2).$jour, - 2);
	$today = (date("Y-m-d") == $fulldate) ? "true" : false;

	$html = "<td class=' " . ($today == true ? "text-light bg-info" : "text-primary") . "'>
			<div class='row'>
				<div class='col text-center'>
					<b>" . $jour . "</b>
				</div>
			</row>";
	if(date_create($fulldate)->format("N") == $GLOBALS["jour_cours"]) { // Si jour du cours 
		$req = $DB->prepare("select id from cours_sessions where date = STR_TO_DATE(:date, '%Y-%m-%d')");
		$req->bindParam(":date",$fulldate); 
		$req->execute();
		if($req->rowCount() <> 0) { // Si sessions existent pour le mercredi 
			$req = $DB->prepare("select id from cours_inscriptions where session_id in 
								(select id from cours_sessions where date = STR_TO_DATE(:date, '%Y-%m-%d'))");
			$req->bindParam(":date",$fulldate); 
			$req->execute();
			if($req->rowCount() == 0) // Si sessions existent le mercredi et aucune inscription -> Afficher suppression
			{
				$html = '<td hidden class="fulldate">' . $fulldate . '</td>
						<td class=" ' . ($today == true ? "text-light bg-info" : "text-primary") .'">
							<div class="row">
								<div class="col  text-center">
									<b>' . $jour . '</b>
								</div>
								<div class="col">
									<button type="button" title="Supprimer sessions" class="del_btn btn btn-outline-danger btn-sm" role="button">
									<i class="fa fa-xs fa-trash"></i></button>
								</div>
							</div>
						</td>'; 
			}
			else {
				$html = "<td class=' " . ($today == true ? "text-light bg-info" : "text-primary") . "'>
				<div class='row'>
					<div class='col text-center'>
						<b>" . $jour . "</b>
					</div>
					<div class='col'>
						<i title='" . $req->rowCount() . " inscriptions enregistrées' class='fa fa-xs fa-users'></i>
					</div>
				</row>";
			}
		}
		else  { // Aucune session pour le mercredi -> Afficher création
			$html = '<td hidden class="fulldate">' . $fulldate . '</td>
					<td class= "' . ($today == true ? "text-light bg-info" : "text-primary") .'">
						<div class="row">
						<div class="col text-center">
							<b>' . $jour . '</b>
						</div>
						<div class="col">
							<button type="button" title="Ajouter sessions" class="add_btn btn btn-outline-primary btn-sm" role="button">
							<i class="fa fa-xs fa-calendar-plus-o"></i></button>
						</div>
						</div>
					</td>'; 
		}
	} 
	return $html;          
}
?>







May 15, 2021 – Page 2 – Base de données MCPV "Prestataires"

Day: May 15, 2021

If you’re taking a look at exhausting toys

Dildos Buy The Most Effective Dildos On-line For Great Intercourse It’s all about finding what makes you comfy as you explore one thing new. Check out our other Buyers Guides and browse about the wide selection of grownup toys available! You can even discover our Dildos Collection to search out extra sensual joysticks to add…

Read More

Just understand that no slots technique may help you win in

Las Vegas Casinos & Resort They may encompass localized jackpots, solely out there at the on line casino, or networked jackpots out there on the same recreation throughout any web site it options. The greatest instance is Mega Moolah, which has the report for the biggest-ever jackpot sport wins and is available at tons of…

Read More

No wonky labels or stitching from us

I Tested And Ranked The Best Hermes H Bracelet Dupe In 2024: And Here’s What I Found A quality replica should pay attention to these finer details, replicating the tags or labels accurately. Pay close attention to the lining replica hermes, pockets, and tags to determine the quality of the replica. Authentic Hermes bags are…

Read More

Find a dildo that appears and feels simply the best means for

Best Intercourse Toys 2024 Dildos have existed for thousands of years, and they’re just as in style as ever. Traditionally, a dildo is a phallic-shaped merchandise that can simulate penile intercourse. Although earlier fashions had been manufactured from rubber material for a lifelike feeling, today’s dildos are available in all kinds of supplies. Find a…

Read More

Its standout characteristic is the air pump expertise

15 Greatest Intercourse Toys In 2025 For An Excellent Orgasm, Tested By Us In addition, the penis sheath costs between $132 and $159 are tenga reusable, which most individuals will discover too costly for a hollow penis sleeve. While users report a firmer appear and feel on their penis after prolonged use of penis pumps,…

Read More

Replica baggage typically have uneven stitching

Can You Notice Fake Celine Bags? A Information To Authentic Vs Duplicate Celine Nano Baggage Get able to witness the rise of the must-have bag that can quickly dominate the scene. ELIS PARIS, founded on the principles of impeccable design, uncompromising quality, and timeless class, is ready to redefine your bag recreation like never earlier…

Read More