$listSalles = $salle->loadListWithPerms(PERM_READ, $where, null, null, null, $ljoin);
// Chargement des Chirurgiens
$chir = new CMediusers();
$listChirs = $chir->loadPraticiens(PERM_READ);
// Listes des interventions hors plage
$operation = new COperation();
$ljoin = array();
$ljoin["sejour"] = "operations.sejour_id = sejour.sejour_id";
$ljoin["grossesse"] = "sejour.grossesse_id = grossesse.grossesse_id";
$where = array();
// Interv ou travail qui commence le jour choisi et n'a pas terminé d'accoucher
$where[] = "operations.date = '{$date}' OR (\n  grossesse.datetime_debut_travail IS NOT NULL AND\n  DATE(grossesse.datetime_debut_travail) < '{$date}' AND\n  grossesse.datetime_accouchement IS NULL\n)";
$where["operations.chir_id"] = CSQLDataSource::prepareIn(array_keys($listChirs));
$where["sejour.grossesse_id"] = "IS NOT NULL";
/** @var CStoredObject[] $urgences */
$urgences = $operation->loadGroupList($where, "salle_id, chir_id", null, null, $ljoin);
$reservation_installed = CModule::getActive("reservation");
$diff_hour_urgence = CAppUI::conf("reservation diff_hour_urgence");
$sejours = CStoredObject::massLoadFwdRef($urgences, "sejour_id");
$patients = CStoredObject::massLoadFwdRef($sejours, "patient_id");
CStoredObject::massLoadFwdRef($sejours, "grossesse_id");
$plage = new CPlageOp();
/** @var COperation[] $urgences */
foreach ($urgences as &$urgence) {
    $urgence->loadRefsFwd();
    $urgence->loadRefAnesth();
    $urgence->_ref_chir->loadRefsFwd();
    $sejour = $urgence->_ref_sejour;
    $patient = $sejour->loadRefPatient();
    $sejour->loadRefGrossesse();
    $dossier_medical = $patient->loadRefDossierMedical();
$group = CGroups::loadCurrent();
$listBlocs = $group->loadBlocs(PERM_READ);
// Les salles autorisées
$salle = new CSalle();
$listSalles = $salle->loadListWithPerms(PERM_READ);
// Chargement des Chirurgiens
$chir = new CMediusers();
$listChirs = $chir->loadPraticiens(PERM_READ);
// Listes des interventions hors plage
$operation = new COperation();
$where = array();
$where["date"] = "= '{$date}'";
$where["plageop_id"] = "IS NULL";
$where["operations.chir_id"] = CSQLDataSource::prepareIn(array_keys($listChirs));
/** @var COperation[] $urgences */
$urgences = $operation->loadGroupList($where, "salle_id, date, time_operation, chir_id");
$reservation_installed = CModule::getActive("reservation");
$diff_hour_urgence = CAppUI::conf("reservation diff_hour_urgence");
foreach ($urgences as &$urgence) {
    $urgence->loadRefsFwd();
    $urgence->loadRefAnesth();
    $patient = $urgence->_ref_sejour->loadRefPatient();
    $dossier_medical = $patient->loadRefDossierMedical();
    $dossier_medical->loadRefsAntecedents();
    $dossier_medical->countAntecedents();
    $dossier_medical->countAllergies();
    $urgence->_ref_chir->loadRefsFwd();
    if ($reservation_installed) {
        $first_log = $urgence->loadFirstLog();
        if (abs(CMbDT::hoursRelative($urgence->_datetime_best, $first_log->date)) <= $diff_hour_urgence) {
            $urgence->_is_urgence = true;