Вход Регистрация
Файл: vsime.com/diary/inc/act_create.php
Строк: 259
<?
    if_user
('is_reg');
    if (
$user['diary_time'] > $time)
    {
        
$title .= ' - Ошибка'//заголовок
        
ex_head();
        
$error[] = "Можно создавать только одну запись в минуту.";
        
show_errors();
        
ex_foot();
    }
    
$links_hist['name'] = "$user[nick] / Дневник / Новая запись";
    
$title .= ' - Новая запись'//заголовок
    
ex_head();
    if(!isset(
$_SESSION['diary_new']))
    {
        
$_SESSION['diary_new']=array();
        
$_SESSION['diary_new']['name']=NULL;
        
$_SESSION['diary_new']['text']=NULL;
        
$_SESSION['diary_new']['adult']=0;
        
$_SESSION['diary_new']['access']='all';
        
$_SESSION['diary_new']['komm']='all';
        
$_SESSION['diary_new']['tags']=NULL;
    }
    
$diary_new=$_SESSION['diary_new'];
    
$array_access = array('all' => 'всем''only_me' => 'только мне''friends' => 'моим друзьям''pass' => 'только по паролю''auth' => 'только авторизированным');
    if (isset(
$_GET['access']) && isset($_SESSION['diary_new']['access']))
    {
        if(isset(
$_POST['submited']))
        {
            if(
$_POST['access']=='pass')
            {
                if(
strlen($_POST['password']) < $min_size_pass)$error[] = 'Введите пароль!';
                if(
strlen($_POST['password']) > $max_size_pass)$error[] = 'Пароль слишком длинный!';
            }
            if (!isset(
$error))
            {
                if (
in_array($_POST['access'], array('all','only_me','friends','pass','auth')))$_SESSION['diary_new']['access'] = $_POST['access'];
                
$_SESSION['diary_new']['password'] = my_esc($_POST['password']);
                
header("Location: ?act=create");
                exit;
            }
        }
        
show_errors();
        echo 
"<form method='post' action=''>n";
            echo 
"Запись доступна:<br />n";
            foreach (
$array_access AS $key => $value)
            {
                echo 
"<input type='radio' name='access' id='$key' value='$key'".($diary_new['access']==$key?" CHECKED":null)."/> <label for='$key'>".$config["code_status_$key"].$array_access[$key]</label>".($key == 'pass'?": <input name='password' size='16' maxlength='$max_size_pass' type='text' value='".($diary_new['access']=='pass'?$diary_new['password']:null)."'/>":NULL)."<br />n";
            }
            echo 
"<input type='submit' name='submited' value='OK'/>n";
        echo 
"</form>n";
        
ex_foot();
    }
    if (isset(
$_GET['komm']) && isset($_SESSION['diary_new']['komm']))
    {
        if (isset(
$_POST['submited']))
        {
            if(
in_array($_POST['komm'],array('all','only_me','friends')))$_SESSION['diary_new']['komm']=$_POST['komm'];
            
header("Location: ?act=create");
            exit;
        }
        echo 
"<form method='post' action=''>n";
            echo 
"Комментирование разрешено:<br />n";
            foreach (
$array_access AS $key => $value)
            {
                if (
$key != 'pass' && $key != 'auth')echo "<input type='radio' name='komm' id='$key' value='$key'".($diary_new['komm']==$key?" CHECKED":null)."/><label for='$key'>".$config["code_status_$key"].$array_access[$key]</label><br />n";
            }
            echo 
"<input type='submit' name='submited' value='OK'/>n";
        echo 
"</form>n";
        
ex_foot();
    }
    
        
//-------CREATE DIARY-------\
    
if (isset($_POST['submited']) && isset($_POST['text']) && isset($_POST['name']) && isset($_POST['tags']))
    {
        if (
hsc(@$_POST['mdp'])==$mdp)
        {
            
$name $_POST['name'];
            
$text $_POST['text'];
            
$tags $_POST['tags'];
            if (
strlen($name) > $max_size_name)$error[] = 'Тема слишком длинная.';
            if (
strlen(trim($text)) < $min_size_text)$error[] = 'Введит етекст записи.';
            if (
strlen($text) > $max_size_text)$error[] = 'Текст записи слишком длинный.';
            
$count_tags 0;
            
$array_tags explode(","$tags);
            foreach (
$array_tags as $key => $tag) {
                if (
$tag)$count_tags++;
            }
            if (
$count_tags $max_size_tags)$error[] = 'Слишком много меток.';
            
$count_t 0;
            
$array_tags explode(","$tags);
            
$tags NULL;
            foreach (
$array_tags as $key => $tag)
            {
                if (
$tag) {
                    
$count_t++;
                    if (!
$tags)$tags=$tag; else $tags "$tags$tag";
                }
            }
            if (isset(
$_POST['adult']) && $_POST['adult']==1)$adult=1;else $adult=0;
            if (isset(
$_SESSION['diary_new']['access']) && in_array($_SESSION['diary_new']['access'],array('all','only_me','friends','pass','auth')))$access=$_SESSION['diary_new']['access'];else $access='all';
            if (
$access=='pass')$password=$_SESSION['diary_new']['password'];else $password=NULL;
            if (isset(
$_SESSION['diary_new']['komm']) && in_array($_SESSION['diary_new']['komm'],array('all','only_me','friends')))$komm $_SESSION['diary_new']['komm'];else $komm='all';
            if (isset(
$_SESSION['poll_diary_new']['oki'])) {
                
$poll=1;
                
$poll_text $_SESSION['poll_diary_new']['text'];
                
$poll_timee $_SESSION['poll_diary_new']['polltime'];
                
$poll_check $_SESSION['poll_diary_new']['multi'];
                if(
$poll_timee == 'day')$poll_time_add=3600*24// опрос на один день
                
elseif($poll_timee == '3days')$poll_time_add=3600*24*3// опрос на три дня
                
elseif($poll_timee == 'week')$poll_time_add=3600*24*7// опрос на одну неделю
                
elseif($poll_timee == 'month')$poll_time_add=3600*24*31// опрос на месяц
                
elseif($poll_timee == '3months')$poll_time_add=3600*24*31*3// опрос на три месяца
                
else $poll_time_add 3600*24*31*12*3// опрос поумолчанию (трех лет для "бесконечности" думаю хватит)
                
$poll_time=$time $poll_time_add;
            }
            if (!isset(
$error))
            {
                
mysqli_query($dbi"UPDATE `user` SET `diary_time` = '".(time()+60)."' WHERE `id` = '$user[id]'");
                
mysqli_query($dbi"INSERT INTO `diary` (`id_user`, `name`, `text`, `time`, `tags`, `access`, `adult`, `komm`, `password`".(isset($poll)?", `poll`, `poll_text`, `poll_time`, `poll_time_start`, `poll_timee`, `poll_check`":null).") values ('$user[id]', '".my_esc($name)."', '".my_esc($text)."', '$time', '".my_esc($tags)."', '$access', '$adult', '$komm', '".my_esc($password)."'".(isset($poll)?", '1', '".my_esc($poll_text)."', '$poll_time', '$time', '$poll_timee', '$poll_check'":null).")");
                
$diary_id=mysqli_insert_id($dbi);
                if(isset(
$poll))
                {
                    
$var_num 0;
                    foreach(
$_SESSION['poll_diary_new']['vars'] as $key => $value)
                    {
                        
$var_num++;
                        
mysqli_query($dbi"INSERT INTO `diary_poll` (`id_diary`, `var`, `num`) VALUES ('$diary_id', '".my_esc($value)."', '$var_num')");
                    }
                }
                
$query mysqli_query($dbi"SELECT * FROM `readers` WHERE `id_ank` = '$user[id]' AND `diary` = '1'");
                while (
$reader mysqli_fetch_array($query))
                {
                    
$ank_reader profile($reader['id_user']);
                    
mysqli_query($dbi"INSERT INTO `lenta` (`id_user`, `id_object`, `type`, `id_ank`, `time`) VALUES ('$ank_reader[id]', '$diary_id', 'diary', '$user[id]', '".($time)."')");
                }
                unset(
$_SESSION['diary_new']);
                if(isset(
$_SESSION['poll_diary_new']))unset($_SESSION['poll_diary_new']);
                
header("Location: /diary/?act=diary&id=$diary_id");
                exit;
            }
        } else 
hacked_by_Killer();
    }

    if(isset(
$_SESSION['poll_diary_new']['oki']))
    {
        echo 
"<div class='list_dr'>Опрос прикреплён. Теперь убедитесь, что вы заполнили остальные поля.</div>n";
    }
    if(isset(
$_POST['poll']))
    {
        if(isset(
$_POST['adult']) && $_POST['adult']==1)$_SESSION['diary_new']['adult']=1;else $_SESSION['diary_new']['adult']=0;
        
$_SESSION['diary_new']['name']=$_POST['name'];
        
$_SESSION['diary_new']['text']=$_POST['text'];
        
$_SESSION['diary_new']['tags']=$_POST['tags'];
        
header("Location: /polls/?act=new&case=diary");
        exit;
    } 
// Redirect to Create New Poll
    
if(isset($_POST['access']))
    {
        if(isset(
$_POST['adult']) && $_POST['adult']==1)$_SESSION['diary_new']['adult']=1;else $_SESSION['diary_new']['adult']=0;
        
$_SESSION['diary_new']['name']=$_POST['name'];
        
$_SESSION['diary_new']['text']=$_POST['text'];
        
$_SESSION['diary_new']['tags']=$_POST['tags'];
        
header("Location: ?act=create&access");
        exit;
    } 
// Redirect to edit Access
    
if(isset($_POST['komm']))
    {
        if(isset(
$_POST['adult']) && $_POST['adult']==1)$_SESSION['diary_new']['adult']=1;else $_SESSION['diary_new']['adult']=0;
        
$_SESSION['diary_new']['name']=$_POST['name'];
        
$_SESSION['diary_new']['text']=$_POST['text'];
        
$_SESSION['diary_new']['tags']=$_POST['tags'];
        
header("Location: ?act=create&komm");
        exit;
    } 
// Redirect to edit type of Komming
    
$diary_new=$_SESSION['diary_new'];
    if(isset(
$_POST['name']))$dn=$_POST['name'];
    else 
$dn=$diary_new['name'];
    echo 
"<form method='post' action='' class='multi'>n";
        echo 
"<div class='list'>n";
            echo 
"Тема (".sklon_text($max_size_name,array('знак','знака','знаков')).")<br />n";
            echo 
"<input style='width: 95%' type='text' name='name' size='18' maxlength='50' value='".input_value($dn)."' /><br/>n";
        echo 
"</div>n";
        
input_bbs();
        echo 
"<div class='list'>n";
            echo 
"Запись (".sklon_text($max_size_text,array('знак','знака','знаков')).")<br/>n";
            if(isset(
$_POST['text']))$dt=$_POST['text'];
            else 
$dt=$diary_new['text'];
            echo 
"<textarea id='textarea' name='text' rows='5' cols='17' style='width: 95%'>".input_value($dt)."</textarea><br/>n";
        echo 
"</div>n";
        echo 
"<div class='list'>n";
            echo 
"Прикрепить к записи: n";
            echo 
"<input class='trapar' type='submit' name='poll' value='Опрос'".(isset($_SESSION['poll_diary_new']['oki'])?" disabled='disabled'":NULL)."/>n";
        echo 
"</div>n";
        echo 
"<div class='list'>n";
            if(isset(
$_POST['adult']) && $_POST['adult']==|| $diary_new['adult']==1)$adult=1;
            echo 
"<input type='checkbox' name='adult' id='adult_1' value='1'".(isset($adult)?" checked='checked'":null)."/> <label for='adult_1'>Только для взрослых</label><br />n";
        echo 
"</div>n";
        echo 
"<div class='list'>n";
            if(
$diary_new['access']=='all')$access='всем';
            elseif(
$diary_new['access']=='only_me')$access='только мне';
            elseif(
$diary_new['access']=='friends')$access='моим друзьям';
            elseif(
$diary_new['access']=='pass')$access="только по паролю";
            elseif(
$diary_new['access']=='auth')$access='только авторизированным';
            echo 
"<label for='access'>Запись доступна:</label> n";
            echo 
"<input type='submit' name='access' value='$access' id='access' class='trapar'/><br/>n";
        echo 
"</div>n";
        echo 
"<div class='list'>n";
            if(
$diary_new['komm']=='all')$komm='всем';
            elseif(
$diary_new['komm']=='only_me')$komm='только мне';
            elseif(
$diary_new['komm']=='friends')$komm='моим друзьям';
            echo 
"<label for='komm'>Комментирование разрешено:</label> n";
            echo 
"<input type='submit' name='komm' id='komm' value='$komm' class='trapar'/>n";
        echo 
"</div>n";
        echo 
"<div class='list'>n";
            if(isset(
$_POST['tags']))$dt=$_POST['tags'];
            else 
$dt=$diary_new['tags'];
            echo 
"Добавить метки (через запятую):</span><br/>n";
            echo 
"<input name='tags' value='".input_value($dt)."' style='width:80%'/><br/>n";
            echo 
"<span class='alert'>Всего можно добавить не более ".sklon_text($max_size_tags,array('метки','метки','меток'))."</span><br/>n";
        echo 
"</div>n";
        echo 
"<div class='list'>n";
            echo 
"<input type='submit' name='submited' value='Создать запись'/>n";
            echo 
"<input type='submit' name='previewbtn' value='Предпросмотр'/>n";
        echo 
"</div>n";
        if(isset(
$_POST['previewbtn']) && isset($_POST['text']) && $_POST['text']!=NULL)
        {
            if(isset(
$_POST['adult']) && $_POST['adult']==1)$_SESSION['diary_new']['adult']=1;else $_SESSION['diary_new']['adult']=0;
            
$_SESSION['diary_new']['name']=$_POST['name'];
            
$_SESSION['diary_new']['text']=$_POST['text'];
            
$_SESSION['diary_new']['tags']=$_POST['tags'];
            echo 
"<div class='quote' style='padding: 8px;margin: 0; border-radius: 0;'>n";
                echo 
"<b>Предпросмотр:</b><br/>n";
                echo 
output_text($_POST['text'], $user['id'])."</div>n";
            echo 
"</div>n";
        }
        echo 
"<input type='hidden' name='mdp' value='".$mdp."'/>n";
    echo 
"</form>n";
    echo 
"<div class='foot'>n";
        echo 
image_back()."<a href='/diary/?act=user&id=$user[id]'>Назад</a>n";
    echo 
"</div>";
    
ex_foot();
?>
Онлайн: 0
Реклама