mirror of
https://github.com/lkddi/nexusphp.git
synced 2026-04-24 03:57:22 +08:00
downhash use dot instead of solid line
This commit is contained in:
@@ -101,9 +101,9 @@ class Test extends Command
|
|||||||
*/
|
*/
|
||||||
public function handle()
|
public function handle()
|
||||||
{
|
{
|
||||||
$torrent = Torrent::query()->find(12, ['info_hash']);
|
$str = "1.abc.de";
|
||||||
$infoHash = $torrent->info_hash;
|
$res = explode(".", $str, 2);
|
||||||
dd($infoHash === rawurldecode("%15%24%f3%e6%91e%f6%fbT%be%3f%b8%f3%f7_%f5%f6%aa%3fv"));
|
dd($res);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ class HitAndRunResource extends Resource
|
|||||||
Tables\Columns\TextColumn::make('seedTimeRequired')->label(__('label.seed_time_required')),
|
Tables\Columns\TextColumn::make('seedTimeRequired')->label(__('label.seed_time_required')),
|
||||||
Tables\Columns\TextColumn::make('inspectTimeLeft')->label(__('label.inspect_time_left')),
|
Tables\Columns\TextColumn::make('inspectTimeLeft')->label(__('label.inspect_time_left')),
|
||||||
Tables\Columns\TextColumn::make('statusText')->label(__('label.status')),
|
Tables\Columns\TextColumn::make('statusText')->label(__('label.status')),
|
||||||
|
Tables\Columns\TextColumn::make('created_at')->label(__('label.created_at')),
|
||||||
])
|
])
|
||||||
->defaultSort('id', 'desc')
|
->defaultSort('id', 'desc')
|
||||||
->filters([
|
->filters([
|
||||||
|
|||||||
@@ -132,10 +132,10 @@ class TorrentRepository extends BaseRepository
|
|||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getDownloadUrl($id, array|User $user): string
|
public function getDownloadUrl($id, array|User $user): string
|
||||||
{
|
{
|
||||||
return sprintf(
|
return sprintf(
|
||||||
'%s/download.php?downhash=%s|%s',
|
'%s/download.php?downhash=%s.%s',
|
||||||
getSchemeAndHttpHost(), is_array($user) ? $user['id'] : $user->id, $this->encryptDownHash($id, $user)
|
getSchemeAndHttpHost(), is_array($user) ? $user['id'] : $user->id, $this->encryptDownHash($id, $user)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -365,6 +365,7 @@ class TorrentRepository extends BaseRepository
|
|||||||
|
|
||||||
private function getEncryptDownHashKey($user)
|
private function getEncryptDownHashKey($user)
|
||||||
{
|
{
|
||||||
|
$passkey = "";
|
||||||
if ($user instanceof User && $user->passkey) {
|
if ($user instanceof User && $user->passkey) {
|
||||||
$passkey = $user->passkey;
|
$passkey = $user->passkey;
|
||||||
} elseif (is_array($user) && !empty($user['passkey'])) {
|
} elseif (is_array($user) && !empty($user['passkey'])) {
|
||||||
@@ -372,7 +373,8 @@ class TorrentRepository extends BaseRepository
|
|||||||
} elseif (is_scalar($user)) {
|
} elseif (is_scalar($user)) {
|
||||||
$user = User::query()->findOrFail(intval($user), ['id', 'passkey']);
|
$user = User::query()->findOrFail(intval($user), ['id', 'passkey']);
|
||||||
$passkey = $user->passkey;
|
$passkey = $user->passkey;
|
||||||
} else {
|
}
|
||||||
|
if (empty($passkey)) {
|
||||||
throw new \InvalidArgumentException("Invalid user: " . json_encode($user));
|
throw new \InvalidArgumentException("Invalid user: " . json_encode($user));
|
||||||
}
|
}
|
||||||
//down hash is relative to user passkey
|
//down hash is relative to user passkey
|
||||||
|
|||||||
+1
-1
@@ -247,7 +247,7 @@ JS;
|
|||||||
}
|
}
|
||||||
// ------------- end claim block ------------------//
|
// ------------- end claim block ------------------//
|
||||||
|
|
||||||
tr($lang_details['torrent_dl_url'],sprintf('<a title="%s" href="%s/download.php?downhash=%s|%s">%s</a>',$lang_details['torrent_dl_url_notice'], getSchemeAndHttpHost(), $CURUSER['id'], $torrentRep->encryptDownHash($row['id'], $CURUSER), $lang_details['torrent_dl_url_text']),1);
|
tr($lang_details['torrent_dl_url'],sprintf('<a title="%s" href="%s">%s</a>',$lang_details['torrent_dl_url_notice'], $torrentRep->getDownloadUrl($id, $CURUSER), $lang_details['torrent_dl_url_text']),1);
|
||||||
|
|
||||||
// ---------------- start subtitle block -------------------//
|
// ---------------- start subtitle block -------------------//
|
||||||
$subTorrentIdArr = [$row['id']];
|
$subTorrentIdArr = [$row['id']];
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ function denyDownload()
|
|||||||
}
|
}
|
||||||
$torrentRep = new \App\Repositories\TorrentRepository();
|
$torrentRep = new \App\Repositories\TorrentRepository();
|
||||||
if (!empty($_REQUEST['downhash'])) {
|
if (!empty($_REQUEST['downhash'])) {
|
||||||
$params = explode('|', $_REQUEST['downhash']);
|
$params = explode('.', $_REQUEST['downhash'], 2);
|
||||||
if (empty($params[0]) || empty($params[1])) {
|
if (empty($params[0]) || empty($params[1])) {
|
||||||
die("invalid downhash, format error");
|
die("invalid downhash, format error");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -281,7 +281,7 @@ switch ($type)
|
|||||||
// $res = sql_query("SELECT torrent,added,snatched.uploaded,snatched.downloaded,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers FROM peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='yes' ORDER BY torrents.id DESC") or sqlerr();
|
// $res = sql_query("SELECT torrent,added,snatched.uploaded,snatched.downloaded,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers FROM peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='yes' ORDER BY torrents.id DESC") or sqlerr();
|
||||||
$fields = "torrent,added,snatched.uploaded,snatched.downloaded,snatched.seedtime,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers,snatched.userid, categories.mode as search_box_id, peers.peer_id, peers.agent, peers.port, peers.ipv4, peers.ipv6";
|
$fields = "torrent,added,snatched.uploaded,snatched.downloaded,snatched.seedtime,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers,snatched.userid, categories.mode as search_box_id, peers.peer_id, peers.agent, peers.port, peers.ipv4, peers.ipv6";
|
||||||
$tableWhere = "peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='yes'";
|
$tableWhere = "peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='yes'";
|
||||||
$order = "torrents.id DESC";
|
$order = "peers.id DESC";
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -291,7 +291,7 @@ switch ($type)
|
|||||||
// $res = sql_query("SELECT torrent,snatched.uploaded,snatched.downloaded,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers, torrents.added FROM peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='no' ORDER BY torrents.id DESC") or sqlerr();
|
// $res = sql_query("SELECT torrent,snatched.uploaded,snatched.downloaded,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers, torrents.added FROM peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='no' ORDER BY torrents.id DESC") or sqlerr();
|
||||||
$fields = "torrent,snatched.uploaded,snatched.downloaded,snatched.seedtime,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers, torrents.added,snatched.userid, categories.mode as search_box_id, peers.peer_id, peers.agent, peers.port, peers.ipv4, peers.ipv6";
|
$fields = "torrent,snatched.uploaded,snatched.downloaded,snatched.seedtime,torrents.name as torrentname, torrents.small_descr, torrents.sp_state, torrents.banned, torrents.approval_status, categories.name as catname,size,torrents.hr,image,category,seeders,leechers, torrents.added,snatched.userid, categories.mode as search_box_id, peers.peer_id, peers.agent, peers.port, peers.ipv4, peers.ipv6";
|
||||||
$tableWhere = "peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='no'";
|
$tableWhere = "peers LEFT JOIN torrents ON peers.torrent = torrents.id LEFT JOIN categories ON torrents.category = categories.id LEFT JOIN snatched ON torrents.id = snatched.torrentid WHERE peers.userid=$id AND snatched.userid = $id AND peers.seeder='no'";
|
||||||
$order = "torrents.id DESC";
|
$order = "peers.id DESC";
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -514,7 +514,7 @@ $body_arr[$langfolder_array[$i]] = <<<EOD
|
|||||||
$description
|
$description
|
||||||
-------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
{$lang_takeupload_target[$langfolder_array[$i]]['mail_torrent']}<b><a href="javascript:void(null)" onclick="window.open('http://$BASEURL/details.php?id=$id&hit=1')">{$lang_takeupload_target[$langfolder_array[$i]]['mail_here']}</a></b><br />
|
{$lang_takeupload_target[$langfolder_array[$i]]['mail_torrent']}<b><a href="javascript:void(null)" onclick="window.open('$baseUrl/details.php?id=$id&hit=1')">{$lang_takeupload_target[$langfolder_array[$i]]['mail_here']}</a></b><br />
|
||||||
$baseUrl/details.php?id=$id&hit=1
|
$baseUrl/details.php?id=$id&hit=1
|
||||||
|
|
||||||
------{$lang_takeupload_target[$langfolder_array[$i]]['mail_yours']}
|
------{$lang_takeupload_target[$langfolder_array[$i]]['mail_yours']}
|
||||||
|
|||||||
@@ -240,7 +240,7 @@ foreach ($list as $row)
|
|||||||
}
|
}
|
||||||
$itemurl = $url."/details.php?id=".$row['id'];
|
$itemurl = $url."/details.php?id=".$row['id'];
|
||||||
if ($dllink)
|
if ($dllink)
|
||||||
$itemdlurl = $url."/download.php?id=".$row['id']."&downhash=" . rawurlencode( $user['id'] . '|'. $torrentRep->encryptDownHash($row['id'], $user));
|
$itemdlurl = $torrentRep->getDownloadUrl($row['id'], $user);
|
||||||
else $itemdlurl = $url."/download.php?id=".$row['id'];
|
else $itemdlurl = $url."/download.php?id=".$row['id'];
|
||||||
if (!empty($_GET['icat'])) $title .= "[".$row['category_name']."]";
|
if (!empty($_GET['icat'])) $title .= "[".$row['category_name']."]";
|
||||||
$title .= $row['name'];
|
$title .= $row['name'];
|
||||||
|
|||||||
Reference in New Issue
Block a user