Advertisement
Guest User

Untitled

a guest
Mar 28th, 2015
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.14 KB | None | 0 0
  1. <?php
  2. define('BB_SCRIPT', 'top');
  3. define('BB_ROOT', './');
  4. $phpEx = substr(strrchr(__FILE__, '.'), 1);
  5. require(BB_ROOT ."common.$phpEx");
  6. require(INC_DIR .'functions_top.'. PHP_EXT);
  7. require($bb_cfg['default_lang_dir'] .'lang_top.'. PHP_EXT);
  8.  
  9. $page_cfg['use_tablesorter'] = true;
  10. $page_cfg['include_bbcode_js'] = true;
  11.  
  12. $users_per_page = 30;
  13. $total_users = 0;
  14.  
  15. // Start session management
  16. $user->session_start(array('req_login' => true));
  17.  
  18. $mode = isset($_GET['mode']) ? $_GET['mode'] : 'release';
  19. $stat = isset($_GET['stat']) ? $_GET['stat'] : '';
  20. $start = isset($_GET['start']) ? abs(intval($_GET['start'])) : 0;
  21. $sort_name = isset($_REQUEST['name']) ? mb_strtolower(trim($_REQUEST['name'])) : '';
  22.  
  23. //if($sort_name != '')
  24. //{
  25. // $sort_name = preg_replace('/\*/', '%', trim(strip_tags(strtolower($sort_name))));
  26. //}
  27. //else
  28. //{
  29. // $sort_name = "%";
  30. //}
  31.  
  32. $start = floor($start/$users_per_page) * $users_per_page;
  33. $i = 0;
  34. $replies = ${'30days'} = $all = $month = $week = $upload = $download = $bonus = $release = $seedbonus = $ratio = '';
  35.  
  36. if(!$stat) $stat = 'all';
  37.  
  38. if($mode == 'release')
  39. {
  40. if($stat == 'all') $all = '-all';
  41. if($stat == 'month') $month = '-month';
  42. if($stat == 'week') $week = '-week';
  43. if($stat == '30days') ${'30days'} = '-30days';
  44. if($stat == 'replies') $replies = '-replies';
  45.  
  46. $template->assign_block_vars('switch_release_top', array());
  47. $template->assign_vars(array(
  48. 'PAGE_TITLE' => $lang['TOP_RELEASE'],
  49. 'U_TOP' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release" />'.$lang['TOP_RELEASE'].'</a>',
  50. 'U_RELEASE_ALL' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release&stat=all" class="ui-corner-top top-link'.$all.'" title="'.$lang['TOP_RELEASE_ALL'].'">'.$lang['TOP_RELEASE_ALL'].'</a>',
  51. 'U_RELEASE_MONTH' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release&stat=month" class="ui-corner-top top-link'.$month.'" title="'.$lang['TOP_RELEASE_MONTH'].'">'.$lang['TOP_RELEASE_MONTH'].'</a>',
  52. 'U_RELEASE_WEEK' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release&stat=week" class="ui-corner-top top-link'.$week.'" title="'.$lang['TOP_RELEASE_WEEK'].'">'.$lang['TOP_RELEASE_WEEK'].'</a>',
  53. 'U_RELEASE_30DAYS' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release&stat=30days" class="ui-corner-top top-link'.${'30days'}.'" title="'.$lang['TOP_RELEASE_30DAYS'].'">'.$lang['TOP_RELEASE_30DAYS'].'</a>',
  54. 'U_RELEASE_REPLIES' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release&stat=replies" class="ui-corner-top top-link'.$replies.'" title="'.$lang['TOP_RELEASE_REPLIES'].'">'.$lang['TOP_RELEASE_REPLIES'].'</a>',
  55. ));
  56. $data = getTopRelease($stat);
  57. foreach($data as $row)
  58. {
  59. $status = get_status_data($row['tor_status']);
  60. $template->assign_block_vars('switch_release_top.release', array(
  61. 'ROW_CLASS' => !($i % 2) ? 'row2' : 'row1',
  62. 'FORUM_URL' => '<a class="med bold" href="'.FORUM_URL.$row['forum_id'].'" />'.htmlChr($row['forum_name']).'</a>',
  63. 'TOPIC_URL' => '<a class="tLink med bold folded2" onclick="ajax.view_post('.$row['topic_id'].', this); return false;" href="'.TOPIC_URL.$row['topic_id'].'" />'.htmlChr($row['topic_title']).'</a>',
  64. 'TOPIC_ID' => $row['topic_id'],
  65. 'STATUS' => '<span class="'.$status[0].'" title="'.$status[1].'">'.$status[2].'</span>',
  66. 'COMPLETE' => $row['complete_count'],
  67. 'REPLIES' => $row['topic_replies'],
  68. 'DL_URL' => !isset($bb_cfg['tor_frozen'][$row['tor_status']]) ? '<a class="small tr-dl" href="'.DOWNLOAD_URL.$row['attach_id'].'">'.humn_size($row['size']).'&nbsp;&#8595;</a>' : humn_size($row['size']),
  69. 'TBS_SIZE' => $row['size'],
  70. 'POSTER_URL' => '<a class="med bold" href="'.PROFILE_URL.$row['user_id'].'" />'.$row['username'].'</a>',
  71. 'REG_TIME' => create_date($bb_cfg['default_dateformat'], $row['reg_time'], $bb_cfg['board_timezone']),
  72. 'TBS_TIME' => $row['reg_time'],
  73. ));
  74. $i++;
  75. }
  76. }
  77. elseif($mode == 'users')
  78. {
  79. if(!$stat || $stat == 'all') $stat = 'upload';
  80. if($stat == 'upload') $upload = '-upload';
  81. if($stat == 'download') $download = '-download';
  82. if($stat == 'bonus') $bonus = '-bonus';
  83. if($stat == 'release') $release = '-release';
  84. if($stat == 'seedbonus')$seedbonus = '-seedbonus';
  85. if($stat == 'ratio') $ratio = '-ratio';
  86. $select_letter = array();
  87. $selected = 0;
  88. for ($i=ord('A'), $cnt=ord('Z'); $i <= $cnt; $i++)
  89. {
  90. $select_letter[$i+32] = chr($i);
  91. }
  92. for ($i=224, $cnt=255; $i <= $cnt; $i++)
  93. {
  94. $select_letter[$i] = chr($i-32);
  95. }
  96. $selected = (ord($sort_name));
  97. if($sort_name != '')
  98. {
  99. $cnt = "SELECT COUNT(u.user_id) AS count
  100. FROM ".BT_USERS_TABLE." AS bt
  101. LEFT JOIN ".USERS_TABLE." AS u ON(u.username LIKE '".$db->escape($sort_name)."%' AND u.user_id = bt.user_id)
  102. WHERE bt.u_down_total > ".MIN_DL_FOR_RATIO;
  103. }
  104. else
  105. {
  106. $cnt = "SELECT COUNT(user_id) AS count FROM ".BT_USERS_TABLE." WHERE u_down_total > ".MIN_DL_FOR_RATIO;
  107. }
  108. if($users = $db->fetch_row($cnt)) $total_users = (int) $users['count'];
  109.  
  110. $pg_url = '?mode=users';
  111. $pg_url .= isset($stat) ? "&amp;stat=$stat" : '';
  112. $pg_url .= ($sort_name != '') ? "&amp;name=$sort_name" : '';
  113.  
  114. $pagination = generate_pagination($pg_url, $total_users, $users_per_page, $start);
  115. $template->assign_block_vars('switch_users_top', array());
  116. $template->assign_vars(array(
  117. 'PAGE_TITLE' => $lang['TOP_USERS'],
  118. 'U_TOP' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users" />'.$lang['TOP_RELEASE'].'</a>',
  119. 'U_TOP_UPLOAD' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users&stat=upload" class="ui-corner-top top-link'.$upload.'" title="'.$lang['TOP_UPLOAD'].'" />'.$lang['TOP_UPLOAD'].'</a>',
  120. 'U_TOP_DOWNLOAD' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users&stat=download" class="ui-corner-top top-link'.$download.'" title="'.$lang['TOP_DOWNLOAD'].'" />'.$lang['TOP_DOWNLOAD'].'</a>',
  121. 'U_TOP_BONUS' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users&stat=bonus" class="ui-corner-top top-link'.$bonus.'" title="'.$lang['TOP_BONUS'].'" />'.$lang['TOP_BONUS'].'</a>',
  122. 'U_TOP_RELEASES' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users&stat=release" class="ui-corner-top top-link'.$release.'" title="'.$lang['TOP_RELEASES'].'" />'.$lang['TOP_RELEASES'].'</a>',
  123. 'U_TOP_SEEDBONUS' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users&stat=seedbonus" class="ui-corner-top top-link'.$seedbonus.'" title="'.$lang['TOP_RELEASES'].'" />'.$lang['TOP_SEEDBONUS'].'</a>',
  124. 'U_TOP_RATIO' => '<a href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users&stat=ratio" class="ui-corner-top top-link'.$ratio.'" title="'.$lang['TOP_RATIO'].'" />'.$lang['TOP_RATIO'].'</a>',
  125. 'SELECT_LETTER' => build_select('select-name', array_flip($select_letter), $selected, null, null, 'style="width: 70px; font-weight:bold;" onChange="reload(); return false;"'),
  126. 'PAGINATION' => $pagination,
  127. 'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor($start/$users_per_page) + 1 ), ceil( $total_users / $users_per_page )),
  128. ));
  129. $data = getTopUsers($stat, $start, $users_per_page, $sort_name);
  130. foreach($data as $row)
  131. {
  132. $template->assign_block_vars('switch_users_top.users', array(
  133. 'ROW_CLASS' => !($i % 2) ? 'row2' : 'row1',
  134. 'USERNAME_URL'=> '<a class="med bold" href="'.PROFILE_URL.$row['user_id'].'" />'.$row['username'].'</a>',
  135. 'USER_ID' => ($row['user_id'] > 0) ? $row['user_id'] : ANONYMOUS,
  136. 'UPLOAD' => humn_size($row['u_up_total']),
  137. 'DOWNLOAD' => humn_size($row['u_down_total']),
  138. 'BONUS' => humn_size($row['u_up_bonus']),
  139. 'SEED_BONUS' => $row['user_bonus'],
  140. 'RATIO' => $row['ratio'],
  141. 'RELEASE' => humn_size($row['u_up_release']),
  142.  
  143. 'UPLOAD_RAW' => $row['u_up_total'],
  144. 'DOWNLOAD_RAW'=> $row['u_down_total'],
  145. 'BONUS_RAW' => $row['u_up_bonus'],
  146. 'SEED_BONUS' => $row['user_bonus'],
  147. 'RATIO_RAW' => round(str_replace(',', '.', $row['ratio'])),
  148. 'RELEASE_RAW' => $row['u_up_release'],
  149. ));
  150. $i++;
  151. }
  152. }
  153. $template->assign_vars(array(
  154. 'U_TOP_RELEASE_STAT' => '<a class="med topnav" href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=release">'.$lang['TOP_RELEASE_STAT'].'</a>',
  155. 'U_TOP_USERS_STAT' => '<a class="med topnav" href="'.BB_ROOT.'top.'.PHP_EXT.'?mode=users">'.$lang['TOP_USERS_STAT'].'</a>',
  156. ));
  157.  
  158. print_page('top.tpl');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement