<?
/* Mixanza
* Дата последнего редактирования 29.08.2018
* Модифицировал Mixanza
*/
foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
require_once "../../sys/inc/$inc.php";
}
$set['title']='Новая запись';
include_once '../../sys/inc/thead.php';
$ban_n = $pdo->query("SELECT * FROM `ban_blogs` WHERE `id_user` = '".intval($user['id'])."' AND `status` = '1' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if ($ban_n['status']==1)
{
header('location: /modules/blogs/admin/ban_user.php');
}
if (isset($user) && $pdo->query(("SELECT COUNT(*) FROM `dlist` WHERE `id_user` = '$user[id]'"), 0)->fetchColumn()==0)
{
$pdo->query("INSERT INTO `dlist` (`id_user`) values('". intval($user['id']) ."')");
header("Location: ?");
}
if (!isset($user)){header("location: index.php?");exit;}
if (isset($_POST['title']) && isset($_POST['msg']) && !isset($_POST['plus']) && !isset($_POST['minus']))
{
if (isset($_POST['msg2']) && !isset($_POST['plus']) && !isset($_POST['minus']))
{
$msg2 = stripslashes(htmlspecialchars($_POST['msg2']));
if (utf8_strlen($msg2)>250){ $err[] = 'Опрос содержит более 250 символов'; }
if (utf8_strlen($msg2)<3){ $err[] = 'Опрос содержит менее 3 символов'; }
// Если добавляют или убирают форму
for ($i=1; $i < $_SESSION['forms']; $i++)
{ $_SESSION['variant_' . $i] = htmlspecialchars($_POST['varian_' . $i]);
if (utf8_strlen(htmlspecialchars($_POST['varian_' . $i])) > 125){ $err[] = 'Вариант №' . $i . ' содержит более 250 символов'; }
if (utf8_strlen(htmlspecialchars($_POST['varian_' . $i])) < 1){ $err[] = 'Вариант №' . $i . ' содержит менее 1 символа'; }
}}
}
#Навигация
echo "<div class='card-header'>";
echo "<a href='/' data-toggle='tooltipecho' data-placement='right' title='" . lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='/info.php?$user[id]'>$user[nick]</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='user.php?id=$user[id]'>";
echo lang('Блог');
echo "</a> <i class='fa fa-angle-right fa-fw'></i> Новая запись</div>";
echo "<div class='list-group-item'>";
if (isset($_GET['delf']) && is_numeric($_GET['delf']) && $pdo->query(("SELECT COUNT(*) FROM `notes_files` WHERE `id` = '".intval($_GET['delf'])."' AND `id_user` = '".intval($user['id'])."'"),0)!=0){
$file = $pdo->query("SELECT * FROM `notes_files` WHERE `id` = '".intval($_GET['delf'])."' AND `id_user` = '".intval($user['id'])."' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if($file['type']=='files' && isset($file['id'])){
@unlink(H.'sys/blogs/files/' . $file['id'] . '.dat');
@unlink(H.'sys/blogs/screen/' . $file['id'] . '.png');
@unlink(H.'sys/blogs/screen/' . $file['id'] . '.gif');
}
$pdo->query("DELETE FROM `notes_files` WHERE `id` = '".intval($_GET['delf'])."' AND `id_user` = '".intval($user['id'])."'");
$_SESSION['message'] = 'Вложение успешно удалено';
header("Location: ?");
}
if(isset($_POST['files']) && !isset($_POST['add'])){
if(isset($_POST['title']))$_SESSION['notes_title']=htmlspecialchars($_POST['title']);
if(isset($_POST['msg']))$_SESSION['notes_msg']=htmlspecialchars($_POST['msg']);
if(isset($_POST['pass']))$_SESSION['notes_pass2']=htmlspecialchars($_POST['pass']);
if(isset($_POST['id_dir']))$_SESSION['notes_id_dir']=intval($_POST['id_dir']);
if(isset($_POST['private']))$_SESSION['notes_private']=intval($_POST['private']);
if(isset($_POST['private_komm']))$_SESSION['notes_private_komm']=intval($_POST['private_komm']);
header('Location: file.php');
exit;
}
if (isset($_POST['title']) && isset($_POST['msg']) && isset($_POST['add']) && !isset($_POST['files']))
{
if(isset($_POST['title']))$_SESSION['notes_title']=htmlspecialchars($_POST['title']);
if(isset($_POST['msg']))$_SESSION['notes_msg']=htmlspecialchars($_POST['msg']);
if(isset($_POST['pass']))$_SESSION['notes_pass2']=htmlspecialchars($_POST['pass']);
if(isset($_POST['id_dir']))$_SESSION['notes_id_dir']=intval($_POST['id_dir']);
if(isset($_POST['private']))$_SESSION['notes_private']=intval($_POST['private']);
if(isset($_POST['private_komm']))$_SESSION['notes_private_komm']=intval($_POST['private_komm']);
if(isset($_POST['pass'])){
$pass = stripslashes(htmlspecialchars($_POST['pass']));
}else{
$pass = NULL;
}
if (utf8_strlen($pass)>100){ $err[] = 'Пароль содержит более 100 символов'; }
if (!isset($err))
{
$title = htmlspecialchars($_POST['title']);
$msg = htmlspecialchars($_POST['msg']);
$href= htmlspecialchars($_POST['ist']);
$id_dir = intval($_POST['id_dir']);
if (isset($_POST['private'])){
$privat=intval($_POST['private']);
}else{
$privat=0;
}if (isset($_POST['private_komm'])){
$privat_komm=intval($_POST['private_komm']);
}else{
$privat_komm=0;
}
if($_POST['id_dir']==0){
$type=0;
}else{
$type=1;
}
if (isset($_POST['metka']) && ($_POST['metka'] == '0' || $_POST['metka'] == '1'))$metka = $_POST['metka'];
else $metka = 0;
if (utf8_strlen($title)>150){$err='Название не может превышать больше 150 символов';}
if (utf8_strlen($title)<3){$err='Короткое название';}
if (utf8_strlen($href)>200){$err='Ссылка не может превышать больше 200 символов';}
if (utf8_strlen($msg)>30000){$err='Содержание не может превышать больше 30000 символов';}
if (utf8_strlen($msg)<2 && $type == 0){$err='Содержание слишком короткое';}
if (!isset($err)){
$dlist = $pdo->query("SELECT * FROM `dlist` WHERE `id_user` = '".$user['id']."' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if (isset($user) && $pdo->query(("SELECT COUNT(*) FROM `dlist` WHERE `id_user` = '$user[id]' AND `blogs` = '3'"), 0)->fetchColumn()==0)
{
$pdo->query("UPDATE `dlist` SET `blogs` = '" . ($dlist['blogs'] + 1) . "' WHERE `id_user` = '".intval($user['id'])."' LIMIT 1");
}
if (isset($user) && $pdo->query(("SELECT COUNT(*) FROM `dlist` WHERE `id_user` = '$user[id]' AND `blogs` = '3' AND `blogs_ok` = '0'"), 0)->fetchColumn())
{
$pdo->query("UPDATE `user` SET `activity` = '" . ($user['activity'] + $dlist['blogs_v']) . "' WHERE `id` = '".intval($user['id'])."' LIMIT 1");
$pdo->query("UPDATE `dlist` SET `blogs_ok` = '1' WHERE `id_user` = '".intval($user['id'])."' LIMIT 1");
$pdo->query("INSERT INTO `jurnal_balls` (`time`, `msg`, `id_user`, `balls`, `id_post`, `type`, `type_post`) values('$time', 'Выполнение достижения', '".intval($user['id'])."', '".intval($dlist['blogs_v'])."', '".intval($id_file)."', 'plus', 'games')");
$b222 = $dlist['blogs_v'] + 25;
}else{
$b222 = 25;
}
$pdo->query("UPDATE `user` SET `activity` = '" . ($user['activity'] + $b222) . "' WHERE `id` = '".intval($user['id'])."' LIMIT 1");
$pdo->query("INSERT INTO `notes` (`metka`, `href`, `time`, `msg`, `name`, `id_user`, `private`, `private_komm`, `id_dir`, `cat_alt`, `type`) values('".intval($metka)."', '$href', '$time', '$msg', '$title', '".intval($user['id'])."', '".intval($privat)."', '".intval($privat_komm)."', '".intval($id_dir)."', '".intval($id_dir)."', '$type')");
$st = $pdo->lastInsertId();
$id_file = $pdo->lastInsertId();
$pdo->query("UPDATE `notes_files` SET `id_post` = '".intval($id_file)."' WHERE `id_user`='".intval($user['id'])."' AND `id_post`='0'");
$pdo->query("UPDATE `posters` SET `id_post` = '".intval($id_file)."' WHERE `id_user`='".intval($user['id'])."' AND `id_post`='0'");
$pdo->query("INSERT INTO `jurnal_balls` (`time`, `msg`, `id_user`, `balls`, `id_post`, `type`, `type_post`) values('$time', 'Добавление записи в блог', '".intval($user['id'])."', '25', '".intval($id_file)."', 'plus', 'notes')");
if (isset($_POST['msg2']) && isset($_GET['create']) && $_GET['create']=='opros' && !isset($_POST['plus']) && !isset($_POST['minus']))
{
$msg2 = stripslashes(htmlspecialchars($_POST['msg2']));
$pdo->query("INSERT INTO `notes_votes` (`time`, `msg`, `id_user`, `id_notes`) values('$time', '$msg2', '".intval($user['id'])."', '".intval($st)."')");
$ID = $pdo->lastInsertId();
for ($i=1; $i < $_SESSION['forms']; $i++)
{
$otvet = htmlspecialchars($_POST['varian_' . $i]);
$pdo->query("INSERT INTO `notes_votes_variant` (`num`, `otvet`, `id_votes`) values('$i', '$otvet', '".intval($ID)."')")->fetchColumn();
$_SESSION['variant_' . $i] = NULL;
}
$_SESSION['forms'] = 3;
$_SESSION['poster'] = NULL;//
}
//////////////// лента ////////////////
$q = $pdo->query("SELECT * FROM `friends` WHERE `user` = '".intval($user['id'])."' AND `lenta_diary` = '1' AND `i`='1'");
while ($f = $q->fetch(PDO::FETCH_ASSOC)) {
$a = $pdo->query(("SELECT * FROM `user` WHERE `id` = '".intval($f['friends'])."' LIMIT 1"))->fetch(PDO::FETCH_BOTH);
$name2="создал(а) запись в блоге";
$lentams="[url=/modules/blogs/list.php?id=$st ] $title [/url]";
$pdo->query("INSERT INTO `lenta` (`id_user`, `id_kont`, `msg`, `name`, `type`, `time`) values('".intval($user['id'])."', '$a[id]', '".htmlspecialchars($lentams)."', '".htmlspecialchars($name2)."', 'user_blog', '$time')");
}
//////////////////////////////////////////
$pdo->query("OPTIMIZE TABLE `notes`");
$_SESSION['notes_title']=NULL;
$_SESSION['notes_msg']=NULL;
$_SESSION['notes_pass2']=NULL;
$_SESSION['notes_id_dir']=0;
$_SESSION['notes_private']=0;
$_SESSION['notes_private_komm']=0;
$_SESSION['message'] = 'Запись успешно создана';
header("Location: list.php?id=$id_file");
$_SESSION['captcha']=NULL;
exit;
}
}
}
err();
aut();
if(isset($_SESSION['notes_title']))$title=htmlspecialchars($_SESSION['notes_title']);
else $title=NULL;
if(isset($_SESSION['notes_msg']))$msg=htmlspecialchars($_SESSION['notes_msg']);
else $msg=NULL;
if(isset($_SESSION['notes_pass2']))$pass=htmlspecialchars($_SESSION['notes_pass2']);
else $pass=NULL;
if(isset($_SESSION['notes_id_dir']))$id_dir=intval($_SESSION['notes_id_dir']);
else $id_dir=0;
if(isset($_SESSION['notes_private']))$private=intval($_SESSION['notes_private']);
else $private=0;
if(isset($_SESSION['notes_private_komm']))$private_komm=intval($_SESSION['notes_private_komm']);
else $private_komm=0;
if (isset($_GET['id_dir']))$id_dir=intval($_GET['id_dir']);
if(isset($_GET['create']) && $_GET['create']=='opros'){
if (!isset($_SESSION['poster']))
{
$_SESSION['poster'] = NULL;
}
if (isset($_POST['plus']) || isset($_POST['minus']))
{
$_SESSION['poster'] = htmlspecialchars($_POST['msg2']);
for ($i=1; $i < $_SESSION['forms']; $i++)
{
$_SESSION['variant_' . $i] = htmlspecialchars($_POST['varian_' . $i]);
}
}
echo "<form method=\"post\" name=\"message\" action=\"add.php?create=opros\" enctype=\"multipart/form-data\">\n";
}else{
echo "<form method=\"post\" name=\"message\" action=\"add.php\" enctype=\"multipart/form-data\">\n";
}
echo "<form method=\"post\" name=\"message\" action=\"add.php\">\n";
echo "<b>Название</b> <font color=gray><small>(150 символов)</small></font>:<br />\n<input class=\"form-control\" placeholder=\"Введите название...\" name=\"title\" size=\"16\" maxlength=\"250\" value=\"".htmlspecialchars($title)."\" type=\"text\" /><br />\n";
echo "<b>Содержание</b> <font color=gray><small>(30000 символов)</small></font>:<br />\n";
echo auto_bb("message", "msg");
echo "<textarea placeholder=\"Введите текст...\" name=\"msg\" rows='5' class=\"form-control\" style=\"height: 100%;\"></textarea>\n";
$posters = $pdo->query("SELECT * FROM `posters` WHERE `id_user` = '".intval($user['id'])."' AND `id_post` = '0' AND `type` = '1'");
while ($poster = $posters->fetch(PDO::FETCH_ASSOC))
{
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;">';
echo"<i class='fa fa-pencil fa-fw'></i> ";
echo 'Постер';
if (isset($_GET['id'])){
$pdo->query("DELETE FROM `posters` WHERE `id_user` = '".intval($user['id'])."' AND `id` = '".intval($_GET['id'])."'");
header("Location: add.php");
}
echo' <a href="?id='.$poster['id'].'"><font color=#F56257><i class="fa fa-trash fa-lg"></i></font></a>';
echo "</span><br>";
}
$files = $pdo->query("SELECT * FROM `notes_files` WHERE `id_user` = '".intval($user['id'])."' AND `id_post` = '0'");
while ($post = $files->fetch(PDO::FETCH_ASSOC))
{
if($post['type']=='foto'){
$file_id = $pdo->query("SELECT * FROM `gallery_foto` WHERE `id_user` = '".intval($user['id'])."' AND `id` = '".intval($post['id_file'])."'")->fetch(PDO::FETCH_BOTH);
if(isset($file_id['id'])){
echo "<span class='btn btn-secondary btn-sm' style='margin: 1px;'><i class='fa fa-camera fa-fw'></i> ";
echo toOutput(htmlspecialchars($file_id['name']));
}
}elseif($post['type']=='files'){
$ras = htmlspecialchars($post['ras']);
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;">';
echo"<i class='fa fa-camera fa-fw'></i> ";
echo htmlspecialchars($post['name']);
}elseif($post['type']=='files_video'){
$ras = htmlspecialchars($post['ras']);
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;">';
echo"<i class='fa fa-film fa-fw'></i> ";
echo htmlspecialchars($post['name']);
}
elseif($post['type']=='files_music'){
$ras = htmlspecialchars($post['ras']);
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;">';
echo"<i class='fa fa-music fa-fw'></i> ";
echo htmlspecialchars($post['name']);
}elseif($post['type']=='files_file'){
$ras = htmlspecialchars($post['ras']);
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;">';
echo"<i class='fa fa-file fa-fw'></i> ";
echo htmlspecialchars($post['name']);
}
echo' <a href="?id='.$post['id'].'&delf='.$post['id'].'"><font color=#F56257><i class="fa fa-trash fa-lg"></i></font></a>';
echo '</span><br>';
}
echo "<br /><b>Прикрепить:</b> \n";
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="file.php"><i class="fa fa-camera fa-fw"></i> Фото</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="files/file_vid.php"><i class="fa fa-film fa-fw"></i> Видео</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="files/file_mus.php"><i class="fa fa-music fa-fw"></i> Музыку</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="files/file_fil.php"><i class="fa fa-file fa-fw"></i> Файл</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="posters.php"><i class="fa fa-pencil fa-fw"></i> Постер</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="?create=opros"><i class="fa fa-bullhorn fa-fw"></i> Опрос</a> ';
if(isset($_GET['create']) && $_GET['create']=='opros'){
echo '<div style="border: 1px #A7CCDD solid; padding: 3px; margin: 1px;">';
// Если добавляют или убирают форму
if (isset($_POST['plus']) && $_SESSION['forms'] < 11){ $_SESSION['forms'] = $_SESSION['forms'] + 1; header('Location: add.php?create=opros'); exit; } // Добавляем формы ответа
if (isset($_POST['minus']) && $_SESSION['forms'] > 3){ $_SESSION['forms'] = $_SESSION['forms'] - 1; header('Location: add.php?create=opros'); exit; } // Убираем формы ответа
$msg2 = htmlspecialchars($_SESSION['poster']);
echo '<b>Опрос:</b><br/>';
echo '<input class="form-control" name="msg2" type="text" placeholder="Название опроса...">' . $msg2 . '</input><br />';
if (isset($_SESSION['forms'])) // Колличество форм для ответа
$forms = intval($_SESSION['forms']);
else $forms = 3;
$_SESSION['forms'] = $forms;
for ($i=1; $i<$forms; $i++)
{
// Цвет названия форм вариантов
$color = $i.$i.$i;
$color = $color.$color + $color + $color - ($color / 2);
// Если вариант небыл заполнен
if (!isset($_SESSION['variant_' . $i]))$_SESSION['variant_' . $i] = NULL;
// Форма вариантов
echo '<b>Вариант №' . $i . '</b><br /><input type="text" class="form-control" value="' . htmlspecialchars($_SESSION['variant_' . $i]) . '" name="varian_' . $i . '" maxlength="125" placeholder="Введите вариант..."/><br />';
}
// Добавляем форму
if ($forms < 11)echo '<input class="btn btn-primary btn-sm" name="plus" value="[+] Еще вариант" type="submit"/> ';
// Убираем форму
if ($forms > 3)echo '<input class="btn btn-primary btn-sm" name="minus" value="[-] Убрать вариант" type="submit"/> ';
echo"<br /><br />";
?>Опрос будет добавлен автоматически после нажатия на кнопку "создать запись"<?
echo"<br />";
echo '</div>';
}
echo "<br /><br /><div class='mess'>";
echo "<b>Категория:</b><br />\n<select name='id_dir' class='form-control' style='width: 50%;'>\n";
$q = $pdo->query("SELECT * FROM `notes_dir` ORDER BY `id` DESC");
echo "<option value='0'".($id_dir==0?" selected='selected'":null)."><b>Без категории</b></option>\n";
while ($post = $q->fetch(PDO::FETCH_ASSOC))
{
echo "<option value='$post[id]'".($id_dir == $post['id']?" selected='selected'" : null).">" . text($post['name']) . "</option>\n";
}
echo "</select><br />\n";
echo "При добавлении записи в неправильную категорию, запись будет удалена модератором, а вы получите штраф <b><font color=red>-200</font> баллов</b>.</div><br>";
echo "<b>Пароль</b> <font color=gray><small>(при желании)</small></font>:<br />\n<input name=\"pass\" size=\"16\" maxlength=\"100\" value=\"".text($pass)."\" type=\"text\" class='form-control' style='width: 50%;'/><br />\n";
echo "<b>Ссылка на источник</b> <font color=gray><small>(при желании если вы скопировали пост с другого сайта)</small></font>:<br />\n<input name=\"ist\" size=\"16\" maxlength=\"200\" type=\"text\" class='form-control' style='width: 50%;'/><br />\n";
echo "<b>Могут смотреть:</b><br /><input name='private' type='radio' value='0' ".($private==0?"checked='checked'":null)."/> <i class='fa fa-unlock fa-fw'></i> Все <br/>";
echo "<input name='private' type='radio' value='1' ".($private==1?"checked='checked'":null)." /> <i class='fa fa-users fa-fw'></i> Друзья <br/>";
echo "<input name='private' type='radio' value='2' ".($private==2?"checked='checked'":null)." /> <i class='fa fa-lock fa-fw'></i> Только я<br/>";
echo "<br /><b>Могут комментировать:</b><br /><input name='private_komm' type='radio' value='0' ".($private_komm==0?"checked='checked'":null)." /> <i class='fa fa-unlock fa-fw'></i> Все <br/>";
echo "<input name='private_komm' type='radio' value='1' ".($private_komm==1?"checked='checked'":null)." /> <i class='fa fa-users fa-fw'></i> Друзья <br/>";
echo "<input name='private_komm' type='radio' value='2' ".($private_komm==2?"checked='checked'":null)." /> <i class='fa fa-lock fa-fw'></i> Только я<br/>";
echo "<br>\n";
echo "<label><input type='checkbox' name='metka' value='1' /> Метка <span style='border: 1px #AEB6BD solid; border-radius: 3px; color: red;'><small><b>18+</b></small></span></label><br /><br />";
$doc->Button('knopka', 'add', '', 'Создать запись');
echo "</form>\n";
echo"<br>";
echo "<div class='mess'>За добавление записи в блог <b><font color=blue>+25</font> баллов</b> к зачислению. За удаление <b><font color=red>-25</font> баллов</b>.</div>";
echo"<br>";
echo "</div>\n";
include_once '../../sys/inc/tfoot.php';
?>