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

112 lines
3.4 KiB
PHP

<?php
// TODO: vérifier disponibilité de la salle
require_once("session_init.php");
require_once("config.inc.php");
require_once('fonctions.php');
//echo "argc=" . $argc . EOL . "argv=" . EOL;
//print_r($argv);
$param = array(
"date::",
"heure::",
"help::",
"action::",
"cat::",
"courriel::"
);
$optind=null;
if ( !($opt = getopt( 'h::', $param, $optind)) )
{
echo "erreur de paramètre de la commande" . EOL;
exit(1);
}
$cat = getpost( "cat", "all" );
$action = getpost( "action", "sondage" );
$date = getpost("date");
$heure = getpost("heure");
$courriel = getpost("courriel");
echo "action = " . $action;
if( !empty(getopt("h")) or !empty(getopt("help")) )
{
// affiche l'aide de la commande
print "Aide de la commande atelier.php\n
atelier.php [--h|-h] [--date=<date>] [--heure=<heure>] [action=<action>] [cat=<catégorie>]
atelier.php --action=sondage --date=<01/01/20> --heure=<10h30>
atelier.php --action=sendmail [cat=<all|membres|contacts>]
Cette commande sans arguments affiche un résumé des ateliers en cours.
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)
\t\t--cat\tcatégorie de personnes pour l'envoi de courriel (all, membres, contacts)
\t\t--action\taction à effectuer par le script( 'sondage', 'sendmail' )
\t\t--courriel\tadresse courriel du destinataire
";
}else
{
if ( empty($action) )
{
// affiche le résumé des sondages
require_once("recap.php");
recap();
}else
{
switch ($action)
{
case "sondage":
// sondage => crée un nouveau sondage
// enregistre le sondage dans la base opensurvey de dolibarr
echo "Création du sondage ";
$date_time = date_reservation( $date, $heure);
if ( !verif_agenda( $date_time ) )
{
echo 'La date est disponible';
require_once( "donnees.inc.php");
require_once( "db.class.php");
echo "Enregistrement dans dolibarr/opensurvey" . EOL;
$db = new db( "dolibarr" );
$sondage = new sondage($commentaires, $sujet, $date_time["ts_debut"]);
$sondage->mail_admin = "contact@lalis.fr";
$sondage->nom_admin = "Daniel";
$sondage->titre = "Atelier du " . $opt["date"] . " à " . $opt["heure"];
$sondage->write($db);
print_r($sondage);
$db->close();
// 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, ENT_QUOTES )));
$reservation->write($db);
print_r($reservation) . EOL;
// envoi de l'évènement sur l'agenda nextcloud
require_once("send_nextcloud.php");
echo "Ajout à l'agenda Nextcloud" . EOL;
require_once('send_nextcloud.php');
envoi_event($date_time, $opt, $base_url . "dbarr/public/opensurvey/studs.php?sondage=" . $sondage->id_sondage);
}else
{
echo "La date n'est pas disponible.";
}
break;
case "sendmail":
require_once("send_mail.php");
send_mail( $cat, $courriel);
break;
}
}
}
?>