function logout($VAR) { global $C_debug, $C_translate; $db =& DB(); # get the account id (for DB mapping): $q = "SELECT account_id FROM " . AGILE_DB_PREFIX . "session WHERE\n\t\t\t id = '" . SESS . "' AND\n\t\t\t site_id = '" . DEFAULT_SITE . "'"; $result = $db->Execute($q); $account_id = $result->fields['account_id']; # logout the current session by editing the database record $q = "UPDATE " . AGILE_DB_PREFIX . "session SET logged='0'\n\t\t\t WHERE id = '" . SESS . "' AND\n\t\t\t site_id = '" . DEFAULT_SITE . "'"; $result = $db->Execute($q); # delete any session caches! $q = 'DELETE FROM ' . AGILE_DB_PREFIX . 'session_auth_cache WHERE session_id = ' . $db->qstr(SESS) . ' AND site_id = ' . $db->qstr(DEFAULT_SITE); $db->Execute($q); # logout success: $C_debug->alert($C_translate->translate('logout_success', '', '')); #################################################################### ### Do any db_mapping #################################################################### $sql = 'SELECT id FROM ' . AGILE_DB_PREFIX . 'module WHERE site_id = ' . $db->qstr(DEFAULT_SITE) . ' AND name = ' . $db->qstr('db_mapping') . ' AND status = ' . $db->qstr("1"); $result = $db->Execute($sql); if ($result->RecordCount() > 0) { include_once PATH_MODULES . 'db_mapping/db_mapping.inc.php'; $db_map = new db_mapping(); $db_map->logout($account_id); } }