<?php include ('../../inc/confNetisse.php'); $eds = isset($_REQUEST['eds']) ? $_REQUEST['eds'] : ""; $ida = isset($_REQUEST['id']) ? $_REQUEST['id'] : ""; $time = isset($_REQUEST['t']) ? $_REQUEST['t'] : ""; $delay = isset($_REQUEST['delay']) ? $_REQUEST['delay'] : 30; $median = $GLOBALS["BORNE_CONF"]["RDV_CALENDAR_MEDIAN_SCAN"] ? true : false; $client = isset($_REQUEST['client']) ? $_REQUEST['client'] : ""; $nom_client = isset($_REQUEST['nom_client']) ? $_REQUEST['nom_client'] : ""; $prenom_client = isset($_REQUEST['prenom_client']) ? $_REQUEST['prenom_client'] : ""; $result = array("status" => false, "rdv" => false); $dt = date('Y-m-d H:i:s'); $dtf = new DateTime($dt, new DateTimeZone('Europe/Paris')); $dtf->setTimezone(new DateTimeZone('Europe/Paris')); $dt1 = $dtf->format('Y-m-d 08:00:00'); $dt2 = $dtf->format('Y-m-d 12:59:59'); $dt3 = $dtf->format('Y-m-d 13:00:00'); $dt4 = $dtf->format('Y-m-d 20:00:00'); if($ida && ($client || ($nom_client && $prenom_client))){ $delay_scan = ""; $hour = date('H'); if($median){ if($hour < 13){ $delay_scan = "AND date_debut BETWEEN :dt1 AND :dt2"; } else{ $delay_scan = "AND date_debut BETWEEN :dt1 AND :dt2"; } } else{ $delay_scan = "AND date_debut BETWEEN DATE_SUB(NOW(), INTERVAL :delay1 MINUTE) AND DATE_ADD(NOW(), INTERVAL :delay2 MINUTE)"; } $values = array(":eds" => $eds); if ($client) { $condition = "r.uid_client = :uid_client ".$delay_scan; $values = array(":eds" => $eds, ":id_agence" => $ida, ":uid_client" => $client); }elseif($nom_client && $prenom_client){ $condition = "(UPPER(r.nom_client) = :nom_client AND UPPER(r.prenom_client) = :prenom_client) ".$delay_scan; $values = array(":eds" => $eds, ":id_agence" => $ida, ":nom_client" => strtoupper($nom_client), ":prenom_client" => strtoupper($prenom_client)); } $q = "SELECT uid_client, civ_client, matricule, c.id_conseiller, ca.id_entite as entite, nom_client, prenom_client, theme, date_debut, date_fin, c.photo, c.civ as civ_conseiller, c.nom as nom_conseiller, TIMESTAMPDIFF(SECOND,ca.last_active,now()) last_active_sec, c.prenom as prenom_conseiller, ca.id_fonction, COALESCE(ca.id_orientation, c.orientation) as orientation, e.borne_color color FROM ca_rdv_calendar r LEFT JOIN ca_conseillers c ON c.id_agent = r.matricule LEFT JOIN ca_agences a ON a.eds = r.eds LEFT JOIN ca_conseiller_agence ca ON ca.id_conseiller = c.id_conseiller AND ca.id_agence = a.id_agence LEFT JOIN ca_entites e ON ca.id_entite = e.id_entite WHERE c.supp=0 AND a.supp=0 AND r.eds = :eds AND a.id_agence = :id_agence AND ".$condition; if($median){ if($hour < 13){ $values[":dt1"] = $dt1; $values[":dt2"] = $dt2; } else{ $values[":dt1"] = $dt3; $values[":dt2"] = $dt4; } } else{ $values[":delay1"] = $delay; $values[":delay2"] = $delay; } // echo $q; // var_dump($values); $res = excuteQuery($q, $values); if (!$res['status']) wts_die (var_dump($res['stmt']->errorInfo())); if($res['stmt']->rowCount() > 0){ $result["status"] = true; $o = $res['stmt']->fetch(PDO::FETCH_OBJ); $connected_once = ($o->last_active_sec == null)?false:true; $last_active = !empty($o->last_active_sec)?$o->last_active_sec:0; $active = $connected_once && isset($last_active) && $last_active <= 15; $o->online = $active; $o->heure = date('H\hi',strtotime($o->date_debut)); $result["rdv"] = $o; } } echo json_encode($result);