Вход Регистрация
Файл: forum.php
Строк: 702
<?php
define
('_IN_JOHNCMS'1);
$rootpath __DIR__ .'/';
$headmod "miniForum";
require_once(
'incfiles/core.php');
#########################################################################################################
# Вспомогателные функции
#########################################################################################################
function notify($msg false,  $type true) {
    if (
$msg) {
        if (
$type === true) {
            
$_SESSION['err_msg']  .= $msg .'<br>';
        }  elseif (
$type === false) {
            
$_SESSION['succ_msg']  .= $msg .'<br>';
        }
    }elseif (isset(
$_SESSION['err_msg'])) {
        echo 
'<div class="gmenu">'$_SESSION['err_msg'] .'</div>';
        unset(
$_SESSION['err_msg']);
    } elseif (isset(
$_SESSION['succ_msg'])) {
        echo 
'<div class="rmenu">'$_SESSION['succ_msg'] .'</div>';
        unset(
$_SESSION['succ_msg']);
    }
}
function 
out($text$max 25) {
    return 
str_replace('<br />'"rn"tags(antilink(nl2br(mb_substr($text,  0,  $max))))); 
}
$query mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "cat" ');
if (!isset(
$_GET['start'])) {
    
$_GET['start'] = 0;
}
########################################################################################################
# Темы
########################################################################################################
if (isset($_POST['save_edit_post'])) {
    if (!
$user_id) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
$text mysql_escape_string(htmlspecialchars(mb_substr($_POST['topic_message_edit'], 05000)));
        if (
mb_strlen(trim($text)) < 3) {
            
notify('Сообщение должно быть от 3 до 5000 символов!'false);
            
header('Location: ?edit_post='. (int)$_POST['edit_post_id']);
            exit;
        } 
        
mysql_query('UPDATE `mini_forum` SET `text` = "'$text .'" WHERE `id` = "'. (int)$_POST['edit_post_id'].'" ');
        
notify('Сообщение успешно изменено!');
        
header('Location: ?view_topic='. (int)$_POST['edit_post_tid']);
        exit;
    exit;
}
// Редактированние поста
if (isset($_GET['edit_post'])) {
    if (!
$user_id) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
$editQuery mysql_query('SELECT `id`, `text`, `last_user_id`, `tid` FROM `mini_forum` WHERE `id` = "'. (int)$_GET['edit_post'] .'"');
    if (
mysql_num_rows($editQuery) !== 1) {
        
notify('Данного поста не существует!',  false);
        
header('Location: ?view_topic='. (int)$_GET['edit_post']);
        exit;
    } else {
        
$editPost mysql_fetch_array($editQuery);
        if ( ((int)
$editPost['last_user_id'] !== (int)$user_id) || ($rights 7) ) {
            if (!
$user_id) {
                
header("Location: /");
                echo 
display_errors('Доступ запрещен!');
                require_once(
'incfiles/end.php');
                exit;
            }
        }
        
$textl 'Форум | Редактированние поста!';
        require_once(
'incfiles/head.php');
        
notify();
        echo 
'<div class="gmenu">
        <form action="?" method="post">
        Редактируемое сообщение:<br>
        <textarea name="topic_message_edit">'
nl2br(htmlspecialchars($editPost['text'])) .'</textarea><br>
        <input type="hidden" name="edit_post_id" value="'
$editPost['id'] .'">
        <input type="hidden" name="edit_post_tid" value="'
$editPost['tid'] .'">
        <input type="submit" name="save_edit_post" value="Отправить!">
        </form>
        </div>
        <div class="phdr"><a href="?view_topic='
$editPost['tid'] .'">В тему</a></div>';
        require_once(
'incfiles/end.php');
    }
    exit;
}
// ПРОСМОТР ТЕМЫ
if (isset($_GET['delet_post'])) {
    if (isset(
$_POST['delet_topic_posts'])) {
        
$deletTopic false;
        foreach((array)
$_POST['delet_posts'] as $postId) {
            
$deletThemeQuery mysql_query('SELECT `id`, `title` FROM `mini_forum` WHERE `type` = "theme" AND `tid` = "'. (int)$postId .'" ');
            if (
mysql_num_rows($deletThemeQuery) === 1) {
                
$deletTopicArr mysql_fetch_array($deletThemeQuery);
                
$deletTopic $deletTopicArr['title'];
                
$del_cates mysql_query('SELECT `id` FROM `mini_forum` WHERE `tid` = "'.(int)$deletTopicArr['id'].'" AND `type` = "msg"');
                while (
$del_con mysql_fetch_array($del_cates)) {
                    
mysql_query('DELETE FROM `mini_forum` WHERE `id` = "'$del_con['id'] .'" AND `type` = "msg" ');
                }
                
mysql_query('DELETE FROM `mini_forum` WHERE `id` = "'$deletTopicArr['id'] .'" ');
                break;
            }
            
mysql_query('DELETE FROM `mini_forum` WHERE `id` = "'$postId .'" ');
        }
        if (
$deletTopic === false) {
                
notify('Удалено 'count($_POST['delet_posts']) .' сообщений!');
                
header('Location: ?view_topic='$_GET['delet_post']);
                exit;
            } else {
                
notify('Тема "'$deletTopic .'" успешно удалена!');
                
header('Location: ?');
                exit;
            }
    }
    
header('Location: ?');
    exit;
}
if (isset(
$_GET['view_topic'])) {
    
$topic mysql_query('SELECT `id`, `title` FROM `mini_forum` WHERE `type` = "theme" AND `id` = "'. (int)$_GET['view_topic'] .'" ');
    if (
mysql_num_rows($topic) !== 1) {
        
notify('Данной темы не существует!'false);
        
header('Location: ?');
        exit;
    }
    
$formValue "";
    
$topicQueryCount mysql_num_rows(mysql_query('SELECT * FROM `mini_forum`  WHERE `type` = "msg" AND `tid` = "'. (int)$_GET['view_topic'] .'" ORDER BY  `id` ASC '));
    
$topicQuery mysql_query('SELECT * FROM `mini_forum` 
    WHERE `type` = "msg" AND `tid` = "'
. (int)$_GET['view_topic'] .'" ORDER BY  `id` ASC LIMIT '.(int)$_GET['start'] .', '. ((int)$_GET['start'] + 10) .' ');
    
$topicCategory mysql_fetch_array(mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "cat" AND `id` = "'
    
mysql_result(mysql_query('SELECT `cid` FROM `mini_forum` WHERE `id` = "'. (int)$_GET['view_topic'] .'"'), 0)  .'" '));
    
$topicName mysql_fetch_array($topic);
    
//ЗАПИСЬ ЦИТАТЫ В БАЗУ
    
if (isset($_POST['add_topic_message_post'])) {
        
$file_new_name 0;
        
        
$text mysql_escape_string(htmlspecialchars(mb_substr($_POST['topic_message'], 05000)));
        if (
mb_strlen(trim($text)) < 3) {
            
notify('Сообщение должно быть от 3 до 5000 символов!'false);
            
header('Location: ?view_topic='. (int)$_GET['view_topic']);
            exit;
        } 
        
$topicQueryQuote mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "msg" AND `text` = "'$text .'" AND `tid` = "'. (int)$_GET['view_topic'] .'" ');
        if (
mysql_num_rows($topicQueryQuote) !== 0) {
            
notify('Такое сообщение уже есть!'false);
            
header('Location: ?view_topic='. (int)$_GET['view_topic']);
            exit;
        } 
        if (isset(
$_FILES['attach']) && $_FILES['attach']['name'] !== '') {
            
$file $_FILES['attach'];
            
$file_name $file['name'];
            
$file_tmp $file['tmp_name'];
            
$file_error $file['error'];
            
$file_size $file['size'];
            
$file_ext pathinfo($file_namePATHINFO_EXTENSION);
            
$allowed = array('jpg''jpeg''png''gif''JPG''JPEG''PNG''GIF');
            if ( ! 
in_array($file_ext$allowed)) {
                
notify('Запрещенное расширение файла!'false);
                
header('Location: ?view_topic='. (int)$_GET['view_topic']);
                exit;
            }
            if (
$file_error !== 0) {
                
notify('Ошибка загрузки файла!'false);
                
header('Location: ?view_topic='. (int)$_GET['view_topic']);
                exit;
            }
            if ((
round($file_size 1048576 100) / 100) > 5) {
                
notify('Файл слишком большой!'false);
                
header('Location: ?view_topic='. (int)$_GET['view_topic']);
                exit;
            }
            
$file_new_name uniqid(''true) . '.' $file_ext;
            
$file_descination __DIR__ .'/files/' $file_new_name;
            if ( ! 
move_uploaded_file($file_tmp$file_descination)) {
                
notify('Ошибка загрузки файла на сервер!'false);
                
header('Location: ?view_topic='. (int)$_GET['view_topic']);
                exit;
            }
        }
        if (
mb_substr_count($text'[c]') === 1) {
            
$quote 1;
        } else {
            
$quote 0;
        }
        
mysql_query('INSERT INTO `mini_forum` (`type`,  `text`, `cid`, `tid`, `quote`, `create_time`,  `last_user_id`, `attach`)  VALUES 
        ("msg", "'
$text .'", "'$topicCategory['id'] .'", "'. (int)$_GET['view_topic'] .'", "'$quote .'", "'time() .'", "'$user_id .'", "'$file_new_name .'")');
        
mysql_query('UPDATE `mini_forum` SET `last_time` = "'time() .'", `last_user_id` = "'$user_id .'"  WHERE `id` = "'. (int)$_GET['view_topic'] .' "');
        
notify('Сообщение успешно добавлено!');
        
header('Location: ?view_topic='. (int)$_GET['view_topic']);
        exit;
    }
    
$textl 'Форум | '$topicCategory['title'] .' | '$topicName['title'];
    require_once(
'incfiles/head.php'); 
    
?>
    <style type="text/css">
        .showPhoto {
            width: 0;
            height: 0;
            position: fixed;
            overflow: hidden;
            left: 0;
            top: 0;
            z-index: 9999;
            text-align: center;
            background: rgba(0,0,0,0.7);
        }
        .showPhoto img    {
            opacity: 0;
            padding: 10px;
            background: #ffffff;
            width: 50%;
            height: auto;
            margin: auto;
            position: absolute;
            top: 0; left: 0; bottom: 0; right: 0;
            -webkit-box-shadow: 0px 0px 15px #444;
            -moz-box-shadow: 0px 0px 15px #444;   
            box-shadow: 0px 0px 15px #444; 
            -moz-transition: opacity .25s ease-in-out;
            -webkit-transition: opacity .25s ease-in-out;
            transition: opacity .25s ease-in-out;       
        }
        .showPhoto:target {background-color: transparent;width: auto;height: auto;bottom: 0;right: 0;}
        .showPhoto:target img {opacity: 1;}
        .links:hover {
            cursor: hover;
        }
    </style>
    
    <script type="text/javascript">
        function on(n) {  
            eval("document.all.text"+n+".style.display='block';");  
            eval("document.all.ontext"+n+".style.display='none';");   
        }
        function show(e) {
            var width = 520; height = 390;
            var wnd = window.open(e.href, '_blank', 'width='+width+', height='+height+',toolbar=no,menubar=no,scrollbars=no,status=no,resizable=yes');
            if (wnd) { wnd.moveTo((screen.width - width) / 2, (screen.height - height) / 3); wnd.focus(); }
            return false;
        } 
        function insert(unit) {
            var id ='text';
            var object = document.getElementById(id);
            object.focus();                                
            var ss = object.scrollTop;
            sel1 = object.value.substr(0, object.selectionStart);
            sel2 = object.value.substr(object.selectionEnd);
            sel = object.value.substr(object.selectionStart, object.selectionEnd - object.selectionStart);                                              
            object.value = sel1 + sel + unit + sel2;
            object.selectionStart = sel1.length + unit.length;
            object.selectionEnd = object.selectionStart + sel.length;
            object.scrollTop = ss;                                             
            return false;
        }
        function show_hide(elem) {
        obj = document.getElementById(elem);
        if( obj.style.display == "none" ) {
        obj.style.display = "block";
        } else {
        obj.style.display = "none";
        }
    }
    </script>
    <?php
    notify
();
    echo 
'<div class="phdr"><a name="up" id="up"></a>
    <a href="#down"><img src="../theme/' 
$set_user['skin'] . '/images/down.png" alt="Вниз" width="20" height="10" border="0"/></a>&nbsp;&nbsp;
    <a href="/forum.php">Форум </a> >> 
    <a href="/forum.php?view_cat='
.  $topicCategory['id'] .'">'.$topicCategory['title'] .' </a> >> <b>'.  $topicName['title'] .'</b></div>';
    
$topicAttachMsg mysql_fetch_array(mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "msg" AND `id` = "'
    
mysql_result(mysql_query('SELECT `tid` FROM `mini_forum` WHERE `id` = "'. (int)$_GET['view_topic'] .'"'), 0)  .'" '));
    
$topicAttachMsgAuthor mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `id` = "'$topicAttachMsg['last_user_id'] .'" '));
    if (
$rights >= 7) {
        echo 
'<form action="?delet_post='. (int)$_GET['view_topic'] .'" method="post">';
    }
    echo 
'<div class="gmenu"><table cellpadding="0" cellspacing="0"><tr><td>';
    if (
file_exists('files/photo/' . (int)$topicAttachMsgAuthor['id'] .'_small.png')) {
        echo 
'<img src="../files/photo/' . (int)$topicAttachMsgAuthor['id'] .'_small.png" width="50" height="50" alt="ava" />&nbsp;';
    } elseif (
file_exists('files/photo/' . (int)$topicAttachMsgAuthor['id'] .'_small.jpg')) {
        echo 
'<img src="../files/photo/' . (int)$topicAttachMsgAuthor['id']  .'_small.jpg" width="50" height="50" alt="ava" />&nbsp;';
    } elseif (
file_exists('files/photo/' . (int)$topicAttachMsgAuthor['id'] .'_small.jpeg')) {
        echo 
'<img src="../files/photo/' . (int)$topicAttachMsgAuthor['id']  .'_small.jpeg" width="50" height="50" alt="ava" />&nbsp;';
    } elseif (
file_exists('files/photo/' . (int)$topicAttachMsgAuthor['id'] .'_small.gif')) {
        echo 
'<img src="../files/photo/' . (int)$topicAttachMsgAuthor['id'] .'_small.gif" width="50" height="50" alt="ava" />&nbsp;';
    } else {
       echo 
'<img src="../images/empty.png" width="50" height="50" alt="ava" />&nbsp;';
    }
    echo 
'</td><td>';
    if (
$topicAttachMsgAuthor['sex']) {
        echo 
'<img src="../theme/' $set['skindef'] . '/images/' . ($topicAttachMsgAuthor['sex'] == 'm' 'm' 'f') . 
        (
$topicAttachMsgAuthor['datereg'] > $realtime 86400 '_new.png" width="14"' '.png" width="16"') . ' height="16"/>&nbsp;';
    } else {
        echo 
'<img src="../images/del.png" width="10" height="10" />&nbsp;';
    }
    echo 
'<a href="/str/anketa.php?id=' $topicAttachMsgAuthor['id'] . '"><b>'.$topicAttachMsgAuthor['imname'].' '.$topicAttachMsgAuthor['name'].'</b></a>'.
    (
$realtime $topicAttachMsgAuthor['lastdate'] + 300 '<span class="red"> [Off]</span>' '<span class="green"> [ON]</span>') .'
    <br><span class="gray">(' 
date("d.m.Y / H:i"$topicAttachMsg['create_time'] + $set_user['sdvig'] * 3600) . ')</span><br/>
    </td></tr></table>
    '
out($topicAttachMsg['text'], 500) ;
    if (
$user_id) {
        echo 
'<div class="sub">';
        if (
$rights >=7) {
            echo 
'<font color="red">Удаляя первый пост вы удаляете тему!</font><br>
            <input type="checkbox" name="delet_posts[]" value="'
$topicAttachMsg['id'] .' " /> ';
        }
       echo 
'[ <a onclick="javascript:insert('[b]'.$topicAttachMsgAuthor['imname'].' '.$topicAttachMsgAuthor['name'].', [/b]n');">Ответить</a>
                '
. (((int)$topicMsg['quote'] !== 1) ? 
                
'| <a onclick="javascript:insert('[c][b]'.$topicMsgAuthor['imname'].' '.$topicAttachMsgAuthor['name'].',[/b'. trim($topicAttachMsg['text'], "n") .' [/c]n');" >Цитировать</a> ' '' ) .'
                '
. (( ($rights >= 7) || ((int)$user_id === (int)$topicMsg['last_user_id']) ) ?
                
'| <a href="?edit_post='$topicMsg['id'] .'"><font color ="green">Изменить</font></a> ' '') .' ]</div>';
    }
    echo 
'</div>';
    if (
$topicQueryCount 1) {
        while(
$topicMsg mysql_fetch_array($topicQuery)) {
            if (
$topicMsg['id'] === $topicAttachMsg['id']) {
                continue;
            }
            
$topicMsgAuthor mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `id` = "'$topicMsg['last_user_id'] .'" '));
            if (
$div === 'bmenu') {
                
$div 'menu';
            } elseif (
$div === 'menu') {
                
$div 'bmenu';
            } else {
                
$div 'menu';
            }
            echo 
'<div class="'.$div.'"><table cellpadding="0" cellspacing="0"><tr><td>';
           if (
file_exists('files/photo/' . (int)$topicMsgAuthor['last_user_id'] .'_small.png')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.png" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'].'_small.jpg')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.jpg" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'] .'_small.jpeg')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.jpeg" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'] .'_small.gif')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.gif" width="50" height="50" alt="ava" />&nbsp;';
            } else {
               echo 
'<img src="../images/empty.png" width="50" height="50" alt="ava" />&nbsp;';
            } 
            echo 
'</td> <td>';
            if (
$topicMsgAuthor['sex']) {
                echo 
'<img src="../theme/' $set['skindef'] . '/images/' . ($topicMsgAuthor['sex'] == 'm' 'm' 'f') . 
                (
$topicMsgAuthor['datereg'] > $realtime 86400 '_new.png" width="14"' '.png" width="16"') . ' height="16"/>&nbsp;';
            } else { 
                echo 
'<img src="../images/del.png" width="10" height="10" />&nbsp;';
            }
            echo 
'<a href="/str/anketa.php?id=' $topicMsgAuthor['id'] . '"><b>'.$topicMsgAuthor['imname'].' '.$topicMsgAuthor['name'].'</b></a>'.
            (
$realtime $topicMsgAuthor['lastdate'] + 300 '<span class="red"> [Off]</span>' '<span class="green"> [ON]</span>') .'
            <br><span class="gray">(' 
date("d.m.Y / H:i"$topicMsg['create_time'] + $set_user['sdvig'] * 3600) . ')</span><br/>
            </td></tr></table>'

            if ((int)
$topicMsg['attach'] !== 0) {
                echo 
'<p align="center"><a href="#photo'$topicMsg['attach'] .'">
                <img src="../files/'
$topicMsg['attach'] .'" class="photo" title="" alt="" style="max-width: 200px;max-height: 200px;"/>
                </a><a href="#close" id="photo'
$topicMsg['attach'] .'" class="showPhoto"><img src="../files/'$topicMsg['attach'] .'"></a></p>';
            }
            echo 
out($topicMsg['text'], 5000) ;
            if (
$user_id) {
                echo 
'<div class="sub">';
                if (
$rights >=7) {
                    echo 
'<input type="checkbox" name="delet_posts[]" value="'$topicMsg['id'] .' " /> ';
                }
               echo 
'[ <a onclick="javascript:insert('[b]'.$topicMsgAuthor['imname'].' '.$topicMsgAuthor['name'].', [/b]n');">Ответить</a>
                '
. (((int)$topicMsg['quote'] !== 1) ? 
                
'| <a onclick="javascript:insert('[c][b]'.$topicMsgAuthor['imname'].' '.$topicMsgAuthor['name'].',[/b'. 
                strtr($topicMsg['
text'], array("r" => "", "n" => "" ) ) .' [/c]n');">Цитировать</a> ' '' ) .'
                '
. (( ($rights >= 7) || ((int)$user_id === (int)$topicMsg['last_user_id']) ) ?
                
'| <a href="?edit_post='$topicMsg['id'] .'"><font color ="green">Изменить</font></a> ' '') .' ]</div>';
                
            }
            echo 
'</div>';
        }
    } else {
        echo 
'<div class="rmenu">Ответов пока нет :(</div>';
    }
    if (
$rights >= 7) {
        echo 
'<div class="phdr"><input type="submit" name="delet_topic_posts" value="Удалить!"></form></div>';
    }
    if (
$topicQueryCount 10) {
        echo 
'<p>'pagenav('?view_topic='. (int)$_GET['view_topic'] .'&', (int)$_GET['start'], $topicQueryCount10) .'</p>';
    }
    if (
$user_id) {
        echo 
'<div class="gmenu">
        <form align="center" action="?view_topic='
. (int)$_GET['view_topic'] .'&start='. (int)$_GET['start'] .'" method="post" enctype="multipart/form-data">
        Ваше сообщение:<br>
        <textarea id="text" rows="5" name="topic_message"></textarea><br>
        <span id="text011" style="display: none;"><small>Форматы: jpg, jpeg, gif, png</small><br><input type="file" name="attach"/></span>
        <span id="ontext011" style="display: inline;"><a href="javascript:on('
011');">Прикрепить</a></span>
        <input type="submit" name="add_topic_message_post" value="Отправить!">
        </form>
        </div>'
;
    }
    echo 
'<div class="phdr"><a name="down" id="down"></a>
    <a href="#up"><img src="../theme/default/images/up.png" alt="Наверх" width="20" height="10" border="0"/></a>&nbsp;&nbsp;
    Всего сообщений: '
$topicQueryCount .'</div>';
    require_once(
'incfiles/end.php');
    exit;
}
//ДОБАВЛЕНИЕ ТОПИКА В БАЗУ
if (isset($_POST['add_topic_post'])) {
    if (!
$user_id) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
$name mysql_escape_string(htmlspecialchars(mb_substr($_POST['topic_name'], 025)));
    
$text mysql_escape_string(htmlspecialchars(mb_substr($_POST['topic_text'], 0500)));
    if (
mb_strlen(trim($name)) < 3) {
        
notify('Название темы должно быть от 3 до 25 символов!'false);
        
header('Location: ?add_topic');
        exit;
    } 
    if (
mb_strlen(trim($text)) < 3) {
        
notify('Сообщение должно быть от 3 до 5000 символов!'false);
        
header('Location: ?add_topic');
        exit;
    }  
    
$cid = (int)$_POST['topic_id'];
    
$query_top mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "theme" AND `title` = "'$name .'" AND `cid` = "'$cid .'" ');
    if (
mysql_num_rows($query_top) !== 0) {
        
notify('Такая тема уже существует!'false);
        
header('Location: ?add_topic');
        exit;
    } else {
        
mysql_query('INSERT INTO `mini_forum` SET `title` = "'$name .'",  `type` = "theme",  `last_time` = "'time() .'",  `last_user_id` = "'$user_id .'", `cid` = "'$cid .'" ');
        
$id mysql_insert_id();
        
mysql_query('INSERT INTO `mini_forum` (`type`, `title`, `text`, `cid`, `tid`, `create_time`,  `last_user_id`)  VALUES 
        ("msg", "'
$name .'", "'$text .'", "'$cid .'", "'$id .'", "'time() .'", "'$user_id .'")');
        
$messageLastId mysql_insert_id();
        
mysql_query('UPDATE `mini_forum` SET `tid` = "'$messageLastId .'"  WHERE `id` = "'$id .' "');
        
notify('Тема успешно созданна!');
        
header('Location: ?view_topic='$id);
        exit;
    }
    exit;
}
//ДОБАВЛЕНИЕ ТОПИКА
if (isset($_GET['add_topic'])) {
    
$textl 'Форум | Добавление темы';
    require_once(
'incfiles/head.php');
    if (!
$user_id) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
notify();
    echo 
'<div class="phdr"><b><a href="/forum.php">Форум</a> >> Добавление темы</b></div>
    <div class="list1"><form action="?" method="post">
    Выберите категорию:<br>
    <select name="topic_id">'
;
    
$query mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "cat" ');
    while (
$catt mysql_fetch_array($query)) {
        echo 
'<option value="'$catt['id'] .'" '. (isset($_GET['kat_id']) && $_GET['kat_id'] === $catt['id'] ? 'selected="selected"' '') .'>'.$catt['title'].'</option>';
    }
    echo 
' </select><br>
    Название темы (макс 250):<br>
    <input type="text" name="topic_name"><br>
    Сообщение (макс 5000):<br>
    <textarea name="topic_text">'
$formValue .'</textarea><br>
    <input type="submit" name="add_topic_post" value="Создать!">
    </form></div>
    '
;
    require_once(
'incfiles/end.php');
    exit;
}
#####################################################################################################
# УПРАВЛЕНИЕ КАТЕГОРИЯМИ
####################################################################################################
// УДАЛЕНИЕ КАТЕГОРИИ
if (isset($_GET['delet_kat'])) {
    if (!
$user_id && $rights 7) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
$query_cat mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "cat" AND `id = "'. (int)$_GET['delet_kat'] .'" ');
    if (
mysql_num_rows($query_cat) === 0) {
        
notify('Категории не существует!'false);
        
header('Location: ?cat_admin');
        exit;
    } else {
        
$del_cates mysql_query('SELECT `id` FROM `mini_forum` WHERE `cid` = "'.(int)$_GET['delet_kat'].'"');
        while (
$del_con mysql_fetch_array($del_cates)) {
            
mysql_query('DELETE FROM `mini_forum` WHERE `id` = "'$del_con['id'].'" ');
        }
        
mysql_query('DELETE FROM `mini_forum` WHERE `id` = "'. (int)$_GET['delet_kat'] .'"');
        
mysql_query("OPTIMIZE TABLE `mini_forum` ");
        
notify('Категория успешно удалена!');
        
header('Location: ?cat_admin');
        exit;
    }
    exit;
}
//ИЗМЕНЕНИЕ КАТЕГОРИИ
if (isset($_POST['edit_cat_post']) && isset($_POST['cat_name'])) {
    if (!
$user_id && $rights 7) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
$name mysql_escape_string(htmlspecialchars($_POST['cat_name']));
    
$query_cat mysql_query('SELECT `id`, `title` FROM `mini_forum` WHERE `type` = "cat" AND `id` = "'. (int)$_POST['cat_id'] .'" ');
    if (
mysql_num_rows($query_cat) === 0) {
        
notify('Категории не существует!'false);
        
header('Location: ?cat_admin');
        exit;
    } elseif (
mysql_num_rows(mysql_query('SELECT `id`, `title` FROM `mini_forum` WHERE `type` = "cat" AND `title` = "'$name .'" ')) === 1) {
        
notify('Категория уже существует!'false);
        
header('Location: ?cat_admin');
        exit;
    } else {
        
$categoryEditArr mysql_fetch_array($query_cat);
        
mysql_query('UPDATE `mini_forum` SET `title` = "'$name .'" WHERE `id` = "'$categoryEditArr['id'] .'" ');
        
notify('Категория успешно изменена!');
        
header('Location: ?cat_admin');
        exit;
    }

// ДОБАВЛЕНИЕ КАТЕГОРИИ
if (isset($_POST['add_cat_post']) && isset($_POST['cat_name'])) {
    if (!
$user_id && $rights 7) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    
$name mysql_escape_string(htmlspecialchars($_POST['cat_name']));
    
$query_cat mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "cat" AND `title` = "'$name .'" ');
    if (
mysql_num_rows($query_cat) !== 0) {
        
notify('Категория уже существует!'false);
        
header('Location: ?cat_admin');
        exit;
    } else {
        
mysql_query('INSERT INTO `mini_forum` SET `title` = "'$name .'",  `type` = "cat" ');
        
notify('Категория успешно добавленна!');
        
header('Location: ?cat_admin');
        exit;
    }

// АДМИНКА КАТЕГОРИЙ
if (isset($_GET['cat_admin'])) {
    
$adminQuery mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "cat" ');
    if (!
$user_id && $rights 7) {
        
header("Location: /");
        echo 
display_errors('Доступ запрещен!');
        require_once(
'incfiles/end.php');
        exit;
    }
    if (isset(
$_GET['edit_kat'])) {
        
$catQuery mysql_query(' SELECT `title` FROM `mini_forum` WHERE `type` = "cat" AND `id` = "'. (int)$_GET['edit_kat'] .'" ');
        if (
mysql_num_rows($catQuery) !== 1) {
            
notify('Категория не найдена!'false);
            
header('Location: ?cat_admin');
            exit;
        }
    }
    
$textl 'Форум | Управление категориями';
    require_once(
'incfiles/head.php');
    
notify();
    if (isset(
$_GET['edit_kat'])) {
        echo 
'<div class="phdr"><b><a href="/forum.php">Форум</a> >> Управление категориями</b></div>
        <div class="list1"><form action="?" method="post">
        Название категории (макс 250):<br>
        <input type="text" name="cat_name" value=" '
.
        
out(mysql_result($catQuery0)) .' ">
        <input type="hidden" name="cat_id" value="'
. (int)$_GET['edit_kat']  .'">
        <input type="submit" name="edit_cat_post" value="Изменить!">
        </form></div>
        '
;
    } else {
        echo 
'<div class="phdr"><b><a href="/forum.php">Форум</a> >> Управление категориями</b></div>
        <div class="list1"><form action="?" method="post">
        Название категории (макс 250):<br>
        <input type="text" name="cat_name">
        <input type="submit" name="add_cat_post" value="Создать!">
        </form></div>
        '
;
    }
    if (
mysql_num_rows($adminQuery) === 0) {
        echo 
'<div class="rmenu">Категорий пока нет!</div>';
    } else {
        while (
$adminCat mysql_fetch_array($query)) {
            if (
$div === 'bmenu') {
                
$div 'menu';
            } elseif (
$div === 'menu') {
                
$div 'bmenu';
            } else {
                
$div 'menu';
            }
            echo 
'<div class="'.  $div .'"> 
            <b>'
out($adminCat['title']) .'</b>
            <div class="sub">Тем: '
mysql_num_rows(mysql_query('SELECT `id` FROM `mini_forum` WHERE `cid` = "'$adminCat['id'] .'"AND `type` = "theme"')) .'
            Сообщений: '
mysql_num_rows(mysql_query('SELECT `id` FROM `mini_forum` WHERE `cid` = "'$adminCat['id'] .'"AND `type` = "msg"')) .'
            <a href="?cat_admin&edit_kat='
$adminCat['id'] .'"><font color="green">Изменить</font></a>
            <a href="?delet_kat='
$adminCat['id'] .'"><font color="red">Удалить</font></a></div>
            </div>'
;
        }
    }
    require_once(
'incfiles/end.php');
    exit;

    if (isset(
$_GET['who'])) {
        
$textl 'Форум | Кто в форуме';
    require_once(
'incfiles/head.php');
    echo 
'<div class="phdr"><a href="?">Форум</a> >> Кто в форуме</div>';
    
$who mysql_query('SELECT * FROM `users` WHERE `place` = "'$headmod .'" ');
    
$whoCount mysql_num_rows($who);
    if (
$homeCount === 0) {
        echo 
'<div class="rmenu">Никого нет!</div>';
    } else {
        while (
$topicMsgAuthor mysql_fetch_array($who)) {
            if (
$div === 'bmenu') {
                
$div 'menu';
            } elseif (
$div === 'menu') {
                
$div 'bmenu';
            } else {
                
$div 'menu';
            }
            echo 
'<div class="'.$div.'"><table cellpadding="0" cellspacing="0"><tr><td>';
           if (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'] .'_small.png')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.png" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'].'_small.jpg')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.jpg" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'] .'_small.jpeg')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.jpeg" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' . (int)$topicMsgAuthor['id'] .'_small.gif')) {
                echo 
'<img src="../files/photo/' . (int)$topicMsgAuthor['id'] .'_small.gif" width="50" height="50" alt="ava" />&nbsp;';
            } else {
               echo 
'<img src="../images/empty.png" width="50" height="50" alt="ava" />&nbsp;';
            } 
            echo 
'</td> <td>';
            if (
$topicMsgAuthor['sex']) {
                echo 
'<img src="../theme/' $set['skindef'] . '/images/' . ($topicMsgAuthor['sex'] == 'm' 'm' 'f') . 
                (
$topicMsgAuthor['datereg'] > $realtime 86400 '_new.png" width="14"' '.png" width="16"') . ' height="16"/>&nbsp;';
            } else { 
                echo 
'<img src="../images/del.png" width="10" height="10" />&nbsp;';
            }
            echo 
'<a href="/str/anketa.php?id=' $topicMsgAuthor['id'] . '"><b>'.$topicMsgAuthor['imname'].' '.$topicMsgAuthor['name'].'</b></a>'.
            (
$realtime $topicMsgAuthor['lastdate'] + 300 '<span class="red"> [Off]</span>' '<span class="green"> [ON]</span>') .'
            </td></tr></table></div>'

        }
    }
    if (
$whoCount 10) {
        echo 
'<p>'pagenav('?view_topic='. (int)$_GET['view_topic'] .'&', (int)$_GET['start'], $whoCount10) .'</p>';
    }
    require_once(
'incfiles/end.php');
    exit;
}
#####################################################################################################
# ФОРУМ ГЛАВНАЯ
#####################################################################################################
if (isset($_GET['view_cat'])) {
    
$homeCatQuery mysql_query('SELECT `title` FROM `mini_forum` WHERE `id` = "'. (int)$_GET['view_cat'] .'" ');
    if (
mysql_num_rows($homeCatQuery) !== 1) {
        
notify('Категория не найдена!'false);
        
header('Location: ?');
        exit;
    }
    
$textl ' Форум | ' mysql_result($homeCatQuery0);
} else {
    
$textl 'Форум | Главная';
}
require_once(
'incfiles/head.php');
notify();
echo 
'<div class="phdr">';
if (isset(
$_GET['view_cat'])) {
    echo 
'<a href="/forum.php">Форум</a> | ';

$homeTopicCount mysql_num_rows($query);
if (
$homeTopicCount === 0) {
    echo 
'Категорий пока нет!';
}
while (
$homeCatArr mysql_fetch_array($query)) {
    
$c++;
    echo 
'<b><a style="moz-border-radius: 6px #ffffff;" href="?view_cat='$homeCatArr['id'].'">'out($homeCatArr['title']) .'</a></b>';
}
echo 
'</div>';
if (
$user_id) {
    echo 
'<div class="gmenu"><a href="?add_topic'. (isset($_GET['view_cat']) ? '&kat_id='.$_GET['view_cat'] : '') .'">Создать тему</a></div>';
    if (
$rights >= 7) {
        echo 
'<div class="gmenu"><a href="?cat_admin">Управление категориями</a></div>';
    }
}
if (isset(
$_GET['view_cat'])) {
    
$homeQueryThemes mysql_query('SELECT * FROM `mini_forum` 
    WHERE `type` = "theme" AND `cid` = "'
. (int)$_GET['view_cat'] .'"  ORDER BY  `last_time` DESC LIMIT '.(int)$_GET['start'] .', '. ((int)$_GET['start'] + 10) .' ');
    
$homeCount mysql_num_rows(mysql_query('SELECT * FROM `mini_forum` 
    WHERE `type` = "theme" AND `cid` = "'
. (int)$_GET['view_cat'] .'" '));
} else {
    
$homeQueryThemes mysql_query('SELECT * FROM `mini_forum` 
    WHERE `type` = "theme"  ORDER BY  `last_time` DESC LIMIT '
.(int)$_GET['start'] .', '. ((int)$_GET['start'] + 10) .' ');
    
$homeCount mysql_num_rows(mysql_query('SELECT * FROM `mini_forum` WHERE `type` = "theme"'));
}
if (
$homeCount === 0) {
    echo 
'<div class="rmenu">Тем не найдено!</div>';
} else {
        while (
$homeTopicArr mysql_fetch_array($homeQueryThemes)) {
            if (
$div === 'bmenu') {
                
$div 'menu';
            } elseif (
$div === 'menu') {
                
$div 'bmenu';
            } else {
                
$div 'menu';
            }
            echo 
'<div class="'.  $div .'"><table cellpadding="2" cellspacing="0"><tr><td>' ;
            if (
file_exists('files/photo/' $homeTopicArr['last_user_id'] .'_small.png')) {
                echo 
'<img src="../files/photo/' $homeTopicArr['last_user_id'] .'_small.png" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' $homeTopicArr['last_user_id'] .'_small.jpg')) {
                echo 
'<img src="../files/photo/' $homeTopicArr['last_user_id'] .'_small.jpg" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' $homeTopicArr['last_user_id'] .'_small.jpeg')) {
                echo 
'<img src="../files/photo/' $homeTopicArr['last_user_id'] .'_small.jpeg" width="50" height="50" alt="ava" />&nbsp;';
            } elseif (
file_exists('files/photo/' $homeTopicArr['last_user_id'] .'_small.gif')) {
                echo 
'<img src="../files/photo/' $homeTopicArr['last_user_id'] .'_small.gif" width="50" height="50" alt="ava" />&nbsp;';
            } else {
               echo 
'<img src="../images/empty.png" width="50" height="50" alt="ava" />&nbsp;';
            }
           echo 
'</td> <td> <b><a href="?view_topic='.$homeTopicArr['id'] .'">'out($homeTopicArr['title']) .'</a></b>
           <br/> '
.mysql_num_rows(mysql_query('SELECT `id` FROM `mini_forum` WHERE `type` = "msg" AND `tid` = "'$homeTopicArr['id'] .'"')) .'
           сообщений. Последнее от  <a href="/str/anketa.php?id='
.$homeTopicArr['last_user_id'] .'">
           <b>'
.mysql_result(mysql_query('SELECT `imname` FROM `users` WHERE `id` = "'$homeTopicArr['last_user_id'] .'" '), 0) .
           '
.mysql_result(mysql_query('SELECT `name` FROM `users` WHERE `id` = "'$homeTopicArr['last_user_id'] .'" '), 0) .'</b></a>
           ('
date("d.m.Y / H:i"$homeTopicArr['last_time']) .')
           </td></tr></table>
            </div>'
;
        }
    }
    if (
$homeCount 10) {
        echo 
'<p>'pagenav('?view_topic='. (int)$_GET['view_topic'] .'&', (int)$_GET['start'], $homeCount10) .'</p>';
    }
if (
$user_id) {
    echo 
'<div class="gmenu"><a href="?add_topic'. (isset($_GET['view_cat']) ? '&kat_id='.$_GET['view_cat'] : '') .'">Создать тему</a></div>';
    if (
$rights >= 7) {
        echo 
'<div class="gmenu"><a href="?cat_admin">Управление категориями</a></div>';
    }
    echo 
'<div class="phdr"><a href="?who">Кто в форуме : 'mysql_num_rows(mysql_query('SELECT `id` FROM `users` WHERE `place` = "'$headmod .'" ')) .'</a></div>';
}
require_once(
'incfiles/end.php');
Онлайн: 1
Реклама