1
0
Fork 0
This repository has been archived on 2023-11-30. You can view files and clone it, but cannot push or open issues or pull requests.
dtux__gestion_ateliers/atelier.php

157 lines
4.9 KiB
PHP
Raw Permalink Normal View History

2019-11-24 21:57:36 +01:00
<?php
2020-01-24 14:10:18 +01:00
// TODO: vérifier disponibilité de la salle
require_once "session_init.php";
require_once "include/entete_dolibarr.php";
require_once "config.inc.php";
require_once 'fonctions.php';
2019-11-28 00:25:10 +01:00
2020-01-22 16:18:54 +01:00
//echo "argc=" . $argc . EOL . "argv=" . EOL;
//print_r($argv);
2019-11-26 00:21:06 +01:00
2019-11-28 00:01:46 +01:00
$param = array(
"date::",
"heure::",
"help::",
2019-11-29 00:10:30 +01:00
"action::",
2019-12-03 13:28:41 +01:00
"cat::",
"courriel::"
2019-11-28 00:01:46 +01:00
);
$optind=null;
2019-11-26 00:21:06 +01:00
2020-01-29 19:52:49 +01:00
$opt = getopt( 'h::', $param, $optind);
2020-03-17 16:54:38 +01:00
$cat = getparam( "cat", "" );
$action = getparam( "action", "" );
$date = getparam("date");
$heure = getparam("heure");
$courriel = getparam("courriel");
$type = getparam("type");
$intervenant = getparam("intervenant");
2023-01-12 22:45:33 +01:00
$nom_atelier = getparam("nom_atelier", "");
2023-01-17 20:28:54 +01:00
$description = getparam("description", "");
2020-01-24 14:10:18 +01:00
if( !empty(getopt("h")) or !empty(getopt("help")) )
2019-11-28 00:01:46 +01:00
{
2020-01-24 14:10:18 +01:00
// affiche l'aide de la commande
print "Aide de la commande atelier.php\n
2019-12-01 11:48:05 +01:00
atelier.php [--h|-h] [--date=<date>] [--heure=<heure>] [action=<action>] [cat=<catégorie>]
atelier.php --action=nouveau --date=<01/01/20> --heure=<10h30>
2019-12-01 11:48:05 +01:00
atelier.php --action=sendmail [cat=<all|membres|contacts>]
atelier.php --action=liste
Avec l'argument --action=liste affiche un résumé des ateliers en cours.
2019-12-01 11:48:05 +01:00
Avec l'argument --action=sondage elle crée un sondage,réserve la salle altnet et crée une entrée dans l'agenda 'Lalis'.
Avec l'argument --action=sendmail, elle envoi un mail contenant la liste des ateliers en cours, à la catégorie sélectionnée par --cat (par défaut 'all')
\t-h\t--help\taffiche cette aide
\t\t--date\tdate de l'atelier
\t\t--heure\tHeure l'atelier (par défaut la duré d'un atelier est de 1h30)
2019-12-03 13:28:41 +01:00
\t\t--cat\tcatégorie de personnes pour l'envoi de courriel (all, membres, contacts)
2019-12-01 11:48:05 +01:00
\t\t--action\taction à effectuer par le script( 'sondage', 'sendmail' )
2019-12-03 13:28:41 +01:00
\t\t--courriel\tadresse courriel du destinataire
2019-12-01 11:48:05 +01:00
";
2019-12-01 11:37:25 +01:00
2020-01-24 14:10:18 +01:00
}else
{
if ( empty($action) )
{
// affiche le résumé des sondages
require_once("recap.php");
recap();
2019-11-26 00:21:06 +01:00
}else
2020-03-18 11:16:19 +01:00
{
2020-01-24 14:10:18 +01:00
switch ($action)
2019-11-26 00:21:06 +01:00
{
case "nouveau":
2020-03-17 16:54:38 +01:00
if (!empty($date) && !empty($heure))
2019-11-29 17:14:42 +01:00
{
2020-03-17 16:54:38 +01:00
// sondage => crée un nouveau sondage
// enregistre le sondage dans la base opensurvey de dolibarr
echo "Création d'un sondage le " ;
$date_time = date_reservation($date, $heure);
2021-03-16 19:24:04 +01:00
echo $date_time["mysql"];
2020-03-18 11:16:19 +01:00
if ($date_time != 1)
2020-03-17 16:54:38 +01:00
{
2020-03-18 11:16:19 +01:00
//print_r($date_time);
echo date("j/m/Y à H\hi", $date_time["ts_debut"] ) . EOL;
if ( !verif_agenda( $date_time ) )
{
//echo 'La date est disponible';
require_once( "donnees.inc.php");
require_once( "db.class.php");
2023-01-12 22:45:33 +01:00
2023-01-17 20:28:54 +01:00
//$sujet = $base_url . "dbarr/public/opensurvey/studs.php?sondage=" . $sondage->id_sondage;
2021-04-15 14:26:51 +02:00
if ($type == "s" )
{
$sujet = 'Atelier Libre@checkbox';
2023-01-17 20:28:54 +01:00
}elseif(!empty($nom_atelier))
2023-01-12 22:45:33 +01:00
{
2023-01-17 20:28:54 +01:00
$sujet = $nom_atelier . '@checkbox';
2023-01-12 22:45:33 +01:00
$type = "l";
2021-04-22 16:45:51 +02:00
}
2023-01-12 22:45:33 +01:00
2021-04-22 16:45:51 +02:00
echo "Enregistrement dans dolibarr/opensurvey" . EOL;
$db = new db( "dolibarr" );
$sondage = new sondage(commentaires($date, $heure, $type, $intervenant, $nom_atelier, $description, $minimPart), $sujet);
2021-04-22 16:45:51 +02:00
$sondage->mail_admin = "contact@lalis.fr";
$sondage->nom_admin = "Daniel";
//echo "titre => " . $titre;
if ($type == "t")
{
$sondage->titre = "Télé-";
2021-03-16 19:24:04 +01:00
}else
{
2021-04-22 16:45:51 +02:00
$sondage->titre = "";
2021-04-15 14:26:51 +02:00
}
2021-04-22 16:45:51 +02:00
$sondage->titre .= "Atelier du " . date("j/m/Y à H\hi", $date_time["ts_debut"]);
echo "titre => " . $sondage->titre . "\n";
$sondage->datetime_debut = date("Y-m-d H:i:s", $date_time['ts_debut']);
$sondage->datetime_fin = date("Y-m-d H:i:s", $date_time['ts_fin']);
$sondage->write($db);
print_r($sondage);
$db->close();
2023-01-12 22:45:33 +01:00
2021-03-16 19:24:04 +01:00
if ($type == "p")
{
2021-03-16 19:24:04 +01:00
// enregistre la réservation dans mrbs
echo "Création de la réservation dans MRBS" . EOL;
$db = new db("librepcfr", "librepc");
$reservation = new reservation( $date_time[ "ts_debut" ], $date_time["ts_fin"], addslashes(html_entity_decode(commentaires($date, $heure, $type, $intervenant, $nom_atelier, $description, $minimPart), ENT_QUOTES )));
2021-03-16 19:24:04 +01:00
$reservation->write($db);
//print_r($reservation) . EOL;
}
2020-03-18 11:16:19 +01:00
// envoi de l'évènement sur l'agenda nextcloud
require_once("send_nextcloud.php");
echo "Ajout à l'agenda Nextcloud" . EOL;
2021-03-16 19:24:04 +01:00
//require_once('send_nextcloud.php');
envoi_event($date_time, $base_url . "dbarr/public/opensurvey/studs.php?sondage=" . $sondage->id_sondage, $type);
2020-03-18 11:16:19 +01:00
}else
{
echo "La date n'est pas disponible.";
}
2020-03-17 16:54:38 +01:00
}else
{
2020-03-18 11:16:19 +01:00
echo "La date et l'heure entrées ne sont pas dans les plages définies";
2020-03-17 16:54:38 +01:00
}
2020-03-18 11:16:19 +01:00
2019-11-29 17:14:42 +01:00
}else
{
2021-02-19 18:19:10 +01:00
echo "Il y a un problème avec la date ou l'heure entrée : date =>" . $date . " Heure=>" . $heure;
2019-11-29 17:14:42 +01:00
}
2019-11-28 00:01:46 +01:00
break;
2019-11-28 20:01:33 +01:00
case "sendmail":
2020-03-17 16:54:38 +01:00
if ( !empty($cat) )
{
require_once("send_mail.php");
send_mail( $cat, $courriel);
}
2019-11-28 20:01:33 +01:00
break;
case "liste":
require_once("recap.php");
recap();
break;
2019-11-26 00:21:06 +01:00
}
}
2019-11-28 00:01:46 +01:00
}
2019-11-24 21:57:36 +01:00
?>