Просмотр файла admin/server/ads.php

Размер файла: 7.97Kb
  1. <?php
  2.  
  3. include '../../engine/includes/start.php';
  4.  
  5. if (!$creator)
  6. Core::stop();
  7.  
  8. $set['title'] = 'Реклама';
  9.  
  10. include incDir . 'head.php';
  11.  
  12. switch($act)
  13. {
  14. case 'add':
  15. if (isset($_POST['name'], $_POST['link']))
  16. {
  17. $name = Core::form('name');
  18. $link = Core::form('link');
  19. $img = Core::form('img');
  20. switch($_POST['time_type'])
  21. {
  22. default:
  23. case 'hour':
  24. $ads_time = $time + intval($_POST['time']) * 60 * 60;
  25. break;
  26. case 'sut':
  27. $ads_time = $time + intval($_POST['time']) * 60 * 60 * 24;
  28. break;
  29. case 'mes':
  30. $ads_time = $time + intval($_POST['time']) * 60 * 60 * 24 * 30;
  31. break;
  32. }
  33. $pos = Core::form('pos') == 'top' ? 'top' : 'bottom';
  34. $main = Core::form('main') ? 1 : 0;
  35. $new_line = Core::form('new_line') ? 1 : 0;
  36. $sql->query('
  37. INSERT INTO `ads` SET
  38. `name` = "'.$name.'",
  39. `link` = "'.$link.'",
  40. `img` = "'.$img.'",
  41. `time` = "'.$ads_time.'",
  42. `pos` = "'.$pos.'",
  43. `main` = "'.$main.'",
  44. `new_line` = "'.$new_line.'"
  45. ');
  46. Core::msg_show('Реклама добавлена', 'msg');
  47. }
  48. ?>
  49. <a href="?" class="link">Список рекламных ссылок</a>
  50. <form method="post">
  51. Название:<br />
  52. <input type="text" name="name" value=""/><br />
  53. Ссылка:<br />
  54. <input type="text" name="link" value="http://"/><br />
  55. Изображение:<br />
  56. <input type="text" name="img" value=""/><br />
  57. Длительность показа рекламы: <br />
  58. <input name = "time" value="12" type="text" size='3' />
  59. <select name = "time_type">
  60. <option value=""></option>
  61. <option value="mes">Месяцев</option>
  62. <option value="sut">Суток</option>
  63. <option value="hour">Часов</option>
  64. </select><br />
  65. Позиция:<br />
  66. <select name="pos">
  67. <option value="top">Наверху</option>
  68. <option value="bottom">Внизу</option>
  69. </select><br />
  70. На главной:<br />
  71. <select name="main">
  72. <option value="0">Нет</option>
  73. <option value="1">Да</option>
  74. </select><br />
  75. С новой строки:<br />
  76. <select name="new_line">
  77. <option value="0">Нет</option>
  78. <option value="1">Да</option>
  79. </select><br />
  80. <input type="submit" value="Добавить"/>
  81. </form>
  82. <?php
  83. break;
  84. case 'delete':
  85. $sql->query('SELECT * FROM `ads` WHERE `id` = '.$id);
  86. if ($sql->num_rows() == 0)
  87. {
  88. Core::msg_show('Реклама не найдена');
  89. include incDir . 'foot.php';
  90. }
  91. if (isset($_GET['confirm'], $_SESSION['ads_confirm_code']) && $_SESSION['ads_confirm_code'] == $_GET['confirm'])
  92. {
  93. $sql->query('DELETE FROM `ads` WHERE `id` = '.$id);
  94. Core::msg_show('Реклама удалена', 'msg');
  95. echo '<a href="?" class="link">Список рекламных ссылок</a>';
  96. }
  97. else
  98. {
  99. $_SESSION['ads_confirm_code'] = uniqid();
  100. echo 'Вы действительно хотите удалить рекламу?<br /><a href="?act=delete&amp;id='.$id.'&amp;confirm='.$_SESSION['ads_confirm_code'].'">Удалить</a>, <a href="?">Нет. Вернутся в список рекламы</a>';
  101. }
  102. break;
  103. case 'edit':
  104. $sql->query('SELECT * FROM `ads` WHERE `id` = '.$id);
  105. if ($sql->num_rows() == 0)
  106. {
  107. Core::msg_show('Реклама не найдена');
  108. include incDir . 'foot.php';
  109. }
  110. $ads = $sql->fetch();
  111. if (isset($_POST['name'], $_POST['link']))
  112. {
  113. $ads['name'] = Core::form('name');
  114. $ads['link'] = Core::form('link');
  115. $ads['img'] = Core::form('img');
  116. switch($_POST['time_type'])
  117. {
  118. default:
  119. case 'hour':
  120. $ads['time'] = $time + intval($_POST['time']) * 60 * 60;
  121. break;
  122. case 'sut':
  123. $ads['time'] = $time + intval($_POST['time']) * 60 * 60 * 24;
  124. break;
  125. case 'mes':
  126. $ads['time'] = $time + intval($_POST['time']) * 60 * 60 * 24 * 30;
  127. break;
  128. }
  129. $ads['pos'] = Core::form('pos') == 'top' ? 'top' : 'bottom';
  130. $ads['main'] = Core::form('main') ? 1 : 0;
  131. $ads['new_line'] = Core::form('new_line') ? 1 : 0;
  132. $sql->query('
  133. UPDATE `ads` SET
  134. `name` = "'.$ads['name'].'",
  135. `link` = "'.$ads['link'].'",
  136. `img` = "'.$ads['img'].'",
  137. `time` = "'.$ads['time'].'",
  138. `pos` = "'.$ads['pos'].'",
  139. `main` = "'.$ads['main'].'",
  140. `new_line` = "'.$ads['new_line'].'"
  141. WHERE `id` = '.$id);
  142.  
  143. Core::msg_show('Реклама изменена', 'msg');
  144. }
  145.  
  146. $time_type = 'hour';
  147. $ads['time'] = $ads['time'] - $time;
  148.  
  149. if ($ads['time'] >= 2592000)
  150. {
  151. $time_type = 'mes';
  152. $ads['time'] = ceil($ads['time'] / 2592000);
  153. }
  154. elseif ($ads['time'] >= 86400)
  155. {
  156. $time_type = 'sut';
  157. $ads['time'] = ceil($ads['time'] / 86400);
  158. }
  159. else
  160. {
  161. $ads['time'] = ceil($ads['time'] / 3600);
  162. }
  163.  
  164. ?>
  165. <a href="?" class="link">Список рекламных ссылок</a>
  166. <form method="post">
  167. Название:<br />
  168. <input type="text" name="name" value="<?=$ads['name']?>"/><br />
  169. Ссылка:<br />
  170. <input type="text" name="link" value="<?=$ads['link']?>"/><br />
  171. Изображение:<br />
  172. <input type="text" name="img" value="<?=$ads['img']?>"/><br />
  173. Время действия: <br />
  174. <input type="text" name="time" value="<?=$ads['time']?>"/><br />
  175. <select name="time_type">
  176. <option value="mes" <?=$time_type == 'mes' ? 'selected="selected"' : ''?>>Месяцев</option>
  177. <option value="sut" <?=$time_type == 'sut' ? 'selected="selected"' : ''?>>Суток</option>
  178. <option value="sut" <?=$time_type == 'hour' ? 'selected="selected"' : ''?>>Часов</option>
  179. </select><br />
  180. Позиция:<br />
  181. <select name="pos">
  182. <option value="top">Наверху</option>
  183. <option value="bottom"<?=$ads['pos'] == 'bottom' ? ' selected="selected"' : ''?>>Внизу</option>
  184. </select><br />
  185. На главной:<br />
  186. <select name="main">
  187. <option value="0">Нет</option>
  188. <option value="1"<?=$ads['main'] == 1 ? ' selected="selected"' : ''?>>Да</option>
  189. </select><br />
  190. С новой строки:<br />
  191. <select name="new_line">
  192. <option value="0">Нет</option>
  193. <option value="1"<?=$ads['new_line'] == 1 ? ' selected="selected"' : ''?>>Да</option>
  194. </select><br />
  195. <input type="submit" value="Изменить"/>
  196. </form>
  197. <?php
  198. break;
  199. default:
  200. echo '<a class="link" href="?act=add">Добавить</a>';
  201. $i = 0;
  202. $sql->query('SELECT * FROM `ads` WHERE `time` > '. $time);
  203. while($ads = $sql->fetch())
  204. {
  205. echo
  206. '<div class="'.($i++ % 2 ? 'p_m' : 'p_t').'">
  207. <b>Название: </b> '.$ads['name'].'<br />
  208. <b>Ссылка: </b> '.$ads['link'].'<br />
  209. <b>Картинка: </b> '.(!empty($ads['img']) ? $ads['img'] : 'нет').'<br />
  210. <b>Позиция: </b> '.($ads['pos'] == 'top' ? 'Наверху' : 'Внизу').'<br />
  211. <b>На главной: </b> '.($ads['main'] ? 'да' : 'нет').'<br />
  212. <b>Время окончания: </b> '.Core::time($ads['time']).'<br />
  213. <b>С новой строки: </b> '.($ads['new_line'] ? 'да' : 'нет').
  214. '<br />[ <a href="?act=edit&amp;id='.$ads['id'].'">Изменить</a> ] | [ <a href="?act=delete&amp;id='.$ads['id'].'">Удалить</a> ]'.
  215. '</div>';
  216. }
  217. break;
  218. }
  219.  
  220. ?>
  221. <div class="menu_razd">См. также</div>
  222. <a href='/admin/'><div class="link">Админка</div></a>
  223. <a href='/admin/?act=server'><div class="link">Админка / Сайт</div></a>
  224. <?php
  225. include incDir . 'foot.php';