ar() . $_REQUEST['path']; } /* * Redirect to the given URL and die */ function redirectTo($url) { header("Location: " . $url); exit; } /* * Get a user object for the currently logged in user. Returns false if session is logged out. */ function getCurrentUser() { if (isset($_SESSION['userguid'])) { $user = new User($_SESSION['userguid']); if ($user->type == "user") return $user; $this->setCurrentUser(); } return false; } /* * Get the IP address the client held when the current session began */ function getOriginIP() { return $_SESSION['userip']; } /* * Set the current logged in user */ function setCurrentUser($user = null) { if ($user != null && isset($user->guid)) { $_SESSION['userguid'] = $user->guid; $_SESSION['userip'] = $_SERVER['REMOTE_ADDR']; } else { unset($_SESSION['userguid']); unset($_SESSION['userip']); } } /* * Get or create the app's database connection object (this is a singleton object and dependent on system-level config) */ static function getDbConnection() { global $_SCROTT; if (self::$dbobj != null) return self::$dbobj; switch ($_SCROTT['dbEngine']) { case "mysql": $host = $_SCROTT['dbAddress']; $username = $_SCROTT['dbUser']; $password = $_SCROTT['dbPass']; $dbName = $_SCROTT['dbName']; self::$dbobj = new Mysql($host, $username, $password, $dbName); break; default: throw new Exception("Problem with Scrott Configuration. Invalid database engine specified."); break; } return self::$dbobj; } } ?>