read()))
{
if($file != "." && $file != ".." && (!is_array($forbidden_filetypes) || !in_array(strtolower(strrchr($file, ".")), $forbidden_filetypes))&& is_file(DOWNLOAD_DIR.$file) && substr($file,-4,4)!=".asp"&& substr($file,-4,4)!=".htm"&& substr($file,-5,5)!=".html"&& substr($file,-4,4)!=".php" && substr($file,-4,4)!=".lst")
{
$file = DOWNLOAD_DIR.$file;
$time = filemtime($file);
if ($delay>0)
// Auto delete files with expired time OR files with very litle size (below 5 Byte); this is crap, -_-'
//if ( (($time + ($delay*60*60)) < $current_time["0"]) || (filesize($file)<5) )
if( ($time + ($delay*60*60)) < $current_time["0"])
@unlink($file);
}
}
$dir->close();
}
function flush_all()
{
//purge_files(0.00000000000001);
auto_del(0.00000000000001);
// force show_all mode to relist the LST file
_create_list();
updateListInFile();
}
function ipcounter()
{
global $heute;
global $delay_per_ip;
global $ipmu;
$xhandle=opendir("tmp");
while($buin = readdir($xhandle)) {
if(eregi("$ipmu",$buin)) { $heute=$heute+1; }
}
$ckusr = decEnti((string)base64_decode(urldecode($_COOKIE['rxyzusr'])));
$ckusr = (is_numeric($ckusr) ? $ckusr : '0');
if(($ckusr!='')&&($ckusr > $heute)){
$heute = $ckusr;
}
else{
setcookie('rxyzusr',base64_encode(encEnti((string)$heute)),time() + ($delay_per_ip*60*60));
}
closedir($xhandle);
error_reporting(0);
$time=time();
$xhandle=opendir("tmp");
while($buin = readdir($xhandle)) {
if($buin==".") {$buin="fu"; }
if($buin=="..") {$buin="fu"; }
$xd=filemtime("tmp/$buin");
$altr=$time-$xd;
if($altr>$delay_per_ip*60*60) {
if(is_dir("tmp/$buin")) {
rmdir("tmp/$buin");
}
else {
unlink("tmp/$buin");
}
}
}
closedir($xhandle);error_reporting(1);
}
function rotN($s, $n){
$s2 = "";
for($i = 0; $i < strlen($s); $i++){
$char2 = $char = ord($s{$i});
$cap = $char & 32;
$char &= ~ $cap;
$char = $char > 64 && $char < 123 ? (($char - 65 + $n) % 26 + 65) : $char;
$char |= $cap;
if($char < 65 && $char2 > 64 || ($char > 90 && $char < 97 && ($char2 < 91 || $char2 > 96))) $char += 26;
else if($char > 122 && $char2 < 123) $char -= 52;
if(strtoupper(chr($char2)) === chr($char2)) $char = strtoupper(chr($char)); else $char = strtolower(chr($char));
$s2 .= $char;
}
return $s2;
}
function encEnti($v){
$rt = "";
for($i=0; $i < strlen($v); $i++){
$ktr = strtoupper(dechex(ord($v{$i})));
$rt.=$ktr;
}
return $rt;
}
function decEnti($c){
$pt = "";
$pj = strlen($c); $i=0;
if($pj % 2!=0){return false;}
while($i<$pj){
$hs = chr(hexdec(substr($c, $i, 2)));
$pt.=$hs;
$i= $i + 2;
}
return $pt;
}
function get_real_ip()
{
$ipRL = false;
if(!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ipRL = $_SERVER['HTTP_CLIENT_IP'];
}
if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ips = explode(", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if($ipRL)
{
array_unshift($ips, $ipRL);
$ipRL = false;
}
for($i = 0; $i < count($ips); $i++)
{
if(!preg_match("/^(10|172\.16|192\.168)\./i", $ips[$i]))
{
if(version_compare(phpversion(), "5.0.0", ">="))
{
if(ip2long($ips[$i]) != false)
{
$ipRL = $ips[$i];
break;
}
}
else
{
if(ip2long($ips[$i]) != - 1)
{
$ipRL = $ips[$i];
break;
}
}
}
}
}
return ($ipRL ? $ipRL : $_SERVER['REMOTE_ADDR']);
}
//Check allow / Banned IP Address
function chk_this_ip($meth, $user_ip)
{
global $list_allow_ip, $list_baned_ip;
$ip_allow_ar = array();
if($meth=='is_baned')
{
$list_ip = $list_baned_ip;
}
elseif($meth=='is_allow')
{
$list_ip = $list_allow_ip;
}
$ip_allow_ar = explode(',', $list_ip);
ksort($ip_allow_ar);
$check_is = false;
$ada_bintang = 0;
$i=0;
if($meth=='is_allow' && !$ip_allow_ar[$i]){exit('Terminated.!
RL Authorization malfunction:: $list_allow_ip is_empty in (config.php)');}
while(!$check_is && ($ip_allow_ar[$i]))
{
$ada_bintang = substr_count($ip_allow_ar[$i], '.*');
if($ada_bintang>0)
{
$sub_ip = substr($ip_allow_ar[$i], 0, strpos($ip_allow_ar[$i],'.*')).".";
$u_ip_ar = explode('.', $user_ip);
$bit = (int)(3-$ada_bintang);
$u_ip = '';
for($j=0; $j<=$bit; $j++)
{
$u_ip = $u_ip.$u_ip_ar[$j].".";
}
if(trim($u_ip)==trim($sub_ip)){$check_is = true;}
}
else
{
if(trim($user_ip)==trim($ip_allow_ar[$i])){$check_is = true;}
}
$i = (int)($i + 1);
}
return $check_is;
}
function view_size($size)
{
if (!is_numeric($size)) {return FALSE;}
else
{
if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 ." GB";}
elseif ($size >= 1048576) {$size = round($size/1048576*100)/100 ." MB";}
elseif ($size >= 1024) {$size = round($size/1024*100)/100 ." KB";}
else {$size = $size . " B";}
return $size;
}
}
function lnkfilter($siLink)
{
$linkres = $siLink;
if(strpos($siLink, "rapid*share.com/")||(strpos($siLink, "rapid^share.com/"))||(strpos($siLink, "rapdshare.com/")))
{
$rssuspect = array('rapid*share.com/','rapid^share.com/','rapdshare.com/');
$rsabs = 'rapidshare.com/';
$linkres = str_replace($rssuspect, $rsabs, $linkres);
}
return $linkres;
}
//encryption
function dcd($c){
$pt = ""; $bfC = $c;
if($c=="") {return $pt;}
$rRot = (int)substr($c,-2);
if(!is_numeric($rRot)){
return false;
}
else{
$bfC = strtoupper(substr($c, 0, -2));
$pj = strlen($bfC); $i=0;
}
if($pj % 2!=0){return false;}
while($i<$pj){
$hs = chr(hexdec(substr($bfC, $i, 2)));
$pt.=$hs;
$i= $i + 2;
}
$pt = strrev(rotN($pt, -$rRot));
return $pt;
}
function autoNext($iset, $noterror)
{
global $showautoclose;
global $timeautoclose;
$bfRet = "";
$bfRet="\r\n\r\n";
if($iset)
{
$bfRet.="\r\n";
$bfRet.="