112 lines
3.4 KiB
PHP
112 lines
3.4 KiB
PHP
|
<?php
|
||
|
|
||
|
function get_merged_torrent_results($query)
|
||
|
{
|
||
|
global $config;
|
||
|
|
||
|
require "engines/bittorrent/thepiratebay.php";
|
||
|
require "engines/bittorrent/rutor.php";
|
||
|
require "engines/bittorrent/nyaa.php";
|
||
|
require "engines/bittorrent/yts.php";
|
||
|
require "engines/bittorrent/torrentgalaxy.php";
|
||
|
require "engines/bittorrent/1337x.php";
|
||
|
require "engines/bittorrent/sukebei.php";
|
||
|
|
||
|
$query = urlencode($query);
|
||
|
|
||
|
$torrent_urls = array(
|
||
|
$thepiratebay_url,
|
||
|
$rutor_url,
|
||
|
$nyaa_url,
|
||
|
$yts_url,
|
||
|
$torrentgalaxy_url,
|
||
|
$_1337x_url,
|
||
|
$sukebei_url
|
||
|
);
|
||
|
|
||
|
$mh = curl_multi_init();
|
||
|
$chs = $results = array();
|
||
|
|
||
|
foreach ($torrent_urls as $url)
|
||
|
{
|
||
|
$ch = curl_init($url);
|
||
|
curl_setopt_array($ch, $config->curl_settings);
|
||
|
array_push($chs, $ch);
|
||
|
curl_multi_add_handle($mh, $ch);
|
||
|
}
|
||
|
|
||
|
$running = null;
|
||
|
do {
|
||
|
curl_multi_exec($mh, $running);
|
||
|
} while ($running);
|
||
|
|
||
|
for ($i=0; count($chs)>$i; $i++)
|
||
|
{
|
||
|
$response = curl_multi_getcontent($chs[$i]);
|
||
|
|
||
|
switch ($i)
|
||
|
{
|
||
|
case 0:
|
||
|
$results = array_merge($results, get_thepiratebay_results($response));
|
||
|
break;
|
||
|
case 1:
|
||
|
$results = array_merge($results, get_rutor_results($response));
|
||
|
break;
|
||
|
case 2:
|
||
|
$results = array_merge($results, get_nyaa_results($response));
|
||
|
break;
|
||
|
case 3:
|
||
|
$results = array_merge($results, get_yts_results($response));
|
||
|
break;
|
||
|
case 4:
|
||
|
$results = array_merge($results, get_torrentgalaxy_results($response));
|
||
|
break;
|
||
|
case 5:
|
||
|
$results = array_merge($results, get_1337x_results($response));
|
||
|
break;
|
||
|
case 6:
|
||
|
$results = array_merge($results, get_sukebei_results($response));
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$seeders = array_column($results, "seeders");
|
||
|
array_multisort($seeders, SORT_DESC, $results);
|
||
|
|
||
|
return $results;
|
||
|
}
|
||
|
|
||
|
function print_merged_torrent_results($results)
|
||
|
{
|
||
|
echo "<div class=\"text-result-container\">";
|
||
|
|
||
|
if (!empty($results))
|
||
|
{
|
||
|
foreach($results as $result)
|
||
|
{
|
||
|
$source = $result["source"];
|
||
|
$name = $result["name"];
|
||
|
$magnet = $result["magnet"];
|
||
|
$seeders = $result["seeders"];
|
||
|
$leechers = $result["leechers"];
|
||
|
$size = $result["size"];
|
||
|
|
||
|
echo "<div class=\"text-result-wrapper\">";
|
||
|
echo "<a href=\"$magnet\">";
|
||
|
echo "$source";
|
||
|
echo "<h2>$name</h2>";
|
||
|
echo "</a>";
|
||
|
echo "<span>SE: <span class=\"seeders\">$seeders</span> - ";
|
||
|
echo "LE: <span class=\"leechers\">$leechers</span> - ";
|
||
|
echo "$size</span>";
|
||
|
echo "</div>";
|
||
|
}
|
||
|
}
|
||
|
else
|
||
|
echo "<p>There are no results. Please try different keywords!</p>";
|
||
|
|
||
|
echo "</div>";
|
||
|
}
|
||
|
|
||
|
?>
|