Bravo List
Register
Go Back   > Bravo List > Source Code > Active Trackers > Torrent Trader
Reply
  #1  
Old 4th October 2008, 08:04
movizdb movizdb is offline
Senior Member
 
Join Date: Sep 2008
France
Posts: 142
Angry error with ext
En: Hello I have a bug with external torrent in my tracker movizdb : Home and i don't know what is the bug what should i do??

FR: bonjour j'ai un bug sur les torrent externes sur mon tracker movizdb : Home je sais quoi c'est quoi le bug qu'est ce que je dois faire?
Reply With Quote
  #2  
Old 4th October 2008, 10:32
Fynnon's Avatar
Fynnon Fynnon is offline
xxx
 
Join Date: Nov 2007
P2P
Posts: 984
Default
What is the error !

Copy & Paste the error inside [code] tags or atach a screenshot...

:matrix:
Reply With Quote
  #3  
Old 4th October 2008, 10:36
movizdb movizdb is offline
Senior Member
 
Join Date: Sep 2008
France
Posts: 142
Exclamation
its writen when i update stats LIVE STATS:
Code:
Tracker Timeout
Please retry later
Reply With Quote
  #4  
Old 4th October 2008, 10:58
Fynnon's Avatar
Fynnon Fynnon is offline
xxx
 
Join Date: Nov 2007
P2P
Posts: 984
Default
It could be a hosting problem from what i`ve read since now...

Try this:
In functions.php remove the @ in front of:
Code:
@$fp = file_get_contents($scrape.'?info_hash='.escape_url($hash));
It should give you a detailed error

1. allow_url_fopen is probably disabled

2. the web server isn't allowed to open outbound connections - this is because you`re on a shared hosting and not all the ports you need are opened, you need to ask your hosting company if you`re alowed outbound connections


If that doesn`t work try this:

replace the code in /backend/functions.php and in class_spider.php with:

Code:
function torrent_scrape_url($scrape, $hash) {
    $ch = curl_init();
    $timeout = 5; 
    curl_setopt ($ch, CURLOPT_URL, $scrape.'?info_hash='.escape_url($hash));
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $fp = curl_exec($ch);
    curl_close($ch);

    $ret = array();
    if(!$fp) {
        $ret['seeds'] = -1;
        $ret['peers'] = -1;
    }else{
        $stats = BDecode($fp);
        $binhash = addslashes(pack("H*", $hash));
        $seeds = $stats['files'][$binhash]['complete'];
        $peers = $stats['files'][$binhash]['incomplete'];
        $downloaded = $stats['files'][$binhash]['downloaded'];
        $ret['seeds'] = $seeds;
        $ret['peers'] = $peers;
        $ret['downloaded'] = $downloaded;
    }
    return $ret;
}
Don`t forget to make backup of the files before any edits !
Reply With Quote
  #5  
Old 4th October 2008, 11:23
movizdb movizdb is offline
Senior Member
 
Join Date: Sep 2008
France
Posts: 142
Default
i have done it but no error its like together

can you do it please and where is class_spider
Attached Files
File Type: php functions.php (39.6 KB, 9 views)
Reply With Quote
  #6  
Old 4th October 2008, 15:34
Fynnon's Avatar
Fynnon Fynnon is offline
xxx
 
Join Date: Nov 2007
P2P
Posts: 984
Default
Try this one:

PHP Code:
<?php
//
//  TorrentTrader v2.x
//  This file was last updated: 25/Feb/2008 by TorrentialStorm
//
//    http://www.torrenttrader.org
//
//
error_reporting(E_ALL E_NOTICE);
// register_globals on *fix*
if (!ini_get("register_globals")) {
    
import_request_variables('GPC');
}

//If running on a windows server you "may" have to use absolute paths here

require_once("mysql.php"); //Get MYSQL Connection Info
require_once("config.php");  //Get Site Settings and Vars ($site_config)
require("tzs.php"); // Get Timezones



function dbconn($autoclean false) {
    global 
$mysql_host$mysql_user$mysql_pass$mysql_db$THEME$LANGUAGE$site_config;

    if (
extension_loaded('zlib') && !ini_get('zlib.output_compression'))
        
ob_start('ob_gzhandler');
    else
        
ob_start();

    
header("Content-Type: text/html;charset=$site_config[CHARSET]");

    if (!
function_exists("mysql_connect"))
        die(
"MySQL support not available.");

    if (!@
mysql_connect($mysql_host$mysql_user$mysql_pass))
    {
      die(
'DATABASE: mysql_connect: ' mysql_error());
    }
     
mysql_select_db($mysql_db)
        or die(
'DATABASE: mysql_select_db: ' mysql_error());

    unset(
$mysql_pass); //security

    
userlogin(); //Get user info    

    //Get language and theme
    
$CURUSER $GLOBALS["CURUSER"];
    if (
$CURUSER)  {
        
$ss_a = @mysql_fetch_array(@mysql_query("SELECT uri FROM stylesheets WHERE id=$CURUSER[stylesheet]"));
        if (
$ss_a)
            
$THEME $ss_a["uri"];
        else {
            
$ss_a = @mysql_fetch_array(@mysql_query("select uri from stylesheets where id=$site_config[default_theme]"));
            
$THEME $ss_a['uri'];
        }
        
$lng_a = @mysql_fetch_array(@mysql_query("select uri from languages where id=$CURUSER[language]"));
        if (
$lng_a)
            
$LANGUAGE $lng_a["uri"];
        else {
            
$lng_a = @mysql_fetch_array(@mysql_query("select uri from languages where id=$site_config[default_language]"));
            
$LANGUAGE $lng_a['uri'];
        }
    }else{
//not logged in so get default theme/language
        
$ss_a mysql_fetch_array(mysql_query("select uri from stylesheets where id='" $site_config['default_theme'] . "'")) or die(mysql_error());
        if (
$ss_a)
            
$THEME $ss_a["uri"];
        
$lng_a mysql_fetch_array(mysql_query("select uri from languages where id='" $site_config['default_language'] . "'")) or die(mysql_error());
        if (
$lng_a)
            
$LANGUAGE $lng_a["uri"];
    }
    require_once(
"languages/$LANGUAGE");



    if (
$autoclean)
        
autoclean();
}

// Main Cleanup
function autoclean() {
    global 
$site_config;
    require_once(
"cleanup.php");

    
$now gmtime();

    
$res mysql_query("SELECT last_time FROM tasks WHERE task='cleanup'");
    
$row mysql_fetch_array($res);
    if (!
$row) {
        
mysql_query("INSERT INTO tasks (task, last_time) VALUES ('cleanup',$now)");
        return;
    }
    
$ts $row[0];
    if (
$ts $site_config["autoclean_interval"] > $now)
        return;
    
mysql_query("UPDATE tasks SET last_time=$now WHERE task='cleanup' AND last_time = $ts");
    if (!
mysql_affected_rows())
        return;

    
do_cleanup();
}

// IP Validation
function validip($ip)
{
    if (!empty(
$ip) && $ip == long2ip(ip2long($ip)))
    {
        
$reserved_ips = array (
                array(
'0.0.0.0','2.255.255.255'),
                array(
'10.0.0.0','10.255.255.255'),
                array(
'127.0.0.0','127.255.255.255'),
                array(
'169.254.0.0','169.254.255.255'),
                array(
'172.16.0.0','172.31.255.255'),
                array(
'192.0.2.0','192.0.2.255'),
                array(
'192.168.0.0','192.168.255.255'),
                array(
'255.255.255.0','255.255.255.255')
        );

        foreach (
$reserved_ips as $r)
        {
                
$min ip2long($r[0]);
                
$max ip2long($r[1]);
                if ((
ip2long($ip) >= $min) && (ip2long($ip) <= $max)) return false;
        }
        return 
true;
    }
    else return 
false;
}

function 
getip() {
   if (isset(
$_SERVER)) {
     if (isset(
$_SERVER['HTTP_X_FORWARDED_FOR']) && validip($_SERVER['HTTP_X_FORWARDED_FOR'])) {
       
$ip $_SERVER['HTTP_X_FORWARDED_FOR'];
     } elseif (isset(
$_SERVER['HTTP_CLIENT_IP']) && validip($_SERVER['HTTP_CLIENT_IP'])) {
       
$ip $_SERVER['HTTP_CLIENT_IP'];
     } else {
       
$ip $_SERVER['REMOTE_ADDR'];
     }
   } else {
     if (
getenv('HTTP_X_FORWARDED_FOR') && validip(getenv('HTTP_X_FORWARDED_FOR'))) {
       
$ip getenv('HTTP_X_FORWARDED_FOR');
     } elseif (
getenv('HTTP_CLIENT_IP') && validip(getenv('HTTP_CLIENT_IP'))) {
       
$ip getenv('HTTP_CLIENT_IP');
     } else {
       
$ip getenv('REMOTE_ADDR');
     }
   }
   return 
$ip;
}

function 
userlogin() {
    global 
$CURUSER;
    unset(
$GLOBALS["CURUSER"]);

    
$ip getip(); //GET USERS IP

    //Check IP bans    
/*    $nip = ip2long($ip);
    $res = mysql_query("SELECT * FROM bans WHERE $nip >= first AND $nip <= last")  or die(mysql_error());
    if (mysql_num_rows($res) > 0)
    {
      $row = mysql_fetch_array($res);
      header("HTTP/1.0 403 Forbidden");
      print("<html><head><title>Forbidden</title></head><body><h1>Forbidden</h1>Unauthorized IP address.<br />Reason for banning: " . $row["comment"] . "</body></html>\n");
      die;
    }*/


    //Check The Cookie and get CURUSER details
    
if (empty($_COOKIE["uid"]) || empty($_COOKIE["pass"]))
        return;

    
$id $_COOKIE["uid"]; //Get User ID from cookie
    
if (!$id)
    return;

    
//Get User Details And Permissions
    
$res mysql_query("SELECT * FROM users INNER JOIN groups ON users.class=groups.group_id WHERE users.id = $id AND users.enabled='yes' AND users.status = 'confirmed'") or die(mysql_error());
    
$row mysql_fetch_array($res);

    if (!
$row)
        return;

    
//Check PW in cookie matches DB (after adding secret to the hash)
    
$sec hash_pad($row["secret"]);
    if (
$_COOKIE["pass"] != md5($sec $row["password"] . $sec))
        return;

    
mysql_query("UPDATE users SET last_access='" get_date_time() . "', ip=".sqlesc($ip)." WHERE id=" $row["id"]) or die(mysql_error());

    
$GLOBALS["CURUSER"] = $row;
    unset(
$row);
}

function 
logincookie($id$password$secret$updatedb 1$expires 0x7fffffff) {
    
$md5 md5($secret $password $secret);
    
setcookie("uid"$id$expires"/");
    
setcookie("pass"$md5$expires"/");

    if (
$updatedb)
        
mysql_query("UPDATE users SET last_login = '".get_date_time()."' WHERE id = $id");
}

function 
logoutcookie() {
    
setcookie("uid""null"time(), "/");
    
setcookie("pass""null"time(), "/");
}

function 
stdhead($title "") {
    global 
$site_config$CURUSER$THEME$LANGUAGE;  //Define globals
 
    //require_once("cleanup.php");  //temp cleanup linkage :D
    //docleanup();//TEMP CLEANUP CALL

    //site online check
    
if (!$site_config["SITE_ONLINE"]){
        if (
$CURUSER["level"]!=="Administrator") {
            echo 
'<BR><BR><BR><CENTER>'stripslashes($site_config["OFFLINEMSG"]) .'</CENTER><BR><BR>';
            die;
        }else{
            echo 
'<BR><BR><BR><CENTER><B><FONT COLOR=RED>SITE OFFLINE, ADMIN ONLY VIEWING! DO NOT LOGOUT</FONT></B><BR>If you logout please edit backend/config.php and set SITE_ONLINE to true </CENTER><BR><BR>';
        }
    }
    
//end check

    
if (!$CURUSER)
        
guestadd();

    if (
$title == "")
        
$title $site_config['SITENAME'];
    else
        
$title $site_config['SITENAME']. " : "htmlspecialchars($title);

    require_once(
"themes/" $THEME "/block.php");
    require_once(
"themes/" $THEME "/header.php");
}

function 
stdfoot() {
    global 
$site_config$CURUSER$THEME$LANGUAGE;
    require_once(
"themes/" $THEME "/footer.php");
    
mysql_close();
}

function 
leftblocks() {
    global 
$site_config$CURUSER$THEME$LANGUAGE;  //Define globals
    
$res=mysql_query("SELECT * FROM blocks WHERE position='left' AND enabled=1 ORDER BY sort");
    
$i=0;
    
$blocks=array();
    while(
$result=mysql_fetch_array($res)){
        if(
$result["position"]) {
            
$block=$result["name"];
            
$blocks[$i++]=$block;
        }
    }

    foreach (
$blocks as $blockfilename){
        include(
"blocks/".$blockfilename."_block.php");
    }
}

function 
rightblocks() {
    global 
$site_config$CURUSER$THEME$LANGUAGE;  //Define globals
    
$res=mysql_query("SELECT * FROM blocks WHERE position='right' AND enabled=1 ORDER BY sort");
    
$i=0;
    
$blocks=array();
    while(
$result=mysql_fetch_array($res)){
        if(
$result["position"]) {
            
$block=$result["name"];
            
$blocks[$i++]=$block;
        }
    }

    foreach (
$blocks as $blockfilename){
        include(
"blocks/".$blockfilename."_block.php");
    }
}

function 
middleblocks() {
    global 
$site_config$CURUSER$THEME$LANGUAGE;  //Define globals
    
$res=mysql_query("SELECT * FROM blocks WHERE position='middle' AND enabled=1 ORDER BY sort");
    
$i=0;
    
$blocks=array();
    while(
$result=mysql_fetch_array($res)){
        if(
$result["position"]) {
            
$block=$result["name"];
            
$blocks[$i++]=$block;
        }
    }

    foreach (
$blocks as $blockfilename){
        include(
"blocks/".$blockfilename."_block.php");
    }
}

function 
show_error_msg($title$message$wrapper "1") {
    if (
$wrapper=="1") {
        
stdhead($title);
        
//echo "<b>DEBUG: stdhead Wrapper ON/Kill php gen further</b>";//remove later
    
}
        
begin_frame("<font color=red>"htmlspecialchars($title) ."</font>");
        print(
"<p><CENTER><B>" stripslashes(sqlesc($message)) . "</B></CENTER></p>\n");
        
end_frame();

    if (
$wrapper=="1"){
        
stdfoot();
        die();
    }
}

//calculate health
/* ********* OLD ********
function health($leechers, $seeders) {
    if ($leechers == 0){
        if ($seeders == 0)
            return 1;
        else return 10;
    }else{
        $ratio = round(10 / ($seeders + $leechers) * $seeders);
        if ($ratio < 1 )
            $ratio = 1;
        if ($ratio > 10 )
            $ratio = 10;
        return $ratio;
    }
}
******************** */

// New (TorrentialStorm 19/Feb/2008 @ 13:15)
function health($leechers$seeders) {
    if ((
$leechers == && $seeders == 0) || ($leechers && $seeders == 0))
        return 
0;
    elseif (
$seeders $leechers)
        return 
10;

    
$ratio $seeders $leechers 100;
    if (
$ratio && $ratio 15)
        return 
1;
    elseif (
$ratio >= 15 && $ratio 25)
        return 
2;
    elseif (
$ratio >= 25 && $ratio 35)
        return 
3;
    elseif (
$ratio >= 35 && $ratio 45)
        return 
4;
    elseif (
$ratio >= 45 && $ratio 55)
        return 
5;
    elseif (
$ratio >= 55 && $ratio 65)
        return 
6;
    elseif (
$ratio >= 65 && $ratio 75)
        return 
7;
    elseif (
$ratio >= 75 && $ratio 85)
        return 
8;
    elseif (
$ratio >= 85 && $ratio 95)
        return 
9;
    else
        return 
10;
}


//secure vars
function sqlesc($x) {
   if (
get_magic_quotes_gpc()) {
       
$x stripslashes($x);
   }
   if (!
is_numeric($x)) {
       
$x "'".mysql_real_escape_string($x)."'";
   }
   return 
$x;
}


function 
unesc($x) {
    return 
$x;
}

function 
mkglobal($vars) {
    if (!
is_array($vars))
        
$vars explode(":"$vars);
    foreach (
$vars as $v) {
        if (isset(
$_GET[$v]))
            
$GLOBALS[$v] = stripslashes($_GET[$v]);
        elseif (isset(
$_POST[$v]))
            
$GLOBALS[$v] = stripslashes($_POST[$v]);
        else
            return 
0;
    }
    return 
1;
}

function 
hash_pad($hash) {
    return 
str_pad($hash20);
}

function 
hash_where($name$hash) {
    
$shhash preg_replace('/ *$/s'""$hash);
    return 
"($name = " sqlesc($hash) . " OR $name = " sqlesc($shhash) . ")";
}

function 
file_ungzip($fromFile){
    
$zp = @gzopen($fromFile"r");
    while(!@
gzeof($zp)) { $string .= @gzread($zp4096); }
    @
gzclose($zp);
    return 
$string;
}

function 
mksize($bytes) {
    if (
$bytes 1000 1024)
        return 
number_format($bytes 10242) . " KB";
    if (
$bytes 1000 1048576)
        return 
number_format($bytes 10485762) . " MB";
    if (
$bytes 1000 1073741824)
        return 
number_format($bytes 10737418242) . " GB";
    return 
number_format($bytes 10995116277762) . " TB";
}

function 
escape_url($url) {
    
$ret '';
    for(
$i 0$i strlen($url); $i+=2)
    
$ret .= '%'.$url[$i].$url[$i 1];
    return 
$ret;
}

function 
torrent_scrape_url($scrape$hash) {
    
$ch curl_init();
    
$timeout 5;
    
curl_setopt ($chCURLOPT_URL$scrape.'?info_hash='.escape_url($hash));
    
curl_setopt ($chCURLOPT_RETURNTRANSFER1);
    
curl_setopt ($chCURLOPT_CONNECTTIMEOUT$timeout);
    
$fp curl_exec($ch);
    
curl_close($ch);

    
$ret = array();
    if(!
$fp) {
        
$ret['seeds'] = -1;
        
$ret['peers'] = -1;
    }else{
        
$stats BDecode($fp);
        
$binhash addslashes(pack("H*"$hash));
        
$seeds $stats['files'][$binhash]['complete'];
        
$peers $stats['files'][$binhash]['incomplete'];
        
$downloaded $stats['files'][$binhash]['downloaded'];
        
$ret['seeds'] = $seeds;
        
$ret['peers'] = $peers;
        
$ret['downloaded'] = $downloaded;
    }
    return 
$ret;
}

function 
mkprettytime($s) {
    if (
$s 0)
        
$s 0;
    
$t = array();
    foreach (array(
"60:sec","60:min","24:hour","0:day") as $x) {
        
$y explode(":"$x);
        if (
$y[0] > 1) {
            
$v $s $y[0];
            
$s floor($s $y[0]);
        }
        else
            
$v $s;
        
$t[$y[1]] = $v;
    }

    if (
$t["day"])
        return 
$t["day"] . "d " sprintf("%02d:%02d:%02d"$t["hour"], $t["min"], $t["sec"]);
    if (
$t["hour"])
        return 
sprintf("%d:%02d:%02d"$t["hour"], $t["min"], $t["sec"]);
        return 
sprintf("%d:%02d"$t["min"], $t["sec"]);
}

function 
gmtime() {
    return 
strtotime(get_date_time());
}

function 
loggedinonly() {
        global 
$CURUSER;
        if (!
$CURUSER) {
            
header("Refresh: 0; url=account-login.php?returnto=" urlencode($_SERVER["REQUEST_URI"]));
            exit();
        }
        
$wherethisuser where ($_SERVER["SCRIPT_FILENAME"],$CURUSER["id"]);
}

function 
validfilename($name) {
    return 
preg_match('/^[^\0-\x1f:\\\\\/?*\xff#<>|]+$/si'$name);
}

function 
validemail($email) {
//    return preg_match('/^[\w.-]+@([\w.-]+\.)+[a-z]{2,6}$/is', $email);
    
return preg_match('/^([a-z0-9._-](\+[a-z0-9])*)+@[a-z0-9.-]+\.[a-z]{2,6}$/i'$email);
}

function 
urlparse($m) {
    
$t $m[0];
    if (
preg_match(',^\w+://,'$t))
        return 
"<a href=\"$t\">$t</a>";
    return 
"<a href=\"http://$t\">$t</a>";
}

function 
parsedescr($d$html) {
    if (!
$html)
    {
      
$d htmlspecialchars($d);
      
$d str_replace("\n""\n<br />"$d);
    }
    return 
$d;
}

function 
mksecret($len 20) {
    
$ret "";
    for (
$i 0$i $len$i++)
        
$ret .= chr(mt_rand(0255));
    return 
$ret;
}

function 
deletetorrent($id) {
    global 
$site_config;

    
$row = @mysql_fetch_array(@mysql_query("SELECT image1,image2 FROM torrents WHERE id=$id"));
    
    foreach(
explode(".","peers.comments.ratings") as $x)
        
mysql_query("DELETE FROM $x WHERE torrent = $id");

    if (
file_exists("".$site_config["torrent_dir"]."/$id.torrent"))
        
unlink("".$site_config["torrent_dir"]."/$id.torrent");

    if (
$row["image1"]) {
        
$img1 "".$site_config["torrent_dir"]."/images/".$row["image1"]."";
        
$del unlink($img1);
    }

    if (
$row["image2"]) {
        
$img2 "".$site_config["torrent_dir"]."/images/".$row["image2"]."";
        
$del unlink($img2);
    }

    
mysql_query("DELETE FROM torrents WHERE id = $id");
}

function 
deleteaccount($userid) {
        
mysql_query("DELETE FROM users WHERE id = $userid");
        
mysql_query("DELETE FROM warnings WHERE userid = $userid");
        
mysql_query("DELETE FROM ratings WHERE user = $userid");
}

function 
genrelist() {
    
$ret = array();
    
$res mysql_query("SELECT id, name, parent_cat FROM categories ORDER BY parent_cat ASC, sort_index ASC");
    while (
$row mysql_fetch_array($res))
        
$ret[] = $row;
    return 
$ret;
}

function 
langlist() {
    
$ret = array();
    
$res mysql_query("SELECT id, name, image FROM torrentlang ORDER BY sort_index, id");
    while (
$row mysql_fetch_array($res))
        
$ret[] = $row;
    return 
$ret;
}

function 
is_valid_id($id){
    return 
is_numeric($id) && ($id 0) && (floor($id) == $id);
}

function 
sql_timestamp_to_unix_timestamp($s){
    return 
mktime(substr($s112), substr($s142), substr($s172), substr($s52), substr($s82), substr($s04));
}

function 
write_log($text){
    
$text sqlesc($text);
    
$added sqlesc(get_date_time());
    
mysql_query("INSERT INTO log (added, txt) VALUES($added$text)") or sqlerr();
}

function 
get_elapsed_time($ts){
  
$mins floor((gmtime() - $ts) / 60);
  
$hours floor($mins 60);
  
$mins -= $hours 60;
  
$days floor($hours 24);
  
$hours -= $days 24;
  
$weeks floor($days 7);
  
$days -= $weeks 7;
  
$t "";
  if (
$weeks 0)
    return 
"$weeks wk" . ($weeks "s" "");
  if (
$days 0)
    return 
"$days day" . ($days "s" "");
  if (
$hours 0)
    return 
"$hours hr" . ($hours "s" "");
  if (
$mins 0)
    return 
"$mins min" . ($mins "s" "");
  return 
"< 1 min";
}

function 
hex2bin($hexdata) {
    
$bindata "";
    for (
$i=0;$i<strlen($hexdata);$i+=2) {
        
$bindata.=chr(hexdec(substr($hexdata,$i,2)));
    }
    return 
$bindata;
}

function 
guestadd() {
    
$ip $_SERVER["REMOTE_ADDR"];
    
$sql mysql_query("SELECT time FROM guests WHERE ip='$ip'");
    
$ctime gmtime();
    if (
mysql_fetch_row($sql))
    {
        @
mysql_query("UPDATE guests SET ip='$ip', time='$ctime' WHERE ip='$ip'");
    } else {
        @
mysql_query("INSERT INTO guests (ip, time) VALUES ('$ip', '$ctime')");
    }
}

function 
getguests() {
    
$ip $_SERVER["REMOTE_ADDR"];
    
$past gmtime()-2400;
    @
mysql_query("DELETE FROM guests WHERE time < $past");
    
$guests number_format(get_row_count("guests"));
    return 
$guests;
}

function 
time_ago($addtime) {
   
$addtime get_elapsed_time(sql_timestamp_to_unix_timestamp($addtime));
   return 
$addtime;
}

function 
CutName ($vTxt$Car) {
    while(
strlen($vTxt) > $Car) {
        return 
substr($vTxt0$Car) . "...";
    } return 
$vTxt;
}

function 
searchfield($s) {
    return 
preg_replace(array('/[^a-z0-9]/si''/^\s*/s''/\s*$/s''/\s+/s'), array(" """""" "), $s);
}

function 
get_row_count($table$suffix "") {
  if (
$suffix)
    
$suffix $suffix";
  (
$r mysql_query("SELECT COUNT(*) FROM $table$suffix")) or die(mysql_error());
  (
$a mysql_fetch_row($r)) or die(mysql_error());
  return 
$a[0];
}

function 
sqlerr($query "") {
    
stdhead();
    
begin_frame("MYSQL Error");
    print(
"<BR><b>MySQL error occured</b>.\n<br />Query: " $query "<br />\nError: (" mysql_errno() . ") " mysql_error());
    
end_frame();
    
stdfoot();
    die;
}

function 
get_dt_num(){
    return 
gmdate("YmdHis");
}


function 
get_date_time($timestamp 0){
    if (
$timestamp)
    return 
date("Y-m-d H:i:s"$timestamp);
    else
      return 
gmdate("Y-m-d H:i:s");
}

// Convert UTC to user's timezone
function utc_to_tz ($timestamp=0) {
    GLOBAL 
$CURUSER;
    if (!
is_numeric($timestamp))
        
$timestamp sql_timestamp_to_unix_timestamp($timestamp);
    if (
$timestamp == 0)
        
$timestamp gmtime();

    
$timestamp $timestamp + ($CURUSER['tzoffset']*60);
    return 
date("Y-m-d H:i:s"$timestamp);
}

function 
utc_to_tz_time ($timestamp=0) {
    GLOBAL 
$CURUSER;

    if (!
is_numeric($timestamp))
        
$timestamp sql_timestamp_to_unix_timestamp($timestamp);
    if (
$timestamp == 0)
        
$timestamp gmtime();

    
$timestamp $timestamp + ($CURUSER['tzoffset']*60);
    return 
$timestamp;
}

function 
encodehtml($s$linebreaks true) {
      
$s str_replace("<""&lt;"str_replace("&""&amp;"$s));
      if (
$linebreaks)
        
$s nl2br($s);
      return 
$s;
}


function 
format_urls($s){
    return 
preg_replace(
    
"/(\A|[^=\]'\"a-zA-Z0-9])((http|ftp|https|ftps|irc):\/\/[^<>\s]+)/i",
    
"\\1<a href=http://anonym.to/?\\2 target=_blank>\\2</a>"$s);
}

function 
format_comment($text)
{
    global 
$site_config$smilies;

    
$s $text;

    
$s htmlspecialchars($s);
    
$s stripslashes($s);
    
$s format_urls($s);

    
// [*]
    
$s preg_replace("/\[\*\]/""<li>"$s);

    
// [b]Bold[/b]
    
$s preg_replace("/\[b\]((\s|.)+?)\[\/b\]/""<b>\\1</b>"$s);

    
// [i]Italic[/i]
    
$s preg_replace("/\[i\]((\s|.)+?)\[\/i\]/""<i>\\1</i>"$s);

    
// [u]Underline[/u]
    
$s preg_replace("/\[u\]((\s|.)+?)\[\/u\]/""<u>\\1</u>"$s);

    
// [u]Underline[/u]
    
$s preg_replace("/\[u\]((\s|.)+?)\[\/u\]/i""<u>\\1</u>"$s);

    
// [img]http://www/image.gif[/img]
    
$s preg_replace("/\[img\](http:\/\/[^\s'\"<>]+(\.gif|\.jpg|\.png|\.bmp|\.jpeg))\[\/img\]/i""<img border=0 src=\"\\1\">"$s);

    
// [img=http://www/image.gif]
    
$s preg_replace("/\[img=(http:\/\/[^\s'\"<>]+(\.gif|\.jpg|\.png|\.bmp|\.jpeg))\]/i""<img border=0 src=\"\\1\">"$s);

    
// [color=blue]Text[/color]
    
$s preg_replace(
        
"/\[color=([a-zA-Z]+)\]((\s|.)+?)\[\/color\]/i",
        
"<font color=\\1>\\2</font>"$s);

    
// [color=#ffcc99]Text[/color]
    
$s preg_replace(
        
"/\[color=(#[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9])\]((\s|.)+?)\[\/color\]/i",
        
"<font color=\\1>\\2</font>"$s);

    
// [url=http://www.example.com]Text[/url]
    
$s preg_replace(
        
"/\[url=((http|ftp|https|ftps|irc):\/\/[^<>\s]+?)\]((\s|.)+?)\[\/url\]/i",
        
"<a href=http://anonym.to/?\\1 target=_blank>\\3</a>"$s);

    
// [url]http://www.example.com[/url]
    
$s preg_replace(
        
"/\[url\]((http|ftp|https|ftps|irc):\/\/[^<>\s]+?)\[\/url\]/i",
        
"<a href=http://anonym.to/?\\1 target=_blank>\\1</a>"$s);

    
// [size=4]Text[/size]
    
$s preg_replace(
        
"/\[size=([1-7])\]((\s|.)+?)\[\/size\]/i",
        
"<font size=\\1>\\2</font>"$s);

    
// [font=Arial]Text[/font]
    
$s preg_replace(
        
"/\[font=([a-zA-Z ,]+)\]((\s|.)+?)\[\/font\]/i",
        
"<font face=\"\\1\">\\2</font>"$s);

    
//[quote]Text[/quote]
    
$s preg_replace(
        
"/\[quote\]\s*((\s|.)+?)\s*\[\/quote\]\s*/i",
        
"<p class=sub><b>Quote:</b></p><table class=main border=1 cellspacing=0 cellpadding=10><tr><td style='border: 1px black dotted'>\\1</td></tr></table><br />"$s);

    
//[quote=Author]Text[/quote]
    
$s preg_replace(
        
"/\[quote=(.+?)\]\s*((\s|.)+?)\s*\[\/quote\]\s*/i",
        
"<p class=sub><b>\\1 wrote:</b></p><table class=main border=1 cellspacing=0 cellpadding=10><tr><td style='border: 1px black dotted'>\\2</td></tr></table><br />"$s);
                
     
//[hr]
        
$s preg_replace("/\[hr\]/i""<hr>"$s);

     
//[hr=#ffffff] [hr=red]
        
$s preg_replace("/\[hr=((#[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9])|([a-zA-z]+))\]/i""<hr color=\"\\1\"/>"$s);

        
//[swf]http://somesite.com/test.swf[/swf]
        
$s preg_replace("/\[swf\]((www.|http:\/\/|https:\/\/)[^\s]+(\.swf))\[\/swf\]/i",
        
"<param name=movie value=\\1/><embed width=470 height=310 src=\\1></embed>"$s);

        
//[swf=http://somesite.com/test.swf]
        
$s preg_replace("/\[swf=((www.|http:\/\/|https:\/\/)[^\s]+(\.swf))\]/i",
        
"<param name=movie value=\\1/><embed width=470 height=310 src=\\1></embed>"$s);

    
// Linebreaks
    
$s nl2br($s);

    
// Maintain spacing
    
$s str_replace("  "" &nbsp;"$s);

    
// Smilies
    
require_once("smilies.php");
    
reset($smilies);
    while (list(
$code$url) = each($smilies))
        
$s str_replace($code"<img border=0 src=" $site_config['SITEURL'] . "/images/smilies/$url>"$s);

    return 
$s;
}



function 
torrenttable($res) {
    global 
$site_config$CURUSER$THEME$LANGUAGE;  //Define globals

    
if ($site_config["MEMBERSONLY_WAIT"] && $site_config["MEMBERSONLY"] && in_array($CURUSER["class"], explode(",",$site_config["WAIT_CLASS"]))) {
        
$gigs $CURUSER["uploaded"] / (1024*1024*1024);
        
$ratio = (($CURUSER["downloaded"] > 0) ? ($CURUSER["uploaded"] / $CURUSER["downloaded"]) : 0);
        if (
$ratio || $gigs 0$wait $site_config["WAITA"];
        elseif (
$ratio $site_config["RATIOA"] || $gigs $site_config["GIGSA"]) $wait $site_config["WAITA"];
        elseif (
$ratio $site_config["RATIOB"] || $gigs $site_config["GIGSB"]) $wait $site_config["WAITB"];
        elseif (
$ratio $site_config["RATIOC"] || $gigs $site_config["GIGSC"]) $wait $site_config["WAITC"];
        elseif (
$ratio $site_config["RATIOD"] || $gigs $site_config["GIGSD"]) $wait $site_config["WAITD"];
        else 
$wait 0;
    }

    
// Columns
    
$cols explode(","$site_config["torrenttable_columns"]);
    
$cols array_map("strtolower"$cols);
    
$cols array_map("trim"$cols);
    
$colspan count($cols);
    
// End
    
    // Expanding Area
    
$expandrows = array();
    if (!empty(
$site_config["torrenttable_expand"])) {
        
$expandrows explode(","$site_config["torrenttable_expand"]);
        
$expandrows array_map("strtolower"$expandrows);
        
$expandrows array_map("trim"$expandrows);
    }
    
// End
    
    
echo '<table align=center cellpadding="0" cellspacing="0" class="ttable_headinner" width=99%>';

    foreach (
$cols as $col) {
        switch (
$col) {
            case 
'category':
                echo 
"<td class=ttable_head>".TYPE."</td>";
            break;
            case 
'name':
                echo 
"<td class=ttable_head>".NAME."</td>";
            break;
            case 
'dl':
                echo 
"<td class=ttable_head>DL</td>";
            break;
            case 
'uploader':
                echo 
"<td class=ttable_head>".UPLOADER."</td>";
            break;
            case 
'comments':
                echo 
"<td class=ttable_head>Comm</td>";
            break;
            case 
'nfo':
                echo 
"<td class=ttable_head>NFO</td>";
            break;
            case 
'size':
                echo 
"<td class=ttable_head>".SIZE."</td>";
            break;
            case 
'complete':
                echo 
"<td class=ttable_head>C</td>";
            break;
            case 
'seeders':
                echo 
"<td class=ttable_head>S</td>";
            break;
            case 
'leechers':
                echo 
"<td class=ttable_head>L</td>";
            break;
            case 
'health':
                echo 
"<td class=ttable_head>".HEALTH."</td>";
            break;
            case 
'external':
                if (
$site_config["ALLOWEXTERNAL"])
                    echo 
"<td class=ttable_head>L/E</td>";
            break;
            case 
'added':
                echo 
"<td class=ttable_head>".DATE_ADDED."</td>";
            break;
            case 
'speed':
                echo 
"<td class=ttable_head>".SPEED."</td>";
            break;
            case 
'wait':
                if (
$wait)
                    echo 
"<td class=ttable_head>".WAIT."</td>";
            break;
            case 
'rating':
                echo 
"<td class=ttable_head>".RATINGS."</td>";
            break;
        }
    }
    if (
$wait && !in_array("wait"$cols))
        echo 
"<td class=ttable_head>".WAIT."</td>";
    
    echo 
"</tr>";

    while (
$row mysql_fetch_assoc($res)) {
        
$id $row["id"];

        print(
"<tr>\n");

    
$x 1;

    foreach (
$cols as $col) {
        switch (
$col) {
            case 
'category':
                print(
"<td class=ttable_col$x align=center valign=middle>");
                if (!empty(
$row["cat_name"])) {
                    print(
"<a href=\"torrents.php?cat=" $row["category"] . "\">");
                    if (!empty(
$row["cat_pic"]) && $row["cat_pic"] != "")
                        print(
"<img border=\"0\"src=\"" $site_config['SITEURL'] . "/images/categories/" $row["cat_pic"] . "\" alt=\"" $row["cat_name"] . "\" />");
                    else
                        print(
$row["cat_parent"].": ".$row["cat_name"]);
                    print(
"</a>");
                } else
                    print(
"-");
                print(
"</td>\n");
            break;
            case 
'name':
                
$char1 35//cut name length 
                
$smallname CutName(htmlspecialchars($row["name"]), $char1);
                
$dispname "<b>".$smallname."</b>";

                
$last_access $CURUSER["last_browse"];
                
$time_now gmtime();
                if (
$last_access $time_now || !is_numeric($last_access))
                    
$last_access $time_now;
                if (
sql_timestamp_to_unix_timestamp($row["added"]) >= $last_access)
                    
$dispname .= "<b><font color=red> - ("._NEW."!)</font></b>";

                if (
$row["freeleech"] == 1)
                    
$dispname .= " <img src='images/free.gif' border='0'>";
                print(
"<td class=ttable_col$x nowrap>".(count($expandrows)?"<a href=\"javascript: klappe_torrent('t".$row['id']."')\"><img border=\"0\" src=\"".$site_config["SITEURL"]."/images/plus.gif\" id=\"pict".$row['id']."\" alt=\"Show/Hide\" class=\"showthecross\"></a>":"")."&nbsp;<a title=\"".$row["name"]."\" href=\"torrents-details.php?id=$id&amp;hit=1\">$dispname</a>");
            break;
            case 
'dl':
                print(
"<td class=ttable_col$x align=center><a href=\"download.php?id=$id&name=" rawurlencode($row["filename"]) . "\"><img src=" $site_config['SITEURL'] . "/images/icon_download.gif border=0 alt=\"Download .torrent\"></a></td>");
            break;
            case 
'uploader':
                echo 
"<td class=ttable_col$x align=center>";
                if ((
$row["anon"] == "yes" || $row["privacy"] == "strong") && !($CURUSER["id"] == $row["owner"] || $CURUSER["edit_torrents"] == "yes"))
                    echo 
"Anonymous";
                elseif (
$row["username"])
                    echo 
"<a href='account-details.php?id=$row[owner]'>$row[username]</a>";
                else
                    echo 
"Unknown";
                echo 
"</td>";
            break;
            case 
'comments':
                print(
"<td class=ttable_col$x align=center><font size=1 face=Verdana><a href=comments.php?type=torrent&id=$id>" $row["comments"] . "</a></td>\n");
            break;
            case 
'nfo':
                if (
$row["nfo"] == "yes")
                    print(
"<td class=ttable_col$x align=center><a href=nfo-view.php?id=$row[id]><img  src=" $site_config['SITEURL'] . "/images/icon_nfo.gif border=0 alt='View NFO'></a></td>");
                else
                    print(
"<td class=ttable_col$x align=center>-</td>");
            break;
            case 
'size':
                print(
"<td class=ttable_col$x align=center>".mksize($row["size"])."</td>\n");
            break;
            case 
'complete':
                print(
"<td class=ttable_col$x align=center><font color=orange><B>".number_format($row["times_completed"])."</B></font></td>");
            break;
            case 
'seeders':
                print(
"<td class=ttable_col$x align=center><b><font color=green><B>".number_format($row["seeders"])."</b></font></td>\n");
            break;
            case 
'leechers':
                print(
"<td class=ttable_col$x align=center><font color=red><B>" $row["leechers"] . "</b></font></td>\n");
            break;
            case 
'health':
                print(
"<td class=ttable_col$x align=center><img src=".$site_config["SITEURL"]."/images/health_".health($row["leechers"], $row["seeders"]).".gif></td>\n");
            break;
            case 
'external':
                if (
$site_config["ALLOWEXTERNAL"]){
                    if (
$row["external"]=='yes')
                        print(
"<td class=ttable_col$x align=center>E</td>\n");
                    else
                        print(
"<td class=ttable_col$x align=center>L</td>\n");
                }
            break;
            case 
'added':
                print(
"<td class=ttable_col$x align=center>".date("d-m-Y<\\B\\R>H:i:s"utc_to_tz_time($row['added']))."</td>");
            break;
            case 
'speed':
                if (
$row["external"] != "yes" && $row["leechers"] >= 1){
                    
$speedQ mysql_query("SELECT (SUM(downloaded)) / (UNIX_TIMESTAMP('".get_date_time()."') - UNIX_TIMESTAMP(started)) AS totalspeed FROM peers WHERE seeder = 'no' AND torrent = '$id'ORDER BY started ASC") or die(mysql_error());
                    
$a mysql_fetch_assoc($speedQ);
                    
$totalspeed mksize($a["totalspeed"]) . "/s";
                } else
                    
$totalspeed "--";
            print(
"<td class=ttable_col$x align=center>$totalspeed</td>");
            break;
            case 
'wait':
                if (
$wait){
                    
$elapsed floor((gmtime() - strtotime($row["added"])) / 3600);
                    if (
$elapsed $wait && $row["external"] != "yes") {
                        
$color dechex(floor(127*($wait $elapsed)/48 128)*65536);
                        print(
"<td class=ttable_col$x align=center><a href=\"faq.php\"><font color=\"$color\">" number_format($wait $elapsed) . " h</font></a></td>\n");
                    } else
                        print(
"<td class=ttable_col$x align=center>--</td>\n");
                }
            break;
            case 
'rating':
                if (!
$row["rating"])
                    
$rating "--";
                else
                    
$rating "<a title='$row[rating]/5'>".ratingpic($row["rating"])."</a>";
                    
//$rating = ratingpic($row["rating"]);
                     //$srating .= "$rpic (" . $row["rating"] . " out of 5) " . $row["numratings"] . " users have rated this torrent";
                
print("<td class=ttable_col$x align=center>$rating</td>");
            break;
        }
        if (
$x == 2)
            
$x--;
        else
            
$x++;
    }

    
        
//Wait Time Check
        
if ($wait && !in_array("wait"$cols)) {
            
$elapsed floor((gmtime() - strtotime($row["added"])) / 3600);
            if (
$elapsed $wait && $row["external"] != "yes") {
                
$color dechex(floor(127*($wait $elapsed)/48 128)*65536);
                print(
"<td class=ttable_col$x align=center><a href=\"faq.php\"><font color=\"$color\">" number_format($wait $elapsed) . " h</font></a></td>\n");
            } else
                print(
"<td class=ttable_col$x align=center>--</td>\n");
            
$colspan++;
            if (
$x == 2)
                
$x--;
            else
                
$x++;
        }
        
        print(
"</tr>\n");

        
//Expanding area
        
if (count($expandrows)) {
            print(
"<tr><td class=ttable_col$x colspan=$colspan><div id=\"kt".$row['id']."\" style=\"margin-left: 70px; display: none;\">");
            print(
"<table width=97% border=0 cellspacing=0 cellpadding=0>");
            foreach (
$expandrows as $expandrow) {
                switch (
$expandrow) {
                    case 
'size':
                        print(
"<tr><td><B>".SIZE."</B>: ".mksize($row['size'])."</td></tr>");
                    break;
                    case 
'speed':
                        if (
$row["external"] != "yes" && $row["leechers"] >= 1){
                            
$speedQ mysql_query("SELECT (SUM(downloaded)) / (UNIX_TIMESTAMP('".get_date_time()."') - UNIX_TIMESTAMP(started)) AS totalspeed FROM peers WHERE seeder = 'no' AND torrent = '$id'ORDER BY started ASC") or die(mysql_error());
                            
$a mysql_fetch_assoc($speedQ);
                            
$totalspeed mksize($a["totalspeed"]) . "/s";
                            print(
"<tr><td><B>Speed:</B> $totalspeed</td></tr>");
                        }
                    break;
                    case 
'added':
                        print(
"<tr><td><B>".DATE_ADDED.":</B> ".date("d-m-Y \\a\\t H:i:s"utc_to_tz_time($row['added']))."</td></tr>");
                    break;
                    case 
'tracker':
                    if (
$row["external"] == "yes")
                        print(
"<tr><td><B>".TRACKER.":</B> ".htmlspecialchars($row["announce"])."</td></tr>");
                    break;
                    case 
'completed':
                        print(
"<tr><td><B>".COMPLETED."</B>: ".$row['times_completed']."</td></tr>");
                    break;
                }
            }
                print(
"</table></div></td></tr>\n");
        }
        
//End Expanding Area


    
}

    print(
"</table><BR>\n");

}

function 
pager($rpp$count$href$opts = array()) {
    
$pages ceil($count $rpp);

    if (!
$opts["lastpagedefault"])
        
$pagedefault 0;
    else {
        
$pagedefault floor(($count 1) / $rpp);
        if (
$pagedefault 0)
            
$pagedefault 0;
    }

    if (isset(
$_GET["page"])) {
        
$page $_GET["page"];
        if (
$page 0)
            
$page $pagedefault;
    }
    else
        
$page $pagedefault;

    
$pager "";

    
$mp $pages 1;
    
$as "<b>&lt;&lt;&nbsp;Prev</b>";
    if (
$page >= 1) {
        
$pager .= "<a href=\"{$href}page=" . ($page 1) . "\">";
        
$pager .= $as;
        
$pager .= "</a>";
    }
    else
        
$pager .= $as;
    
$pager .= "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    
$as "<b>Next&nbsp;&gt;&gt;</b>";
    if (
$page $mp && $mp >= 0) {
        
$pager .= "<a href=\"{$href}page=" . ($page 1) . "\">";
        
$pager .= $as;
        
$pager .= "</a>";
    }
    else
        
$pager .= $as;

    if (
$count) {
        
$pagerarr = array();
        
$dotted 0;
        
$dotspace 3;
        
$dotend $pages $dotspace;
        
$curdotend $page $dotspace;
        
$curdotstart $page $dotspace;
        for (
$i 0$i $pages$i++) {
            if ((
$i >= $dotspace && $i <= $curdotend) || ($i >= $curdotstart && $i $dotend)) {
                if (!
$dotted)
                    
$pagerarr[] = "...";
                
$dotted 1;
                continue;
            }
            
$dotted 0;
            
$start $i $rpp 1;
            
$end $start $rpp 1;
            if (
$end $count)
                
$end $count;
            
$text "$start&nbsp;-&nbsp;$end";
            if (
$i != $page)
                
$pagerarr[] = "<a href=\"{$href}page=$i\"><b>$text</b></a>";
            else
                
$pagerarr[] = "<b>$text</b>";
        }
        
$pagerstr join(" | "$pagerarr);
        
$pagertop "<p align=\"center\">$pager<br />$pagerstr</p>\n";
        
$pagerbottom "<p align=\"center\">$pagerstr<br />$pager</p>\n";
    }
    else {
        
$pagertop "<p align=\"center\">$pager</p>\n";
        
$pagerbottom $pagertop;
    }

    
$start $page $rpp;

    return array(
$pagertop$pagerbottom"LIMIT $start,$rpp");
}

function 
commenttable($res) {
    global 
$site_config$CURUSER$THEME$LANGUAGE;  //Define globals
    
    
while ($row mysql_fetch_assoc($res)) {

        
$postername htmlspecialchars($row["username"]);
        if (
$postername == "") {
            
$postername "Deluser";
            
$title "Deleted Account";
            
$avatar "";
            
$usersignature "";
            
$userdownloaded "";
            
$useruploaded "";
        }else {
            
$privacylevel $row["privacy"];
            
$avatar htmlspecialchars($row["avatar"]);
            
$title =  htmlspecialchars($row["title"]);
            
$usersignature stripslashes(format_comment($row["signature"]));
            
$userdownloaded mksize($row["downloaded"]);
            
$useruploaded mksize($row["uploaded"]);
        }

        if (
$row["downloaded"] > 0)
            
$userratio number_format($row["uploaded"] / $row["downloaded"], 2);
        else
            
$userratio "---";

        if (!
$avatar)
            
$avatar "".$site_config["SITEURL"]."/images/default_avatar.gif";

        
$commenttext format_comment($row["text"]);

        print(
"<table border=0 width=100% cellpadding=4>\n");

        print(
"<tr><td colspan=2 align=right class=table_col1>");

        if(
$CURUSER["edit_torrents"]=="yes" || $CURUSER["edit_forum"]=="yes" || $CURUSER['id'] == $row['user']){
            print(
"[<a href=comments.php?id=" $row["id"] . "&type=torrent&edit=1>edit</a>]&nbsp;");
        }
        if(
$CURUSER["delete_torrents"]=="yes" || $CURUSER["delete_forum"]=="yes"){
            print(
"[<a href=comments.php?id=" $row["id"] . "&type=torrent&delete=1>delete</a>]&nbsp;");
        }

        print(
"[<a href=report.php?comment=" $row["id"] . ">Report</a>]&nbsp;");

        print(
"Posted: ".date("d-m-Y \\a\\t H:i:s"utc_to_tz_time($row['added'])));
        print(
"</td></tr>");

        if (
$privacylevel != "strong" || ($CURUSER["control_panel"] == "yes")) {
            print(
"<tr><td valign=top width=150 align=left class=table_col2><center><b>$postername</b><br><i>$title</i></center><br>Uploaded: $useruploaded<br>Downloaded: $userdownloaded<br>Ratio: $userratio<br><br><center><img width=80 height=80 src=$avatar></center><br></td>");
        }else{
            print(
"<tr><td valign=top width=150 align=left class=table_col2><center><b>$postername</b><br><i>$title</i></center><br>Uploaded: ---<br>Downloaded: ---<br>Ratio: ---<br><br><center><img width=80 height=80 src=$avatar></center><br></td>");
        }
        print(
"<td valign=top width='75%' class=table_col2>$commenttext</td>");
        print(
"</tr></table><BR>\n");
    }
}

function 
where ($scriptname "index"$userid){
    if (!
is_valid_id($userid))
        die;
    if (
preg_match("/torrents-details/i"$scriptname))
        
$where "Browsing Torrents Details...";
    elseif (
preg_match("/torrents/i"$scriptname))
        
$where "Browsing Torrent Lists...";
    elseif (
preg_match("/account-details/i"$scriptname))
        
$where "Browsing Account Details...";
    elseif (
preg_match("/torrents-upload/i"$scriptname))
        
$where "Uploading Torrent..";
    elseif (
preg_match("/account/i"$scriptname))
        
$where "Browsing User Control Panel...";
    elseif (
preg_match("/torrents-search/i"$scriptname))
        
$where "Searching...";
    elseif (
preg_match("/forums/i"$scriptname))
        
$where "Browsing Forums...";
    elseif (
preg_match("/index/i"$scriptname))
        
$where "Browsing Homepage...";
    else
        
$where "Unknown Location...";

    
$query sprintf("UPDATE users SET page=".sqlesc($where)." WHERE id ='%s'",
    
mysql_real_escape_string($userid));
    
$result mysql_query($query);

    if (!
$result)
        die;
    else
        return 
$where;
}

function 
get_user_class_name($i){
    
$res=mysql_query("SELECT level FROM groups WHERE group_id=".$i."");
    
$row=mysql_fetch_row($res);
    return 
$row[0];
}

function 
get_user_class(){
  global 
$CURUSER;
  return 
$CURUSER["class"];
}

function 
get_ratio_color($ratio) {
    if (
$ratio 0.1) return "#ff0000";
    if (
$ratio 0.2) return "#ee0000";
    if (
$ratio 0.3) return "#dd0000";
    if (
$ratio 0.4) return "#cc0000";
    if (
$ratio 0.5) return "#bb0000";
    if (
$ratio 0.6) return "#aa0000";
    if (
$ratio 0.7) return "#990000";
    if (
$ratio 0.8) return "#880000";
    if (
$ratio 0.9) return "#770000";
    if (
$ratio 1) return "#660000";
    return 
"#000000";
}

function 
ratingpic($num) {
    GLOBAL 
$site_config;
    
$r round($num 2) / 2;
    if (
$r != $num) {
        
$n $num-$r;
        if (
$n .25)
            
$n 0;
        elseif (
$n >= .25 && $n .75)
            
$n .5;
        
$r += $n;
    }
    if (
$r || $r 5)
        return;

    return 
"<img src=\"".$site_config["SITEURL"]."/images/rating/$r.gif\" border=\"0\" alt=\"rating: $num/5\" />";
}



?>
Reply With Quote
  #7  
Old 4th October 2008, 19:45
movizdb movizdb is offline
Senior Member
 
Join Date: Sep 2008
France
Posts: 142
Default
it show
Code:
fatal error: Call to undefined function curl_init() in /users/movizdb/www/backend/functions.php on line 423
and it is my new function.php because i have had mods in my tk
soory for my bad english
Attached Files
File Type: php functions.php (35.1 KB, 4 views)
Reply With Quote
  #8  
Old 6th October 2008, 11:45
Grom's Avatar
Grom Grom is offline
Senior Member
 
Join Date: Aug 2008
Posts: 73
Default
try my functions.php
Attached Files
File Type: php functions.php (45.5 KB, 10 views)
__________________
Hello All
Reply With Quote
  #9  
Old 6th October 2008, 18:21
movizdb movizdb is offline
Senior Member
 
Join Date: Sep 2008
France
Posts: 142
Default
Unknown column 'browser' in 'field list'
Reply With Quote
  #10  
Old 7th October 2008, 20:57
Grom's Avatar
Grom Grom is offline
Senior Member
 
Join Date: Aug 2008
Posts: 73
Default
Quote:
Originally Posted by movizdb View Post
Unknown column 'browser' in 'field list'
remove

or try this
Attached Files
File Type: php functions.php (39.6 KB, 17 views)
__________________
Hello All

Last edited by Grom; 7th October 2008 at 21:01.
Reply With Quote
Reply

Tags
error , ext

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
help error, http error and invalid passkey thereal Torrent Strike 0 9th April 2009 02:07
URGENT !! Parse error: syntax error sharpe Torrent Strike 8 24th September 2008 15:10



All times are GMT +2. The time now is 23:04. vBulletin skin by ForumMonkeys. Powered by vBulletin® Version 3.8.11 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions Inc.