$plageSel = new CPlageconsult();
if ($plageconsult_id === null && $chirSel && $is_in_period) {
    $nowTime = CMbDT::time();
    $where = array("chir_id = '{$chirSel}' OR remplacant_id = '{$chirSel}' OR pour_compte_id = '{$chirSel}'", "date" => "= '{$today}'", "debut" => "<= '{$nowTime}'", "fin" => ">= '{$nowTime}'");
    $plageSel->loadObject($where);
}
if (!$plageSel->plageconsult_id) {
    $plageSel->load($plageconsult_id);
} else {
    $plageconsult_id = $plageSel->plageconsult_id;
}
$plageSel->loadRefChir();
$plageSel->loadRefRemplacant();
$plageSel->loadRefPourCompte();
$plageSel->loadRefsNotes();
$plageSel->loadRefsBack($show_annulees, true, $show_payees);
if ($plageSel->_affected && count($plageSel->_ref_consultations)) {
    $firstconsult = reset($plageSel->_ref_consultations);
    $_firstconsult_time = substr($firstconsult->heure, 0, 5);
    $lastconsult = end($plageSel->_ref_consultations);
    $_lastconsult_time = substr($lastconsult->heure, 0, 5);
}
$consults = $plageSel->_ref_consultations;
CStoredObject::massLoadFwdRef($consults, "sejour_id");
$patients = CMbObject::massLoadFwdRef($consults, "patient_id");
CStoredObject::massCountBackRefs($patients, "notes");
CStoredObject::massLoadFwdRef($consults, "categorie_id");
// Détails sur les consultation affichées
foreach ($plageSel->_ref_consultations as $keyConsult => &$consultation) {
    $consultation->_ref_plageconsult = $plageSel;
    $consultation->loadRefSejour();
    $where["chir_id"] = "= '{$anesth->_id}'";
    $where["date"] = "= '{$date}'";
    $order = "debut";
    $listPlage = $plage->loadList($where, $order);
    if (count($listPlage)) {
        $listPlages[$anesth->_id]["plages"] = $listPlage;
    } else {
        unset($listPlages[$anesth->_id]);
        unset($anesthesistes[$anesth->_id]);
    }
}
foreach ($listPlages as &$element) {
    foreach ($element["plages"] as &$plage) {
        /** @var  CPlageconsult $plage */
        $plage->_ref_chir =& $element["anesthesiste"];
        $plage->loadRefsBack();
        foreach ($plage->_ref_consultations as $keyConsult => &$consultation) {
            if ($consultation->chrono == CConsultation::TERMINE) {
                unset($plage->_ref_consultations[$keyConsult]);
                continue;
            }
            $consultation->loadRefSejour();
            $consultation->loadRefPatient();
            $consultation->loadRefCategorie();
            $consultation->countDocItems();
        }
    }
}
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("consult", $consult);
// Plage de consultation selectionnée
$plageconsult_id = CValue::getOrSession("plageconsult_id", null);
$plageSel = new CPlageconsult();
if ($plageconsult_id === null && $chirSel && $is_in_period) {
    $nowTime = CMbDT::time();
    $where = array("chir_id" => "= '{$chirSel}'", "date" => "= '{$today}'", "debut" => "<= '{$nowTime}'", "fin" => ">= '{$nowTime}'");
    $plageSel->loadObject($where);
}
if (!$plageSel->plageconsult_id) {
    $plageSel->load($plageconsult_id);
} else {
    $plageconsult_id = $plageSel->plageconsult_id;
}
$plageSel->loadRefsFwd(1);
$plageSel->loadRefsNotes();
$plageSel->loadRefsBack();
//check 3333tel
if (CModule::getActive("3333tel")) {
    C3333TelTools::checkPlagesConsult($plageSel, $plageSel->_ref_chir->function_id);
}
$pause = new CConsultation();
//find the unique pause;
if ($plageSel->_id) {
    $where_p = array();
    $where_p["plageconsult_id"] = " = '{$plageSel->_id}' ";
    $where_p["patient_id"] = " IS NULL";
    $list = $pause->loadList($where_p);
    if (count($list) == 1) {
        /** @var CConsultation $pause */
        $pause = reset($list);
        $plageSel->_pause = $pause->heure;