Blame | Last modification | View Log | Download
<?php/************************************************************** TorrentFlux PHP Torrent Manager* www.torrentflux.com**************************************************************//*This file is part of TorrentFlux.TorrentFlux is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.TorrentFlux is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with TorrentFlux; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA*/class AliasFile{var $theFile;// File Propertiesvar $running = "1";var $percent_done = "0.0";var $time_left = "";var $down_speed = "";var $up_speed = "";var $sharing = "";var $torrentowner = "";var $seeds = "";var $peers = "";var $seedlimit = "";var $uptotal = "";var $downtotal = "";var $size = "";var $errors = array();function AliasFile( $inFile, $user="" ){$this->theFile = $inFile;if ($user != ""){$this->torrentowner = $user;}if(file_exists($inFile)){// read the alias file$arStatus = file($inFile);$this->running = trim($arStatus[0]);$this->percent_done = trim($arStatus[1]);$this->time_left = trim($arStatus[2]);$this->down_speed = trim($arStatus[3]);$this->up_speed = trim($arStatus[4]);$this->torrentowner = trim($arStatus[5]);$this->seeds = trim($arStatus[6]);$this->peers = trim($arStatus[7]);$this->sharing = trim($arStatus[8]);$this->seedlimit = trim($arStatus[9]);$this->uptotal = trim($arStatus[10]);$this->downtotal = trim($arStatus[11]);$this->size = trim($arStatus[12]);if (sizeof($arStatus) > 13){for ($inx = 13; $inx < sizeof($arStatus); $inx++){array_push($this->errors, $arStatus[$inx]);}}}else{// this file does not exist (yet)}}//----------------------------------------------------------------// Call this when wanting to create a new alias and/or starting itfunction StartTorrentFile(){// Reset all the var to new state (all but torrentowner)$this->running = "1";$this->percent_done = "0.0";$this->time_left = "Starting...";$this->down_speed = "";$this->up_speed = "";$this->sharing = "";$this->seeds = "";$this->peers = "";$this->seedlimit = "";$this->uptotal = "";$this->downtotal = "";$this->errors = array();// Write to file$this->WriteFile();}//----------------------------------------------------------------// Call this when wanting to create a new alias and/or starting itfunction QueueTorrentFile(){// Reset all the var to new state (all but torrentowner)$this->running = "3";$this->time_left = "Waiting...";$this->down_speed = "";$this->up_speed = "";$this->seeds = "";$this->peers = "";$this->errors = array();// Write to file$this->WriteFile();}//----------------------------------------------------------------// Common WriteFile Methodfunction WriteFile(){$fw = fopen($this->theFile,"w");fwrite($fw, $this->BuildOutput());fclose($fw);}//----------------------------------------------------------------// Private Function to put the variables into a string for writing to filefunction BuildOutput(){$output = $this->running."\n";$output .= $this->percent_done."\n";$output .= $this->time_left."\n";$output .= $this->down_speed."\n";$output .= $this->up_speed."\n";$output .= $this->torrentowner."\n";$output .= $this->seeds."\n";$output .= $this->peers."\n";$output .= $this->sharing."\n";$output .= $this->seedlimit."\n";$output .= $this->uptotal."\n";$output .= $this->downtotal."\n";$output .= $this->size;for ($inx = 0; $inx < sizeof($this->errors); $inx++){if ($this->errors[$inx] != ""){$output .= "\n".$this->errors[$inx];}}return $output;}//----------------------------------------------------------------// Public Function to display real total download in MBfunction GetRealDownloadTotal(){return (($this->percent_done * $this->size)/100)/(1024*1024);}}?>