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

Размер файла: 6.04Kb
  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. if (isset($_GET['act'])) {
  18. $act = check($_GET['act']);
  19. } else {
  20. $act = 'index';
  21. }
  22.  
  23. if (is_admin(array(101)) && $log == $config['nickname']) {
  24. show_title('site.png', 'Очистка базы юзеров');
  25. $config['newtitle'] = 'Очистка базы юзеров';
  26.  
  27. switch ($act):
  28. ############################################################################################
  29. ## Главная страница ##
  30. ############################################################################################
  31. case 'index':
  32.  
  33. echo 'Удалить пользователей которые не посещали сайт:<br />';
  34.  
  35. echo '<div class="form">';
  36. echo '<form action="delusers.php?act=poddel&amp;'.SID.'" method="post">';
  37. echo 'Период:<br />';
  38. echo '<select name="deldate">';
  39. echo '<option value="1080">3 года</option>';
  40. echo '<option value="900">2.5 года</option>';
  41. echo '<option value="720">2 года</option>';
  42. echo '<option value="560">1.5 года</option>';
  43. echo '<option value="360">1 год</option>';
  44. echo '<option value="180">0.5 года</option>';
  45. echo '</select><br />';
  46. echo 'Минимум актива:<br />';
  47. echo '<input type="text" name="point" value="0" /><br />';
  48. echo '<input value="Анализ" type="submit" /></form></div><br />';
  49.  
  50. echo 'Всего пользователей: <b>'.stats_users().'</b><br /><br />';
  51. break;
  52.  
  53. ############################################################################################
  54. ## Подтверждение удаления ##
  55. ############################################################################################
  56. case "poddel":
  57.  
  58. $deldate = abs(intval($_POST['deldate']));
  59. $point = abs(intval($_POST['point']));
  60.  
  61. if ($deldate >= 180) {
  62. $deltime = $deldate * 24 * 3600;
  63.  
  64. $queryusers = DB::run() -> query("SELECT users_login FROM users WHERE users_timelastlogin<? AND users_point<=?;", array(SITETIME - $deltime, $point));
  65. $users = $queryusers -> fetchAll(PDO::FETCH_COLUMN);
  66. $total = count($users);
  67.  
  68. if ($total > 0) {
  69. echo 'Будут удалены пользователи не посещавшие сайт более <b>'.$deldate.'</b> дней <br />';
  70. echo 'И имеющие в своем активе не более '.points($point).'<br /><br />';
  71.  
  72. echo '<b>Список:</b> ';
  73.  
  74. foreach ($users as $key => $value) {
  75. if ($key == 0) {
  76. $comma = '';
  77. } else {
  78. $comma = ', ';
  79. }
  80. echo $comma.' '.profile($value);
  81. }
  82.  
  83. echo '<br /><br />Будет удалено пользователей: <b>'.$total.'</b><br /><br />';
  84.  
  85. echo '<img src="../images/img/error.gif" alt="image" /> <b><a href="delusers.php?act=del&amp;deldate='.$deldate.'&amp;point='.$point.'&amp;uid='.$_SESSION['token'].'&amp;'.SID.'">Удалить пользователей</a></b><br /><br />';
  86. } else {
  87. show_error('Пользователи для удаления отсутсвуют!');
  88. }
  89. } else {
  90. show_error('Ошибка! Указанно недопустимое время для удаления!');
  91. }
  92.  
  93. echo '<img src="../images/img/back.gif" alt="image" /> <a href="delusers.php?'.SID.'">Вернуться</a><br />';
  94. break;
  95.  
  96. ############################################################################################
  97. ## Удаление пользователей ##
  98. ############################################################################################
  99. case "del":
  100.  
  101. $uid = check($_GET['uid']);
  102. $deldate = abs(intval($_GET['deldate']));
  103. $point = abs(intval($_GET['point']));
  104.  
  105. if ($uid == $_SESSION['token']) {
  106. if ($deldate >= 180) {
  107. $deltime = $deldate * 24 * 3600;
  108.  
  109. $queryusers = DB::run() -> query("SELECT users_login FROM users WHERE users_timelastlogin<? AND users_point<=?;", array(SITETIME - $deltime, $point));
  110. $users = $queryusers -> fetchAll(PDO::FETCH_COLUMN);
  111. $total = count($users);
  112.  
  113. if ($total > 0) {
  114. foreach ($users as $value) {
  115. delete_album($value);
  116. delete_users($value);
  117. }
  118.  
  119. echo 'Пользователи не посещавшие сайт более <b>'.$deldate.'</b> дней, успешно удалены!<br />';
  120. echo 'Было удалено пользователей: <b>'.$total.'</b><br /><br />';
  121. } else {
  122. show_error('Пользователи для удаления отсутсвуют!');
  123. }
  124. } else {
  125. show_error('Ошибка! Указанно недопустимое время для удаления!');
  126. }
  127. } else {
  128. show_error('Ошибка! Неверный идентификатор сессии, повторите действие!');
  129. }
  130.  
  131. echo '<img src="../images/img/back.gif" alt="image" /> <a href="delusers.php?'.SID.'">Вернуться</a><br />';
  132. break;
  133.  
  134. default:
  135. redirect("delusers.php?".SID);
  136. endswitch;
  137.  
  138. echo '<img src="../images/img/panel.gif" alt="image" /> <a href="index.php?'.SID.'">В админку</a><br />';
  139.  
  140. } else {
  141. redirect(BASEDIR.'index.php?'.SID);
  142. }
  143.  
  144. include_once ('../themes/footer.php');
  145. ?>