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

Размер файла: 8.76Kb
  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, 102))) {
  24. show_title('site.png', 'Управление навигацией');
  25. $config['newtitle'] = 'Управление навигацией';
  26.  
  27. switch ($act):
  28. ############################################################################################
  29. ## Главная страница ##
  30. ############################################################################################
  31. case 'index':
  32.  
  33. $querynav = DB::run() -> query("SELECT * FROM navigation ORDER BY nav_order ASC;");
  34. $arrnav = $querynav -> fetchAll();
  35. $total = count($arrnav);
  36.  
  37. if ($total > 0) {
  38. echo '<div class="form">';
  39. echo '<form action="navigation.php?act=del&amp;uid='.$_SESSION['token'].'&amp;'.SID.'" method="post">';
  40.  
  41. foreach ($arrnav as $val) {
  42. echo '<input type="checkbox" name="del[]" value="'.$val['nav_id'].'" /> <img src="../images/img/edit.gif" alt="image" /> <b>'.$val['nav_order'].'</b>. <b><a href="navigation.php?act=edit&amp;id='.$val['nav_id'].'&amp;'.SID.'">'.$val['nav_title'].'</a></b> ('.$val['nav_url'].')<br />';
  43. }
  44.  
  45. echo '<input type="submit" value="Удалить выбранное" /></form></div><br />';
  46.  
  47. echo 'Всего ссылок: <b>'.$total.'</b><br /><br />';
  48. } else {
  49. show_error('Ссылок еще нет!');
  50. }
  51.  
  52. echo '<b><big>Добавление ссылки</big></b><br /><br />';
  53.  
  54. echo '<div class="form">';
  55. echo '<form action="navigation.php?act=add&amp;uid='.$_SESSION['token'].'&amp;'.SID.'" method="post">';
  56. echo 'Ссылка:<br />';
  57. echo '<input type="text" name="url" /><br />';
  58. echo 'Название:<br />';
  59. echo '<input type="text" name="title" /><br />';
  60. echo 'Положение:<br />';
  61. echo '<input type="text" name="order" maxlength="2" /><br />';
  62. echo '<input type="submit" value="Добавить" /></form></div><br />';
  63. break;
  64.  
  65. ############################################################################################
  66. ## Подготовка к редактированию ##
  67. ############################################################################################
  68. case 'edit':
  69.  
  70. $id = abs(intval($_GET['id']));
  71.  
  72. $data = DB::run() -> queryFetch("SELECT * FROM navigation WHERE nav_id=? LIMIT 1;", array($id));
  73.  
  74. if (!empty($data)) {
  75. echo '<b><big>Редактирование ссылки</big></b><br /><br />';
  76.  
  77. echo '<div class="form">';
  78. echo '<form action="navigation.php?id='.$id.'&amp;act=change&amp;uid='.$_SESSION['token'].'&amp;'.SID.'" method="post">';
  79. echo 'Ссылка:<br />';
  80. echo '<input type="text" name="url" value="'.$data['nav_url'].'" /><br />';
  81. echo 'Название:<br />';
  82. echo '<input type="text" name="title" value="'.$data['nav_title'].'" /><br />';
  83. echo 'Положение:<br />';
  84. echo '<input type="text" name="order" maxlength="2" value="'.$data['nav_order'].'" /><br />';
  85. echo '<input type="submit" value="Изменить" /></form></div><br />';
  86. } else {
  87. show_error('Ошибка! Данной ссылки не существует!');
  88. }
  89.  
  90. echo '<img src="../images/img/back.gif" alt="image" /> <a href="navigation.php?'.SID.'">Вернуться</a><br />';
  91. break;
  92.  
  93. ############################################################################################
  94. ## Редактирование ##
  95. ############################################################################################
  96. case 'change':
  97.  
  98. $uid = check($_GET['uid']);
  99. $url = check($_POST['url']);
  100. $title = check($_POST['title']);
  101. $order = abs(intval($_POST['order']));
  102. $id = abs(intval($_GET['id']));
  103.  
  104. if ($uid == $_SESSION['token']) {
  105. if (!empty($url)) {
  106. if (utf_strlen($title) >= 3 && utf_strlen($title) <= 35) {
  107. $querynav = DB::run() -> querySingle("SELECT nav_id FROM navigation WHERE nav_id=? LIMIT 1;", array($id));
  108. if (!empty($querynav)) {
  109. DB::run() -> query("UPDATE navigation SET nav_url=?, nav_title=?, nav_order=? WHERE nav_id=?", array($url, $title, $order, $id));
  110.  
  111. save_navigation();
  112.  
  113. $_SESSION['note'] = 'Ссылка успешно изменена!';
  114. redirect("navigation.php?".SID);
  115. } else {
  116. show_error('Ошибка! Редактируемой ссылки не существует!');
  117. }
  118. } else {
  119. show_error('Ошибка! Слишком длинное или короткое название! (от 3 до 35 символов)!');
  120. }
  121. } else {
  122. show_error('Ошибка! Не указана ссылка для навигации!');
  123. }
  124. } else {
  125. show_error('Ошибка! Неверный идентификатор сессии, повторите действие!');
  126. }
  127.  
  128. echo '<img src="../images/img/reload.gif" alt="image" /> <a href="navigation.php?act=edit&amp;id='.$id.'&amp;'.SID.'">Вернуться</a><br />';
  129. echo '<img src="../images/img/back.gif" alt="image" /> <a href="navigation.php?'.SID.'">К списку</a><br />';
  130. break;
  131.  
  132. ############################################################################################
  133. ## Добавление ##
  134. ############################################################################################
  135. case 'add':
  136.  
  137. $uid = check($_GET['uid']);
  138. $url = check($_POST['url']);
  139. $title = check($_POST['title']);
  140. $order = abs(intval($_POST['order']));
  141.  
  142. if ($uid == $_SESSION['token']) {
  143. if (!empty($url)) {
  144. if (utf_strlen($title) >= 5 && utf_strlen($title) <= 35) {
  145. DB::run() -> query("INSERT INTO navigation (nav_url, nav_title, nav_order) VALUES (?, ?, ?);", array($url, $title, $order));
  146.  
  147. save_navigation();
  148.  
  149. $_SESSION['note'] = 'Ссылка успешно добавлена!';
  150. redirect("navigation.php?".SID);
  151. } else {
  152. show_error('Ошибка! Слишком длинное или короткое название! (от 5 до 35 символов)!');
  153. }
  154. } else {
  155. show_error('Ошибка! Не указана ссылка для навигации!');
  156. }
  157. } else {
  158. show_error('Ошибка! Неверный идентификатор сессии, повторите действие!');
  159. }
  160.  
  161. echo '<img src="../images/img/back.gif" alt="image" /> <a href="navigation.php?'.SID.'">Вернуться</a><br />';
  162. break;
  163.  
  164. ############################################################################################
  165. ## Удаление ссылок ##
  166. ############################################################################################
  167. case 'del':
  168.  
  169. $uid = check($_GET['uid']);
  170. if (isset($_POST['del'])) {
  171. $del = intar($_POST['del']);
  172. } else {
  173. $del = 0;
  174. }
  175.  
  176. if ($uid == $_SESSION['token']) {
  177. if (!empty($del)) {
  178. $del = implode(',', $del);
  179.  
  180. DB::run() -> query("DELETE FROM navigation WHERE nav_id IN (".$del.");");
  181.  
  182. save_navigation();
  183.  
  184. $_SESSION['note'] = 'Выбранные ссылки успешно удалены!';
  185. redirect("navigation.php?".SID);
  186. } else {
  187. show_error('Ошибка! Не выбраны ссылки для удаления!');
  188. }
  189. } else {
  190. show_error('Ошибка! Неверный идентификатор сессии, повторите действие!');
  191. }
  192.  
  193. echo '<img src="../images/img/back.gif" alt="image" /> <a href="navigation.php?'.SID.'">Вернуться</a><br />';
  194. break;
  195.  
  196. default:
  197. redirect("navigation.php?".SID);
  198. endswitch;
  199.  
  200. echo '<img src="../images/img/panel.gif" alt="image" /> <a href="index.php?'.SID.'">В админку</a><br />';
  201.  
  202. } else {
  203. redirect(BASEDIR.'index.php?'.SID);
  204. }
  205.  
  206. include_once ('../themes/footer.php');
  207. ?>