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







Most platforms we’ve selected go even further by offering – Base de données MCPV "Prestataires"

Most platforms we’ve selected go even further by offering

Cleveland On Line Casino

These days casino apps are so advanced, there are only a few casino games that you simply won’t have the power to find. Most platforms we’ve selected go even further by offering instruments similar to deposit limits ベラジョン, deadlines, reality checks, self-exclusion options, and exercise statements. In these seven states, you possibly can enjoy a full range of casino offerings ベラジョン, including on-line slots and desk games like blackjack, roulette ジョイカジノ, and baccarat.

But earlier than you begin your online gambling adventure, use the next suggestions supplied by our staff to make probably the most of your gameplay. Reviews from different on-line on line casino players is usually a great useful resource when selecting the right online casino. They may give you an perception into what other players expertise whereas enjoying, together with any constructive elements or important issues they have encountered. If you wish to go a step additional and ensure a casino has a specific recreation on offer, one of the best thing you are able to do is go to the on line casino and verify for yourself. Alternatively, go to our database of free casino games ジョイカジノ ルーレット, find the game you want to play, and click ‘Play for Real Money’.

Our library of free on-line slots covers the entire largest software suppliers and the best new slot games within the business. Below ベラジョン, we’ve narrowed down 5 of our favorite slots to play in demo mode for September. Play at the most effective free slot machines and games on this web page, and if you’re fortunate, win free slots bonuses.

The sky-lit artwork and floral-filled galleries of the casinos at Wynn and Encore Las Vegas introduce visitors to a new means of experiencing the fun and pleasure of gaming. Our on line casino offerings include all kinds of desk games and slots, luxurious high-limit salons, poolside gaming, a state-of-the-art sports activities book, and Las Vegas’s preeminent poker site. Elevate your gaming expertise with a lavish choice of high-limit slots, upscale table video games, dedicated service, and an exclusive ambiance created for serious gamers. When applied correctly, a PRNG algorithm such because the Mersenne Twister will ensure that the games are both honest and unpredictable. However, usually, the player has to trust that the software program has not been rigged to extend the home edge, as its inside workings are invisible to the consumer.

We advise you always to double-check before enjoying at a selected casino, particularly the payment strategies and Terms and Conditions. For example, if you are in Canada and love LuckyBird Casino, but unfortunately, this casino does not function in Canada, it could affect your search and enjoying expertise. With our record, you can find comparable casinos to affix based mostly on your location. The contributions of gamers’ feedback about these casinos are additionally essential, and we base our rankings on the standard of participant experiences.

We consider that all our gamers are valuable and deal with them accordingly. Hence the creation of an unique tiered VIP club that rewards gamers by loyalty, not cash spent. Whether you finish up in a mystical world of fairies & unicorns or a futuristic sci-fi landscape, the bonus gameplay is as thrilling because the potential rewards.

Some real cash casinos also allow you to strive demo variations of their slot games. If you play on-line blackjack or roulette, knowing the percentages and home edge is essential to successful. RTP stands for Return to Player—it tells you how much you may win back over time. For example, if a slot has a 96% RTP, you could get again $96 from every $100 you play.

We make certain our beneficial real cash on-line casinos are protected by placing them via our rigorous 25-step evaluate course of. This covers classes like safety and trust, bonuses and promotions, cellular gaming, and extra. If an actual cash online on line casino is not up to scratch, we add it to our list of internet sites to avoid.

As you are not wagering real money, social casinos operate in a legal gray area. They aren’t subject to conventional playing laws and usually do not hold gambling licenses. This lack of regulation means there’s no actual route players can go down if something goes wrong.

Assuming that the net on line casino is utilizing an appropriately programmed random number generator バカラ ルール, table games like blackjack have a longtime house edge. The payout percentage for these games are established by the rules of the sport. We have damaged down their key features, mentioned the video games they offer and highlighted the bonuses they supply. You will also be taught more in regards to the types of actual money casino games you presumably can play, the banking methods you must use and the promos you can declare. These are extremely beneficial for a great gaming experience with none trouble.

Cleveland On Line Casino These days casino apps are so advanced, there are only a few casino games that you simply won’t have the power to find. Most platforms we’ve selected go even further by offering instruments similar to deposit limits ベラジョン, deadlines, reality checks, self-exclusion options, and exercise statements. In these seven states, you…

Leave a Reply

Your email address will not be published. Required fields are marked *