* @version    $Revision$
 */
CCanDo::checkRead();
$consultation_id = CValue::get("consultation_id");
$consultations = array();
$consultation = new CConsultation();
$consultation->load($consultation_id);
$consultation->loadRefsFwd();
$date = $consultation->_ref_plageconsult->date;
$prat = $consultation->_ref_plageconsult->_ref_chir;
$prat->loadRefs();
$patient = $consultation->_ref_patient;
$patient->loadRefs();
$prat->loadRefFunction();
$chir_ids = array_keys($prat->_ref_function->loadRefsUsers());
$ds = $consultation->getDS();
// nexts rdvs for the same function
$ljoin = array("plageconsult" => "plageconsult.plageconsult_id = consultation.plageconsult_id");
$where = array();
$where["date"] = ">= '{$date}' ";
$where["patient_id"] = " = '{$consultation->patient_id}' ";
$where[] = "plageconsult.chir_id " . $ds->prepareIn($chir_ids) . " OR plageconsult.remplacant_id " . $ds->prepareIn($chir_ids);
$where["annule"] = " != '1' ";
$where[$consultation->_spec->key] = " != '{$consultation->_id}'";
/** @var CConsultation[] $consultations */
$consultations = $consultation->loadList($where, "date ASC, heure ASC", null, null, $ljoin);
foreach ($consultations as $_consult) {
    $_consult->_ref_patient = $consultation->_ref_patient;
    $_consult->loadRefPraticien()->loadRefFunction();
    $_consult->_ref_plageconsult->loadRefRemplacant();
}