Files
Cleo/pub/res/d6/lib_cleo.php
Pierre 046c23f2d2 Initial commit - Application CLEO de gestion de devis
- Architecture MVC avec framework maison d6
- Modules : devis, clients, marchés, SAP
- Documentation initiale (README et TODO)
- Configuration Composer avec dépendances

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-11 18:26:07 +02:00

110 lines
4.0 KiB
PHP

<?php
/** FONCTIONS PROPRES A UNIKOFFICE LINET **/
use PHPMailer\PHPMailer\PHPMailer;
function envoieMail($dest, $sujet, $message, $copieFrom = "")
{
$smtp_host = 'barbotte.o2switch.net';
$smtp_username = 'cleo@unikoffice.com';
$smtp_userpass = "sGZN#C9E4U";
$smtpOrga = "CLEO - Gestion Devis";
$from = $smtp_username;
$smtp_auth = true;
$smtp_secure = 'ssl';
$smtp_port = 465;
$mail = new PHPMailer;
$mail->CharSet = 'UTF-8';
// $mail->Encoding = "base64";
$mail->SMTPDebug = 0; // 0 no debug 3 Enable verbose debug output
// $mail->setLanguage('fr', '/optional/path/to/language/directory/');
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = $smtp_host;
$mail->SMTPAuth = $smtp_auth; // Enable SMTP authentication
$mail->Username = $smtp_username; // SMTP username
$mail->Password = $smtp_userpass; // SMTP password
$mail->SMTPSecure = $smtp_secure; // Enable TLS encryption, `ssl` also accepted
$mail->Port = $smtp_port; // TCP port to connect to
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->addCustomHeader('Content-type', 'text/html; charset=UTF-8');
$mail->From = $from;
$mail->FromName = $smtpOrga;
$mail->addAddress(trim($dest));
if ($copieFrom != "") {
$mail->addReplyTo($copieFrom);
$mail->addCC($copieFrom);
}
// $mail->addBCC('contact@d6soft.fr'); // Ajouter une copie cachée pour l'émetteur
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $sujet;
$mail->Body = $message;
if ($mail->send()) {
eLog("Envoiemail : " . $sujet . " à " . $dest);
$mail->smtpClose();
return 1;
} else {
eLog("Envoiemail Erreur : " . $mail->ErrorInfo);
$mail->smtpClose();
return 0;
}
}
function creat_xml_resa($bien)
{
//! Crée le fichier xml des evenements d'un prêt de matériel ou de médiathèque
global $Conf;
$xml = '<?xml version="1.0"?>';
$xml .= '<monthly>';
$sql = 'SELECT d.rowid, d.valide, d.fk_salarie, dd.date_debut, dd.date_fin FROM demandes_details dd LEFT JOIN demandes d ON d.rowid=dd.fk_demande WHERE dd.fk_oeuvre=' . $bien . ' ORDER BY dd.date_debut;';
$events = getinfos($sql);
foreach ($events as $event) {
$xml .= '<event>';
$xml .= '<id>' . $event["rowid"] . '</id>';
if ($event["valide"] == 1) {
$xml .= '<name>Réservé</name>';
$xml .= '<color>#ff2222</color>';
} else {
$xml .= '<name>A valider</name>';
$xml .= '<color>#4B77BE</color>';
}
$xml .= '<fk_salarie>' . $event["fk_salarie"] . '</fk_salarie>';
$xml .= '<startdate>' . $event["date_debut"] . '</startdate>';
$xml .= '<enddate>' . $event["date_fin"] . '</enddate>';
// <starttime>8:00</starttime>
// <endtime>20:00</endtime>
// <url></url>
$xml .= '</event>';
}
$xml .= '</monthly>';
$filename = ROOT . $Conf->_pathupload . "events" . DS . "events_" . $bien . ".xml";
$hfile = fopen($filename, "w") or die("unable " . $filename);
fwrite($hfile, $xml);
fclose($hfile);
}
function commercial_create($fkUser)
{
//! Fonction TRIGGER qui est paramétrée dans le fichier de config tb_commerciaux.php et qui se lance à la fin de la création d'un utilisateur
$sql = 'INSERT INTO notifications SET dateheure="' . date("Y-m-d H:i:s") . '", fk_user=' . $fkUser . ', action="Création", theme="Commercial", message="Ce nouveau commercial a été créé";';
qSQL($sql, "gen");
}
function user_create($fkUser)
{
//! Fonction TRIGGER qui est paramétrée dans le fichier de config tb_commerciaux.php et qui se lance à la fin de la création d'un utilisateur
$sql = 'INSERT INTO notifications SET dateheure="' . date("Y-m-d H:i:s") . '", fk_user=' . $fkUser . ', action="Création", theme="Utilisateur", message="Ce nouvel utilisateur a été créé";';
qSQL($sql, "gen");
}