Просмотр файла modules/forum/section.php

Размер файла: 4.6Kb
  1. <?
  2. define('SHCMS_ENGINE',true);
  3. include_once('../../engine/system/core.php');
  4.  
  5. //Если вместо id num попытаются вставить текст то выводит ошибку
  6. if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
  7. $templates->template(Lang::__('Произошла ошибка при выборе раздела')); //Название страницы
  8. header('Refresh: 1; url=index.php');
  9. engine::error(Lang::__('Произошла ошибка при выборе раздела')); //При ошибке
  10. exit;
  11. }
  12. //из $_GET в обычную переменную
  13. $id = (int) $_GET['id'];
  14. //Выводим название с базы для title
  15. $title = $db->get_array($db->query("SELECT * FROM `forum_subsection` WHERE `id` = '".$id."'"));
  16. $templates->template(Lang::__('Форум').' - '.$title['name']); //Название страницы
  17.  
  18. //Отключения форума
  19. //Вывод определенных данных
  20. $off_forum = $db->get_array($db->query("SELECT * FROM `off_modules`"));
  21. if($off_forum['off_forum'] == 1) {
  22. echo engine::error(Lang::__('Форум приостановлен с ').date::make_date($off_forum['time_forum']),$off_forum['text_forum']); //Ошибка об отключении и дополнительный текст
  23. echo engine::home(array('Назад','/index.php'));
  24. exit;
  25. }
  26.  
  27. //Если пользователь авторизован выведит это
  28. if($id_user == true) {
  29. echo '<div style="text-align:center;font-size:15px;" class="subpost"><img src="/engine/template/icons/tab-new.png">&nbsp;<a href="new.topic.php?id='.$id.'">'.Lang::__('Создать тему').'</a></div>';
  30. }else {
  31. //Если нет то этот текст
  32. echo '<div style="text-align:center;font-size:13px;color:red;" class="mainpost">'.Lang::__('Вы не можете создать новую тему').'</div>';
  33. }
  34. //Выводим счетчик тем
  35. $row = $db->get_array($db->query("SELECT COUNT(*) FROM `forum_topics`"));
  36.  
  37. //Подключаем навигацию
  38. $newlist = new Navigation($row[0],10,true);
  39. //Если счетчик тем на 0 выводит этот текст
  40. if($row[0] == false) {
  41. echo engine::error(Lang::__('В данном разделе нет ни одной темы!'));
  42. exit;
  43. }
  44. //Начинаем вывод всех тем с базы
  45. $topics = $db->query("SELECT * FROM `forum_topics` WHERE `id_sec` = '".$id."' ORDER BY `id` DESC ". $newlist->limit()."");
  46. //Проверяем если ли темы в базе если да то выводит всех
  47. if($db->num_rows($topics) > 0) {
  48. echo '<div class="mainname"><img src="/engine/template/icons/allcaps.png">&nbsp;'.Lang::__('Все темы раздела').'</div><div class="mainpost">';
  49. while($topic = $db->get_array($topics)) {
  50. //Выводим счетчик тем
  51. $rows = $db->get_array($db->query("SELECT COUNT(*) FROM `forum_post` WHERE `id_top` = '".$topic['id']."'"));
  52.  
  53. $nick = $user->users($topic['id_user'],array('nick'));
  54. //Вывод Название, Описание, Время, Просмотры,
  55. echo '<div class="posts_gl">';
  56. echo '<table cellspacing="0" callpadding="0" width="100%"><tr>';
  57. echo '<td class="icons"><img src="/engine/template/icons/them.gif"/></td>';
  58. //Если тема закрыта выводит иконку
  59. if($topic['close'] == 2) {
  60. echo '<img title="'.Lang::__('Тема закрыта').'" src="/engine/template/icons/t_locked.png">&nbsp;';
  61. }
  62. //Вывод данных из базы
  63. echo '<td class="name" colspan="10"><a href="post.php?id='.$topic['id'].'"><b>'.engine::ucfirst($topic['name']).'</b></a>
  64. <span class="time">'.$rows[0].'&nbsp;'.Lang::__('Ответов').'</span></td>
  65. </tr><tr><td class="content" colspan="10">'.Lang::__('Автор:').'&nbsp;'.$nick.'&nbsp;,'.date::make_date($topic['time']).'</td></tr></table></div>';
  66. }
  67. echo '</div>';
  68. //Вывод навигации
  69. echo $newlist->pagination('id='.$id.'');
  70. //Если нет тем то выводит это
  71. }else {
  72. echo engine::error(Lang::__('В данном разделе нет ни одной темы!'));
  73. }
  74. //Переадресация на пред. страницу
  75. echo engine::home(array('Назад','index.php'));
  76. ?>