function enrol_connect() { global $CFG; // Try to connect to the external database $enroldb = &ADONewConnection($CFG->enrol_dbtype); if ($enroldb->Connect($CFG->enrol_dbhost,$CFG->enrol_dbuser,$CFG->enrol_dbpass,$CFG->enrol_dbname,true)) { if (!empty($enroldb->_connectionID)) { if (empty($CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID})) { $CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID} = 1; } else { $CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID}++; } } $enroldb->SetFetchMode(ADODB_FETCH_ASSOC); ///Set Assoc mode always after DB connection return $enroldb; } else { trigger_error("Error connecting to enrolment DB backend with: " . "$CFG->enrol_dbhost,$CFG->enrol_dbuser,$CFG->enrol_dbpass,$CFG->enrol_dbname"); return false; } } function enrol_disconnect($enroldb) { global $CFG; if (!empty($enroldb->_connectionID)) { if (empty($CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID})) { $enroldb->Close(); } elseif ($CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID} > 1) { $CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID}--; } else { unset($CFG->{'enroldb_connection_count'}->{$enroldb->_connectionID}); $enroldb->Close(); } } else { $enroldb->Close(); } }