rame |
2nd November 2009 20:32 |
heres the code of functions.php
PHP Code:
<?php # IMPORTANT: Do not edit below unless you know what you are doing! if(!defined('IN_INSTALL')) die('Hacking attempt!'); function validusername($username) { if ($username == "") return false;
// The following characters are allowed in user names $allowedchars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
for ($i = 0; $i < strlen($username); ++$i) if (strpos($allowedchars, $username[$i]) === false) return false;
return true; } function validemail($email) { return preg_match('/^[\w.-]+@([\w.-]+\.)+[a-z]{2,6}$/is', $email); } function mksecret($len = 20) { $ret = ""; for ($i = 0; $i < $len; $i++) $ret .= chr(mt_rand(0, 255)); return $ret; } function get_date_time () { return date("Y-m-d H:i:s"); } function sqlerr($file = '', $line = '') { print("<table border=0 bgcolor=blue align=left cellspacing=0 cellpadding=10 style='background: blue'>" . "<tr><td class=embedded><font color=white><h1>SQL Error</h1>\n" . "<b>" . mysql_error() . ($file != '' && $line != '' ? "<p>in $file, line $line</p>" : "") . "</b></font></td></tr></table>"); die; } function sqlesc($value) { // Stripslashes if (get_magic_quotes_gpc()) { $value = stripslashes($value); } // Quote if not a number or a numeric string if (!is_numeric($value)) { $value = "'" . mysql_real_escape_string($value) . "'"; } return $value; } function mkglobal($vars) { if (!is_array($vars)) $vars = explode(":", $vars); foreach ($vars as $v) { if (isset($_GET[$v])) $GLOBALS[$v] = unesc($_GET[$v]); elseif (isset($_POST[$v])) $GLOBALS[$v] = unesc($_POST[$v]); else return 0; } return 1; } function unesc($x) { if (get_magic_quotes_gpc()) return stripslashes($x); return $x; } function safe_email($email) { $email = str_replace("<","",$email); $email = str_replace(">","",$email); $email = str_replace("\'","",$email); $email = str_replace('\"',"",$email); $email = str_replace("\\\\","",$email); return $email; } function check_email ($email) { # Check EMail Function v.02 by xam! if(ereg("^([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$", $email)) return true; else return false; } function bark($msg) { stdmsg("Signup Failed! (See Below)", $msg,false); exit; } function stdmsg($heading, $text, $htmlstrip = TRUE) { if ($htmlstrip) { $heading = htmlspecialchars(trim($heading)); $text = htmlspecialchars(trim($text)); } print("<table class=main width=737 border=0 cellpadding=0 cellspacing=0><tr><td class=embedded>\n"); if ($heading) print("<h2>$heading</h2>\n"); print("<table width=100% border=1 cellspacing=0 cellpadding=10><tr><td class=text>\n"); print($text . "</td></tr></table></td></tr></table>\n"); } function int_check($value) { if ( is_array($value) ) { foreach ($value as $val) int_check ($val); } else { if (!is_valid_id($value)) { bark("Invalid ID! For security reason, we have been logged this action."); } else return true; } } function is_valid_id($id) { return is_numeric($id) && ($id > 0) && (floor($id) == $id); } function dbconn() { global $DATABASE;
if (!@mysql_connect($DATABASE[mysql_host], $DATABASE[mysql_user], $DATABASE[mysql_pass])) { switch (mysql_errno()) { case 1040: case 2002: if ($_SERVER[REQUEST_METHOD] == "GET") die("<html><head><meta http-equiv=refresh content=\"5 $_SERVER[REQUEST_URI]\"></head><body><table border=0 width=100% height=100%><tr><td><h3 align=center>The server load is very high at the moment. Retrying, please wait...</h3></td></tr></table></body></html>"); else die("Too many users. Please press the Refresh button in your browser to retry."); default: die("[" . mysql_errno() . "] dbconn: mysql_connect: " . mysql_error()); } } mysql_select_db($DATABASE[mysql_db]) or die('dbconn: mysql_select_db: ' + mysql_error());
} function step ($text = '', $stepname = '', $stepnumber = '') { ?> <p><table border=1 cellspacing=0 cellpadding=10 bgcolor=black width=900 align=center><tr><td style='padding: 10px; background: black' class=text> <font color=white><center><b><?=$text?></b> <div align=right>STEP: <?=$stepname?> (<?=$stepnumber?>/8)</div> </font></center></td></tr></table></p> <table border=1 cellspacing=0 cellpadding=10 width=900 align=center><tr><td style='padding: 10px;' class=text><div align=justify> <? } function ReadConfig ($configname) { if (strstr($configname, ',')) { $configlist = explode(',', $configname); foreach ($configlist as $key=>$configname) { ReadConfig(trim($configname)); } } else { $configname = basename($configname); $path = ROOT_PATH.'config/'.$configname; if (!file_exists($path)) { die("<font color=red>File [<b>".htmlspecialchars($configname)."</b>] doesn't exist!.</font><font color=blue>Before the setup starts, please ensure that you have properly configured file and directory access permissions. Please see below.</font>chmod 777 CONFIG (config directory).chmod 777 CONFIG/main (the file which save the main settings)."); } $fp = fopen($path, 'r'); $content = ''; while (!feof($fp)) { $content .= fread($fp, 102400); } fclose($fp); if (empty($content)) { if ($configname == 'XAM') { Header("Location: index.php"); die; } return array(); } $tmp = @unserialize($content); if (empty($tmp)) { if ($configname == 'XAM') { Header("Location: index.php"); die; } die("<font color=red>Cannot read file [<b>".htmlspecialchars($configname)."</b>]!.</font><font color=blue>Before the setup starts, please ensure that you have properly configured file and directory access permissions. Please see below.</font>chmod 777 CONFIG (config directory).chmod 777 CONFIG/main (the file which save the main settings)."); } $GLOBALS[$configname] = $tmp; return true; } }
function WriteConfig ($configname, $config) { $configname = basename($configname); $path = ROOT_PATH.'config/'.$configname; if (!file_exists($path) || !is_writable ($path)) { die("<font color=red>Cannot read file [<b>".htmlspecialchars($configname)."</b>]!.</font><font color=blue>Before the setup starts, please ensure that you have properly configured file and directory access permissions. Please see below.</font>chmod 777 CONFIG (config directory).chmod 777 CONFIG/main (the file which save the main settings)."); } $data = @serialize($config); if (empty($data)) { die("<font color=red>Cannot serialize file [<b>".htmlspecialchars($configname)."</b>]</font><font color=blue>Before the setup starts, please ensure that you have properly configured file and directory access permissions. Please see below.</font>chmod 777 CONFIG (config directory).chmod 777 CONFIG/main (the file which save the main settings)."); } $fp = @fopen ($path, 'w'); if (!$fp) { die("<font color=red>Cannot open file [<b>".htmlspecialchars($configname)."</b>] to save info!.</font><font color=blue>Before the setup starts, please ensure that you have properly configured file and directory access permissions. Please see below.</font>chmod 777 CONFIG (config directory).chmod 777 CONFIG/main (the file which save the main settings)."); } $Res = @fwrite($fp, $data); if (empty($Res)) { die("<font color=red>Cannot save info in file (error in serialisation) [<b>".htmlspecialchars($configname)."</b>] to save info!.</font><font color=blue>Before the setup starts, please ensure that you have properly configured file and directory access permissions. Please see below.</font>chmod 777 CONFIG (config directory).chmod 777 CONFIG/main (the file which save the main settings)."); } fclose($fp); return true; }
function GetVar ($name) { if ( is_array($name) ) { foreach ($name as $var) GetVar ($var); } else { if ( !isset($_REQUEST[$name]) ) return false; if ( get_magic_quotes_gpc() ) { $_REQUEST[$name] = ssr($_REQUEST[$name]); } $GLOBALS[$name] = $_REQUEST[$name]; return $GLOBALS[$name]; } }
function ssr ($arg) { if (is_array($arg)) { foreach ($arg as $key=>$arg_bit) { $arg[$key] = ssr($arg_bit); } } else { $arg = stripslashes($arg); } return $arg; } function tr($x,$y,$noesc=0,$relation='') { if ($noesc) $a = $y; else { $a = htmlspecialchars($y); $a = str_replace("\n", "\n", $a); } print("<tr".( $relation ? " relation = \"$relation\"" : "")."><td class=\"heading\" valign=\"top\" align=\"right\">$x</td><td valign=\"top\" align=left>$a</td></tr>\n"); } ?>
|