<?
foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
require_once "../../../sys/inc/$inc.php";
}
only_reg('/reg.php');
$num=1;
if(isset($_GET['id']) && $pdo->query(("SELECT COUNT(*) FROM `soo` WHERE `id` = '".intval($_GET['id'])."' LIMIT 1"),0)->fetchColumn()==1)
{
$s=intval($_GET['id']);
$soo = $pdo->query(("SELECT * FROM `soo` WHERE `id` = '$s' LIMIT 1"))->fetch(PDO::FETCH_ASSOC);
if(isset($_GET['edit']) && $pdo->query(("SELECT COUNT(*) FROM `soo_news` WHERE `id` = '".intval($_GET['edit'])."' AND `id_soo`='$soo[id]' LIMIT 1"),0)->fetchColumn()==1)
{
$id = intval($_GET['edit']);
}else{
header('Location: /modules/groups/group.php?id='.$soo['id'].'');exit;
}
$news = $pdo->query("SELECT * FROM `soo_news` WHERE `id_soo`='$soo[id]' AND `id`='$id'")->fetch(PDO::FETCH_ASSOC);
if($soo['private_newsadd']==0){
$newsadd = $pdo->query(("SELECT COUNT(*) FROM `soo_users` WHERE `id_soo` = '$soo[id]' AND `id_user`='$user[id]' LIMIT 1"),0)->fetchColumn()==0 && $user['id']!=$soo['admid'];
}elseif($soo['private_newsadd']==1){
$newsadd = $pdo->query(("SELECT COUNT(*) FROM `soo_users` WHERE `id_soo` = '$soo[id]' AND `id_user`='$user[id]' AND `mod` = '1' LIMIT 1"),0)->fetchColumn()==0 && $user['id']!=$soo['admid'];
}elseif($soo['private_newsadd']==2){
$newsadd = $pdo->query(("SELECT COUNT(*) FROM `soo` WHERE `id` = '$soo[id]' AND `admid` = '$user[id]' LIMIT 1"),0)->fetchColumn()==0 && $user['id']!=$soo['admid'];
}
if($soo['private_newsadd']==$soo['private_newsadd'] && $newsadd)
{
}else{
$mod = $pdo->query(("SELECT COUNT(*) FROM `soo_users` WHERE `id_soo` = '$soo[id]' AND `id_user`='$user[id]' AND `mod` = '1' LIMIT 1"),0)->fetchColumn();
if(isset($user) && $user['id']==$soo['admid'] || $user['id']==$news['avtor'] || $mod || access('adm_mysql'))
{
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 символа'; }
}}
}
if(isset($_POST['foto_upload']) && !isset($_POST['edit'])){
header('Location: foto_edit.php?id='.$soo['id'].'&edit='.$news['id'].'');
exit;
}
$soo = $pdo->query(("SELECT * FROM `soo` WHERE `id` = '".intval($_GET['id'])."' LIMIT 1"))->fetch(PDO::FETCH_ASSOC);
include_once '../../../modules/groups/inc/ban.php';
$set['title']='Редактирование записи'; // заголовок страницы
include_once '../../../sys/inc/thead.php';
$soo = $pdo->query(("SELECT * FROM `soo` WHERE `id` = '$s' LIMIT 1"))->fetch(PDO::FETCH_ASSOC);
#Навигация
echo "<div class='card-header'>";
echo "<a href='/' data-toggle='tooltip' 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='/modules/groups/group.php?id=$soo[id]'>$soo[name]</a> <i class='fa fa-angle-right fa-fw'></i> <a href='/modules/groups/news/news.php?id=$soo[id]'>";
echo lang('блог группы');
echo "</a> <i class='fa fa-angle-right fa-fw'></i> редактирование</div>";
///////////////////////////
if (isset($_GET['delf']) && is_numeric($_GET['delf']) && ($pdo->query(("SELECT COUNT(*) FROM `soo_news_foto` WHERE `id` = '".intval($_GET['delf'])."' AND `id_user` = '".intval($user['id'])."'"),0)->fetchColumn()!=0 || $pdo->query(("SELECT COUNT(*) FROM `soo_news_foto` WHERE `id` = '".intval($_GET['delf'])."'"),0)->fetchColumn()!=0 && access('adm_show_adm'))){
$foto = $pdo->query("SELECT * FROM `soo_news_foto` WHERE `id` = '".intval($_GET['delf'])."' AND `id_user` = '".intval($user['id'])."' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if($foto['type']=='foto_upload' && isset($foto['id'])){
@unlink(H.'sys/groups/foto/' . $foto['id'] . '.dat');
@unlink(H.'sys/groups/foto/' . $foto['id'] . '.png');
@unlink(H.'sys/groups/foto/' . $foto['id'] . '.gif');
}
$pdo->query("DELETE FROM `soo_news_foto` WHERE `id` = '".intval($_GET['delf'])."' AND `id_user` = '".intval($user['id'])."'");
msg('Файл успешно удален');
}
///////////////////////////
if($soo['konf_soo']==0 || isset($user) && $pdo->query(("SELECT COUNT(*) FROM `soo_users` WHERE `id_soo` = '$soo[id]' AND `id_user`='$user[id]' AND `invit`='0' AND `activate`='0' LIMIT 1"),0)->fetchColumn()==1 || isset($user) && $user['id']==$soo['admid'] || isset($user) && $user['level']>0)
{
$news = $pdo->query("SELECT * FROM `soo_news` WHERE `id_soo`='$soo[id]' AND `id`='$id' ORDER BY `time`")->fetch(PDO::FETCH_ASSOC);
$notes = $pdo->query("SELECT * FROM `notes` WHERE `id_soo`='$soo[id]' AND `id_news`='$news[id]' ORDER BY `time`")->fetch(PDO::FETCH_ASSOC);
echo "<div class='list-group-item'>\n";
if(isset($_POST['name']) && isset($_POST['msg']) && !isset($_POST['files']))
{
$name=stripcslashes(htmlspecialchars($_POST['name']));
if (utf8_strlen($name)<1)$err[]='Короткий заголовок записи';
if (utf8_strlen($name)>150)$err[]='Заголовок записи не должен быть длиннее 150 символов';
$mat=antimat($name);
if ($mat)$err[]='В заголовке обнаружен мат: '.$mat;
$mess = stripcslashes(htmlspecialchars($_POST['msg']));
if (utf8_strlen($mess)<3)$err[]='Короткое сообщение';
if (utf8_strlen($mess)>30000)$err[]='Сообщение не должно быть длиннее 30000 символов';
$mat=antimat($mess);
if ($mat)$err[]='В описании раздела обнаружен мат: '.$mat;
if (isset($_POST['metka']) && ($_POST['metka'] == '0' || $_POST['metka'] == '1'))$metka = $_POST['metka'];
else $metka = 0;
$href= htmlspecialchars($_POST['ist']);
if (utf8_strlen($href)>200){$err='Ссылка не может превышать больше 200 символов';}
$privat_komm=intval($_POST['private_komm']);
$id_dir=intval($_POST['id_dir']);
if ($notes['id_dir'] > 0){
if($notes['time']>time()-604800){
if($_POST['id_dir']==0){
$typed=0;
}else{
$typed=1;
}
}else{
$typed=0;
}
}
if(!isset($err))
{
$pdo->query("UPDATE `soo_news` SET `name_blog` = '$name', `mess` = '0', `private_komm` = '$privat_komm' WHERE `id` = '$news[id]'");
$pdo->query("UPDATE `notes` SET `metka` = '".intval($metka)."', `href` = '$href', `name` = '$name', `msg` = '$mess', `id_dir` = '$id_dir', `cat_alt` = '$id_dir', `type` = '$typed' WHERE `id_news` = '$news[id]'");
$news = $pdo->query("SELECT * FROM `soo_news` WHERE `id_soo`='$soo[id]' AND `id`='$id' ORDER BY `time`")->fetch(PDO::FETCH_ASSOC);
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', '$user[id]', '$notes[id]')");
$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', '$ID')")->fetchColumn();
$_SESSION['variant_' . $i] = NULL;
}
$_SESSION['forms'] = 3;
$_SESSION['poster'] = NULL;//
}
$_SESSION['message'] = 'Изменения успешно приняты';
header("Location: /modules/groups/news/list.php?id=$soo[id]&id_news=$news[id]");
}
}
$ban_n = $pdo->query("SELECT * FROM `ban_blogs` WHERE `id_user` = '$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($_GET['create']) && $_GET['create']=='opros'){
if ($notes['share_id'] < 1){
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=\"?id=".intval($_GET['id'])."&edit=".intval($_GET['edit'])."&create=opros\" enctype=\"multipart/form-data\">\n";
}
}else{
echo'<form method="post" name="message">';
}
echo'<b>Заголовок</b> <font color=gray><small>(150 символов)</small></font> :<br/>';
echo'<input class="form-control" type="text" name="name" value="'.text($news['name_blog']).'"><br/>';
echo'<b>Сообщение</b> <font color=gray><small>(30000 символов)</small></font> :<br/>';
echo auto_bb("message", "msg");
echo"<textarea class=\"form-control\" rows='5' name=\"msg\">".stripslashes($notes['msg'])."</textarea><br/>";
echo "<b>Прикрепить:</b> \n";
echo "<button style='margin-top: 2px;' class='btn btn-primary btn-sm' name='foto_upload'>";
echo "<i class='fa fa-camera fa-fw'></i> Фото</button>";
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="/modules/groups/news/files/file_vid_edit.php?id='.$soo['id'].'&post='.$news['id'].'"><i class="fa fa-film fa-fw"></i> Видео</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="/modules/groups/news/files/file_mus_edit.php?id='.$soo['id'].'&post='.$news['id'].'"><i class="fa fa-music fa-fw"></i> Музыку</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="/modules/groups/news/files/file_fil_edit.php?id='.$soo['id'].'&post='.$news['id'].'"><i class="fa fa-file fa-fw"></i> Файл</a> ';
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="posters_edit.php?id='.$soo['id'].'&edit='.$notes['id'].'&news='.$news['id'].'"><i class="fa fa-pencil fa-fw"></i> Постер</a> ';
if ($pdo->query(("SELECT COUNT(*) FROM `notes_votes` WHERE `id_notes` = '".intval($notes['id'])."' AND `id_user` = '".intval($user['id'])."'"),0)->fetchColumn())
{
}else{
echo ' <a class="btn btn-primary btn-sm" style="margin-top: 2px;" href="?id='.$soo['id'].'&edit='.$news['id'].'&create=opros"><i class="fa fa-bullhorn fa-fw"></i> Опрос</a> ';
}
echo '<br>';
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: edit.php?id='.$soo['id'].'&edit='.$news['id'].'&create=opros'); exit; } // Добавляем формы ответа
if (isset($_POST['minus']) && $_SESSION['forms'] > 3){ $_SESSION['forms'] = $_SESSION['forms'] - 1; header('Location: edit.php?id='.$soo['id'].'&edit='.$news['id'].'&create=opros'); exit; } // Убираем формы ответа
$msg2 = htmlspecialchars($_SESSION['poster']);
echo '<b>Опрос:</b><br/>';
echo '<input class="form-control" name="msg2" type="text" placeholder="Название опроса..." value="' . $msg2 . '"><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>';
}
$posters = $pdo->query("SELECT * FROM `posters` WHERE `id_user` = '".intval($user['id'])."' AND `id_post` = '".intval($notes['id'])."' AND `type` = '2'");
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['del_p'])){
$pdo->query("DELETE FROM `posters` WHERE `id_user` = '".intval($user['id'])."' AND `id` = '".intval($_GET['del_p'])."'");
header("Location: edit.php?id=$soo[id]&edit=$news[id]");
}
echo' <a href="?id='.$soo['id'].'&edit='.$news['id'].'&del_p='.$poster['id'].'"><font color=#F56257><i class="fa fa-trash fa-lg"></i></font></a>';
echo "</span><br>";
}
$foto = $pdo->query("SELECT * FROM `soo_news_foto` WHERE `id_user` = '$user[id]' AND `id_news` = '$news[id]'");
while ($post = $foto->fetch(PDO::FETCH_ASSOC))
{
if($post['type']=='foto'){
$foto_id = $pdo->query("SELECT * FROM `gallery_foto` WHERE `id_user` = '$user[id]' AND `id` = '".intval($post['id_foto'])."'")->fetch(PDO::FETCH_BOTH);
$ras = htmlspecialchars($foto_id['ras']);
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;">';
echo"<i class='fa fa-camera fa-fw'></i> ";
echo htmlspecialchars($foto_id['name']);
}
if($post['type']=='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']);
}
if($post['type']=='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']);
}
if($post['type']=='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']);
}
if($post['type']=='foto_upload'){
$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']);
}
echo' <a href="edit.php?id='.$soo['id'].'&edit='.$news['id'].'&delf='.$post['id'].'"><font color=#F56257><i class="fa fa-trash fa-lg"></i></font></a>';
echo '</span><br>';
}
if ($pdo->query(("SELECT COUNT(*) FROM `notes_votes` WHERE `id_notes` = '".intval($notes['id'])."' AND `id_user` = '".intval($user['id'])."'"),0)->fetchColumn())
{
$votes = $pdo->query("select * from `notes_votes` where `id_notes`='".intval($notes['id'])."';")->fetch(PDO::FETCH_ASSOC);
echo '<span class="btn btn-secondary btn-sm" style="margin: 1px;"><i class="fa fa-bullhorn fa-fw"></i> Опрос ';
echo'<a href="oprosedit.php?id='.$notes['id'].'&votes='.$votes['id'].'&minus"><font color=#F56257><i class="fa fa-trash fa-lg"></i></font></a>';
echo '</span><br />';
}
$notes = $pdo->query("SELECT * FROM `notes` WHERE `id_soo`='$soo[id]' AND `id_news`='$news[id]'")->fetch(PDO::FETCH_ASSOC);
echo "<br /><div class='mess'><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'".(!$notes['id_dir'] ? " selected='selected'":null)."><b>Без категории</b></option>\n";
while ($post = $q->fetch(PDO::FETCH_ASSOC))
{
echo "<option value='$post[id]'".($notes['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>";
echo "<br /><b>Ссылка на источник</b> <font color=gray><small>(при желании если вы скопировали пост с другого сайта)</small></font>:<br />\n<input name=\"ist\" value=\"".text($notes['href'])."\" size=\"16\" maxlength=\"200\" type=\"text\" class='form-control' style='width: 50%;'/><br />\n";
echo "<br /><b>Могут комментировать:</b><br /><input name='private_komm' type='radio' ".($news['private_komm']==0?' checked="checked"':null)." value='0' selected='selected'/> <i class='fa fa-unlock fa-fw'></i> Все пользователи<br/>";
echo "<input name='private_komm' type='radio' ".($news['private_komm']==1?' checked="checked"':null)." value='1' /> <i class='fa fa-users fa-fw'></i> Только участники <br/>";
echo "<br /><label><input type='checkbox' name='metka' value='1' ".($notes['metka']==1?' checked="checked"':null)." /> Метка <span style='border: 1px #AEB6BD solid; border-radius: 3px; color: red;'><small><b>18+</b></small></span></label><br />";
echo'<br><input class="knopka" type="submit" value="Сохранить запись"></form><br/>';
}
else
{
echo'<div class="list-group-item">Вам недоступен просмотр новостей данной группы</div>';
}}else{
header('Location: /index.php');exit;
}
}
}
else
{
$set['title']='Ошибка 404'; // заголовок страницы
include_once '../../../sys/inc/thead.php';
err404();
}
include_once '../../../sys/inc/tfoot.php';
?>