// Chargement de l'examen demandé
$examen = new CExamenLabo();
// Chargement du catalogue demandé
if (CValue::get("catalogue_labo_id")) {
    $examen_labo_id = null;
    CValue::setSession("examen_labo_id");
}
if ($examen_labo_id) {
    $examen->load($examen_labo_id);
    $examen->loadRefs();
    $examen->getSiblings();
    $examen->getRootCatalogue();
    foreach ($examen->_ref_siblings as &$_sibling) {
        $_sibling->loadClassification();
    }
    $examen->loadClassification();
    $catalogue =& $examen->_ref_catalogue_labo;
} else {
    $catalogue_labo_id = CValue::getOrSession("catalogue_labo_id");
    $catalogue = new CCatalogueLabo();
    $catalogue->load($catalogue_labo_id);
    $examen->catalogue_labo_id = $catalogue->_id;
}
$catalogue->loadRefs();
$groups = CGroups::loadGroups();
foreach ($groups as &$group) {
    $group->loadFunctions(null);
    foreach ($group->_ref_functions as $keyFunc => &$function) {
        if ($function->getPerm(PERM_EDIT)) {
            $function->loadRefsUsers();
        } else {