Вход Регистрация
Файл: CMS/comm/comm_add_themes.php
Строк: 93
<?php

if (!defined('CMS')) { die('Access Denied!'); }

$data = array();
$data $db->selectRow("SELECT ?_comm_comm.*, ?_comm_category.*
                       FROM ?_comm_comm LEFT JOIN ?_comm_category 
                       ON ?_comm_comm.`comm_cats_id` = ?_comm_category.`cats_id` 
                       WHERE `comm_url` = ? LIMIT 1;"
$soo);


if (empty(
$data) || !is_array($data)) {

    
$inSes->addMessage('Ошибка! Сообщество не найдено или ссылка неверна!');
    
gen_red('index'''RND);
}

if (empty(
$data['comm_forum'])) {

    
$inSes->addMessage('Ошибка! Форум не найден или ссылка неверна!');
    
gen_red('index'''RND);
}

$arr_admins = @explode(','$data['comm_admins']);

$users = array();

if (
$is_logged) {

    
$users $db->selectRow("SELECT * FROM ?_comm_users WHERE `cu_comm` = ? AND `cu_user` = ? LIMIT 1;"$data['comm_id'], $log);

    
//if ($data['comm_user'] == $log) {
    
if (in_array($log$arr_admins) && $users['cu_admin'] == 2) {

        
$is_admin_soo true;
        
$is_moder_soo true;
    }

    if (
in_array($log$arr_admins) && $users['cu_admin'] == 1) {

        
$is_moder_soo true;
    }
}

if (
$data['comm_status'] == && empty($users)) {

    
$inSes->addMessage('Форум только для участников сообщества!');
    
gen_red('index'''RND);
}

$rows $db->select("SELECT * FROM ?_comm_forums WHERE `forums_comm` = ? ORDER BY `forums_order` ASC;"$data['comm_id']);

$forums = array();

if (!empty(
$rows) && count($rows) > 0) {

    foreach(
$rows as $row) {

        
$forums[$row['forums_id']] = $row['forums_name'];
    }
}

if (!empty(
$_POST['cancel'])) {

    
gen_red('forum'$idRND);
}

if (!empty(
$_POST['submit'])) {

    
$fid   = !empty($_POST['fid'])  ? num($_POST['fid'])    : 0;
    
$name  = !empty($_POST['name']) ? check($_POST['name']) : '';
    
$text  = !empty($_POST['text']) ? check($_POST['text']) : '';
    
$error '';

    if (
$is_logged) {

      if (!empty(
$users)) {

        if (!empty(
$_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {

          if (
cms_strlen($name) >= && cms_strlen($name) <= 100) {

            if (
cms_strlen($text) >= 10 && cms_strlen($text) <= $config['forum_max_text'] || is_admin()) {

              
//$row = $db->selectRow("SELECT * FROM ?_comm_forums
                                     //WHERE `forums_id` = ? AND `forums_comm` = ? LIMIT 1;", $fid, $data['comm_id']);

              
if (array_key_exists($fid,$forums)) {

                if (
is_quarantine($log)) {

                  if (
is_flood($log)) {

                    
$text antimat($text);
                    
$text smiles($text);

                    if (
$is_moder_soo) {

                        
$pswd = !empty($_POST['pswd']) ? check($_POST['pswd']) : '';
                    }
                    else 
$pswd '';

/*
                    $db->query("UPDATE ?_users SET `users_allforum` = (`users_allforum` + 1), `users_point` = (`users_point` + 1), `users_money` = (`users_money` + 5) WHERE `users_login` = ?", $log);
*/
                    
$lastid $db->query("INSERT INTO ?_comm_topics (`topics_comm`, `topics_forums_id`, `topics_title`, `topics_author`, `topics_password`, `topics_posts`, `topics_last_user`, `topics_last_time`) VALUES (?, ?, ?, ?, ?, ?, ?, ?);"$data['comm_id'], $fid$name$log$pswd1$logSITE_TIME);

                    
$db->query("INSERT INTO ?_comm_posts (`posts_comm`, `posts_topics_id`, `posts_forums_id`, `posts_user`, `posts_text`, `posts_time`, `posts_ip`, `posts_brow`) VALUES (?, ?, ?, ?, ?, ?, ?, ?);"$data['comm_id'], $lastid$fid$log$textSITE_TIME$ip$brow);

                    
$db->query("UPDATE ?_comm_forums SET `forums_topics` = (`forums_topics` + 1), `forums_posts` = (`forums_posts` + 1), `forums_last_id` = ?, `forums_last_themes` = ?, `forums_last_user` = ?, `forums_last_time` = ? WHERE `forums_id` = ? AND `forums_comm` = ?"$lastid$name$logSITE_TIME$fid$data['comm_id']);

                    
$inSes->addMessage('Новая тема успешно добавлена!''ok');

                    
gen_red('topic'$lastidRND);
                  }
                  else 
$inSes->addMessage('Антифлуд! Разрешается отправлять сообщения раз в ' flood_period() . ' секунд!');
                }
                else 
$inSes->addMessage('Карантин! Вы не можете писать в течении ' round($config['karantin'] / 3600) . ' часов!');
              }
              else 
$inSes->addMessage('Ошибка! Раздела для новой темы не существует!');
            }
            else 
$inSes->addMessage('Ошибка! Слишком длинное или короткое сообщение!');
          }
          else 
$inSes->addMessage('Ошибка! Слишком длинный или короткий заголовок темы!');
        }
        else 
$inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
      }
      else 
$inSes->addMessage('Ошибка! Создавать темы могут только участники сообщества!');
    }
    else 
$inSes->addMessage('Ошибка! Создавать темы могут только зарегистрированые пользователи сайта!');
}

show_header('Создание новой темы');

if (
$is_logged) {

    if (
count($forums) > 0) {

       if (!empty(
$_GET['code'])) include( MODULES_PATH 'code.inc.php' );
       else if (!empty(
$_GET['smiles'])) include( MODULES_PATH 'smiles.inc.php' );

        
$form = new cmsForm(gen_uri('add_themes'$id'rnd=' $_SESSION['token']), 'post'' name="form" id="form"');
        
$form->addSelect('Раздел:''fid'$id$forums);
        
$form->addText('Заголовок:''name'request('name'), ' size="50" maxlength="50"');
        
$form->addCode(blink('*') . ' Сообщение: ');
        
$form->addCode('<small>[<a href="' gen_uri('add_themes'$id'smiles=1&amp;' RND) . '">Смайлы</a>] ');
        
$form->addCode('[<a href="' gen_uri('add_themes'$id'code=1&amp;' RND) . '">ББ-коды</a>]</small>');
        
$form->addCode(' [<a href="#form" onclick="document.form.text.rows += 5;">+</a>] ');
        
$form->addCode(' [<a href="#form" onclick="document.form.text.rows -= 5;">-</a>]');
        
$form->addTextarea('''text'request('text'), ' id="text" style="width:98%;"');
        if (
$is_moder_soo$form->addText('Закрыть паролем:''pswd'request('pswd'));
        echo 
$form->Submit(array('Создать тему','Отмена'), array('submit','cancel'));
        unset(
$form);

        echo 
'<div class="b">';
        echo 
'Прежде чем создать новую тему необходимо ознакомиться с правилами<br />';
        echo 
'<a href="' gen_uri('rules'''RND) . '">Правила сообщества</a><br />';
        echo 
'Также убедись что такой темы нет, чтобы не создавать одинаковые, для этого введи ключевое слово в поиске<br />';
        echo 
'<a href="' gen_uri('search'''RND) . '">Поиск по форуму</a><br />';
        echo 
'И если после этого вы уверены, что ваша тема будет интересна другим пользователям, то можете ее создать.<br /></div>';
    }
    else {

        
show_error('Разделы форума еще не созданы!');
    }
}
else {

    
show_login('Вы не авторизованы, для создания новой темы, необходимо');
}

echo 
'<div class="b">' icon('return.png') . ' <a href="' gen_uri('forum'$idRND) . '">Вернуться</a><br /></div>';

?>
Онлайн: 1
Реклама