Diese Lösung verwendet das mit Rutorrent gepackte "Source" -Plugin.
Zuerst habe ich das Standardverhalten von rutorrent geändert, um ein .torrent in einem angegebenen Verzeichnis zu speichern, anstatt es im Browser zum Herunterladen anzubieten: (Ersetzen Sie "/ media / sdf1 / home / torrents /" durch den absoluten Pfad zu einem Verzeichnis, das Sie haben erstellt, um die .torrent-Dateien in
/rutorrent/php/Torrent.php
public function send( $filename = null ) { if(is_null( $filename )) $filename = $this->info['name'].'.torrent'; if(isset($_SERVER['HTTP_USER_AGENT']) && strstr($_SERVER['HTTP_USER_AGENT'],'MSIE')) $filename = rawurlencode($filename); //header( 'Content-Disposition: attachment; filename="'.$filename.'"' ); //cachedEcho( $this->__toString(), 'application/x-bittorrent', true ); $fp = fopen("/media/sdf1/home/torrents/".$filename, 'w'); fwrite($fp, $this->__toString()); fclose($fp); }
Dann ist dieses Bit optional, es wird nur verhindert, dass ein Fehler ausgegeben wird, wenn die send-send-Funktion nichts zurückgibt, obwohl es noch funktioniert.
/rutorrent/plugins/source/action.php
if(isset($_REQUEST['hash'])) { $torrent = rTorrent::getSource($_REQUEST['hash']); if($torrent) $torrent->send(); } //header("HTTP/1.0 302 Moved Temporarily"); //header("Location: ".$_SERVER['PHP_SELF'].'?result=0');
Jetzt das eigentliche Skript in Javascript durchläuft die sichtbare Liste der Torrents in Rutorrent. Klicken Sie also auf das gewünschte Label, und führen Sie diesen Code aus, entweder in einer JS-Datei oder über die Firebug-JS-Konsole. Beachten Sie, dass nur die Torrents "oberhalb der Falz" sichtbar sind, und Sie müssen nach unten scrollen und erneut für alle Torrents "Seiten" ausführen, die nicht in einer Bildschirmhöhe sichtbar sind. Wenn Sie jedoch die Bildschirmgröße und die Fensterabmessungen maximieren, können Sie dies tun Holen Sie sich so viele wie möglich. (Mach dir keine Sorgen, wenn es verdoppelt wird, es hat keine Auswirkungen auf die Dinge)
//can only do visible torrents, so have to scroll and execute again var torrents = new Array(); $("#List .stable-body tr").each(function(i){ torrents[i] = $( this ).attr("id"); }) var count = torrents.length; var i = 0; console.log( torrents ); function request(torrent){ if(i == count){ console.log( i+'/'+count ); console.log( "DONE" ); return; } $.get( "plugins/source/action.php", { hash: torrent}, function( data ) { i++; request(torrents[i]); }); console.log( i+'/'+count ); } request(torrents[0]);
Jetzt befinden sich die .torrent-Dateien für diese Ansicht im angegebenen Ordner. Verschieben Sie sie, fügen Sie sie hinzu, beschriften Sie sie und wiederholen Sie den Vorgang für andere Ansichten / Beschriftungen.