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>
This commit is contained in:
110
pub/res/d6/lib_cleo.php
Normal file
110
pub/res/d6/lib_cleo.php
Normal file
@@ -0,0 +1,110 @@
|
||||
<?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");
|
||||
}
|
||||
Reference in New Issue
Block a user