2019-11-24 21:57:36 +01:00
< ? php
2020-01-24 14:10:18 +01:00
// TODO: vérifier disponibilité de la salle
2020-02-06 17:14:30 +01:00
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 " , " " );
2020-02-06 17:14:30 +01:00
$action = getparam ( " action " , " " );
$date = getparam ( " date " );
$heure = getparam ( " heure " );
$courriel = getparam ( " courriel " );
2019-11-26 00:21:06 +01:00
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 > ]
2020-02-06 17:14:30 +01:00
atelier . php -- action = nouveau -- date =< 01 / 01 / 20 > -- heure =< 10 h30 >
2019-12-01 11:48:05 +01:00
atelier . php -- action = sendmail [ cat =< all | membres | contacts > ]
2020-01-24 14:18:49 +01:00
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 1 h30 )
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
{
2020-02-06 17:14:30 +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 );
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 " );
echo " Enregistrement dans dolibarr/opensurvey " . EOL ;
$db = new db ( " dolibarr " );
$sondage = new sondage ( commentaires ( $date , $heure ), $sujet );
$sondage -> mail_admin = " contact@lalis.fr " ;
$sondage -> nom_admin = " Daniel " ;
$sondage -> titre = " Atelier du " . date ( " j/m/Y à H \ hi " , $date_time [ " ts_debut " ]);
$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 ();
2019-11-28 00:25:10 +01:00
2020-03-18 11:16:19 +01:00
// enregistre la réservation dans mrbs
echo " Création de la réservation dans MRBS " . EOL ;
$db = new db ( " librepcfr " , " librepc " );
2019-11-28 23:08:30 +01:00
2020-03-18 11:16:19 +01:00
$reservation = new reservation ( $date_time [ " ts_debut " ], $date_time [ " ts_fin " ], addslashes ( html_entity_decode ( commentaires ( $date , $heure ), ENT_QUOTES )));
$reservation -> write ( $db );
//print_r($reservation) . EOL;
2019-11-28 00:25:10 +01:00
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 ;
require_once ( 'send_nextcloud.php' );
envoi_event ( $date_time , $base_url . " dbarr/public/opensurvey/studs.php?sondage= " . $sondage -> id_sondage );
} 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
{
2020-03-17 16:54:38 +01:00
echo " Il y a un problème avec la date ou l'heure entrée " ;
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 ;
2020-01-24 14:18:49 +01:00
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
?>