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;          
}
?>







December 29, 2020 – Page 2 – Base de données MCPV "Prestataires"

Day: December 29, 2020

Slip the lengthy straps beneath your mattress (it’s easier

Grownup Sex Toys Purchase Over Four,000 Adult Objects For Men & Ladies Something that stood out during testing was the well-thought-out measurement. The 4-inch lengthy prober supplied a great steadiness in order that the sensations have been intense while still accommodative. The bulbous physique was straightforward to insert, and the widening shape made the sensations…

Read More

If you do not need us to course of your sensitive information

Privacy Coverage We use quite lots of industry-standard security technologies and procedures to assist defend your knowledge from unauthorized entry, use, or disclosure. The Services permit you to enter info that could be delicate and subject to special protections underneath applicable legal guidelines. This section explains how we use and protect delicate info. If we…

Read More

While the size may not be beginner-friendly

Buy Squishy & Gentle Dildos I think the torque-oriented rumbles may not be for you when you have a sensitive clitoris. Especially with the hands-free using mode Gauge Penis Pump – Pull Rod, you can take pleasure in vaginal stimulation and use one other sex toy to enhance the expertise with clit stimulation. This is…

Read More

Glass intercourse toys are generally created from clear

The 4 Greatest Intercourse Toys For Seniors Lichee Pattern Wrist to Neck Restraint, In Accordance With Intercourse Therapists Check that the brand helps gadget unpairing and user account administration. Yes—cloud-connected fashions allow you to sync disconnected distances, so long as both parties have secure web Men’s Wrestling Singlet Mankini, app entry, and the toy paired…

Read More

If you want to engage in slightly backdoor action

Most Trusted Sex Toy Retailer Sextoy Com Grownup Toy Shop If you are ready to move on to extra abstract dildos, there are many options, as they arrive in many fantastical sizes and shapes, including ones with glitter, beads and totally different textures, to enchantment to your wishes. “Silicone or glass dildos are the very…

Read More

We’ve picked out our favourite designer handbag dupes for

How To Spot A Pretend Designer Handbag, According To Professional Authenticators Here are just some of the top pros and cons of replica designer purses that can assist you to determine whether this buy is best for you or not. With the event of e-commerce replica bags, buying replicas of designer merchandise has turn into…

Read More

Heritage-bags supply precise replica versions of luxury

Genuine & Reproduction Purse Reviews By The Purse Queen However, there are also Reddit threads devoted to the best sellers. Typically, baggage are made to order and the vendor sends quality-control pictures throughout the method. I will share high picks and recommendations on recognizing high-quality bag dupes that will elevate your style with out the…

Read More

But these smaller, extra intimate coteries go beyond a shared

The Surge Of ‘superfake’ Purses Is Among Us Give your wardrobe a refresh and add a Givenchy Antigona soft leather bag proper now, and examine out the other dupe again ranges too. This is where it turns into necessary to have the ability to distinguish between an affordable knock-off and high-quality Gucci replicas. A replica…

Read More

Various luxurious manufacturers have foundries in China

Spot Fake Ysl Bag Like A Pro: What You Have To Know This could be very bad for the long-term development of your corporation. Another retailer created by Chinese entrepreneurs with ridiculous prices, if you know how to look, on gadgets with features and qualities virtually equal to those of the unique merchandise. Of course,…

Read More

Perhaps one of the most underrated discreet sex toys is nipple

Which is the best wand vibrator? Hitachi vs Le Wand vs. Doxy You can also find out what types of lubricants can be used with the toy to enhance the experience. Designed to be compact in size, all mini vibrators are used to stimulate the genitals to increase arousal and to promote intense climaxes. These…

Read More