Location: PHPKode > projects > H-tracker > torrents-details.php
<?
//
//  H-Tracker v0.2
//    http://h-tracker.org
//    Based on TorrentTrader (http://www.torrenttrader.org)
//
//
require_once("backend/functions.php");
require_once("backend/BDecode.php") ;
require_once("backend/parse.php") ;//replace with parse later
dbconn();
parked();

$torrent_dir = $site_config["torrent_dir"];	
$nfo_dir = $site_config["nfo_dir"];	

//check permissions
if ($site_config["MEMBERSONLY"]){
	loggedinonly();

	if($CURUSER["view_torrents"]=="no")
		show_error_msg("Error","You do not have permission to view torrents",1);
}

//************ DO SOME "GET" STUFF BEFORE PAGE LAYOUT ***************

$id = (int) $_GET["id"];
$scrape = (int)$_GET["scrape"];
if (!is_valid_id($id))
	show_error_msg("ERROR","Thats not a valid ID",1);

//GET ALL MYSQL VALUES FOR THIS TORRENT
	$res = mysql_query("SELECT torrents.anon, torrents.seeders, torrents.vip, torrents.thanks, torrents.banned, torrents.nuked, torrents.tube, torrents.leechers, torrents.info_hash, torrents.filename, torrents.nfo, torrents.last_action, torrents.numratings, torrents.name, torrents.owner, torrents.save_as, torrents.descr, torrents.visible, torrents.size, torrents.added, torrents.views, torrents.hits, torrents.times_completed, torrents.id, torrents.type, torrents.external, torrents.image1, torrents.image2, torrents.announce, torrents.numfiles, torrents.freeleech, IF(torrents.numratings < 2, NULL, ROUND(torrents.ratingsum / torrents.numratings, 1)) AS rating, torrents.numratings, categories.name AS cat_name, torrentlang.name AS lang_name, torrentlang.image AS lang_image, torrentage.name AS age_name, torrentage.image AS age_image, categories.parent_cat as cat_parent, users.username, users.privacy FROM torrents LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN torrentlang ON torrents.torrentlang = torrentlang.id  LEFT JOIN torrentage ON torrents.torrentage = torrentage.id LEFT JOIN users ON torrents.owner = users.id WHERE torrents.id = $id") or die(mysql_error());



$row = mysql_fetch_array($res);

$vip = $row["vip"];
$vips = $row["vip"];

if ($vip == "y") {
$vip = "<b>Yes</b>";
} else {
$vip = "<b>No</b>";
}
//DECIDE IF TORRENT EXISTS
if (!$row || ($row["banned"] == "yes" && !$moderator))
	show_error_msg("Error","" . TORRENT_NOT_FOUND . "",1);

//torrent is availiable so do some stuff

if ($_GET["hit"]) {
	mysql_query("UPDATE torrents SET views = views + 1 WHERE id = $id");
	header("Location: torrents-details.php?id=$id");
	die;
	}

	stdhead("Details for torrent \"" . $row["name"] . "\"");

	if ($CURUSER["id"] == $row["owner"])
		$owned = 1;
	else
		$owned = 0;

	if ($CURUSER["edit_torrents"]=="yes")
		$owned = 1;

//take rating
if ($_GET["takerating"] == 'yes'){
	$rating = (int)$_POST['rating'];

	if ($rating <= 0 || $rating > 5)
		show_error_msg("Rating Error", "Invalid rating",1);

	$res = mysql_query("INSERT INTO ratings (torrent, user, rating, added) VALUES ($id, " . $CURUSER["id"] . ", $rating, '".get_date_time()."')");

	if (!$res) {
		if (mysql_errno() == 1062)
			show_error_msg("Rating Error", "You have already rated this torrent.",1);
		else
			show_error_msg("Rating Error", "A Unknown Error, contact staff",1);
	}

	mysql_query("UPDATE torrents SET numratings = numratings + 1, ratingsum = ratingsum + $rating WHERE id = $id");
    autolink("torrents-details.php?id=$id", "Thank you for rating this torrent...");
}

//take comment add
if ($_GET["takecomment"] == 'yes'){
	loggedinonly();
      if (!($CURUSER['comment_count'] < $CURUSER['comment_max']))
                show_error_msg("Notice","You have reached your Comment limit. Please wait 10 minutes before retrying.");
	$commentbody = $_POST['body'];
	
	if (!$commentbody)
		show_error_msg("Error","You did not enter anything!",1);

	mysql_query("UPDATE torrents SET comments = comments + 1 WHERE id = $id") or die(mysql_error());
    mysql_query("UPDATE users SET comment_count = comment_count + 1 WHERE id = $id") or die(mysql_error());

	mysql_query("INSERT INTO comments (user, torrent, added, text) VALUES (".$CURUSER["id"].", ".$id.", '" .get_date_time(). "', " . sqlesc($body).")") or die(mysql_error());

	if (mysql_affected_rows() == 1)
            autolink("torrents-details.php?id=$id", "Your Comment was added successfully");    
     	else
			show_error_msg("Error","Unable to add comment",0);
}//end insert comment

//START OF PAGE LAYOUT HERE
$char1 = 55; //cut length
$shortname = CutName(htmlspecialchars($row["name"]), $char1);

begin_frame("" . TORRENT_DETAILS_FOR . " \"" . $shortname . "\"");
if ($owned)
   $edittorrent = "<a href=torrents-edit.php?id=$row[id]><img src=\"".$site_config["SITEURL"]."/images/torrents/edit.gif\" border=\"0\" alt=\"Edit Torrent\"></a>";

// Calculate local torrent speed test
if ($row["leechers"] >= 1 && $row["seeders"] >= 1 && $row["external"]!='yes'){
	$speedQ = mysql_query("SELECT (SUM(p.downloaded)) / (UNIX_TIMESTAMP('".get_date_time()."') - UNIX_TIMESTAMP(added)) AS totalspeed FROM torrents AS t LEFT JOIN peers AS p ON t.id = p.torrent WHERE p.seeder = 'no' AND p.torrent = '$id' GROUP BY t.id ORDER BY added ASC LIMIT 15") or die(mysql_error());
	$a = mysql_fetch_assoc($speedQ);
	$totalspeed = mksize($a["totalspeed"]) . "/s";
}else{
	$totalspeed = "---"; 
}
 echo "<FIELDSET><LEGEND>Status</LEGEND>"; 
echo "<CENTER>";
if ($row["banned"] == "yes"){
    print ("<CENTER><B>" . DOWNLOAD . ": </B>BANNED!</CENTER>");
if ($vip == '<b>Yes</b>' && get_user_class($CURSER) < 3) {
print("<tr><td align=right><b><u><font class=leechers>VIP torrent!</b></font></td></tr>");
}
}else{
if ($site_config["AGEON"] && $CURUSER["class"] <=3){
if ($CURUSER["age"] < $row["age_name"]){
$torrentage =  "<a href=\"" . $site_config['SITEURL'] . "/images/torrents/novideo.jpg\" rel=\"ibox\"><img border=\"0\"src=\"" . $site_config['SITEURL'] . "/images/torrents/age/" . $row["age_image"] . "\" alt=\"Age Required&nbsp;:" . $row["age_name"] . " + \" /></a>";                                                                                       
}else{
$torrentage =  "<a href=\"download.php?id=$id&name=" . rawurlencode($row["filename"]) . "\"><img border=\"0\"src=\"" . $site_config['SITEURL'] . "/images/torrents/age/" . $row["age_image"] . "\" alt=\"Age Required&nbsp;:" . $row["age_name"] . " + \" /></a>";                         
}
}else{
$torrentage =  "<a href=\"download.php?id=$id&name=" . rawurlencode($row["filename"]) . "\"><img border=\"0\"src=\"" . $site_config['SITEURL'] . "/images/torrents/age/" . $row["age_image"] . "\" alt=\"Age Required&nbsp;:" . $row["age_name"] . " + \" /></a>"; 
}
print("<table border=0 cellspacing=0 cellpadding=0 width=98%>");
print("<tr><td class=rowTabHead><b>" . HEALTH . ":</b></td>
<td class=rowTabHead><img src=".$site_config['SITEURL']."/images/torrents/seeders.png border=\"0\" alt=\"" . SEEDS . "\"></td>
<td class=rowTabHead><img src=".$site_config['SITEURL']."/images/torrents/leechers.png border=\"0\" alt=\"" . LEECH . "\"></td>");
if ($row["external"]!='yes'){
print("<td class=rowTabHead><b>Speed:</b></td>");
}
print("<td class=rowTabHead><img src=".$site_config['SITEURL']."/images/torrents/completed.png border=\"0\" alt=\"" . COMPLETED . "\"></td></td>"); 
if ($row["external"]!='yes' && $row["seeders"] <= 1 && $row["times_completed"] > 0){ //if local and completed 
print("<td class=rowTabHead><b>Who's Completed?</b></td>");
} 
if ($row["external"]!='yes' && $row["freeleech"]=='1'){ 
print("<td class=rowTabHead><b>Free Leech:</b></td>");
}
if ($row["external"]!='yes' && $vips == "y") {  
print("<td class=rowTabHead><b>VIP torrent: </b></td>");
}
print("<td class=rowTabHead><b>Last Checked:</b></td>");
if ($row["external"]=='yes'){
if ($scrape =='1'){
if ($seeders1 != -1){
print("<td class=rowTabHead><b>Tracked:</b></td>"); 
}else{
print("<td class=rowTabHead><b>Live StaTus:</b></td>");
} 
print("<td class=rowTabHead><b>Live StaTus:</b></td>");
}else{
print("<td class=rowTabHead><b>Tracked:</b></td>");  
}
}

print("<tr><td class=status width=80 height=35><div class=progressBar>".health($row["leechers"], $row["seeders"])."</div></td>");
print("<td class=status><font class=seeders>" . $row["seeders"] . "</font></td>"); 
print("<td class=status><font class=leechers>" . $row["leechers"] . "</font></td>"); 
if ($row["external"]!='yes'){
print("<td class=status>" . $totalspeed . "</td>"); 
}
print("<td class=status>" . $row["times_completed"] . "</td>");
if ($row["external"]!='yes' && $row["seeders"] <= 1 && $row["times_completed"] > 0){ //if local and completed   
print("<td class=status><a href=torrents-completed.php?id=$id>View</a>&nbsp;&nbsp;<a href=torrents-reseed.php?id=$id>Request A Re-Seed</a></td>");
}
if ($row["external"]!='yes' && $row["freeleech"]=='1'){
print("<td class=status><font class=error>This torrent is freeleech so only upload counts!</font></font></td>");    
}
if ($row["external"]!='yes' && $vips == "y") {
print("<td class=status><font class=error>This torrent is for VIP members only!</font></td>"); 
}  
print("<td class=status>" . date("d-m-Y H:i:s", utc_to_tz_time($row["last_action"])) . "</td>");    

if ($row["external"]=='yes'){
		if ($scrape =='1'){
            print("<td class=status>EXTERNAL</td>\n"); 
			$tracker=str_replace("/announce","/scrape",$row['announce']);	
			$stats 			= torrent_scrape_url($tracker, $row["info_hash"]);
			$seeders1 		= strip_tags($stats['seeds']);
			$leechers1 		= strip_tags($stats['peers']);
			$downloaded1	= strip_tags($stats['downloaded']);

			if ($seeders1 != -1){ //only update stats if data is received
                print("<td class=status>"); 
				print ("Seeders: ".$seeders1."<BR>");
				print ("Leechers: ".$leechers1."<BR>");
				print ("Completed: ".$downloaded1."<BR>\n");
                print ("<form action=torrents-details.php?id=$id&scrape=1 method=post><input type=\"submit\" name=\"submit\" value=\"Update Stats\"></td></form></tr>");

				mysql_query("UPDATE torrents SET leechers='".$leechers1."', seeders='".$seeders1."',times_completed='".$downloaded1."',last_action= '".get_date_time()."',visible='yes' WHERE id='".$row['id']."'"); 
			}else{
				print("<td>"); 
				print ("<font class=error>Tracker Timeout<BR>Please retry later</font><BR><form action=torrents-details.php?id=$id&scrape=1 method=post><input type=\"submit\" name=\"submit\" value=\"Update Stats\"></td></form></tr>");
			}
		}else{
            print("<td class=status><div align=left>EXTERNAL&nbsp;<form action=torrents-details.php?id=$id&scrape=1 method=post><input type=\"submit\" name=\"submit\" value=\"Update Stats\"></td></form></tr>\n");
		}
print ("<tr><td colspan=4 class=status align=center>Tracker:<br><font class=seeders> ".$row['announce']."</font>"); 
//read torrent info 
$TorrentInfo = array();
$TorrentInfo = ParseTorrent("$torrent_dir/$id.torrent");
$annlist = $TorrentInfo[6];
$filelist = $TorrentInfo[8];

if (count($annlist)){
    echo "</td><td colspan=4 class=status align=center>Backup trackers:";
    foreach ($annlist as $alist)    {
                echo "<br>"; 
        echo "<font class=leechers>".$alist[0]."</font>";
    }
    echo"</td>";
}                                                                 
	}
}
print ("<tr><td colspan=8 class=rowEnd></td></tr>");   
echo "</div></td></tr></table></CENTER></FIELDSET><BR>";
//end download box
$ads = ads();
if ($ads){
  echo "<FIELDSET><LEGEND>Advertising</LEGEND>";
  echo"<div class=tablebg style=\"padding:10px;\">".$ads."</div>";  
  echo "</FIELDSET>";  
}
echo "<BR><FIELDSET><LEGEND>Details</LEGEND>";
echo "<table cellpadding=3 border=0 width=95%>";
print("<table border=1 cellspacing=0 cellpadding=6 width=100%>");
print("<tr><td width=90 class=table_col2><b>" . NAME . ":</b></td><td class=table_col1>" . $shortname . "</td></tr>\n");
print("<tr><td class=table_col2 >Actions:</b></td><td class=table_col1>$torrentage&nbsp;&nbsp;<a href=report.php?torrent=$id><img src=\"".$site_config["SITEURL"]."/images/torrents/report.gif\" border=\"0\" alt=\"Report this torrent\"></a>&nbsp;".$edittorrent."</td></tr>\n");
print("<tr><td  class=table_col2><b>Description:</b></td><td class=table_col1><div class=\"description\"><table>" .  format_comment($row['descr']) . "</table></div></td></tr>\n");    
print("<tr><td  class=table_col2><b>" . TTYPE . ":</b></td><td class=table_col1>" . $row["cat_parent"] . " > " . $row["cat_name"] . "</td></tr>\n");
if (empty($row["lang_name"])) $row["lang_name"] = "Unknown/NA";
print("<tr><td align=left class=table_col2><b>Language:</b></td><td class=table_col1>" . $row["lang_name"] . "\n");

if (isset($row["lang_image"]) && $row["lang_image"] != "")
			print("&nbsp;<img border=\"0\"src=\"" . $site_config['SITEURL'] . "/images/languages/" . $row["lang_image"] . "\" alt=\"" . $row["lang_name"] . "\" />");

print("</td></tr>");

print("<tr><td class=table_col2><b>" . TOTAL_SIZE . ":</b></td><td class=table_col1>" . mksize($row["size"]) . " </td></tr>\n");
print("<tr><td class=table_col2><b>" . INFO_HASH . ":</b></td><td class=table_col1>" . $row["info_hash"] . "</td></tr>\n");
print("");
$UClass=@mysql_fetch_array(@mysql_query("SELECT * FROM users JOIN groups ON users.class=groups.group_id WHERE users.id='$row[owner]'"));
$user = "<font color=\"$UClass[Color]\">$row[username]</font>"; 
if ($row["anon"] == "yes" && !$owned)
	print("<tr><td class=table_col2><b>" . ADDED_BY . ":</b></td><td class=table_col1>Anonymous</td></tr>");
elseif ($user)
	print("<tr><td class=table_col2><b>" . ADDED_BY . ":</b></td><td class=table_col1><a href=account-details.php?id=" . $row["owner"] . ">" . $user . "</a>&nbsp;&nbsp;<a title=\"Respect\" href=\"simpaty.php?action=add&amp;good&amp;targetid=".$row["owner"]."&amp;type=torrent".$id."\"><img src=\"images/thum_good.gif\" border=\"0\" alt=\"Respect\" title=\"Respect\" /></a>&nbsp;&nbsp;<a href=\"simpaty.php?action=add&amp;bad&amp;targetid=".$row["owner"]."&amp;type=torrent".$id."\" title=\"Anti-Respect\"><img src=\"images/thum_bad.gif\" border=\"0\" alt=\"Anti-Respect\" title=\"Anti-Respect\" /></a></td></tr>");
else
	print("<tr><td class=table_col2><b>" . ADDED_BY . ":</b></td><td class=table_col1>Unknown</td></tr>");

print("<tr><td class=table_col2><b>" . DATE_ADDED . ":</b></td><td class=table_col1>" . date("d-m-Y H:i:s", utc_to_tz_time($row["added"])) . "</td></tr>\n");
print("<tr><td class=table_col2><b>" . VIEWS . ":</b></td><td class=table_col1>" . $row["views"] . "</td></tr>\n");
print("<tr><td class=table_col2><b>" . HITS . ":</b></td><td class=table_col1>" . $row["hits"] . "</td></tr>\n");
print("<tr><td class=table_col2><b>" . Nuked . ":</b></td><td class=table_col1>" . $row["nuked"] . "</td></tr>\n");
if ($site_config["AGEON"] && $CURUSER["class"] <=3){ 
if ($CURUSER["age"] < $row["age_name"]){
$torrentube =  "<a href=\"" . $site_config['SITEURL'] . "/images/torrents/novideo.jpg\" rel=\"ibox\">Watch The trailer</a>";                                                          
} else{
$torrentube =  "<a href=". str_replace("watch?v=", "v/", htmlspecialchars($row["tube"])) ." rel=\"ibox\">Watch The trailer</a>";
} 
}else{            
$torrentube =  "<a href=". str_replace("watch?v=", "v/", htmlspecialchars($row["tube"])) ." rel=\"ibox\">Watch The trailer</a>";
}
if (!empty($row["tube"])) 
print ("<tr><td class=table_col2><b>" . Youtube . ": </b></td><td class=table_col1>$torrentube</td></tr>");  
$thanksl = explode(",", $row['thanks']);
if ($CURUSER['username'] == $row['username'] || !$CURUSER) $leftthanks = true;
foreach ($thanksl as $u) {
    $thanks .= ($i>0)?", $u":$u;
    if ($u == $CURUSER['username']) $leftthanks = true;
    $i++;
}  

if (!$thanks) $thanks = "No one yet.";

print("<tr><td class=table_col2><b>Thanks By:</b></td><td class=table_col1>$thanks\n");
if (!$leftthanks) print("&nbsp;<form action=thanks.php method=POST><input type=hidden name=torrent value=$id><input type=submit value='Thanks!'></form></td></tr>\n");


// $srating IS RATING VARIABLE
		$srating = "";
		$srating .= "<tr><td class=\"table_col2\">Rating:</td><td class=table_col1>";
		if (!isset($row["rating"])) {
				$srating .= "Not Yet Rated";
		}else{
			$rpic = ratingpic($row["rating"]);
			if (!isset($rpic))
				$srating .= "invalid?";
			else
				$srating .= "$rpic (" . $row["rating"] . " out of 5) " . $row["numratings"] . " users have rated this torrent";
		}
		$srating .= "\n";
		if (!isset($CURUSER))
			$srating .= "(<a href=\"account-login.php?returnto=" . urlencode($_SERVER["REQUEST_URI"]) . "&amp;nowarn=1\">Log in</a> to rate it)";
		else {
			$ratings = array(
					5 => "Cool!",
					4 => "Pretty good",
					3 => "Decent",
					2 => "Pretty bad",
					1 => "Sucks!",
			);
			//if (!$owned || $moderator) {
				$xres = mysql_query("SELECT rating, added FROM ratings WHERE torrent = $id AND user = " . $CURUSER["id"]);
				$xrow = mysql_fetch_array($xres);
				if ($xrow)
					$srating .= "<BR><i>(You rated this torrent as \"" . $xrow["rating"] . " - " . $ratings[$xrow["rating"]] . "\")</i>";
				else {
					$srating .= "<form style=display:inline; method=\"post\" action=\"torrents-details.php?id=$id&takerating=yes\"><input type=\"hidden\" name=\"id\" value=\"$id\" />\n";
					$srating .= "<select name=\"rating\">\n";
					$srating .= "<option value=\"0\">(Add Rating)</option>\n";
					foreach ($ratings as $k => $v) {
						$srating .= "<option value=\"$k\">$k - $v</option>\n";
					}
					$srating .= "</select>\n";
					$srating .= "<input type=\"submit\" value=\"Vote!\" />";
					$srating .= "</form>\n";
				}
			//}
		}
		$srating .= "</NOBR></td></tr>";

print("<CENTER>". $srating . "</CENTER>");// rating

//END DEFINE RATING VARIABLE
echo "</table></FIELDSET>";  
echo "<BR>";
  
if ($row["image1"] != "" OR $row["image2"] != "") {  
  if ($row["image1"] != "")
    $img1 = "<a href='".$site_config["SITEURL"]."/uploads/images/$row[image1]' rel='ibox'><IMG src=".$site_config["SITEURL"]."/uploads/images/$row[image1] width=\"150\" height=\"150\" border=0 alt=\"Click to enlarge\"></a>";
if ($row["image2"] != "")
    $img2 = "<a href='".$site_config["SITEURL"]."/uploads/images/$row[image2]' rel='ibox'><IMG src=".$site_config["SITEURL"]."/uploads/images/$row[image2] width=\"150\" height=\"150\" border=0 alt=\"Click to enlarge\"></a>";
    print("<CENTER>". $img1 . "&nbsp&nbsp" . $img2."</CENTER><BR>");
}

echo "<FIELDSET><LEGEND>File List:&nbsp;<img src='images/plus.gif' id='pic1' onclick='klappe_torrent(1)'><div id='k1' style='display: none;'></LEGEND><table align=center cellpadding=0 cellspacing=0 class=table_table width=95%><TR><TD class=table_head align=left>&nbsp;File</TD><TD width=50 class=table_head>&nbsp;Size</td></tr>";
if ($row["numfiles"] > 1){
    foreach ($filelist as $file) {
	$dir = '';
	$size = $file["length"];
	$count = count($file["path"]);
	for ($i=0; $i<$count;$i++) {
		if (($i+1) == $count)
			$fname = $dir.$file["path"][$i];
		else
			$dir .= $file["path"][$i]."/";
	}
$char1 = 65; //cut name length 
$smallname = CutName(htmlspecialchars($fname), $char1);
        echo "<TR><td class=table_col2>$smallname</td><TD class=table_col2>".mksize($size)."</td></tr>";
    }
}else{
    echo "<TR><td  class=table_col2>".$row["name"]."</td><TD  class=table_col1>".mksize($row["size"])."</td></tr>";
}
 echo "<TR><td class=table_end colspan=2></td></tr>";
echo "</table></div></FIELDSET>";

if ($row["external"]!='yes'){
	echo "<br><FIELDSET><LEGEND>Peers List:&nbsp;<img src='images/plus.gif' id='pic2' onclick='klappe_torrent(2)'><div id='k2' style='display: none;'></LEGEND>";
	$query = mysql_query("SELECT * FROM peers WHERE torrent = $id ORDER BY seeder DESC");

	$result = mysql_num_rows($query);
		if($result == 0) {
			echo "No Active Peers\n";
		}else{
			?>
			<table align=center cellpadding="3" cellspacing="0" class="table_table" width="98%">
			<tr>
			<td class="table_head">Port</td>
<?
			print("<td class=\"table_head\"><div align=center><img src=\"/images/torrents/uploaded.png\" border=\"0\" alt=\"Uploaded\"></div></td>");
			print("<td class=\"table_head\"><div align=center><img src=\"/images/torrents/downloaded.png\" border=\"0\" alt=\"Downloaded\"></div></td>");?>
			<td class="table_head">Ratio</td>
			<td class="table_head">Left</td>
			<td class="table_head">% Comp</td>
			<td class="table_head">Seeder</td>
			<td class="table_head">Connect</td>
			<td class="table_head">client</td>
			<td class="table_head">User</td>
			</tr>

			<?php
while($row1 = MYSQL_FETCH_ARRAY($query))	{
                        if ($row1["downloaded"] > 0)
{
$ratio = number_format($row1["uploaded"] / $row1["downloaded"], 2);
if (($row1["uploaded"] / $row1["downloaded"]) > 10)
$ratio = "10+";
}
else
if ($row1["uploaded"] > 0)
$ratio = "Inf.";
else
$ratio = "----";
				$percentcomp = sprintf("%.2f", 100 * (1 - ($row1["to_go"] / $row["size"])));    

				if ($site_config["MEMBERSONLY"]) {
					$res = mysql_query("SELECT id, username, privacy FROM users WHERE id=".$row1["userid"]."");
					$arr = MYSQL_FETCH_ARRAY($res);
				}
				$arr["username"];
				if ($arr["privacy"] != "strong" || ($CURUSER["control_panel"] == "yes")) {
					print("<tr><td class=table_col2>".$row1["port"]."</td><td class=table_col1>".mksize($row1["uploaded"])."</td><td class=table_col2>".mksize($row1["downloaded"])."</td><td class=table_col1>".$ratio."</td><td class=table_col2>".mksize($row1["to_go"])."</td><td class=table_col1>".$percentcomp."%</td><td class=table_col2>$row1[seeder]</td><td class=table_col1>$row1[connectable]</td><td class=table_col2>$row1[client]</td><td class=table_col1><a href=account-details.php?id=$arr[id]>$arr[username]</a></td></tr>");
				}else{
					print("<tr><td class=table_col2>".$row1["port"]."</td><td class=table_col1>".mksize($row1["uploaded"])."</td><td class=table_col2>".mksize($row1["downloaded"])."</td><td class=table_col1>".$ratio."</td><td class=table_col2>".mksize($row1["to_go"])."</td><td class=table_col1>".$percentcomp."%</td><td class=table_col2>$row1[seeder]</td><td class=table_col1>$row1[connectable]</td><td class=table_col2>$row1[client]</td><td class=table_col1>Private</td></tr>");
				}

			}
			echo "<tr><td class=\"table_end\" colspan=12></td></tr>";
            echo "</table></div></FIELDSET>";
	}
}


echo "<BR><BR>";

//DISPLAY NFO BLOCK
function my_nfo_translate($nfo){
        $trans = array(
        "\x80" => "&#199;", "\x81" => "&#252;", "\x82" => "&#233;", "\x83" => "&#226;", "\x84" => "&#228;", "\x85" => "&#224;", "\x86" => "&#229;", "\x87" => "&#231;", "\x88" => "&#234;", "\x89" => "&#235;", "\x8a" => "&#232;", "\x8b" => "&#239;", "\x8c" => "&#238;", "\x8d" => "&#236;", "\x8e" => "&#196;", "\x8f" => "&#197;", "\x90" => "&#201;",
        "\x91" => "&#230;", "\x92" => "&#198;", "\x93" => "&#244;", "\x94" => "&#246;", "\x95" => "&#242;", "\x96" => "&#251;", "\x97" => "&#249;", "\x98" => "&#255;", "\x99" => "&#214;", "\x9a" => "&#220;", "\x9b" => "&#162;", "\x9c" => "&#163;", "\x9d" => "&#165;", "\x9e" => "&#8359;", "\x9f" => "&#402;", "\xa0" => "&#225;", "\xa1" => "&#237;",
        "\xa2" => "&#243;", "\xa3" => "&#250;", "\xa4" => "&#241;", "\xa5" => "&#209;", "\xa6" => "&#170;", "\xa7" => "&#186;", "\xa8" => "&#191;", "\xa9" => "&#8976;", "\xaa" => "&#172;", "\xab" => "&#189;", "\xac" => "&#188;", "\xad" => "&#161;", "\xae" => "&#171;", "\xaf" => "&#187;", "\xb0" => "&#9617;", "\xb1" => "&#9618;", "\xb2" => "&#9619;",
        "\xb3" => "&#9474;", "\xb4" => "&#9508;", "\xb5" => "&#9569;", "\xb6" => "&#9570;", "\xb7" => "&#9558;", "\xb8" => "&#9557;", "\xb9" => "&#9571;", "\xba" => "&#9553;", "\xbb" => "&#9559;", "\xbc" => "&#9565;", "\xbd" => "&#9564;", "\xbe" => "&#9563;", "\xbf" => "&#9488;", "\xc0" => "&#9492;", "\xc1" => "&#9524;", "\xc2" => "&#9516;", "\xc3" => "&#9500;",
        "\xc4" => "&#9472;", "\xc5" => "&#9532;", "\xc6" => "&#9566;", "\xc7" => "&#9567;", "\xc8" => "&#9562;", "\xc9" => "&#9556;", "\xca" => "&#9577;", "\xcb" => "&#9574;", "\xcc" => "&#9568;", "\xcd" => "&#9552;", "\xce" => "&#9580;", "\xcf" => "&#9575;", "\xd0" => "&#9576;", "\xd1" => "&#9572;", "\xd2" => "&#9573;", "\xd3" => "&#9561;", "\xd4" => "&#9560;",
        "\xd5" => "&#9554;", "\xd6" => "&#9555;", "\xd7" => "&#9579;", "\xd8" => "&#9578;", "\xd9" => "&#9496;", "\xda" => "&#9484;", "\xdb" => "&#9608;", "\xdc" => "&#9604;", "\xdd" => "&#9612;", "\xde" => "&#9616;", "\xdf" => "&#9600;", "\xe0" => "&#945;", "\xe1" => "&#223;", "\xe2" => "&#915;", "\xe3" => "&#960;", "\xe4" => "&#931;", "\xe5" => "&#963;",
        "\xe6" => "&#181;", "\xe7" => "&#964;", "\xe8" => "&#934;", "\xe9" => "&#920;", "\xea" => "&#937;", "\xeb" => "&#948;", "\xec" => "&#8734;", "\xed" => "&#966;", "\xee" => "&#949;", "\xef" => "&#8745;", "\xf0" => "&#8801;", "\xf1" => "&#177;", "\xf2" => "&#8805;", "\xf3" => "&#8804;", "\xf4" => "&#8992;", "\xf5" => "&#8993;", "\xf6" => "&#247;",
        "\xf7" => "&#8776;", "\xf8" => "&#176;", "\xf9" => "&#8729;", "\xfa" => "&#183;", "\xfb" => "&#8730;", "\xfc" => "&#8319;", "\xfd" => "&#178;", "\xfe" => "&#9632;", "\xff" => "&#160;",
        );
        $trans2 = array("\xe4" => "&auml;",        "\xF6" => "&ouml;",        "\xFC" => "&uuml;",        "\xC4" => "&Auml;",        "\xD6" => "&Ouml;",        "\xDC" => "&Uuml;",        "\xDF" => "&szlig;");
        $all_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        $last_was_ascii = False;
        $tmp = "";
        $nfo = $nfo . "\00";
        for ($i = 0; $i < (strlen($nfo) - 1); $i++)
        {
                $char = $nfo[$i];
                if (isset($trans2[$char]) and ($last_was_ascii or strpos($all_chars, ($nfo[$i + 1]))))
                {
                        $tmp = $tmp . $trans2[$char];
                        $last_was_ascii = True;
                }
                else
                {
                        if (isset($trans[$char]))
                        {
                                $tmp = $tmp . $trans[$char];
                        }
                        else
                        {
                            $tmp = $tmp . $char;
                        }
                        $last_was_ascii = strpos($all_chars, $char);
                }
        }
        return $tmp;
}
//-----------------------------------------------

//DISPLAY NFO BLOCK
if($row["nfo"]== "yes"){
	$nfofilelocation = "$nfo_dir/$row[id].nfo";
	$filegetcontents = file_get_contents($nfofilelocation);
	$nfo = htmlspecialchars($filegetcontents);
		if ($nfo) {	
			$nfo = my_nfo_translate($nfo); 
			begin_table();
            print("<tr><td class=rowtabhead>NFO</td></tr>\n"); 
			print("<tr><td align=center class=tablebg>\n");

			print("<textarea class=nfo wrap=\"off\" rows=30 and cols=30 READONLY>".stripslashes($nfo)."</textarea>");
            print("<tr><td class=rowend></td></tr>\n"); 
			end_table();
        }else{
            print("Error reading .nfo file!");
        }
}
end_frame();

begin_frame("" . COMMENTS . "");
	//echo "<p align=center><a class=index href=torrents-comment.php?id=$id>" . ADDCOMMENT . "</a></p>\n";
    
	$subres = mysql_query("SELECT COUNT(*) FROM comments WHERE torrent = $id") or die(mysql_error());
	$subrow = mysql_fetch_array($subres);
	$commcount = $subrow[0];
    
	if ($commcount) {
		list($pagertop, $pagerbottom, $limit) = pager(10, $commcount, "torrents-details.php?id=$id&");
		$commquery = "SELECT comments.id, text, user, comments.added, editedby, editedat, avatar, signature, username, title, class, uploaded, downloaded, privacy, donated FROM comments LEFT JOIN users ON comments.user = users.id WHERE torrent = $id ORDER BY comments.id $limit";
		$commres = mysql_query($commquery) or die(mysql_error());
	}else{
		unset($commres);
	}

	if ($commcount) {
		print($pagertop);
		commenttable($commres);
		print($pagerbottom);
	}else {
		print("<BR><b><CENTER>" . NOCOMMENTS . "</CENTER></b><BR>\n");
	}

	require_once("backend/bbcode.php");

	if ($CURUSER) {
		echo "<CENTER>";
		echo "<form name=\"comment\" method=\"post\" action=\"torrents-details.php?id=$row[id]&takecomment=yes\">"; 
		echo "".textbbcode("comment","body")."<br>";
		echo "<input type=\"submit\" class=lbutton value=\"Add Comment\" />";
		echo "</form></CENTER>"; 
	}

	end_frame();

stdfoot();
?>
Return current item: H-tracker