Просмотр файла mpanel/banhist.php

Размер файла: 7.56Kb
  1. <?php
  2. #-----------------------------------------------------#
  3. # ********* ROTORCMS ********* #
  4. # Made by : VANTUZ #
  5. # E-mail : visavi.net@mail.ru #
  6. # Site : http://pizdec.ru #
  7. # WAP-Site : http://visavi.net #
  8. # ICQ : 36-44-66 #
  9. # Вы не имеете право вносить изменения в код скрипта #
  10. # для его дальнейшего распространения #
  11. #-----------------------------------------------------#
  12. require_once ('../includes/start.php');
  13. require_once ('../includes/functions.php');
  14. require_once ('../includes/header.php');
  15. include_once ('../themes/header.php');
  16.  
  17. $config['listbanhist'] = 10;
  18. $act = (isset($_GET['act'])) ? check($_GET['act']) : 'index';
  19. $start = (isset($_GET['start'])) ? abs(intval($_GET['start'])) : 0;
  20.  
  21. if (is_admin(array(101, 102, 103))) {
  22. show_title('date.png', 'История банов');
  23. $config['newtitle'] = 'История банов';
  24.  
  25. switch ($act):
  26. ############################################################################################
  27. ## Главная страница ##
  28. ############################################################################################
  29. case 'index':
  30.  
  31. $total = DB::run() -> querySingle("SELECT COUNT(*) FROM `banhist`;");
  32.  
  33. if ($total > 0) {
  34. if ($start >= $total) {
  35. $start = 0;
  36. }
  37.  
  38. $queryhist = DB::run() -> query("SELECT * FROM `banhist` ORDER BY `ban_time` DESC LIMIT ".$start.", ".$config['listbanhist'].";");
  39.  
  40. echo '<form action="banhist.php?act=del&amp;start='.$start.'&amp;uid='.$_SESSION['token'].'&amp;'.SID.'" method="post">';
  41.  
  42. while ($data = $queryhist -> fetch()) {
  43. echo '<div class="b">';
  44. echo '<div class="img">'.user_avatars($data['ban_user']).'</div>';
  45. echo '<b>'.profile($data['ban_user']).'</b> '.user_online($data['ban_user']).' ';
  46.  
  47. echo '<small>('.date_fixed($data['ban_time']).')</small><br />';
  48.  
  49. echo '<input type="checkbox" name="del[]" value="'.$data['ban_id'].'" /> ';
  50.  
  51. echo '<a href="zaban.php?act=editban&amp;uz='.$data['ban_user'].'&amp;'.SID.'">Изменить</a> / <a href="banhist.php?act=view&amp;uz='.$data['ban_user'].'&amp;'.SID.'">Все изменения</a></div>';
  52.  
  53. echo '<div>';
  54. if (!empty($data['ban_type'])) {
  55. echo 'Причина: '.bb_code($data['ban_reason']).'<br />';
  56. echo 'Срок: '.formattime($data['ban_term']).'<br />';
  57. }
  58.  
  59. switch ($data['ban_type']) {
  60. case '1': $stat = '<span style="color:#ff0000">Забанил</span>:';
  61. break;
  62. case '2': $stat = '<span style="color:#ffa500">Изменил</span>:';
  63. break;
  64. default: $stat = '<span style="color:#00cc00">Разбанил</span>:';
  65. }
  66.  
  67. echo $stat.' '.profile($data['ban_send']).'<br />';
  68.  
  69. echo '</div>';
  70. }
  71.  
  72. echo '<br /><input type="submit" value="Удалить выбранное" /></form>';
  73.  
  74. page_strnavigation('banhist.php?', $config['listbanhist'], $start, $total);
  75.  
  76. echo '<div class="form">';
  77. echo '<b>Поиск по пользователю:</b><br />';
  78. echo '<form action="banhist.php?act=view&amp;'.SID.'" method="get">';
  79. echo '<input type="hidden" name="act" value="view" />';
  80. echo '<input type="text" name="uz" />';
  81. echo '<input type="submit" value="Искать" /></form></div><br />';
  82.  
  83. echo 'Всего действий: <b>'.$total.'</b><br /><br />';
  84. } else {
  85. show_error('Истории банов еще нет!');
  86. }
  87. break;
  88.  
  89. ############################################################################################
  90. ## Просмотр по пользователям ##
  91. ############################################################################################
  92. case 'view':
  93. $uz = (isset($_GET['uz'])) ? check($_GET['uz']) : '';
  94.  
  95. if (check_user($uz)) {
  96. $total = DB::run() -> querySingle("SELECT COUNT(*) FROM `banhist` WHERE `ban_user`=?;", array($uz));
  97.  
  98. if ($total > 0) {
  99. if ($start >= $total) {
  100. $start = 0;
  101. }
  102.  
  103. $queryhist = DB::run() -> query("SELECT * FROM `banhist` WHERE `ban_user`=? ORDER BY `ban_time` DESC LIMIT ".$start.", ".$config['listbanhist'].";", array($uz));
  104.  
  105. echo '<form action="banhist.php?act=del&amp;start='.$start.'&amp;uid='.$_SESSION['token'].'&amp;'.SID.'" method="post">';
  106.  
  107. while ($data = $queryhist -> fetch()) {
  108. echo '<div class="b">';
  109. echo '<div class="img">'.user_avatars($data['ban_user']).'</div>';
  110. echo '<b>'.profile($data['ban_user']).'</b> '.user_online($data['ban_user']).' ';
  111.  
  112. echo '<small>('.date_fixed($data['ban_time']).')</small><br />';
  113.  
  114. echo '<input type="checkbox" name="del[]" value="'.$data['ban_id'].'" /> ';
  115. echo '<a href="zaban.php?act=editban&amp;uz='.$data['ban_user'].'&amp;'.SID.'">Изменить</a></div>';
  116.  
  117. echo '<div>';
  118. if (!empty($data['ban_type'])) {
  119. echo 'Причина: '.bb_code($data['ban_reason']).'<br />';
  120. echo 'Срок: '.formattime($data['ban_term']).'<br />';
  121. }
  122.  
  123. switch ($data['ban_type']) {
  124. case '1': $stat = '<span style="color:#ff0000">Забанил</span>:';
  125. break;
  126. case '2': $stat = '<span style="color:#ffa500">Изменил</span>:';
  127. break;
  128. default: $stat = '<span style="color:#00cc00">Разбанил</span>:';
  129. }
  130.  
  131. echo $stat.' '.profile($data['ban_send']).'<br />';
  132.  
  133. echo '</div>';
  134. }
  135.  
  136. echo '<br /><input type="submit" value="Удалить выбранное" /></form>';
  137.  
  138. page_strnavigation('banhist.php?act=view&amp;uz='.$uz.'&amp;', $config['listbanhist'], $start, $total);
  139.  
  140. echo 'Всего действий: <b>'.$total.'</b><br /><br />';
  141.  
  142. } else {
  143. show_error('Истории банов еще нет!');
  144. }
  145. } else {
  146. show_error('Ошибка! Данный пользователь не найден!');
  147. }
  148. echo '<img src="../images/img/back.gif" alt="image" /> <a href="banhist.php?'.SID.'">Вернуться</a><br />';
  149. break;
  150.  
  151. ############################################################################################
  152. ## Удаление банов ##
  153. ############################################################################################
  154. case 'del':
  155.  
  156. $uid = check($_GET['uid']);
  157. if (isset($_POST['del'])) {
  158. $del = intar($_POST['del']);
  159. } else {
  160. $del = 0;
  161. }
  162.  
  163. if ($uid == $_SESSION['token']) {
  164. if (!empty($del)) {
  165. $del = implode(',', $del);
  166.  
  167. DB::run() -> query("DELETE FROM `banhist` WHERE `ban_id` IN (".$del.");");
  168.  
  169. $_SESSION['note'] = 'Выбранные баны успешно удалены!';
  170. redirect("banhist.php?start=$start&".SID);
  171. } else {
  172. show_error('Ошибка! Отсутствуют выбранные баны!');
  173. }
  174. } else {
  175. show_error('Ошибка! Неверный идентификатор сессии, повторите действие!');
  176. }
  177.  
  178. echo '<img src="../images/img/back.gif" alt="image" /> <a href="banhist.php?start='.$start.'&amp;'.SID.'">Вернуться</a><br />';
  179. break;
  180.  
  181. default:
  182. redirect("banhist.php?".SID);
  183. endswitch;
  184.  
  185. echo '<img src="../images/img/panel.gif" alt="image" /> <a href="index.php?'.SID.'">В админку</a><br />';
  186.  
  187. } else {
  188. redirect(BASEDIR.'index.php?'.SID);
  189. }
  190.  
  191. include_once ('../themes/footer.php');
  192. ?>