<?php abstract class Framework { /* * Get the absolute path on this server for the root of this app */ function ar() { return substr($_SERVER['PHP_SELF'], 0, -10); // 10 = length of "/index.php" } /* * Get the absolute path to the current page */ function ap() { return $this->ar() . $_REQUEST['path']; } /* * Redirect to the given URL and die */ function redirectTo($url) { header("Location: " . $url); exit; } /* * 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; } } ?>