09 Hit And Run System

Started by Mindless, July 20, 2012, 08:39:57 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DragonCoder

#18
Quote from: T3es87 on October 02, 2016, 05:26:19 PM
I neted helo instaled this mods

i given you my email to set a hnr up for you and you would not email me back well one mail asking me but without your site linky nor anything just asking ok now if you want a hnr email with the info i need to work the code..As i have a 100% working hnr for 09

Edit just been to your site why you want a 09 on a xzone code the 09 not work on it without alot of work you do know the code you have as more holes then a teastrainer

T3es87

I neted helo instaled this mods

DragonCoder

#16
ive got downloadpos and ive got user with 4 hit and runs and its not stoping there dls and not sending a messages to users

//===09 hnr by sir_snugglebunny
    //=== hit and run part... after 3 days, add the mark of Cain... adjust $secs value if you wish
          $secs = 3 * 86400;
    $hnr = time() - $secs;
          $res = mysql_query('SELECT id FROM snatched WHERE hit_and_run <> \'0\' AND hit_and_run < '.sqlesc($hnr).'') or sqlerr(__FILE__, __LINE__);
          while ($arr = mysql_fetch_assoc($res))
          {
          mysql_query('UPDATE snatched SET mark_of_cain = \'yes\' WHERE id='.sqlesc($arr['id'])) or sqlerr(__FILE__, __LINE__);
          }
    //=== hit and run... disable Downloading rights if they have 3 marks of cain
          $res_fuckers = mysql_query('SELECT COUNT(*) AS poop, snatched.userid, users.username, users.modcomment, users.hit_and_run_total, users.downloadpos FROM snatched LEFT JOIN users ON snatched.userid = users.id WHERE snatched.mark_of_cain = \'yes\' AND users.hnrwarn = \'no\' GROUP BY snatched.userid') or sqlerr(__FILE__, __LINE__);
          while ($arr_fuckers = mysql_fetch_assoc($res_fuckers))
          {
                if ($arr_fuckers['poop'] > 3 && $arr_fuckers['downloadpos'] == 'yes')
                {
                //=== set them to no DLs
                $subject = sqlesc('Download disabled by System');
                $msg = sqlesc("Sorry ".$arr_fuckers['username'].",\n
                               Because you have 3 or more torrents that have not been seeded to either
                               a 1:1 ratio, or for the expected seeding time, your downloading rights
                               have been disabled by the Auto system !\nTo get your Downloading rights back is simple,\n just start seeding the torrents in your profile [ click your username, then click your [url=".$TBDEV['baseurl']."/userdetails.php?id=".$arr_fuckers['userid']."&completed=1]Completed
                               Torrents[/url] link to see what needs seeding ] and your downloading
                               rights will be turned back on by the Auto system after the next
                               clean-time [ updates 4 times per hour ].\n\nDownloads
                               are disabled after a member has three or more torrents that have not
                               been seeded to either a 1 to 1 ratio, OR for the required seed time [
                               please see the [url=".$TBDEV['baseurl']."/faq.php]FAQ[/url] or [url=".$TBDEV['baseurl']."/rules.php]Site Rules[/url] for more info ]\n\nIf
                               this message has been in error, or you feel there is a good reason for
                               it, please feel free to PM a staff member with your concerns.\n\n we will do our best to fix this situation.\n\nBest of luck!\n ".$TBDEV['site_name']." staff.\n");
                $modcomment = htmlspecialchars($arr_fuckers['modcomment']);
                $modcomment =  get_date( time(), 'DATE', 1 ) . " - Download rights removed for H and R - AutoSystem.\n". $modcomment;
                $modcom =  sqlesc($modcomment);
                mysql_query("INSERT INTO messages (sender, receiver, added, msg, subject, poster) VALUES(0, $arr_fuckers[userid], ".sqlesc(time()).", $msg, $subject, 0)") or sqlerr(__FILE__, __LINE__);
                mysql_query('UPDATE users SET hit_and_run_total = hit_and_run_total + '.$arr_fuckers['poop'].', downloadpos = \'no\', hnrwarn = \'yes\', modcomment = '.$modcom.'  WHERE downloadpos = \'yes\' AND id='.sqlesc($arr_fuckers['userid'])) or sqlerr(__FILE__, __LINE__);
                }
          }
    //=== hit and run... turn their DLs back on if they start seeding again
    $res_good_boy = mysql_query('SELECT id, username, modcomment FROM users WHERE hnrwarn = \'yes\' AND downloadpos = \'no\'') or sqlerr(__FILE__, __LINE__);
    while ($arr_good_boy = mysql_fetch_assoc($res_good_boy))
          {
          $res_count = mysql_query('SELECT COUNT(*) FROM snatched WHERE userid = '.sqlesc($arr_good_boy['id']).' AND mark_of_cain = \'yes\'') or sqlerr(__FILE__, __LINE__);
          $arr_count = mysql_fetch_row($res_count);
                if ($arr_count[0] < 3)
                {
                //=== set them to yes DLs
                $subject = sqlesc('Download restored by System');
                $msg = sqlesc("Hi ".$arr_good_boy['username'].",\n
                               Congratulations ! Because you have seeded the torrents that needed seeding, your downloading rights have been restored by the Auto System !\n\nhave fun !\n ".$TBDEV['site_name']." staff.\n");
                $modcomment = htmlspecialchars($arr_good_boy['modcomment']);
                $modcomment =  get_date( time(), 'DATE', 1 ) . " - Download rights restored from H and R - AutoSystem.\n". $modcomment;
                $modcom =  sqlesc($modcomment);
                mysql_query("INSERT INTO messages (sender, receiver, added, msg, subject, poster) VALUES(0, ".sqlesc($arr_good_boy['id']).", ".sqlesc(time()).", $msg, $subject, 0)") or sqlerr(__FILE__, __LINE__);
                mysql_query('UPDATE users SET downloadpos = \'yes\', hnrwarn = \'no\', modcomment = '.$modcom.'  WHERE id = '.sqlesc($arr_good_boy['id'])) or sqlerr(__FILE__, __LINE__);
                }
          }


Edit now fully working with some work

DragonCoder

Quote from: denede on May 08, 2016, 08:33:21 PM
what are you doing? it is already posted down in the topic.

this is what is the difference of it

ALTER TABLE `snatched` ADD `hit_and_run` INT(11) NOT NULL;
ALTER TABLE `snatched` ADD `mark_of_cain` enum('yes','no') NOT NULL DEFAULT 'no';
ALTER TABLE snatched ADD `finished` enum('yes','no') NOT NULL DEFAULT 'no';
ALTER TABLE `users` ADD `hnrwarn` enum('yes','no') NOT NULL DEFAULT 'no';
ALTER TABLE `users` ADD `hit_and_run_total` INT(9) DEFAULT '0';

denede

what are you doing? it is already posted down in the topic.

DragonCoder

ALTER TABLE `snatched` ADD `hit_and_run` INT(11) NOT NULL;
ALTER TABLE `snatched` ADD `mark_of_cain` enum('yes','no') NOT NULL DEFAULT 'no';
ALTER TABLE `snatched` ADD `finished` enum('yes','no') NOT NULL DEFAULT 'no';
ALTER TABLE `users` ADD `hnrwarn` enum('yes','no') NOT NULL DEFAULT 'no';
ALTER TABLE `users` ADD `hit_and_run_total` INT(9) DEFAULT '0';

Mindless

Not working, ok that means the square root of feck all to me and anyone reading, care to expand or use your error log perhaps, we do not guess or make assumptions here, if you wish to get any help then help us to help you, provide info or dont post \0/

lukan87

Not working....when i do the cleanup function it stops at the hit&run script

Mindless

Quote from: mycrazy on November 28, 2013, 09:32:45 PM
ok, I managed to put it in old tbdev version, but I have a problem while working all ok, after three days all torrent after the mark of cain and let you do the 1:1 ratio to 72 hours, once again become seed files leaves the mark of cain, I know how to fix it ?

sorry my bad english:) ???

Maybe use the tool provided on userdetails to delete them.

mycrazy

ok, I managed to put it in old tbdev version, but I have a problem while working all ok, after three days all torrent after the mark of cain and let you do the 1:1 ratio to 72 hours, once again become seed files leaves the mark of cain, I know how to fix it ?

sorry my bad english:) ???

mycrazy

#8
INSIDE MYSQL thser ιs not contain in users the line downloadpos "yes or no"

How to install download mod and upload mod rights ?

Mindless

Simply follow the instructions and match your code to this, remove any $HTMLOUT or $htmlout and replace that with echo - that should be it, 5 min job to make these mods compatible with any TBdev variants.

mycrazy

Hi all,

how to install this mod to TBDEV 2005 ?

BACDAFUCUP

#5
Can not get the u-232 version work.. :( in userdetails i get blanked page.. :(
my userdetails looks like this:
First thing
Code (php) Select
<?php
/*
+------------------------------------------------
|   TBDev.net BitTorrent Tracker PHP
|   =============================================
|   by CoLdFuSiOn
|   (c) 2003 - 2009 TBDev.Net
|   http://www.tbdev.net
|   =============================================
|   svn: http://sourceforge.net/projects/tbdevnet/
|   Licence Info: GPL
+------------------------------------------------
|   $Date$
|   $Revision$
|   $Author$
|   $URL$
+------------------------------------------------
*/
require_once "include/bittorrent.php";
require_once 
"include/user_functions.php";
require_once 
"include/html_functions.php";
require_once 
"include/bbcode_functions.php";

dbconn(false);

loggedinorreturn();

$lang array_mergeload_language('global'), load_language('userdetails') );

function 
bark($msg)
{
  
stderr("{$lang['userdetails_error']}"$msg);
}

function 
maketable($res)
    {
      global 
$TBDEV$lang;
      
      
$htmlout '';
      
      
$htmlout .= "<table class='main' border='1' cellspacing='0' cellpadding='5'>" .
        
"<tr><td class='colhead' align='center'>{$lang['userdetails_type']}</td><td class='colhead'>{$lang['userdetails_name']}</td><td class='colhead' align='center'>{$lang['userdetails_ttl']}</td><td class='colhead' align='center'>{$lang['userdetails_size']}</td><td class='colhead' align='right'>{$lang['userdetails_se']}</td><td class='colhead' align='right'>{$lang['userdetails_le']}</td><td class='colhead' align='center'>{$lang['userdetails_upl']}</td>\n" .
        
"<td class='colhead' align='center'>{$lang['userdetails_downl']}</td><td class='colhead' align='center'>{$lang['userdetails_ratio']}</td></tr>\n";
      foreach (
$res as $arr)
      {
        if (
$arr["downloaded"] > 0)
        {
          
$ratio number_format($arr["uploaded"] / $arr["downloaded"], 3);
          
$ratio "<font color='" get_ratio_color($ratio) . "'>$ratio</font>";
        }
        else
          if (
$arr["uploaded"] > 0)
            
$ratio "{$lang['userdetails_inf']}";
          else
            
$ratio "---";
      
$catimage "{$TBDEV['pic_base_url']}caticons/{$arr['image']}";
      
$catname htmlspecialchars($arr["catname"]);
      
$catimage "<img src=\"".htmlspecialchars($catimage) ."\" title=\"$catname\" alt=\"$catname\" width='42' height='42' />";
      
$ttl = (28*24) - floor((time() - $arr["added"]) / 3600);
      if (
$ttl == 1$ttl .= "<br />{$lang['userdetails_hour']}"; else $ttl .= "<br />{$lang['userdetails_hours']}";
      
$size str_replace(" ""<br />"mksize($arr["size"]));
      
$uploaded str_replace(" ""<br />"mksize($arr["uploaded"]));
      
$downloaded str_replace(" ""<br />"mksize($arr["downloaded"]));
      
$seeders number_format($arr["seeders"]);
      
$leechers number_format($arr["leechers"]);
        
$htmlout .= "<tr><td style='padding: 0px'>$catimage</td>\n" .
        
"<td><a href='details.php?id=$arr[torrent]&amp;hit=1'><b>" htmlspecialchars($arr["torrentname"]) .
        
"</b></a></td><td align='center'>$ttl</td><td align='center'>$size</td><td align='right'>$seeders</td><td align='right'>$leechers</td><td align='center'>$uploaded</td>\n" .
        
"<td align='center'>$downloaded</td><td align='center'>$ratio</td></tr>\n";
      }
      
$htmlout .= "</table>\n";
      return 
$htmlout;
    }

    
$id $_GET["id"];

    if (!
is_valid_id($id))
      
bark("{$lang['userdetails_bad_id']}");
  //=== delete H&R
   
if(isset($_GET['delete_hit_and_run']) && $CURUSER['class'] >= UC_MODERATOR)
   {
      
$delete_me = isset($_GET['delete_hit_and_run']) ? intval($_GET['delete_hit_and_run']) : 0;
         if (!
is_valid_id($delete_me))
            
stderr('Error!','Bad ID');

     
sql_query('UPDATE snatched SET hit_and_run = \'0\', mark_of_cain = \'no\' WHERE id = '.$delete_me) or sqlerr(__FILE__,__LINE__);
      if (@
mysql_affected_rows() === 0)
      {
      
stderr('Error!','H&R not deleted!');
      }

      
header('Location: ?id='.$id.'&finished=1');
   die();
   }
    
    
    
    
$r = @mysql_query("SELECT * FROM users WHERE id=$id") or sqlerr();
    
$user mysql_fetch_assoc($r) or bark("{$lang['userdetails_no_user']}");
    if (
$user["status"] == "pending") die;
    
$r mysql_query("SELECT t.id, t.name, t.seeders, t.leechers, c.name AS cname, c.image FROM torrents t LEFT JOIN categories c ON t.category = c.id WHERE t.owner = $id ORDER BY t.name") or sqlerr(__FILE__,__LINE__);
    if (
mysql_num_rows($r) > 0)
    {
      
$torrents "<table class='main' border='1' cellspacing='0' cellpadding='5'>\n" .
        
"<tr><td class='colhead'>{$lang['userdetails_type']}</td><td class='colhead'>{$lang['userdetails_name']}</td><td class='colhead'>{$lang['userdetails_seeders']}</td><td class='colhead'>{$lang['userdetails_leechers']}</td></tr>\n";
      while (
$a mysql_fetch_assoc($r))
      {
        
//$r2 = mysql_query("SELECT name, image FROM categories WHERE id=$a[category]") or sqlerr(__FILE__, __LINE__);
        //$a2 = mysql_fetch_assoc($r2);
        
$cat "<img src=\""htmlspecialchars("{$TBDEV['pic_base_url']}caticons/{$a['image']}") ."\" title=\"{$a['cname']}\" alt=\"{$a['cname']}\" />";
          
$torrents .= "<tr><td style='padding: 0px'>$cat</td><td><a href='details.php?id=" $a['id'] . "&amp;hit=1'><b>" htmlspecialchars($a["name"]) . "</b></a></td>" .
            
"<td align='right'>{$a['seeders']}</td><td align='right'>{$a['leechers']}</td></tr>\n";
      }
      
$torrents .= "</table>";
    }

    if (
$user['ip'] && ($CURUSER['class'] >= UC_MODERATOR || $user['id'] == $CURUSER['id']))
    {
        
$dom = @gethostbyaddr($user['ip']);
        
$addr = ($dom == $user['ip'] || @gethostbyname($dom) != $user['ip']) ? $user['ip'] : $user['ip'].' ('.$dom.')';
    }


    if (
$user['added'] == 0)
      
$joindate "{$lang['userdetails_na']}";
    else
      
$joindate get_date$user['added'],'');
    
$lastseen $user["last_access"];
    if (
$lastseen == 0)
      
$lastseen "{$lang['userdetails_never']}";
    else
    {
      
$lastseen get_date$user['last_access'],'',0,1);
    }


      
$res mysql_query("SELECT COUNT(*) FROM comments WHERE user=" $user['id']) or sqlerr();
      
$arr3 mysql_fetch_row($res);
      
$torrentcomments $arr3[0];
      
$res mysql_query("SELECT COUNT(*) FROM posts WHERE userid=" $user['id']) or sqlerr();
      
$arr3 mysql_fetch_row($res);
      
$forumposts $arr3[0];

    
//if ($user['donated'] > 0)
    //  $don = "<img src='{$TBDEV['pic_base_url']}starbig.gif' alt='' />";
    
$country '';
    
$res mysql_query("SELECT name,flagpic FROM countries WHERE id=".$user['country']." LIMIT 1") or sqlerr();
    if (
mysql_num_rows($res) == 1)
    {
      
$arr mysql_fetch_assoc($res);
      
$country "<td class='embedded'><img src=\"{$TBDEV['pic_base_url']}flag/{$arr['flagpic']}\" alt=\""htmlspecialchars($arr['name']) ."\" style='margin-left: 8pt' /></td>";
    }

    
//if ($user["donor"] == "yes") $donor = "<td class='embedded'><img src='{$TBDEV['pic_base_url']}starbig.gif' alt='Donor' style='margin-left: 4pt' /></td>";
    //if ($user["warned"] == "yes") $warned = "<td class='embedded'><img src=\"{$TBDEV['pic_base_url']}warnedbig.gif\" alt='Warned' style='margin-left: 4pt' /></td>";

    
$res mysql_query("SELECT p.torrent, p.uploaded, p.downloaded, p.seeder, t.added, t.name as torrentname, t.size, t.category, t.seeders, t.leechers, c.name as catname, c.image FROM peers p LEFT JOIN torrents t ON p.torrent = t.id LEFT JOIN categories c ON t.category = c.id WHERE p.userid=$id") or sqlerr();

    while (
$arr mysql_fetch_assoc($res))
    {
        if (
$arr['seeder'] == 'yes')
            
$seeding[] = $arr;
        else
            
$leeching[] = $arr;
    }

    
    
$HTMLOUT '';
    
    
$enabled $user["enabled"] == 'yes';
    
$HTMLOUT .= "<p></p><table class='main' border='0' cellspacing='0' cellpadding='0'>".
    
"<tr><td class='embedded'><h1 style='margin:0px'>{$user['username']}get_user_icons($usertrue) . "</h1></td>$country</tr></table><p></p>\n";

    if (!
$enabled)
      
$HTMLOUT .= "<p><b>{$lang['userdetails_disabled']}</b></p>\n";
    elseif (
$CURUSER["id"] <> $user["id"])
    {
      
$r mysql_query("SELECT id FROM friends WHERE userid=$CURUSER[id] AND friendid=$id") or sqlerr(__FILE____LINE__);
      
$friend mysql_num_rows($r);
      
$r mysql_query("SELECT id FROM blocks WHERE userid=$CURUSER[id] AND blockid=$id") or sqlerr(__FILE____LINE__);
      
$block mysql_num_rows($r);

      if (
$friend)
        
$HTMLOUT .= "<p>(<a href='friends.php?action=delete&amp;type=friend&amp;targetid=$id'>{$lang['userdetails_remove_friends']}</a>)</p>\n";
      elseif(
$block)
        
$HTMLOUT .= "<p>(<a href='friends.php?action=delete&amp;type=block&amp;targetid=$id'>{$lang['userdetails_remove_blocks']}</a>)</p>\n";
      else
      {
        
$HTMLOUT .= "<p>(<a href='friends.php?action=add&amp;type=friend&amp;targetid=$id'>{$lang['userdetails_add_friends']}</a>)";
        
$HTMLOUT .= " - (<a href='friends.php?action=add&amp;type=block&amp;targetid=$id'>{$lang['userdetails_add_blocks']}</a>)</p>\n";
      }
    }

    
$HTMLOUT .= begin_main_frame();

    
$HTMLOUT .= "<table width='100%' border='1' cellspacing='0' cellpadding='5'>
    <tr><td class='rowhead' width='1%'>
{$lang['userdetails_joined']}</td><td align='left' width='99%'>{$joindate}</td></tr>
    <tr><td class='rowhead'>
{$lang['userdetails_seen']}</td><td align='left'>{$lastseen}</td></tr>";

    if (
$CURUSER['class'] >= UC_MODERATOR)
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_email']}</td><td align='left'><a href='{$TBDEV['baseurl']}/email-gateway.php?id={$user['id']}'>{$user['email']}</a></td></tr>\n";
    if (isset(
$addr))
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_address']}</td><td align='left'>$addr</td></tr>\n";

    
//  if ($user["id"] == $CURUSER["id"] || $CURUSER['class'] >= UC_MODERATOR)
    // {

    
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_uploaded']}</td><td align='left'>".mksize($user["uploaded"])."</td></tr>
    <tr><td class='rowhead'>
{$lang['userdetails_downloaded']}</td><td align='left'>".mksize($user["downloaded"])."</td></tr>";

    if (
$user["downloaded"] > 0)
    {
      
$sr $user["uploaded"] / $user["downloaded"];
      if (
$sr >= 4)
        
$s "w00t";
      else if (
$sr >= 2)
        
$s "grin";
      else if (
$sr >= 1)
        
$s "smile1";
      else if (
$sr >= 0.5)
        
$s "noexpression";
      else if (
$sr >= 0.25)
        
$s "sad";
      else
        
$s "cry";
      
$sr floor($sr 1000) / 1000;
      
$sr "<table border='0' cellspacing='0' cellpadding='0'><tr><td class='embedded'><font color='" get_ratio_color($sr) . "'>" number_format($sr3) . "</font></td><td class='embedded'>&nbsp;&nbsp;<img src=\"{$TBDEV['pic_base_url']}smilies/{$s}.gif\" alt='' /></td></tr></table>";
      
$HTMLOUT .= "<tr><td class='rowhead' style='vertical-align: middle'>Share ratio</td><td align='left' valign='middle' style='padding-top: 1px; padding-bottom: 0px'>$sr</td></tr>\n";
    }
    
//}

    //if ($user['donated'] > 0 && ($CURUSER['class'] >= UC_MODERATOR || $CURUSER["id"] == $user["id"]))
    //  print("<tr><td class='rowhead'>Donated</td><td align='left'>$user[donated]</td></tr>\n");
    
if ($user["avatar"])
    
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_avatar']}</td><td align='left'><img src='" htmlspecialchars($user["avatar"]) . "' width='{$user['av_w']}' height='{$user['av_h']}' alt='' /></td></tr>\n";
    
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_class']}</td><td align='left'>" get_user_class_name($user["class"]) . "</td></tr>\n";
    
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_comments']}</td>";
    if (
$torrentcomments && (($user["class"] >= UC_POWER_USER && $user["id"] == $CURUSER["id"]) || $CURUSER['class'] >= UC_MODERATOR))
      
$HTMLOUT .= "<td align='left'><a href='userhistory.php?action=viewcomments&amp;id=$id'>$torrentcomments</a></td></tr>\n";
    else
      
$HTMLOUT .= "<td align='left'>$torrentcomments</td></tr>\n";
    
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_posts']}</td>";

    if (
$forumposts && (($user["class"] >= UC_POWER_USER && $user["id"] == $CURUSER["id"]) || $CURUSER['class'] >= UC_MODERATOR))
      
$HTMLOUT .= "<td align='left'><a href='userhistory.php?action=viewposts&amp;id=$id'>$forumposts</a></td></tr>\n";
    else
      
$HTMLOUT .= "<td align='left'>$forumposts</td></tr>\n";

    if (isset(
$torrents))
      
$HTMLOUT .= "<tr valign='top'><td class='rowhead'>{$lang['userdetails_uploaded_t']}</td><td align='left'>$torrents</td></tr>\n";
      
    if (isset(
$seeding))
      
$HTMLOUT .= "<tr valign=top><td class=rowhead>{$lang['userdetails_cur_seed']}</td><td align=left>".maketable($seeding)."</td></tr>\n";
      
    if (isset(
$leeching))
       
$HTMLOUT .= "<tr valign=top><td class=rowhead>{$lang['userdetails_cur_leech']}</td><td align=left>".maketable($leeching)."</td></tr>\n";
       //=== start snatched
        
$count_snatched='';
        if (
$CURUSER['class'] >= UC_MODERATOR){
        if (isset(
$_GET["snatched_table"])){
        
$HTMLOUT .="<tr><td class='clearalt6' align='right' valign='top'><b>Snatched stuff:</b><br />[ <a class=altlink href=\"userdetails.php?id=$id\" class=\"sublink\">Hide list</a> ]</td><td class='clearalt6'>";
       
        
$res mysql_query(
        
"SELECT sn.start_date AS s, sn.complete_date AS c, sn.last_action AS l_a, sn.seedtime AS s_t, sn.seedtime, sn.leechtime AS l_t, sn.leechtime, sn.downspeed, sn.upspeed, sn.uploaded, sn.downloaded, sn.torrentid, sn.start_date, sn.complete_date, sn.seeder, sn.last_action, sn.connectable, sn.agent, sn.seedtime, sn.port, cat.name, cat.image, t.size, t.seeders, t.leechers, t.owner, t.name AS torrent_name ".
        
"FROM snatched AS sn ".
        
"LEFT JOIN torrents AS t ON t.id = sn.torrentid ".
        
"LEFT JOIN categories AS cat ON cat.id = t.category ".
        
"WHERE sn.userid=$id ORDER BY sn.start_date DESC") or die(mysql_error());
     
        
$HTMLOUT .= "<table border='1' cellspacing='0' cellpadding='5' align='center'><tr><td class='colhead' align='center'>Category</td><td class='colhead' align='left'>Torrent</td>".
        
"<td class='colhead' align='center'>S / L</td><td class='colhead' align='center'>Up / Down</td><td class='colhead' align='center'>Torrent Size</td>".
        
"<td class='colhead' align='center'>Ratio</td><td class='colhead' align='center'>Client</td></tr>";
        while (
$arr mysql_fetch_assoc($res)){
        
//=======change colors
        
$count2='';
        
$count2= (++$count2)%2;
        
$class 'clearalt'.($count2==0?'6':'7');
        
//=== speed color red fast green slow ;)
        
if ($arr["upspeed"] > 0)
        
$ul_speed = ($arr["upspeed"] > mksize($arr["upspeed"]) : ($arr["seedtime"] > mksize($arr["uploaded"] / ($arr["seedtime"] + $arr["leechtime"])) : mksize(0)));
        else
        
$ul_speed mksize(($arr["uploaded"] / ( $arr['l_a'] - $arr['s'] + )));
        if (
$arr["downspeed"] > 0)
        
$dl_speed = ($arr["downspeed"] > mksize($arr["downspeed"]) : ($arr["leechtime"] > mksize($arr["downloaded"] / $arr["leechtime"]) : mksize(0)));
        else
        
$dl_speed mksize(($arr["downloaded"] / ( $arr['c'] - $arr['s'] + )));
       
        
$dlc="";
        switch (
true){
        case (
$dl_speed 600):
        
$dlc 'red';
        break;
        case (
$dl_speed 300 ):
        
$dlc 'orange';
        break;
        case (
$dl_speed 200 ):
        
$dlc 'yellow';
        break;
        case (
$dl_speed 100 ):
        
$dlc 'Chartreuse';
        break;
        }
     
        if (
$arr["downloaded"] > 0){
        
$ratio number_format($arr["uploaded"] / $arr["downloaded"], 3);
        
$ratio "<font color=" get_ratio_color($ratio) . "><b>Ratio:</b><br />$ratio</font>";
        }
        else
        if (
$arr["uploaded"] > 0)
        
$ratio "Inf.";
        else
        
$ratio "N/A";
     
        
$HTMLOUT .= "<tr><td class='$class' align='center'>".($arr['owner'] == $id "<b><font color='orange'>Torrent owner</font></b><br />" "".($arr['complete_date'] != '0'  "<b><font color='lightgreen'>Finished</font></b><br />" "<b><font color='red'>Not Finished</font><br />")."")."<img src={$TBDEV['pic_base_url']}caticons/$arr[image] alt=$arr[name]></td>"."
       <td class='
$class'><a class='altlink' href={$TBDEV['baseurl']}/details.php?id=$arr[torrentid]><b>$arr[torrent_name]</b></a>".($arr['complete_date'] != '0'  ?"<br />"."
       <font color='yellow'>started: "
.get_date($arr['start_date'], 0,1) ."</font><br /><font color='pink'>finished:" ""."
       <br /></font><font color='yellow'>started:"
.get_date($arr['start_date'], 0,1) ."</font><br /><font color='orange'>Last Action:".get_date($arr['last_action'], 0,1) ."</font>"."
       "
.get_date($arr['complete_date'], 0,1) ." ".($arr['complete_date'] == '0'  "".($arr['owner'] == $id "" "[ ".mksize($arr["size"] - $arr["downloaded"])." still to go ]")."" "")."")." ".get_date($arr['complete_date'], 0,1) ." ".($arr['complete_date'] != '0'  "<br />"."
       <font color='silver'>time to download: "
.($arr['leechtime'] != '0' mkprettytime($arr['leechtime']) : mkprettytime($arr['c'] - $arr['s'])."")."</font> <font color='$dlc'>[ DLed at: $dl_speed ]<font>"."
       <br />" 
"<br />")."<font color='lightblue'>".($arr['seedtime'] != '0' "total seeding time: ".mkprettytime($arr['seedtime'])." <font color='$dlc'> " "total seeding time: N/A").""."
       </font><font color='lightgreen'> [ up speed: "
.$ul_speed." ] </font>".get_date($arr['complete_date'], 0,1) ."".($arr['complete_date'] == '0'  "<br /><font color='$dlc'>Download speed: $dl_speed</font>" "")."</td>"."
       <td align='center' class='
$class'>Seeds: ".$arr['seeders']."<br />Leech: ".$arr['leechers']."</td><td align='center' class='$class'><font color='lightgreen'>Uploaded:<br />"."
       <b>"
.$uploaded =mksize($arr["uploaded"])."</b></font><br /><font color='orange'>Downloaded:<br /><b>".$downloaded mksize($arr["downloaded"])."</b></font></td>"."
       <td align='center' class='
$class'>".mksize($arr["size"])."<br />difference of:<br /><font color='orange'><b>".mksize($arr['size'] - $arr["downloaded"])."</b></font></td>"."
       <td align='center' class='
$class'>$ratio<br />".($arr['seeder'] == 'yes' "<font color='lightgreen'><b>seeding</b></font>" "<font color='red'><b>not seeding</b></font>").""."
       </td><td align='center' class='
$class'>".$arr["agent"]."<br />port: ".$arr["port"]."<br />".($arr["connectable"] == 'yes' "<b>connectable: <font color='lightgreen'>yes</font>"."
       </b>" 
"<b>connectable: <font color='red'><b>no</b></font>")."</td></tr>\n";
        }
        
$HTMLOUT .= "</table></td></tr>\n";
        }
        else
        
$HTMLOUT .= tr("Snatched stuff:<br />","[ <a class=altlink href=\"userdetails.php?id=$id&snatched_table=1\" class=\"sublink\">Show</a> ]  - $count_snatched <font color='red'><b>staff only!!!</font></b>"1);
        }
        
//=== end snatched
      //==09 Hnr mod - sir_snugglebunny 
    
$completed "";
    
$r sql_query("SELECT torrents.name,torrents.added AS torrent_added, snatched.start_date AS s, snatched.complete_date AS c, snatched.downspeed, snatched.seedtime, snatched.seeder, snatched.torrentid as tid, snatched.id, categories.id as category, categories.image, categories.name as catname, snatched.uploaded, snatched.downloaded, snatched.hit_and_run, snatched.mark_of_cain, snatched.complete_date, snatched.last_action, torrents.seeders, torrents.leechers, torrents.owner, snatched.start_date AS st, snatched.start_date FROM snatched JOIN torrents ON torrents.id = snatched.torrentid JOIN categories ON categories.id = torrents.category WHERE snatched.finished='yes' AND userid=$id AND torrents.owner != $id ORDER BY snatched.id DESC") or sqlerr(__FILE____LINE__);
    
//=== completed
    
if (mysql_num_rows($r) > 0){ 
    
$completed .= "<table class='main' border='1' cellspacing='0' cellpadding='3'>
    <tr>
    <td class='colhead'>
{$lang['userdetails_type']}</td>
    <td class='colhead'>
{$lang['userdetails_name']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_s']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_l']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_ul']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_dl']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_ratio']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_wcompleted']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_laction']}</td>
    <td class='colhead' align='center'>
{$lang['userdetails_speed']}</td></tr>";
    
$count2='';
    while (
$a mysql_fetch_assoc($r)){
    
//=======change colors
    
$count2= (++$count2)%2;
    
$class 'clearalt'.($count2 == 7);
    
$torrent_needed_seed_time = ($a['st'] - $a['torrent_added']);
    
//=== get times per class
    
switch (true)
    { 
    
//=== user
    
case ($user['class'] < UC_POWER_USER):
    
$days_3 3*100//== 2 days
    
$days_14 2*86400//== 2 days
    
$days_over_14 86400//== 1 day
    
break;
    
//=== poweruser
    
case ($user['class'] == UC_POWER_USER):
    
$days_3 129600//== 36 hours
    
$days_14 129600//== 36 hours
    
$days_over_14 64800//== 18 hours
    
break;
    
//=== vip / donor?
    
case ($user['class'] == UC_VIP):
    
$days_3 129600//== 36 hours
    
$days_14 86400//== 24 hours
    
$days_over_14 43200//== 12 hours
    
break;
    
//=== uploader / staff and above (we don't need this for uploaders now do we?
    
case ($user['class'] >= UC_UPLOADER):
    
$days_3 43200//== 12 hours
    
$days_14 43200//== 12 hours
    
$days_over_14 43200//== 12 hours
    
break;
    }

    
//=== times per torrent based on age
    
switch(true
    {
    case ((
$a['st'] - $a['torrent_added']) < 7*86400):
    
$minus_ratio = ($days_3 $a['seedtime']) - ($a['uploaded'] / $a['downloaded'] * 86400);
    break;
    case ((
$a['st'] - $a['torrent_added']) < 21*86400):
    
$minus_ratio = ($days_14 $a['seedtime']) - ($a['uploaded'] / $a['downloaded'] * 86400);
    break;
    case ((
$a['st'] - $a['torrent_added']) >= 21*86400):
    
$minus_ratio = ($days_over_14 $a['seedtime']) - ($a['uploaded'] / $a['downloaded'] * 86400);
    break;
    }
    
$color = (($minus_ratio && $a['uploaded'] < $a['downloaded']) ? get_ratio_color($minus_ratio) : 'limegreen');
    
$minus_ratio mkprettytime($minus_ratio); 
    
//=== speed color red fast green slow
    
if ($a["downspeed"] > 0)
    
$dl_speed = ($a["downspeed"] > mksize($a["downspeed"]) : ($a["leechtime"] > mksize($a["downloaded"] / $a["leechtime"]) : mksize(0)));
    else
    
$dl_speed mksize(($a["downloaded"] / ( $a['c'] - $a['s'] + )));
    
$dlc="";
    switch (
true){
    case (
$dl_speed 600):
    
$dlc 'red';
    break;
    case (
$dl_speed 300 ):
    
$dlc 'orange';
    break;
    case (
$dl_speed 200 ):
    
$dlc 'yellow';
    break;
    case (
$dl_speed 100 ):
    
$dlc 'Chartreuse';
    break;
    }
    
    
//=== mark of cain / hit and run
    
$checkbox_for_delete = ($CURUSER['class'] >=  UC_MODERATOR " [<a href='".$TBDEV['baseurl']."/userdetails.php?id=".$id."&amp;delete_hit_and_run=".$a['id']."'>Remove</a>]" '');
    
$mark_of_cain = ($a['mark_of_cain'] == 'yes' "<img src='{$TBDEV['pic_base_url']}moc.gif' alt='Mark Of Cain' title='The mark of Cain!' />".$checkbox_for_delete '');
    
$hit_n_run = ($a['hit_and_run'] > "<img src='{$TBDEV['pic_base_url']}hnr.gif' alt='Hit and run' title='Hit and run!' />" '');
    
$completed .= "<tr><td style='padding: 0px' class='$class'><img src='{$TBDEV['pic_base_url']}caticons/$a[image]' alt='$a[name]' title='$a[name]' /></td>
    <td class='
$class'><a class='altlink' href='{$TBDEV['baseurl']}/details.php?id=".$a['tid']."&amp;hit=1'><b>".htmlspecialchars($a['name'])."</b></a>
    <br /><font color='.
$color.'>  ".(($CURUSER['class'] >= UC_MODERATOR || $user['id'] == $CURUSER['id']) ? "seeded for</font>: ".mkprettytime($a['seedtime']).(($minus_ratio != '0:00' && $a['uploaded'] < $a['downloaded']) ? "<br />should still seed for: ".$minus_ratio."&nbsp;&nbsp;" '').
    (
$a['seeder'] == 'yes' "&nbsp;<font color='limegreen'> [<b>seeding</b>]</font>" $hit_n_run."&nbsp;".$mark_of_cain) : '')."</td>
    <td align='center' class='
$class'>".$a['seeders']."</td>
    <td align='center' class='
$class'>".$a['leechers']."</td>
    <td align='center' class='
$class'>".mksize($a['uploaded'])."</td>
    <td align='center' class='
$class'>".mksize($a['downloaded'])."</td>
    <td align='center' class='
$class'>".($a['downloaded'] > "<font color='" get_ratio_color(number_format($a['uploaded'] / $a['downloaded'], 3)) . "'>".number_format($a['uploaded'] / $a['downloaded'], 3)."</font>" : ($a['uploaded'] > 'Inf.' '---'))."<br /></td>
    <td align='center' class='
$class'>".get_date($a['complete_date'], 'DATE')."</td>
    <td align='center' class='
$class'>".get_date($a['last_action'], 'DATE')."</td>
    <td align='center' class='
$class'><font color='$dlc'>[ DLed at: $dl_speed ]</font></td></tr>";
    }
    
$completed .= "</table>\n";
    }
    if (
$completed && $CURUSER['class'] >= UC_POWER_USER || $completed && $user['id'] == $CURUSER['id']){ 
    if (!isset(
$_GET['completed']))
    
$HTMLOUT .= tr('<b>'.$lang['userdetails_completedt'].'</b><br />','[ <a href=\'./userdetails.php?id='.$id.'&amp;completed=1#completed\' class=\'sublink\'>Show</a> ]&nbsp;&nbsp;-&nbsp;'.mysql_num_rows($r), 1);
    elseif (
mysql_num_rows($r) == 0)
    
$HTMLOUT .= tr('<b>'.$lang['userdetails_completedt'].'</b><br />','[ <a href=\'./userdetails.php?id='.$id.'&amp;completed=1\' class=\'sublink\'>Show</a> ]&nbsp;&nbsp;-&nbsp;'.mysql_num_rows($r), 1);
    else
    
$HTMLOUT .= tr('<a name=\'completed\'><b>'.$lang['userdetails_completedt'].'</b></a><br />[ <a href=\'./userdetails.php?id='.$id.'#history\' class=\'sublink\'>Hide list</a> ]'$completed1);
    } 
    }
    
//==End hnr 
    
if ($user["info"])
     
$HTMLOUT .= "<tr valign='top'><td align='left' colspan='2' class='text' bgcolor='#F4F4F0'>" format_comment($user["info"]) . "</td></tr>\n";

    if (
$CURUSER["id"] != $user["id"])
      if (
$CURUSER['class'] >= UC_MODERATOR)
        
$showpmbutton 1;
      elseif (
$user["acceptpms"] == "yes")
      {
        
$r mysql_query("SELECT id FROM blocks WHERE userid={$user['id']} AND blockid={$CURUSER['id']}") or sqlerr(__FILE__,__LINE__);
        
$showpmbutton = (mysql_num_rows($r) == 1);
      }
      elseif (
$user["acceptpms"] == "friends")
      {
        
$r mysql_query("SELECT id FROM friends WHERE userid=$user[id] AND friendid=$CURUSER[id]") or sqlerr(__FILE__,__LINE__);
        
$showpmbutton = (mysql_num_rows($r) == 0);
      }
    if (isset(
$showpmbutton))
      
$HTMLOUT .= "<tr>
      <td colspan='2' align='center'>
      <form method='get' action='sendmessage.php'>
        <input type='hidden' name='receiver' value='
{$user["id"]}' />
        <input type='submit' value='
{$lang['userdetails_msg_btn']}' class='btn' />
      </form>
      </td></tr>"
;

    
$HTMLOUT .= "</table>\n";

    if (
$CURUSER['class'] >= UC_MODERATOR && $user["class"] < $CURUSER['class'])
    {
      
$HTMLOUT .= begin_frame("{$lang['userdetails_edit_user']}"true);
      
$HTMLOUT .= "<form method='post' action='modtask.php'>\n";
      
$HTMLOUT .= "<input type='hidden' name='action' value='edituser' />\n";
      
$HTMLOUT .= "<input type='hidden' name='userid' value='$id' />\n";
      
$HTMLOUT .= "<input type='hidden' name='returnto' value='userdetails.php?id=$id' />\n";
      
$HTMLOUT .= "<table class='main' border='1' cellspacing='0' cellpadding='5'>\n";
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_title']}</td><td colspan='2' align='left'><input type='text' size='60' name='title' value='" htmlspecialchars($user['title']) . "' /></td></tr>\n";
      
$avatar htmlspecialchars($user["avatar"]);
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_avatar_url']}</td><td colspan='2' align='left'><input type='text' size='60' name='avatar' value='$avatar' /></td></tr>\n";
      
// we do not want mods to be able to change user classes or amount donated...
      
if ($CURUSER["class"] < UC_ADMINISTRATOR)
        
$HTMLOUT .= "<input type='hidden' name='donor' value='$user[donor]' />\n";
      else
      {
        
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_donor']}</td><td colspan='2' align='left'><input type='radio' name='donor' value='yes'" .($user["donor"] == "yes" " checked='checked'" "")." />{$lang['userdetails_yes']} <input type='radio' name='donor' value='no'" .($user["donor"] == "no" " checked='checked'" "")." />{$lang['userdetails_no']}</td></tr>\n";
      }

      if (
$CURUSER['class'] == UC_MODERATOR && $user["class"] > UC_VIP)
        
$HTMLOUT .= "<input type='hidden' name='class' value='{$user['class']}' />\n";
      else
      {
        
$HTMLOUT .= "<tr><td class='rowhead'>Class</td><td colspan='2' align='left'><select name='class'>\n";
        if (
$CURUSER['class'] == UC_MODERATOR)
          
$maxclass UC_VIP;
        else
          
$maxclass $CURUSER['class'] - 1;
        for (
$i 0$i <= $maxclass; ++$i)
          
$HTMLOUT .= "<option value='$i'" . ($user["class"] == $i " selected='selected'" "") . ">" get_user_class_name($i) . "</option>\n";
        
$HTMLOUT .= "</select></td></tr>\n";
      }

      
$modcomment htmlspecialchars($user["modcomment"]);
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_comment']}</td><td colspan='2' align='left'><textarea cols='60' rows='6' name='modcomment'>$modcomment</textarea></td></tr>\n";
      
$warned $user["warned"] == "yes";

      
$HTMLOUT .= "<tr><td class='rowhead'" . (!$warned " rowspan='2'""") . ">{$lang['userdetails_warned']}</td>
      <td align='left' width='20%'>" 
.
      ( 
$warned
      
"<input name=warned value='yes' type='radio' checked='checked' />{$lang['userdetails_yes']}<input name='warned' value='no' type='radio' />{$lang['userdetails_no']}"
      
"{$lang['userdetails_no']}) ."</td>";

      if (
$warned)
      {
        
$warneduntil $user['warneduntil'];
        if (
$warneduntil == 0)
          
$HTMLOUT .= "<td align='center'>{$lang['userdetails_dur']}</td></tr>\n";
        else
        {
          
$HTMLOUT .= "<td align='center'>{$lang['userdetails_until']} ".get_date($warneduntil'DATE');
          
$HTMLOUT .= " (" mkprettytime($warneduntil time())  . {$lang['userdetails_togo']})</td></tr>\n";
        }
      }
      else
      {
        
$HTMLOUT .= "<td>{$lang['userdetails_warn_for']} <select name='warnlength'>\n";
        
$HTMLOUT .= "<option value='0'>{$lang['userdetails_warn0']}</option>\n";
        
$HTMLOUT .= "<option value='1'>{$lang['userdetails_warn1']}</option>\n";
        
$HTMLOUT .= "<option value='2'>{$lang['userdetails_warn2']}</option>\n";
        
$HTMLOUT .= "<option value='4'>{$lang['userdetails_warn4']}</option>\n";
        
$HTMLOUT .= "<option value='8'>{$lang['userdetails_warn8']}</option>\n";
        
$HTMLOUT .= "<option value='255'>{$lang['userdetails_warninf']}</option>\n";
        
$HTMLOUT .= "</select>{$lang['userdetails_pm_comm']}</td></tr>\n";
        
$HTMLOUT .= "<tr><td colspan='2' align='left'><input type='text' size='60' name='warnpm' /></td></tr>";
      }
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_enabled']}</td><td colspan='2' align='left'><input name='enabled' value='yes' type='radio'" . ($enabled " checked='checked'" "") . " />{$lang['userdetails_yes']} <input name='enabled' value='no' type='radio'" . (!$enabled " checked='checked'" "") . " />{$lang['userdetails_no']}</td></tr>\n";
      
$HTMLOUT .= "<tr><td class='rowhead'>{$lang['userdetails_reset']}</td><td colspan='2'><input type='checkbox' name='resetpasskey' value='1' /><font class='small'>{$lang['userdetails_pass_msg']}</font></td></tr>";
      
//$HTMLOUT .= "</td></tr>";
      
$HTMLOUT .= "<tr><td colspan='3' align='center'><input type='submit' class='btn' value='{$lang['userdetails_okay']}' /></td></tr>\n";
      
$HTMLOUT .= "</table>\n";
      
$HTMLOUT .= "</form>\n";
      
$HTMLOUT .= end_frame();
    }
    
$HTMLOUT .= end_main_frame();
    
    
    print 
stdhead("{$lang['userdetails_details']} " $user["username"]) . $HTMLOUT stdfoot();

?>


allso tried to change UC_STAFF to see if it was that one.
Allso tried to remove this line here but it was not that one.. :(
if  ($user['paranoia'] < 2 || $CURUSER['id'] == $id || $CURUSER['class'] >= UC_STAFF)
    {

Second thing
the clean up looks like i does not update at all even if i do a manuel cleanup. i have changed all $INSTALLER09 to $TBDEV
Code (php) Select
<?php
/*
+------------------------------------------------
|   TBDev.net BitTorrent Tracker PHP
|   =============================================
|   by CoLdFuSiOn
|   (c) 2003 - 2009 TBDev.Net
|   http://www.tbdev.net
|   =============================================
|   svn: http://sourceforge.net/projects/tbdevnet/
|   Licence Info: GPL
+------------------------------------------------
|   $Date$
|   $Revision$
|   $Author$
|   $URL$
+------------------------------------------------
*/
require_once("bittorrent.php");

function 
deadtime() {
    global 
$TBDEV;
    return 
time() - floor($TBDEV['announce_interval'] * 1.3);
}

function 
docleanup() {
global $TBDEV;

set_time_limit(0);
ignore_user_abort(1);

do {
$res mysql_query("SELECT id FROM torrents");
$ar = array();
while ($row mysql_fetch_array($res,MYSQL_NUM)) {
$id $row[0];
$ar[$id] = 1;
}

if (!count($ar))
break;

$dp = @opendir($TBDEV['torrent_dir']);
if (!$dp)
break;

$ar2 = array();
while (($file readdir($dp)) !== false) {
if (!preg_match('/^(\d+)\.torrent$/'$file$m))
continue;
$id $m[1];
$ar2[$id] = 1;
if (isset($ar[$id]) && $ar[$id])
continue;
$ff $TBDEV['torrent_dir'] . "/$file";
unlink($ff);
}
closedir($dp);

if (!count($ar2))
break;

$delids = array();
foreach (array_keys($ar) as $k) {
if (isset($ar2[$k]) && $ar2[$k])
continue;
$delids[] = $k;
unset($ar[$k]);
}
if (count($delids))
mysql_query("DELETE FROM torrents WHERE id IN (" join(","$delids) . ")");

$res mysql_query("SELECT torrent FROM peers GROUP BY torrent");
$delids = array();
while ($row mysql_fetch_array($res,MYSQL_NUM)) {
$id $row[0];
if (isset($ar[$id]) && $ar[$id])
continue;
$delids[] = $id;
}
if (count($delids))
mysql_query("DELETE FROM peers WHERE torrent IN (" join(","$delids) . ")");

$res mysql_query("SELECT torrent FROM files GROUP BY torrent");
$delids = array();
while ($row mysql_fetch_array($res,MYSQL_NUM)) {
$id $row[0];
if (isset($ar[$id]) && $ar[$id])
continue;
$delids[] = $id;
}
if (count($delids))
mysql_query("DELETE FROM files WHERE torrent IN (" join(","$delids) . ")");
} while (0);

$deadtime deadtime();
@mysql_query("DELETE FROM peers WHERE last_action < $deadtime");

$deadtime -= $TBDEV['max_dead_torrent_time'];
@mysql_query("UPDATE torrents SET visible='no' WHERE visible='yes' AND last_action < $deadtime");

$deadtime time() - $TBDEV['signup_timeout'];
@mysql_query("DELETE FROM users WHERE status = 'pending' AND added < $deadtime AND last_login < $deadtime AND last_access < $deadtime");

$torrents = array();
$res = @mysql_query("SELECT torrent, seeder, COUNT(*) AS c FROM peers GROUP BY torrent, seeder");
while ($row mysql_fetch_assoc($res)) {
if ($row["seeder"] == "yes")
$key "seeders";
else
$key "leechers";
$torrents[$row["torrent"]][$key] = $row["c"];
}

$res = @mysql_query("SELECT torrent, COUNT(*) AS c FROM comments GROUP BY torrent");
while ($row mysql_fetch_assoc($res)) {
$torrents[$row["torrent"]]["comments"] = $row["c"];
}


$fields explode(":""comments:leechers:seeders");
$res = @mysql_query("SELECT id, seeders, leechers, comments FROM torrents");
while ($row mysql_fetch_assoc($res)) {
$id $row["id"];
if(isset($torrents[$id]))
$torr $torrents[$id];
foreach ($fields as $field) {
if (!isset($torr[$field]))
$torr[$field] = 0;
}
$update = array();
foreach ($fields as $field) {
if ($torr[$field] != $row[$field])
$update[] = "$field = " $torr[$field];
}
if (count($update))
@mysql_query("UPDATE torrents SET " implode(","$update) . " WHERE id = $id");
}

//delete inactive user accounts
$secs 42*86400;
$dt = (time() - $secs);
$maxclass UC_POWER_USER;
@mysql_query("DELETE FROM users WHERE status='confirmed' AND class <= $maxclass AND last_access < $dt");

// lock topics where last post was made more than x days ago
/* $secs = 7*86400;
$res = mysql_query("SELECT topics.id FROM topics LEFT JOIN posts ON topics.lastpost = posts.id WHERE topics.locked = 'no' AND topics.sticky = 'no' AND " . gmtime() . " - UNIX_TIMESTAMP(posts.added) > $secs") or sqlerr(__FILE__, __LINE__);
  if(mysql_num_rows($res) > 0) {
while ($arr = mysql_fetch_assoc($res))
    $pids[] = $arr['id'];
mysql_query("UPDATE topics SET locked='yes' WHERE id IN (".join(',', $pids).")") or sqlerr(__FILE__, __LINE__);
  }
*/  
  //remove expired warnings
  
$res = @mysql_query("SELECT id FROM users WHERE warned='yes' AND warneduntil < ".time()." AND warneduntil <> 0") or sqlerr(__FILE____LINE__);
  if (
mysql_num_rows($res) > 0)
  {
    
$dt time();
    
$msg sqlesc("Your warning has been removed. Please keep in your best behaviour from now on.\n");
    while (
$arr mysql_fetch_assoc($res))
    {
      @
mysql_query("UPDATE users SET warned = 'no', warneduntil = 0 WHERE id = {$arr['id']}") or sqlerr(__FILE____LINE__);
      @
mysql_query("INSERT INTO messages (sender, receiver, added, msg, poster) VALUES(0, {$arr['id']}$dt$msg, 0)") or sqlerr(__FILE____LINE__);
    }
  }

// promote power users
$limit 25*1024*1024*1024;
$minratio 1.05;
$maxdt = (time() - 86400*28);
$res = @mysql_query("SELECT id FROM users WHERE class = 0 AND uploaded >= $limit AND uploaded / downloaded >= $minratio AND added < $maxdt") or sqlerr(__FILE____LINE__);
if (mysql_num_rows($res) > 0)
{
$dt time();
$msg sqlesc("Congratulations, you have been auto-promoted to [b]Power User[/b]. :)\nYou can now download dox over 1 meg and view torrent NFOs.\n");
while ($arr mysql_fetch_assoc($res))
{
@mysql_query("UPDATE users SET class = 1 WHERE id = {$arr['id']}") or sqlerr(__FILE____LINE__);
@mysql_query("INSERT INTO messages (sender, receiver, added, msg, poster) VALUES(0, {$arr['id']}$dt$msg, 0)") or sqlerr(__FILE____LINE__);
}
}

// demote power users
$minratio 0.95;
$res mysql_query("SELECT id FROM users WHERE class = 1 AND uploaded / downloaded < $minratio") or sqlerr(__FILE____LINE__);
if (mysql_num_rows($res) > 0)
{
$dt time();
$msg sqlesc("You have been auto-demoted from [b]Power User[/b] to [b]User[/b] because your share ratio has dropped below $minratio.\n");
while ($arr mysql_fetch_assoc($res))
{
@mysql_query("UPDATE users SET class = 0 WHERE id = {$arr['id']}") or sqlerr(__FILE____LINE__);
@mysql_query("INSERT INTO messages (sender, receiver, added, msg, poster) VALUES(0, {$arr['id']}$dt$msg, 0)") or sqlerr(__FILE____LINE__);
}
}

// Update stats
$seeders get_row_count("peers""WHERE seeder='yes'");
$leechers get_row_count("peers""WHERE seeder='no'");
@mysql_query("UPDATE avps SET value_u=$seeders WHERE arg='seeders'") or sqlerr(__FILE____LINE__);
@mysql_query("UPDATE avps SET value_u=$leechers WHERE arg='leechers'") or sqlerr(__FILE____LINE__);

// update forum post/topic count
//$forums = @mysql_query("SELECT t.forumid, count( DISTINCT p.topicid ) AS topics, count( * ) AS posts FROM posts p LEFT JOIN topics t ON t.id = p.topicid LEFT JOIN forums f ON f.id = t.forumid GROUP BY t.forumid");
$forums = @mysql_query("SELECT f.id, count( DISTINCT t.id ) AS topics, count( * ) AS posts
                          FROM forums f
                          LEFT JOIN topics t ON f.id = t.forumid
                          LEFT JOIN posts p ON t.id = p.topicid
                          GROUP BY f.id"
);
while ($forum mysql_fetch_assoc($forums))
{/*
$postcount = 0;
$topiccount = 0;
$topics = mysql_query("select id from topics where forumid=$forum[id]");
while ($topic = mysql_fetch_assoc($topics))
{
$res = mysql_query("select count(*) from posts where topicid=$topic[id]");
$arr = mysql_fetch_row($res);
$postcount += $arr[0];
++$topiccount;
} */
$forum['posts'] = $forum['topics'] > $forum['posts'] : 0;
@mysql_query("update forums set postcount={$forum['posts']}, topiccount={$forum['topics']} where id={$forum['id']}");
}
//===09 hnr by sir_snugglebunny
    //=== hit and run part... after 3 days, add the mark of Cain... adjust $secs value if you wish
          
$secs 100;
          
$hnr time() - $secs;
          
$res sql_query('SELECT id FROM snatched WHERE hit_and_run <> \'0\' AND hit_and_run < '.sqlesc($hnr).'') or sqlerr(__FILE____LINE__);    
          while (
$arr mysql_fetch_assoc($res))
          {
          
sql_query('UPDATE snatched SET mark_of_cain = \'yes\' WHERE id='.sqlesc($arr['id'])) or sqlerr(__FILE____LINE__);
          }
    
//=== hit and run... disable Downloading rights if they have 3 marks of cain 
          
$res_fuckers sql_query('SELECT COUNT(*) AS poop, snatched.userid, users.username, users.modcomment, users.hit_and_run_total, users.downloadpos FROM snatched LEFT JOIN users ON snatched.userid = users.id WHERE snatched.mark_of_cain = \'yes\' AND users.hnrwarn = \'no\' AND users.immunity = \'0\' GROUP BY snatched.userid') or sqlerr(__FILE____LINE__);     
          while (
$arr_fuckers mysql_fetch_assoc($res_fuckers))
          {
                if (
$arr_fuckers['poop'] > && $arr_fuckers['downloadpos'] == 1)
                {
                
//=== set them to no DLs
                
$subject sqlesc('Download disabled by System');
                
$msg sqlesc("Sorry ".$arr_fuckers['username'].",\n Because you have 3 or more torrents that have not been seeded to either a 1:1 ratio, or for the expected seeding time, your downloading rights have been disabled by the Auto system !\nTo get your Downloading rights back is simple,\n just start seeding the torrents in your profile [ click your username, then click your [url=".$TBDEV['baseurl']."/userdetails.php?id=".$arr_fuckers['userid']."&completed=1]Completed Torrents[/url] link to see what needs seeding ] and your downloading rights will be turned back on by the Auto system after the next clean-time [ updates 4 times per hour ].\n\nDownloads are disabled after a member has three or more torrents that have not been seeded to either a 1 to 1 ratio, OR for the required seed time [ please see the [url=".$TBDEV['baseurl']."/faq.php]FAQ[/url] or [url=".$TBDEV['baseurl']."/rules.php]Site Rules[/url] for more info ]\n\nIf this message has been in error, or you feel there is a good reason for it, please feel free to PM a staff member with your concerns.\n\n we will do our best to fix this situation.\n\nBest of luck!\n ".$TBDEV['site_name']." staff.\n");
                
$modcomment htmlspecialchars($arr_fuckers['modcomment']);
                
$modcomment =  get_datetime(), 'DATE') . " - Download rights removed for H and R - AutoSystem.\n"$modcomment;
                
$modcom =  sqlesc($modcomment);
                
sql_query("INSERT INTO messages (sender, receiver, added, msg, subject, poster) VALUES(0, $arr_fuckers[userid], ".sqlesc(time()).", $msg$subject, 0)") or sqlerr(__FILE____LINE__);       
                
sql_query('UPDATE users SET hit_and_run_total = hit_and_run_total + '.$arr_fuckers['poop'].', downloadpos = \'0\', hnrwarn = \'yes\', modcomment = '.$modcom.'  WHERE downloadpos = \'1\' AND id='.sqlesc($arr_fuckers['userid'])) or sqlerr(__FILE____LINE__);
                }
          }
    
//=== hit and run... turn their DLs back on if they start seeding again
    
$res_good_boy sql_query('SELECT id, username, modcomment FROM users WHERE hnrwarn = \'yes\' AND downloadpos = \'0\'') or sqlerr(__FILE____LINE__);
    while (
$arr_good_boy mysql_fetch_assoc($res_good_boy))
          {
          
$res_count sql_query('SELECT COUNT(*) FROM snatched WHERE userid = '.sqlesc($arr_good_boy['id']).' AND mark_of_cain = \'yes\'') or sqlerr(__FILE____LINE__);
          
$arr_count mysql_fetch_row($res_count);
                if (
$arr_count[0] < 3)
                {
                
//=== set them to yes DLs
                
$subject sqlesc('Download restored by System');
                
$msg sqlesc("Hi ".$arr_good_boy['username'].",\n Congratulations ! Because you have seeded the torrents that needed seeding, your downloading rights have been restored by the Auto System !\n\nhave fun !\n ".$TBDEV['site_name']." staff.\n");
                
$modcomment htmlspecialchars($arr_good_boy['modcomment']);
                
$modcomment =  get_datetime(), 'DATE') . " - Download rights restored from H and R - AutoSystem.\n"$modcomment;
                
$modcom =  sqlesc($modcomment);
                
sql_query("INSERT INTO messages (sender, receiver, added, msg, subject, poster) VALUES(0, ".sqlesc($arr_good_boy['id']).", ".sqlesc(time()).", $msg$subject, 0)") or sqlerr(__FILE____LINE__);
                
sql_query('UPDATE users SET downloadpos = \'1\', hnrwarn = \'no\', modcomment = '.$modcom.'  WHERE id = '.sqlesc($arr_good_boy['id'])) or sqlerr(__FILE____LINE__);
                }
          }
          
//==End
// delete old torrents
$days 28;
$dt = (time() - ($days 86400));
$res mysql_query("SELECT id, name FROM torrents WHERE added < $dt");
while ($arr mysql_fetch_assoc($res))
{
@unlink("{$TBDEV['torrent_dir']}/{$arr['id']}.torrent");
@mysql_query("DELETE FROM torrents WHERE id={$arr['id']}");
@mysql_query("DELETE FROM peers WHERE torrent={$arr['id']}");
@mysql_query("DELETE FROM comments WHERE torrent={$arr['id']}");
@mysql_query("DELETE FROM files WHERE torrent={$arr['id']}");
write_log("Torrent {$arr['id']} ({$arr['name']}) was deleted by system (older than $days days)");
}

    
// Remove expired readposts...
    
$dt = (time() - $TBDEV['readpost_expiry']);

    @
mysql_query("DELETE readposts FROM readposts ".
        
"LEFT JOIN posts ON readposts.lastpostread = posts.id ".
        
"WHERE posts.added < $dt") or sqlerr(__FILE__,__LINE__);

}

?>


can not figure out what the problem is.. :(

BACDAFUCUP

Thanks for the quick answer.. :) i will try to mod this version of hit and run in instead of the other one.. i can se 1 / 0 is in there.. :) thats perfect.