mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-14 18:48:21 -07:00
Search release groups releases in tracker.php
+ Поиск раздач релиз групп в tracker.php + Вывод ссылки "Релизы группы" если группа является релиз группой + Проверка является ли группа релиз группой
This commit is contained in:
parent
82092388d5
commit
1635224764
8 changed files with 76 additions and 19 deletions
|
@ -498,7 +498,7 @@ $bb_cfg['user_not_activated_days_keep'] = 7; // "not activated" == "not fi
|
|||
$bb_cfg['user_not_active_days_keep'] = 180; // inactive users but only with no posts
|
||||
|
||||
// GroupCP
|
||||
$bb_cfg['groupcp_members_per_page'] = 300;
|
||||
$bb_cfg['groupcp_members_per_page'] = 50;
|
||||
|
||||
// Tidy
|
||||
$bb_cfg['tidy_post'] = (!extension_loaded('tidy')) ? false : true;
|
||||
|
|
|
@ -49,6 +49,8 @@ $start = isset($_REQUEST['start']) ? abs(intval($_REQUEST['start'])) : 0;
|
|||
$per_page = $bb_cfg['groupcp_members_per_page'];
|
||||
$view_mode = isset($_REQUEST['view']) ? (string) $_REQUEST['view'] : null;
|
||||
|
||||
$releases_limit = 50;
|
||||
|
||||
$group_info = array();
|
||||
$is_moderator = false;
|
||||
|
||||
|
@ -482,6 +484,7 @@ else
|
|||
'MOD_WWW' => $www,
|
||||
'MOD_TIME' => (!empty($group_info['mod_time'])) ? bb_date($group_info['mod_time']) : $lang['NONE'],
|
||||
'U_SEARCH_USER' => "search.php?mode=searchuser",
|
||||
'U_SEARCH_RELEASES' => "tracker.php?srg=$group_id",
|
||||
|
||||
'U_GROUP_RELEASES' => "groupcp.php?view=releases&". POST_GROUPS_URL ."=$group_id",
|
||||
'U_GROUP_MEMBERS' => "groupcp.php?view=members&". POST_GROUPS_URL ."=$group_id",
|
||||
|
@ -508,6 +511,8 @@ else
|
|||
|
||||
// TODO Correct SQL to posts with attach and limit them, optimization
|
||||
|
||||
if (!$group_info['release_group']) bb_die($lang['NOT_A_RELEASE_GROUP']);
|
||||
|
||||
// Count releases for pagination
|
||||
$all_releases = DB()->fetch_rowset("
|
||||
SELECT p.topic_id, p.forum_id, p.poster_id, t.topic_title, t.topic_time, f.forum_name, u.username, u.avatar_ext_id, u.user_opt, u.user_rank
|
||||
|
@ -517,6 +522,7 @@ else
|
|||
LEFT JOIN ". BB_USERS ." u ON(p.poster_id = u.user_id)
|
||||
WHERE p.poster_rg_id = $group_id
|
||||
ORDER BY t.topic_time DESC
|
||||
LIMIT $releases_limit
|
||||
");
|
||||
|
||||
$count_releases = count($all_releases);
|
||||
|
|
|
@ -779,6 +779,8 @@ $lang['CHOOSE_RELEASE_GROUP'] = 'Select release group';
|
|||
$lang['ATTACH_RG_SIG'] = 'Attach release group signature';
|
||||
$lang['RELEASE_FROM_RG'] = 'Release was prepared by';
|
||||
$lang['GROUPS_RELEASES'] = 'Group\'s releases';
|
||||
$lang['MORE_RELEASES'] = 'All releases';
|
||||
$lang['NOT_A_RELEASE_GROUP'] = 'This group is not a release group';
|
||||
|
||||
//
|
||||
// Search
|
||||
|
|
|
@ -779,6 +779,8 @@ $lang['CHOOSE_RELEASE_GROUP'] = 'Выбрать релиз группу';
|
|||
$lang['ATTACH_RG_SIG'] = 'Добавить подпись релиз группы';
|
||||
$lang['RELEASE_FROM_RG'] = 'Релиз подготовлен';
|
||||
$lang['GROUPS_RELEASES'] = 'Релизы группы';
|
||||
$lang['MORE_RELEASES'] = 'Все релизы';
|
||||
$lang['NOT_A_RELEASE_GROUP'] = 'Эта группа не является релиз группой';
|
||||
|
||||
//
|
||||
// Search
|
||||
|
|
|
@ -779,6 +779,8 @@ $lang['CHOOSE_RELEASE_GROUP'] = 'Выбрать релиз группу';
|
|||
$lang['ATTACH_RG_SIG'] = 'Добавить подпись релиз группы';
|
||||
$lang['RELEASE_FROM_RG'] = 'Релиз подготовлен';
|
||||
$lang['GROUPS_RELEASES'] = 'Релизы групи';
|
||||
$lang['MORE_RELEASES'] = 'Всi релизы';
|
||||
$lang['NOT_A_RELEASE_GROUP'] = 'Эта группа не является релиз группой';
|
||||
|
||||
//
|
||||
// Search
|
||||
|
|
|
@ -99,7 +99,7 @@
|
|||
</form>
|
||||
|
||||
<div class="spacer_10"></div>
|
||||
<p class="nav"><a href="{U_GROUP_MEMBERS}" name="members">{L_GROUP_MEMBERS}</a> :: <a href="{U_GROUP_RELEASES}" name="releases">{L_GROUPS_RELEASES}</a></p>
|
||||
<p class="nav"><a href="{U_GROUP_MEMBERS}" name="members">{L_GROUP_MEMBERS}</a> <!-- IF RELEASE_GROUP -->:: <a href="{U_GROUP_RELEASES}" name="releases">{L_GROUPS_RELEASES}</a><!-- ENDIF --></p>
|
||||
|
||||
<!-- IF MEMBERS -->
|
||||
<form action="{S_GROUPCP_ACTION}" method="post" name="post">
|
||||
|
@ -275,7 +275,7 @@
|
|||
<!-- END releases -->
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td class="cat" colspan="9"> </td>
|
||||
<td class="cat" colspan="9" align="center"><b><a href="{U_SEARCH_RELEASES}">{L_MORE_RELEASES}</a></b></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
|
|
|
@ -266,6 +266,12 @@ $(function(){
|
|||
<p class="input"><input style="width: 40%" <!-- IF POSTER_ERROR -->style="color: red"<!-- ELSE --> class="post"<!-- ENDIF --> type="text" size="16" maxlength="{POSTER_NAME_MAX}" name="{POSTER_NAME_NAME}" value="{POSTER_NAME_VAL}" /> <input style="width: 40%;" type="button" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', 'HEIGHT=250,resizable=yes,WIDTH=400'); return false;" /></p>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>{L_GROUPS_RELEASES}</legend>
|
||||
<div>
|
||||
<p class="select">{S_RG_SELECT}</p>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>{L_TITLE_MATCH}</legend>
|
||||
<div>
|
||||
|
|
|
@ -7,6 +7,7 @@ require(BB_ROOT .'common.php');
|
|||
require(INC_DIR .'class.utf8.php');
|
||||
require(INC_DIR .'class.correct.php');
|
||||
require(INC_DIR .'class.reflection.php');
|
||||
require(INC_DIR .'functions_group.php');
|
||||
|
||||
// Page config
|
||||
$page_cfg['include_bbcode_js'] = true;
|
||||
|
@ -21,7 +22,7 @@ $user->session_start(array('req_login' => $bb_cfg['bt_tor_browse_only_reg']));
|
|||
set_die_append_msg();
|
||||
|
||||
$tor_search_limit = (IS_AM) ? 2000 : 500;
|
||||
$forum_select_size = 24; // forum select box max rows
|
||||
$forum_select_size = 26; // forum select box max rows
|
||||
$max_forum_name_len = 60; // inside forum select box
|
||||
$max_forums_selected = 50;
|
||||
$title_match_max_len = 60;
|
||||
|
@ -51,6 +52,7 @@ $row_num = $tor_count = 0;
|
|||
$torrents_tbl = BB_BT_TORRENTS .' tor';
|
||||
$cat_tbl = BB_CATEGORIES .' c';
|
||||
$forums_tbl = BB_FORUMS .' f';
|
||||
$posts_tbl = BB_POSTS .' p';
|
||||
$topics_tbl = BB_TOPICS .' t';
|
||||
$users_tbl = BB_USERS .' u';
|
||||
$tracker_tbl = BB_BT_TRACKER .' tr';
|
||||
|
@ -219,6 +221,30 @@ foreach ($s_not_seen_opt as $val => $opt)
|
|||
$s_not_seen_select[$opt['lang']] = $val;
|
||||
}
|
||||
|
||||
if ($release_groups = get_group_data('all'))
|
||||
{
|
||||
$s_rg_opt = array(
|
||||
$search_all => array(
|
||||
'lang' => $lang['GROUPS_RELEASES'],
|
||||
'sql' => 0,
|
||||
));
|
||||
foreach ($release_groups as $rg)
|
||||
{
|
||||
|
||||
if ($rg['release_group'])
|
||||
{
|
||||
$s_rg_opt[$rg['group_id']] = array(
|
||||
'lang' => $rg['group_name'],
|
||||
'sql' => $rg['group_id'],
|
||||
);
|
||||
}
|
||||
}
|
||||
foreach ($s_rg_opt as $val => $opt)
|
||||
{
|
||||
$s_release_group_select[$opt['lang']] = $val;
|
||||
}
|
||||
}
|
||||
|
||||
$GPC = array(
|
||||
# var_name key_name def_value GPC type
|
||||
'all_words' => array('allw', 1, CHBOX),
|
||||
|
@ -239,12 +265,13 @@ $GPC = array(
|
|||
'sort' => array('s', $sort_desc, SELECT),
|
||||
'seed_exist' => array('sd', 0, CHBOX),
|
||||
'show_author' => array('da', 1, CHBOX),
|
||||
's_rg' => array('srg', $search_all, SELECT),
|
||||
'show_cat' => array('dc', 0, CHBOX),
|
||||
'show_forum' => array('df', 1, CHBOX),
|
||||
'show_speed' => array('ds', 0, CHBOX),
|
||||
's_not_seen' => array('sns', $search_all, SELECT),
|
||||
'time' => array('tm', $search_all, SELECT),
|
||||
'tor_type' => array('tor_type', 0, CHBOX),
|
||||
'tor_type' => array('tor_type', 0, CHBOX),
|
||||
);
|
||||
|
||||
// Define all GPC vars with default values
|
||||
|
@ -445,21 +472,22 @@ if ($dl_will_val) $dl_status[] = DL_STATUS_WILL;
|
|||
$dl_status_csv = join(',', $dl_status);
|
||||
|
||||
// Switches
|
||||
$only_new = ($new_val && !IS_GUEST);
|
||||
$seed_exist = (bool) $seed_exist_val;
|
||||
$only_active = ($active_val || $seed_exist);
|
||||
$dl_search = ($dl_status && !IS_GUEST);
|
||||
$only_my = ($my_val && !IS_GUEST && !$dl_search);
|
||||
$prev_days = ($time_val != $search_all);
|
||||
$poster_id = (bool) $poster_id_val;
|
||||
$title_match = (bool) $title_match_sql;
|
||||
$s_not_seen = ($s_not_seen_val != $search_all);
|
||||
$tor_type = (bool) $tor_type_val;
|
||||
$only_new = ($new_val && !IS_GUEST);
|
||||
$seed_exist = (bool) $seed_exist_val;
|
||||
$only_active = ($active_val || $seed_exist);
|
||||
$dl_search = ($dl_status && !IS_GUEST);
|
||||
$only_my = ($my_val && !IS_GUEST && !$dl_search);
|
||||
$prev_days = ($time_val != $search_all);
|
||||
$poster_id = (bool) $poster_id_val;
|
||||
$s_release_group = ($s_rg_val != $search_all);
|
||||
$title_match = (bool) $title_match_sql;
|
||||
$s_not_seen = ($s_not_seen_val != $search_all);
|
||||
$tor_type = (bool) $tor_type_val;
|
||||
|
||||
$hide_cat = intval(!$show_cat_val);
|
||||
$hide_forum = intval(!$show_forum_val);
|
||||
$hide_author = intval(!$show_author_val);
|
||||
$hide_speed = intval(!$show_speed_val);
|
||||
$hide_cat = intval(!$show_cat_val);
|
||||
$hide_forum = intval(!$show_forum_val);
|
||||
$hide_author = intval(!$show_author_val);
|
||||
$hide_speed = intval(!$show_speed_val);
|
||||
|
||||
if ($s_not_seen_val != $search_all)
|
||||
{
|
||||
|
@ -490,6 +518,7 @@ if ($allowed_forums)
|
|||
'order',
|
||||
'poster_id',
|
||||
'poster_name',
|
||||
's_rg',
|
||||
's_not_seen',
|
||||
'seed_exist',
|
||||
'show_author',
|
||||
|
@ -528,6 +557,7 @@ if ($allowed_forums)
|
|||
{
|
||||
$reg_time = $time_opt[$time_val]['sql'];
|
||||
$poster_id_sql = (int) $poster_id_val;
|
||||
$rg_id_sql = (int) $s_rg_val;
|
||||
$s_seen_time = $s_not_seen_opt[$s_not_seen_val]['sql'];
|
||||
$s_seen_sign = ($s_not_seen_val == $never) ? '=' : '<';
|
||||
$s_seen_exclude = ($s_not_seen_val == $never) ? '' : "AND tor.seeder_last_seen != 0";
|
||||
|
@ -563,6 +593,10 @@ if ($allowed_forums)
|
|||
AND dl.user_status IN($dl_status_csv)
|
||||
)";
|
||||
}
|
||||
if ($s_release_group)
|
||||
{
|
||||
$SQL['LEFT JOIN'][] = "$posts_tbl ON(p.topic_id = tor.topic_id)";
|
||||
}
|
||||
|
||||
// WHERE
|
||||
$title_match_notfound_flag = false;
|
||||
|
@ -582,6 +616,10 @@ if ($allowed_forums)
|
|||
{
|
||||
$SQL['WHERE'][] = "tor.poster_id = $poster_id_sql";
|
||||
}
|
||||
if ($s_release_group)
|
||||
{
|
||||
$SQL['WHERE'][] = "p.poster_rg_id = $rg_id_sql";
|
||||
}
|
||||
if ($only_new)
|
||||
{
|
||||
$SQL['WHERE'][] = "tor.reg_time > $lastvisit";
|
||||
|
@ -926,6 +964,7 @@ $template->assign_vars(array(
|
|||
'ORDER_SELECT' => build_select($order_key, $order_select, $order_val),
|
||||
'TIME_SELECT' => build_select($time_key, $time_select, $time_val),
|
||||
'S_NOT_SEEN_SELECT' => build_select($s_not_seen_key, $s_not_seen_select, $s_not_seen_val),
|
||||
'S_RG_SELECT' => build_select($s_rg_key, $s_release_group_select, $s_rg_val),
|
||||
'TOR_SEARCH_ACTION' => $tracker_url,
|
||||
'TOR_COLSPAN' => $tor_colspan,
|
||||
'TITLE_MATCH_MAX' => $title_match_max_len,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue