PHP Code:
<?php
class Core
{
public static $config;
public static $ready;
function __Construct()
{
self::LoadConfig();
self::MySQLConnect();
self::FilterAll();
self::CheckSession(true);
//If ready
self::$ready = false;
if (MySQL::$connected)
{
self::$ready = true;
}
}
public static function Filter($string, $allowHTML = false)
{
if (!$allowHTML)
{
$string = @htmlspecialchars($string);
}
return mysql_real_escape_string($string, MySQL::$link);
}
public static function RealString($string)
{
$string = str_replace('\\\'', '\'', $string);
return str_replace(array('\\n\\r', '\\n', '\\r'), '', $string);
}
public static function Hash($string)
{
return md5($string.self::$config['blowfish']);
}
//Easy shit
public static function Exception($error, $errno = 0)
{
exit($errno.': '.$error);
}
public static function Location($url)
{
header('Location: '.$url);
exit;
}
public static function Is_Maintenance()
{
$file = BASE.'includes/maintenance.txt';
if (!file_exists($file))
{
return false;
}
return filter_var(file_get_contents($file), FILTER_VALIDATE_BOOLEAN);
}
public static function TimeToDate($time = 0)
{
if ($time == 0)
{
$time = time();
}
return date('Y-m-d H:i:s', $time);
}
public static function CheckSession($OnlySession = false)
{
if (User::LoggedIn())
{
if ($OnlySession)
{
User::UpdateUserData($_SESSION['user']['id'], true);
new MultiUser(true);
return true;
}
Core::CleanSessions();
return User::Login(
$_SESSION['user']['login'],
$_SESSION['user']['password']
);
}
return false;
}
public static function CleanSessions()
{
User::ClubClean();
unset($_SESSION['online_count']);
unset($_SESSION['register']);
}
public static function GetOnlineCount()
{
if (isset($_SESSION['online_count']))
{
return $_SESSION['online_count'];
}
$_SESSION['online_count'] = $count = MySQL::Query('SELECT count(status) FROM `users` WHERE `status` = "1"')->Result();
return $count;
}
//Init
private static function LoadConfig()
{
require BASE.'/includes/inc.config.php';
self::$config = $_config;
}
private static function MySQLConnect()
{
new MySQL(
self::$config['mysql']['hostname'],
self::$config['mysql']['username'],
self::$config['mysql']['password']
);
MySQL::SelectDB(self::$config['mysql']['database']);
}
private static function FilterAll()
{
//Filter POST input
foreach($_POST as $key => $value)
{
$_POST[$key] = self::Filter($value);
}
//Filter GET input
foreach($_GET as $key => $value)
{
$_GET[$key] = self::Filter($value);
}
}
}
?>