function BuildAdminOutput() { return parent::BuildAdminOutput(); }
function queueSettings() { global $cfg; include_once "AliasFile.php"; include_once "RunningTorrent.php"; include_once "QueueManager.php"; $queueManager = QueueManager::getQueueManagerInstance($cfg); // QueueManager Running ? $queueManagerRunning = false; $shutdown = getRequestVar('s'); if (isset($shutdown) && $shutdown == "1") { $queueManagerRunning = false; } else { if ($queueManager->isQueueManagerRunning()) { $queueManagerRunning = true; } else { if ($queueManager->managerName == "tfqmgr") { if ($queueManager->isQueueManagerReadyToStart()) { $queueManagerRunning = false; } else { $queueManagerRunning = true; } } else { $queueManagerRunning = false; } } } // head DisplayHead("Administration - Queue Settings"); // Admin Menu displayMenu(); // message section $message = getRequestVar('m'); if (isset($message) && $message != "") { echo '<table cellpadding="5" cellspacing="0" border="0" width="100%">'; echo '<tr><td align="center" bgcolor="' . $cfg["table_header_bg"] . '"><strong>'; echo urldecode($message); echo '</strong></td></tr></table>'; } // Queue Manager Section echo "<div align=\"center\">"; echo "<a name=\"QManager\" id=\"QManager\"></a>"; echo "<table width=\"100%\" border=1 bordercolor=\"" . $cfg["table_admin_border"] . "\" cellpadding=\"2\" cellspacing=\"0\" bgcolor=\"" . $cfg["table_data_bg"] . "\">"; echo "<tr><td bgcolor=\"" . $cfg["table_header_bg"] . "\" background=\"themes/" . $cfg["theme"] . "/images/bar.gif\">"; echo "<font class=\"title\">"; //if(checkQManager() > 0) // echo " <img src=\"images/green.gif\" align=\"absmiddle\" align=\"absmiddle\"> Queue Manager Running [PID=".getQManagerPID()." with ".strval(getRunningTorrentCount())." torrent(s)]"; if ($queueManagerRunning) { echo " <img src=\"images/green.gif\" align=\"absmiddle\" align=\"absmiddle\"> Queue Manager Running (" . $queueManager->managerName . "; pid: " . $queueManager->getQueueManagerPid() . ")"; } else { echo " <img src=\"images/black.gif\" align=\"absmiddle\"> Queue Manager Off"; } echo "</font>"; echo "</td></tr><tr><td align=\"center\">"; ?> <script language="JavaScript"> function validateSettings() { var rtnValue = true; var msg = ""; if (isNumber(document.theForm.maxServerThreads.value) == false) { msg = msg + "* Max Server Threads must be a valid number.\n"; document.theForm.maxServerThreads.focus(); } if (isNumber(document.theForm.maxUserThreads.value) == false) { msg = msg + "* Max User Threads must be a valid number.\n"; document.theForm.maxUserThreads.focus(); } if (isNumber(document.theForm.sleepInterval.value) == false) { msg = msg + "* Sleep Interval must be a valid number.\n"; document.theForm.sleepInterval.focus(); } if (msg != "") { rtnValue = false; alert("Please check the following:\n\n" + msg); } return rtnValue; } function isNumber(sText) { var ValidChars = "0123456789."; var IsNumber = true; var Char; for (i = 0; i < sText.length && IsNumber == true; i++) { Char = sText.charAt(i); if (ValidChars.indexOf(Char) == -1) { IsNumber = false; } } return IsNumber; } </script> <div align="center"> <table cellpadding="5" cellspacing="0" border="0" width="100%"> <?php //if ((! $queueManager->isQueueManagerRunning()) && ( !$queueManager->isQueueManagerReadyToStart())) { if (isset($shutdown) && $shutdown == "1") { echo '<tr><br>'; echo '<td align="center" colspan="2">'; echo 'QueueManager going down... Please Wait.'; echo '<br><br></td>'; echo '</tr>'; } else { echo '<form name="controlForm" action="admin.php?op=controlQueueManager" method="post">'; if ($queueManagerRunning) { echo '<input type="Hidden" name="a" value="stop">'; echo '<tr><br>'; echo '<td align="center" colspan="2">'; echo '<input type="Submit" value="Stop QueueManager">'; echo '<br><br></td>'; echo '</tr>'; } else { echo '<input type="Hidden" name="a" value="start">'; echo '<tr>'; echo '<td align="left" width="350" valign="top"><strong>Choose Queue Manager</strong><br>'; echo '<u>Note</u> : tfQManager only supports tornado-clients.'; echo '</td>'; echo '<td>'; echo '<select name="queuemanager">'; echo '<option value="tfqmgr"'; if ($cfg["queuemanager"] == "tfqmgr") { echo " selected"; } echo '>tfqmgr</option>'; echo '<option value="Qmgr"'; if ($cfg["queuemanager"] == "Qmgr") { echo " selected"; } echo '>Qmgr</option>'; echo '<option value="tfQManager"'; if ($cfg["queuemanager"] == "tfQManager") { echo " selected"; } echo '>tfQManager</option>'; echo '</select>'; echo '</td>'; echo '</tr>'; echo '<tr>'; echo '<td align="center" colspan="2">'; echo '<input type="Submit" value="Start QueueManager">'; echo '<br><br></td>'; echo '</tr>'; } echo '</form>'; } ?> <form name="theForm" action="admin.php?op=updateQueueSettings" method="post" onsubmit="return validateSettings()"> <tr> <td colspan="2" align="center" bgcolor="<?php echo $cfg["table_header_bg"]; ?> "> <strong>tfqmgr</strong> <?php echo '('; printSuperAdminLink('?q=1', 'log'); echo ' | '; printSuperAdminLink('?q=2', 'ps'); if (isset($shutdown) && $shutdown == "1") { } else { if ($queueManagerRunning && $queueManager->managerName == "tfqmgr") { echo ' | '; printSuperAdminLink('?q=3', 'status'); } } echo ' )'; ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>perl Path</strong><br> Specify the path to perl (/usr/bin/perl): </td> <td valign="top"> <input name="perlCmd" type="Text" maxlength="254" value="<?php echo $cfg["perlCmd"]; ?> " size="55"><?php echo validateFile($cfg["perlCmd"]); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>tfqmgr Path</strong><br> Specify the path of tfqmgr (/var/www/tfqmgr): </td> <td valign="top"> <input name="tfqmgr_path" type="Text" maxlength="254" value="<?php echo $cfg["tfqmgr_path"]; ?> " size="55"><?php echo validateFile($cfg["tfqmgr_path"] . "/tfqmgr.pl"); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>fluxcli Path</strong><br> Specify the path where fluxcli.php is. (/var/www): </td> <td valign="top"> <input name="tfqmgr_path_fluxcli" type="Text" maxlength="254" value="<?php echo $cfg["tfqmgr_path_fluxcli"]; ?> " size="55"><?php echo validateFile($cfg["tfqmgr_path_fluxcli"] . "/fluxcli.php"); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Limit Torrent Global</strong><br> Specify the maximum number of torrents the server will allow to run at one time (admins may override this): </td> <td valign="top"> <input name="tfqmgr_limit_global" type="Text" maxlength="3" value="<?php echo $cfg["tfqmgr_limit_global"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Limit Torrent Per User</strong><br> Specify the maximum number of torrents a single user may run at one time: </td> <td valign="top"> <input name="tfqmgr_limit_user" type="Text" maxlength="3" value="<?php echo $cfg["tfqmgr_limit_user"]; ?> " size="3"> </td> </tr> <tr><td colspan="2" align="center" bgcolor="<?php echo $cfg["table_header_bg"]; ?> "><strong>Qmgr</strong></td></tr> <tr> <td align="left" width="350" valign="top"><strong>Path to Qmgr scripts</strong><br> Specify the path to the Qmgr.pl and Qmgrd.pl scripts: </td> <td valign="top"> <input name="Qmgr_path" type="Text" maxlength="254" value="<?php echo $cfg["Qmgr_path"]; ?> " size="55"><?php echo validateFile($cfg["Qmgr_path"] . "/Qmgrd.pl"); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Max User Torrents</strong><br> Total number of torrents to allow a single user at once: </td> <td valign="top"> <input name="Qmgr_maxUserTorrents" type="Text" maxlength="3" value="<?php echo $cfg["Qmgr_maxUserTorrents"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Max Total Torrents</strong><br> Total number of torrents the server will run at once: </td> <td valign="top"> <input name="Qmgr_maxTotalTorrents" type="Text" maxlength="3" value="<?php echo $cfg["Qmgr_maxTotalTorrents"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Perl's Path</strong><br> Specify the path to perl: </td> <td valign="top"> <input name="Qmgr_perl" type="Text" maxlength="254" value="<?php echo $cfg["Qmgr_perl"]; ?> " size="55"><?php echo validateFile($cfg["Qmgr_perl"]); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Fluxcli.php path</strong><br> Specify the path to the fluxcli executable: </td> <td valign="top"> <input name="Qmgr_fluxcli" type="Text" maxlength="254" value="<?php echo $cfg["Qmgr_fluxcli"]; ?> " size="55"><?php echo validateFile($cfg["Qmgr_fluxcli"] . "/fluxcli.php"); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Qmgrd host</strong><br> The host running the Qmgrd.pl script, probably localhost: </td> <td valign="top"> <input name="Qmgr_host" type="Text" maxlength="254" value="<?php echo $cfg["Qmgr_host"]; ?> " size="15"> </td> </tr> <tr> <td align="left" width="250" valign="top"><strong>Qmgrd port</strong><br> the port number to run the Qmgrd.pl script on: </td> <td valign="top"> <input name="Qmgr_port" type="Text" maxlength="5" value="<?php echo $cfg["Qmgr_port"]; ?> " size="5"> </td> </tr> <tr><td colspan="2" align="center" bgcolor="<?php echo $cfg["table_header_bg"]; ?> "><strong>tfQManager</strong></td></tr> <tr> <td align="left" width="350" valign="top"><strong>tfQManager Path</strong><br> Specify the path to the tfQManager.py python script: </td> <td valign="top"> <input name="tfQManager" type="Text" maxlength="254" value="<?php echo $cfg["tfQManager"]; ?> " size="55"><?php echo validateFile($cfg["tfQManager"]); ?> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Max Server Threads</strong><br> Specify the maximum number of torrents the server will allow to run at one time (admins may override this): </td> <td valign="top"> <input name="maxServerThreads" type="Text" maxlength="3" value="<?php echo $cfg["maxServerThreads"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Max User Threads</strong><br> Specify the maximum number of torrents a single user may run at one time: </td> <td valign="top"> <input name="maxUserThreads" type="Text" maxlength="3" value="<?php echo $cfg["maxUserThreads"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Polling Interval</strong><br> Number of seconds the Queue Manager will sleep before checking for new torrents to run: </td> <td valign="top"> <input name="sleepInterval" type="Text" maxlength="3" value="<?php echo $cfg["sleepInterval"]; ?> " size="3"> </td> </tr> <tr><td colspan="2"><hr noshade></td></tr> <tr> <td align="center" colspan="2"> <input type="Submit" value="Update Settings"> </td> </tr> </form> </table> </div> <br> <?php echo "</td></tr>"; echo "</table></div>"; $displayQueue = True; $displayRunningTorrents = True; // Its a timming thing. if ($displayRunningTorrents) { // get Running Torrents. $runningTorrents = getRunningTorrents(); } // _queue_ if ($displayQueue) { echo "\n"; echo "<table width=\"760\" border=1 bordercolor=\"" . $cfg["table_admin_border"] . "\" cellpadding=\"2\" cellspacing=\"0\" bgcolor=\"" . $cfg["table_data_bg"] . "\">"; echo "<tr><td colspan=6 bgcolor=\"" . $cfg["table_header_bg"] . "\" background=\"themes/" . $cfg["theme"] . "/images/bar.gif\">"; echo "<table width=\"100%\" cellpadding=0 cellspacing=0 border=0><tr>"; echo "<td><img src=\"images/properties.png\" width=18 height=13 border=0> <font class=\"title\"> Queued Items </font></td>"; echo "</tr></table>"; echo "</td></tr>"; echo "<tr>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"15%\"><div align=center class=\"title\">" . _USER . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\"><div align=center class=\"title\">" . _FILE . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"15%\"><div align=center class=\"title\">" . _TIMESTAMP . "</div></td>"; echo "</tr>"; echo "\n"; echo $queueManager->formattedQueueList(); echo "</table>"; } // _queue_ if ($displayRunningTorrents) { $output = ""; echo "\n"; echo "<table width=\"760\" border=1 bordercolor=\"" . $cfg["table_admin_border"] . "\" cellpadding=\"2\" cellspacing=\"0\" bgcolor=\"" . $cfg["table_data_bg"] . "\">"; echo "<tr><td colspan=6 bgcolor=\"" . $cfg["table_header_bg"] . "\" background=\"themes/" . $cfg["theme"] . "/images/bar.gif\">"; echo "<table width=\"100%\" cellpadding=0 cellspacing=0 border=0><tr>"; echo "<td><img src=\"images/properties.png\" width=18 height=13 border=0> <font class=\"title\"> Running Items </font></td>"; echo "</tr></table>"; echo "</td></tr>"; echo "<tr>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"15%\"><div align=center class=\"title\">" . _USER . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\"><div align=center class=\"title\">" . _FILE . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"1%\"><div align=center class=\"title\">" . str_replace(" ", "<br>", _FORCESTOP) . "</div></td>"; echo "</tr>"; echo "\n"; // get running tornado torrents and List them out. $runningTorrents = getRunningTorrents("tornado"); foreach ($runningTorrents as $key => $value) { $rt = RunningTorrent::getRunningTorrentInstance($value, $cfg, "tornado"); $output .= $rt->BuildAdminOutput(); } // get running transmission torrents and List them out. $runningTorrents = getRunningTorrents("transmission"); foreach ($runningTorrents as $key => $value) { $rt = RunningTorrent::getRunningTorrentInstance($value, $cfg, "transmission"); $output .= $rt->BuildAdminOutput(); } if (strlen($output) == 0) { $output = "<tr><td colspan=3><div class=\"tiny\" align=center>No Running Torrents</div></td></tr>"; } echo $output; echo "</table>"; } DisplayFoot(true, true); }
/** * print info of running bittorrent-clients * */ function printRunningClientsInfo() { // action include_once "RunningTorrent.php"; // ps-string $screenStatus = shell_exec("ps x -o pid='' -o ppid='' -o command='' -ww | " . $this->cfg['bin_grep'] . " " . $this->binClient . " | " . $this->cfg['bin_grep'] . " " . $this->cfg["torrent_file_path"] . " | " . $this->cfg['bin_grep'] . " -v grep | " . $this->cfg['bin_grep'] . " -v " . $this->cfg['tfQManager']); $arScreen = array(); $tok = strtok($screenStatus, "\n"); while ($tok) { array_push($arScreen, $tok); $tok = strtok("\n"); } $cProcess = array(); $cpProcess = array(); $pProcess = array(); $ProcessCmd = array(); // $QLine = ""; for ($i = 0; $i < sizeof($arScreen); $i++) { if (strpos($arScreen[$i], $this->binClient) !== false) { $pinfo = new ProcessInfo($arScreen[$i]); if (intval($pinfo->ppid) == 1) { if (!strpos($pinfo->cmdline, "rep " . $this->binSystem) > 0) { if (!strpos($pinfo->cmdline, "ps x") > 0) { array_push($pProcess, $pinfo->pid); $rt = RunningTorrent::getRunningTorrentInstance($pinfo->pid . " " . $pinfo->cmdline, $this->cfg, $this->handlerName); //array_push($ProcessCmd,$pinfo->cmdline); array_push($ProcessCmd, $rt->torrentOwner . "\t" . str_replace(array(".stat"), "", $rt->statFile)); } } } else { if (!strpos($pinfo->cmdline, "rep " . $this->binSystem) > 0) { if (!strpos($pinfo->cmdline, "ps x") > 0) { array_push($cProcess, $pinfo->pid); array_push($cpProcess, $pinfo->ppid); } } } } } echo " --- Running Processes ---\n"; echo " Parents : " . count($pProcess) . "\n"; echo " Children : " . count($cProcess) . "\n"; echo "\n"; echo " PID \tOwner\tTorrent File\n"; foreach ($pProcess as $key => $value) { echo " " . $value . "\t" . $ProcessCmd[$key] . "\n"; foreach ($cpProcess as $cKey => $cValue) { if (intval($value) == intval($cValue)) { echo "\t" . $cProcess[$cKey] . "\n"; } } } echo "\n"; }
function queueSettings() { global $cfg; include_once "AliasFile.php"; include_once "RunningTorrent.php"; DisplayHead("Administration - Search Settings"); // Admin Menu displayMenu(); // Queue Manager Section echo "<div align=\"center\">"; echo "<a name=\"QManager\" id=\"QManager\"></a>"; echo "<table width=\"100%\" border=1 bordercolor=\"" . $cfg["table_admin_border"] . "\" cellpadding=\"2\" cellspacing=\"0\" bgcolor=\"" . $cfg["table_data_bg"] . "\">"; echo "<tr><td bgcolor=\"" . $cfg["table_header_bg"] . "\" background=\"themes/" . $cfg["theme"] . "/images/bar.gif\">"; echo "<font class=\"title\">"; if (checkQManager() > 0) { echo " <img src=\"images/green.gif\" align=\"absmiddle\" align=\"absmiddle\"> Queue Manager Running [PID=" . getQManagerPID() . " with " . strval(getRunningTorrentCount()) . " torrent(s)]"; } else { echo " <img src=\"images/black.gif\" align=\"absmiddle\"> Queue Manager Off"; } echo "</font>"; echo "</td></tr><tr><td align=\"center\">"; ?> <script language="JavaScript"> function validateSettings() { var rtnValue = true; var msg = ""; if (isNumber(document.theForm.maxServerThreads.value) == false) { msg = msg + "* Max Server Threads must be a valid number.\n"; document.theForm.maxServerThreads.focus(); } if (isNumber(document.theForm.maxUserThreads.value) == false) { msg = msg + "* Max User Threads must be a valid number.\n"; document.theForm.maxUserThreads.focus(); } if (isNumber(document.theForm.sleepInterval.value) == false) { msg = msg + "* Sleep Interval must be a valid number.\n"; document.theForm.sleepInterval.focus(); } if (msg != "") { rtnValue = false; alert("Please check the following:\n\n" + msg); } return rtnValue; } function isNumber(sText) { var ValidChars = "0123456789."; var IsNumber = true; var Char; for (i = 0; i < sText.length && IsNumber == true; i++) { Char = sText.charAt(i); if (ValidChars.indexOf(Char) == -1) { IsNumber = false; } } return IsNumber; } </script> <div align="center"> <table cellpadding="5" cellspacing="0" border="0" width="100%"> <form name="theForm" action="admin.php?op=updateConfigSettings" method="post" onsubmit="return validateSettings()"> <input type="Hidden" name="continue" value="queueSettings"> <tr> <td align="left" width="350" valign="top"><strong>Enable Queue Manager</strong><br> Enable the Queue Manager to allow users to queue torrents: </td> <td> <select name="AllowQueing"> <option value="1">true</option> <option value="0" <?php if (!$cfg["AllowQueing"]) { echo "selected"; } ?> >false</option> </select> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>tfQManager Path</strong><br> Specify the path to the tfQManager python script: </td> <td valign="top"> <input name="tfQManager" type="Text" maxlength="254" value="<?php echo $cfg["tfQManager"]; ?> " size="55"><?php echo validateFile($cfg["tfQManager"]); ?> </td> </tr> <!-- Only used for develpment or if you really really know what you are doing <tr> <td align="left" width="350" valign="top"><strong>Enable Queue Manager Debugging</strong><br> Creates huge log files only for debugging. DO NOT KEEP THIS MODE ON: </td> <td> <select name="debugTorrents"> <option value="1">true</option> <option value="0" <?php if (array_key_exists("debugTorrents", $cfg)) { if (!$cfg["debugTorrents"]) { echo "selected"; } } else { insertSetting("debugTorrents", false); echo "selected"; } ?> >false</option> </select> </td> </tr> --> <tr> <td align="left" width="350" valign="top"><strong>Max Server Threads</strong><br> Specify the maximum number of torrents the server will allow to run at one time (admins may override this): </td> <td valign="top"> <input name="maxServerThreads" type="Text" maxlength="3" value="<?php echo $cfg["maxServerThreads"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Max User Threads</strong><br> Specify the maximum number of torrents a single user may run at one time: </td> <td valign="top"> <input name="maxUserThreads" type="Text" maxlength="3" value="<?php echo $cfg["maxUserThreads"]; ?> " size="3"> </td> </tr> <tr> <td align="left" width="350" valign="top"><strong>Polling Interval</strong><br> Number of seconds the Queue Manager will sleep before checking for new torrents to run: </td> <td valign="top"> <input name="sleepInterval" type="Text" maxlength="3" value="<?php echo $cfg["sleepInterval"]; ?> " size="3"> </td> </tr> <tr> <td align="center" colspan="2"> <br><br> <input type="Submit" value="Update Settings"> </td> </tr> </form> </table> </div> <br> <?php echo "</td></tr>"; echo "</table></div>"; $displayQueue = True; $displayRunningTorrents = True; // Its a timming thing. if ($displayRunningTorrents) { // get Running Torrents. $runningTorrents = getRunningTorrents(); } if ($displayQueue) { $output = ""; echo "\n"; echo "<table width=\"760\" border=1 bordercolor=\"" . $cfg["table_admin_border"] . "\" cellpadding=\"2\" cellspacing=\"0\" bgcolor=\"" . $cfg["table_data_bg"] . "\">"; echo "<tr><td colspan=6 bgcolor=\"" . $cfg["table_header_bg"] . "\" background=\"themes/" . $cfg["theme"] . "/images/bar.gif\">"; echo "<table width=\"100%\" cellpadding=0 cellspacing=0 border=0><tr>"; echo "<td><img src=\"images/properties.png\" width=18 height=13 border=0> <font class=\"title\"> Queued Items </font></td>"; echo "</tr></table>"; echo "</td></tr>"; echo "<tr>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"15%\"><div align=center class=\"title\">" . _USER . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\"><div align=center class=\"title\">" . _FILE . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"15%\"><div align=center class=\"title\">" . _TIMESTAMP . "</div></td>"; echo "</tr>"; echo "\n"; $qDir = $cfg["torrent_file_path"] . "queue/"; if (is_dir($cfg["torrent_file_path"])) { if (is_writable($cfg["torrent_file_path"]) && !is_dir($qDir)) { @mkdir($qDir, 0777); } // get Queued Items and List them out. $output .= ""; $handle = @opendir($qDir); while ($filename = readdir($handle)) { if ($filename != "tfQManager.log") { if ($filename != "." && $filename != ".." && strpos($filename, ".pid") == 0) { $output .= "<tr>"; $output .= "<td><div class=\"tiny\">"; $af = new AliasFile(str_replace("queue/", "", $qDir) . str_replace(".Qinfo", "", $filename), ""); $output .= $af->torrentowner; $output .= "</div></td>"; $output .= "<td><div align=center><div class=\"tiny\" align=\"left\">" . str_replace(array(".Qinfo", ".stat"), "", $filename) . "</div></td>"; $output .= "<td><div class=\"tiny\" align=\"center\">" . date(_DATETIMEFORMAT, strval(filectime($qDir . $filename))) . "</div></td>"; $output .= "</tr>"; $output .= "\n"; } } } closedir($handle); } if (strlen($output) == 0) { $output = "<tr><td colspan=3><div class=\"tiny\" align=center>Queue is Empty</div></td></tr>"; } echo $output; echo "</table>"; } if ($displayRunningTorrents) { $output = ""; echo "\n"; echo "<table width=\"760\" border=1 bordercolor=\"" . $cfg["table_admin_border"] . "\" cellpadding=\"2\" cellspacing=\"0\" bgcolor=\"" . $cfg["table_data_bg"] . "\">"; echo "<tr><td colspan=6 bgcolor=\"" . $cfg["table_header_bg"] . "\" background=\"themes/" . $cfg["theme"] . "/images/bar.gif\">"; echo "<table width=\"100%\" cellpadding=0 cellspacing=0 border=0><tr>"; echo "<td><img src=\"images/properties.png\" width=18 height=13 border=0> <font class=\"title\"> Running Items </font></td>"; echo "</tr></table>"; echo "</td></tr>"; echo "<tr>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"15%\"><div align=center class=\"title\">" . _USER . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\"><div align=center class=\"title\">" . _FILE . "</div></td>"; echo "<td bgcolor=\"" . $cfg["table_header_bg"] . "\" width=\"1%\"><div align=center class=\"title\">" . str_replace(" ", "<br>", _FORCESTOP) . "</div></td>"; echo "</tr>"; echo "\n"; // get running torrents and List them out. $runningTorrents = getRunningTorrents(); if (is_array($runningTorrents)) { foreach ($runningTorrents as $key => $value) { $rt = new RunningTorrent($value); $output .= $rt->BuildAdminOutput(); } } if (strlen($output) == 0) { $output = "<tr><td colspan=3><div class=\"tiny\" align=center>No Running Torrents</div></td></tr>"; } echo $output; echo "</table>"; } DisplayFoot(); }